Remote framebuffer protocol question

39 views
Skip to first unread message

gille...@gmail.com

unread,
Feb 18, 2019, 8:34:12 AM2/18/19
to TigerVNC Developer Discussion
I have a set top box which runs the RFB protocol version 3.x; I can connect to it, authenticate and send commands;

For example; after authentication on port 5900, when i want to switch to channel 5 (just as example) i would need to send these commands (HEX), which would be converted to binary before i send them.
040100000000e305
040000000000e305

This is a key down and a key up event. Besides digits, the original remote can also send a whole lot of additional codes; https://support.upc.ch/app/faq/a_id/12619/horizon-smart-home-system-einrichten but those are all HEX IR codes.

I can't seem to map the IR codes they mention there to the codes i have available. I am missing the 'conversion' scheme. Basically my question is simple;
How do i send A-Z over RFB? Given the fact that everything in the below list starts with "e" i think this is a specific keylist i would need.

Is there anybody who is willing to help explain it to me or can help out demystifying this?

Each constant below is the last 4 digits of above command:
MENU: 'e00a',
BACK: 'e002',
CURSOR_UP: 'e100',
CURSOR_DOWN: 'e101',
CURSOR_LEFT: 'e102',
CURSOR_RIGHT: 'e103',
CURSOR_ENTER: 'e001',
CHANNEL_UP: 'e006',
CHANNEL_DOWN: 'e007',
DIGIT_0: 'e300',
DIGIT_1: 'e301',
DIGIT_2: 'e302',
DIGIT_3: 'e303',
DIGIT_4: 'e304',
DIGIT_5: 'e305',
DIGIT_6: 'e306',
DIGIT_7: 'e307',
DIGIT_8: 'e308',
DIGIT_9: 'e309',
PLAY: 'e400',
PAUSE: 'e400',
STOP: 'e402',
REVERSE: 'e407',
FORWARD: 'e405',
MY_RECORDINGS: 'ef29',
RECORD: 'e403',
LIVE: 'ef2a',
VOLUME_UP: 'e003',
VOLUME_DOWN: 'e004',
MUTE_TOGGLE: 'e005',
GUIDE: 'e00b',
ONDEMAND: 'ef28',
HELP: 'e009',
INFO: 'e00e',
TEXT: 'e00f',

Peter Korsgaard

unread,
Feb 18, 2019, 8:54:40 AM2/18/19
to gille...@gmail.com, TigerVNC Developer Discussion
>>>>> "gilles0181" == gilles0181 <gille...@gmail.com> writes:

> I have a set top box which runs the RFB protocol version 3.x; I can
> connect to it, authenticate and send commands;

> For example; after authentication on port 5900, when i want to switch
> to channel 5 (just as example) i would need to send these commands
> (HEX), which would be converted to binary before i send them.
> 040100000000e305
> 040000000000e305

> This is a key down and a key up event. Besides digits, the original
> remote can also send a whole lot of additional codes;
> https://support.upc.ch/app/faq/a_id/12619/horizon-smart-home-system-einrichten
> but those are all HEX IR codes.

> I can't seem to map the IR codes they mention there to the codes i
> have available. I am missing the 'conversion' scheme. Basically my
> question is simple;
> How do i send A-Z over RFB? Given the fact that everything in the
> below list starts with "e" i think this is a specific keylist i would
> need.

See the RFB protocol documentation for the keyevent message:

https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#keyevent

I am not aware of any "standard" keysyms in the 0xe3xx range.

--
Bye, Peter Korsgaard

Gilles van den Hoven

unread,
Feb 18, 2019, 8:58:18 AM2/18/19
to TigerVNC Developer Discussion
That is a fast reply Peter :)

I'll see if i can see something when i press a button on the remote while connected to the VNC port Maybe there will also be a keydown and keyup event streamed back over that connection..

Op maandag 18 februari 2019 14:34:12 UTC+1 schreef Gilles van den Hoven:
Reply all
Reply to author
Forward
0 new messages