Make sure that the type of keystroke sent by the X-keys device is set properly. I can't recall off the top of my head, but there is a setting whereby you can send a single keystroke only, even if the key is held down, and one where it acts like a regular keyboard when you hold a key down.

I was having problems with some of my keystrokes not working properly when I had the keys acting like a regular keyboard so I reconfigured the device to send one keypress only. I think I was having issues with a macro. However, I kept the direction keys ASDF set to send keystrokes like a regular keyboard.

Hope that helps.