Skip to content

Feature/lvglterm input variants#19279

Merged
xiaoxiang781216 merged 2 commits into
apache:masterfrom
JorgeGzm:feature/lvglterm-input-variants
Jul 3, 2026
Merged

Feature/lvglterm input variants#19279
xiaoxiang781216 merged 2 commits into
apache:masterfrom
JorgeGzm:feature/lvglterm-input-variants

Conversation

@JorgeGzm

@JorgeGzm JorgeGzm commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR has two commits, one per board, each exercising the on-screen NuttShell terminal (the lvglterm example) with a different LVGL input source:

boards/esp32s3: esp32s3-m5-cardputer: adds the 56-key matrix keyboard driver (8x7 matrix behind a 74HC138 demultiplexer, registered as /dev/kbd0) and an lvglterm configuration that runs the terminal fed by the physical keyboard, with Wi-Fi enabled.

boards/arm/stm32h7: linum-stm32h753bi: adds an lvglterm configuration that runs the same terminal fed by an on-screen keyboard driven by the FT5X06 touch sensor.
So one commit tests lvglterm with the touch sensor and the other with the Cardputer matrix keyboard.

Depends on the companion apps PR (nuttx-apps) that refactors apps/examples/lvglterm to support both input variants.

Impact

New board configurations plus one new board keyboard driver; no impact on existing boards. The default behaviour of lvglterm is unchanged (touch stays the default).

Testing

Both configs build clean and were flashed/validated on hardware.

Cardputer (physical keyboard):

./tools/configure.sh esp32s3-m5-cardputer:lvglterm && make
nsh> lvglterm

# After that use 
nsh> ls /dev

Typed command inline (nsh> ls), Fn+;/. scroll, Wi-Fi works.

image-cardputer

Linum (FT5X06 touch):

./tools/configure.sh linum-stm32h753bi:lvglterm && make
nsh> lvglterm
image-linum

Add the 56-key matrix keyboard driver for the M5Stack Cardputer.  The keys
form an 8x7 matrix behind a 74HC138 3-to-8 demultiplexer; the driver scans it
on the low-priority work queue and registers a keyboard device at /dev/kbd0,
reporting ASCII codes with SHIFT/CTRL and Fn (cursor) handling.

Add an "lvglterm" configuration that runs the on-screen NuttShell terminal
(apps/examples/lvglterm, physical-keyboard input variant) on the ST7789
display: the shell output is rendered in an LVGL text area and the keyboard
feeds the input.  Wi-Fi is included so the on-screen shell can associate with
an access point using wapi.

Signed-off-by: Jorge Guzman <jorge.gzm@gmail.com>
@JorgeGzm

JorgeGzm commented Jul 2, 2026

Copy link
Copy Markdown
Contributor Author

This PR depends on the companion nuttx-apps PR apache/nuttx-apps#3582

@github-actions github-actions Bot added Area: Documentation Improvements or additions to documentation Size: L The size of the change in this PR is large Board: arm Board: xtensa labels Jul 2, 2026
@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown

MemBrowse Memory Report

No memory changes detected for:

linguini1
linguini1 previously approved these changes Jul 2, 2026
acassis
acassis previously requested changes Jul 2, 2026
Comment thread Documentation/applications/examples/lvglterm/index.rst
Comment thread Documentation/applications/examples/lvglterm/index.rst
@JorgeGzm JorgeGzm force-pushed the feature/lvglterm-input-variants branch from 90155fd to 77cf556 Compare July 3, 2026 01:51
@JorgeGzm JorgeGzm requested a review from acassis July 3, 2026 11:54
Add an "lvglterm" configuration that runs the on-screen NuttShell terminal
(apps/examples/lvglterm, touch input variant) on the display: an on-screen
LVGL keyboard driven by the FT5X06 touchscreen feeds the shell and the NSH
output is rendered in an LVGL text area.

Update the apps/examples/lvglterm documentation to describe the two input
variants (on-screen touch keyboard and physical keyboard) and their
configuration options (input source, keyboard device and font choices).

Signed-off-by: Jorge Guzman <jorge.gzm@gmail.com>
@JorgeGzm JorgeGzm force-pushed the feature/lvglterm-input-variants branch from 77cf556 to d60a96c Compare July 3, 2026 13:35
@xiaoxiang781216 xiaoxiang781216 merged commit 7a4f270 into apache:master Jul 3, 2026
54 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: Documentation Improvements or additions to documentation Board: arm Board: xtensa Size: L The size of the change in this PR is large

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants