Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VNC display #7

Open
djbr1 opened this issue Apr 18, 2022 · 7 comments
Open

VNC display #7

djbr1 opened this issue Apr 18, 2022 · 7 comments

Comments

@djbr1
Copy link

djbr1 commented Apr 18, 2022

Hi,

Please implement option to show APP GUI locally over VNC

script run_x6100_app.sh should be modified to invoke VNC server where previously headless was started:
app has to be started with parameters:
/usr/app_qt/x6100_ui_v100 --platform vnc:port=5901:size=800x480'

APP gui becomes visible from XFCE desktop (vnc client needs to be installed, I am usingxtigervnc as it offered options for compression, authentication, screen size etc.)

APP shows status of buttons and configuration, all built-in buttons and knobs remain functional.

Complete GUI on screen is visible in FullScreen mode.

GUI can be placed in one Workspace, and other applications in other workspaces.

VNC client should be switchable as vnc server and client consume CPU resources when working.

Much better solution would be to have virtual framebuffer and to display it with XFCE window.

@djbr1
Copy link
Author

djbr1 commented Apr 18, 2022

Screenshot 2022-04-18 at 14 33 25
Screenshot 2022-04-18 at 14 31 38
Screenshot 2022-04-18 at 14 30 38

@Links2004
Copy link
Owner

wow nice this needs some testing.
last time I tried platform vnc with the APP, threre where a lot of errors in the log and only a black screen on the VNC display.
may they have fixed something in the last version 🤞

@djbr1
Copy link
Author

djbr1 commented Apr 18, 2022

Hi,

VNC output is available since earliest release early December.

when started with "platform vnc" there are lot of errors on standard output like
This plugin does not support createPlatformOpenGLContext! QOpenGLWidget is not supported on this platform.
(probably related to inability to render waterfall and audio spectrum)

These errors can be safely ignored.

APP preserves normal functionality same as headless, and with this "VNC" (which can be interchangeably run with headless mode, to preserve CPU resources) we have access to radio configuration items or radio monitoring items like SWR and ALC

Next steps:

  • virtual FB instead of VNC
  • emulation of physical keys and rotary buttons
    => if this works it will be a premiere rig where complete front panel can be handled 1:1 from remote

@Links2004
Copy link
Owner

Interesting had tried multible times to get VNC up and running and always ended up with a black VNC window.

physical keys is easy we only need the scan codes,
then we can use noVNC to send them, only some changes too the webUI needed.
most likely we can get them from the device tree.

but now its time for a 0.0.4 with APP VNC with button 2

@djbr1
Copy link
Author

djbr1 commented Apr 18, 2022

Is evtest a meaningful way to find scan codes ?

@Links2004
Copy link
Owner

Links2004 commented Apr 18, 2022

yes looking good it matches what the device tree is reporting.

first button is 0x2c0 -> 704 (BTN_TRIGGER_HAPPY1)

matrix_keypad@0 {
		compatible = "gpio-matrix-keypad";
		row-gpios = <0x0f 0x06 0x0a 0x17 0x0f 0x06 0x07 0x17 0x0f 0x06 0x06 0x17 0x0f 0x06 0x08 0x17 0x0f 0x06 0x09 0x17>;
		col-gpios = <0x0f 0x04 0x10 0x01 0x0f 0x04 0x11 0x01 0x0f 0x04 0x0b 0x01 0x0f 0x04 0x0e 0x01 0x0f 0x04 0x0c 0x01 0x0f 0x04 0x0d 0x01>;
		linux,keymap = <0x2c0 0x102c1 0x202c2 0x302c3 0x402c4 0x502c5 0x10002c6 0x10102c7 0x10202c8 0x10302c9 0x10402ca 0x10502cb 0x20002cc 0x20102cd 0x20202ce 0x20302cf 0x20402d0 0x20502d1 0x30002d2 0x30102d3 0x30202d4 0x30302d5 0x30402d6 0x30502d7 0x40002d8 0x40102d9 0x40202da 0x40302db 0x40402dc 0x40502dd>;
		gpio-activelow;
		wakeup-source;
		linux,no-autorepeat;
		debounce-delay-ms = <0x19>;
		col-scan-delay-us = <0x01>;
		drive-inactive-cols;
	};

https://github.com/torvalds/linux/blob/dcde98da997075053041942ecf97d787855722ec/include/uapi/linux/input-event-codes.h#L741

@Links2004
Copy link
Owner

I my write a dedicated input event simulator service,
since then we can send presses in non VNC mode too.
which sure comes in handy.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants