Keyboard mapping setup

Skip to first unread message


Jul 29, 2010, 8:49:57 AM7/29/10
to jOpenRay
Hi all,

I'm running Sunray1 with RDP to Win2003 server.
I've attached the original Sun US keyboard but the keyboard mapping is
e.g. when I press "m" it gets",".
I've seen no info about the used keyboard mapping, nor the option to
configure it.
(only the directory "jOpenRay\Keymaps" - but no clue what toset/change

Regards HaPe

B.t.w. Kudos to Guillaume: Compared to the Solaris-SRSS-Beast this is
leightweigt, simple to setup and use!

Guillaume Maillard

Jul 30, 2010, 5:30:09 AM7/30/10

You are pointing a dirty little secret of computer manufacturers... :(

In a perfect world, a keyboard should send a unique code (unicode) related to the the caracter you press or release.
In US, manufacturers really don't care about the other countries, that's why in the rest of the world we are "playing" with keyboards mapping, file encoding, etc...

In order to minimize the issues, the Sun USB keyboard implements HID, which is supposed to
return 'a' when you press the key 'a'. But on my french keyboard, it's not the case... the manufacturer only change the labels on the keyboards, not the mapping...

In order to solve the keymap issue, we convert keys from the keyboard to Java keycode (which are common on every systems).

When using a RDP adapter, jOpenRay converts the Java keycodes to RDP keycodes,
which are converted to the final letter by the keymap defined on your remote windows...
To sum up:
Sun Keyboard -> Hid -> Java -> RDP -> Windows keymap -> Screen

Because, I have no US keyboard, you will have to modify the "Hid to Java" mapping
defined in org.jopenray.util.HID

public static int hidToKeyCode(int hid) {
        int r = 0;
        switch (hid) {
        case 4:
            r = KeyEvent.VK_Q;

will I think become: case 4:
            r = KeyEvent.VK_A;

The best way to test is to start with a SSH session because have no Java -> RDP -> Windows keymap conversion.

As soon as you have a full working US mapping, I will add a keyboard selector on the UI.


2010/7/29 HaPe <>


Jul 30, 2010, 8:06:07 AM7/30/10
to jOpenRay
Hi Guillaume,

OK I think I can do the keyboard mapping.
But I'm not too familiar with Eclipse
I managed to setup the eclipse project and get it running,
in which form do you expect me to provide the mapping?
(most archaic way: just send you the changed ASCII ;-)

But that'll have to wait, since I'm leaving for vacation this
weekend :-)

Regards HaPe

On 30 Jul., 11:30, Guillaume Maillard <>
> 2010/7/29 HaPe <>

Guillaume Maillard

Jul 30, 2010, 10:17:09 AM7/30/10

All we need is the line you changed, you can send them as a diff file,
Eclipse has a built in function to create it, right click Team/Create Patch.

Happy vacations!


2010/7/30 HaPe <>
Reply all
Reply to author
0 new messages