system/vncviewer: add VNC viewer for LCD display#3463
Conversation
|
Wow! This is amazing big thank you @JianyuWang0623 :-) I am wondering if this should go to apps/examples or better to apps/system ? :-) |
|
@JianyuWang0623 WOW!!! |
Either way works for me. I'll go with whatever you all think is better. :-) |
|
What do you think folks? I think this tool suits better to apps/system right? :-) |
|
Sorry @raiden00pl: Install NTFC is failing at https://github.com/apache/nuttx-apps/actions/runs/24843435684/job/72727760891#step:10:134 $ git clone -b release-0.0.1 https://github.com/szafonimateusz-mi/nuttx-testing
fatal: unable to access 'https://github.com/szafonimateusz-mi/nuttx-testing/': The requested URL returned error: 500 |
Add a minimal VNC viewer application that connects to a VNC server and renders the remote desktop on a local LCD. Features: - RFB 3.8 protocol with VNC Authentication (DES, pure software) - Raw encoding with pixel format auto-detected from LCD driver - Row-by-row rendering via LCDDEVIO_PUTAREA (minimal RAM usage) - LCD resolution and format queried at runtime via LCDDEVIO_GETVIDEOINFO - Auto-reconnect on connection loss with 2-second retry Usage: vncviewer <host> [port] vncviewer -p <password> <host> [port] vncviewer -p <password> -d <lcd_devno> <host> [port] Assisted-by: GitHubCopilot:claude-4.6-opus Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
5c4fbcf to
2b58ecf
Compare
@cederom Moved to apps/system. |
TANK U SIR @JianyuWang0623 ! =) |
cederom
left a comment
There was a problem hiding this comment.
Thank you @JianyuWang0623 awesome stuff! =)
|
@JianyuWang0623 please include Documentation with the host vcnserver/Xvfb configuration example (please include at least the first two pictures) |
Summary
Add
examples/vncviewer— a lightweight VNC viewer that renders a remote desktop on an LCD display via the NuttX LCD character device interface (/dev/lcd0).vncviewer [-p password] [-d lcd_devno] <host> [port]Tested on ESP32-S3 (lckfb-szpi-esp32s3) with ST7789 320×240 SPI LCD over WiFi. Board-side defconfig will be submitted separately to nuttx repo.
Impact
New example application only. No impact on existing code.
Testing
vncviewer -p mypasswd xxx.xxx.xxx.xxx 5901vncviewer localhost:5901 & # Enter password in the UIThree server modes verified:
:1, 320×240x16 + openbox + xterm) — pixel-perfect 1:1-clip 320x240+0+0) — top-left region, no scaling-scale 320x240) — full desktop scaled to LCD