Alternative Input Device Problem

I'm building a game that does not use the typical keyboard/joystick controls. Instead, one of the input controllers is the PowerMate button by Griffin Technology.



The PowerMate can be setup to send keys when it is pressed and when it is rotated left and right. In my older version, before using JME, I could simply implement a KeyListener that would process those characters and voila! the job was done.



I'm running a StandardGame with a custom GameState that's similar to DebugGameState to control the camera and trigger some stuff with the keyboards for testing. My problem is that with JME using the KeyBindings and the Keyboard implementation of LWJGL, no key event is generated by the PowerMate. I setup the PowerMate to output 'f' character when it's pussed, and creates a KeyBinding for this character, but the event is only generated when I type it on the keyboard. I'm assuming it is because LWJGL manages the Keyboard differently than, say, the Swing key event manager.



Anyone has experience with that kind of alternative input devices or has an idea how I might handle this PowerMate button?

Maybe you can find it in the game controller list and use it like a joystick?

For kicks I'd try running the example code for GameControllerManager (not sure what it's called).  It provides a controls editor similar to the way most games allow you to configure controls.  If it can be used as a joystick, keyboard, or mouse it will let you simply just press a button and it will recognize it.  I think that will be a good starting point to determine if it's being recognized as anything.  If that doesn't work you can always write a custom binding for GameControls that will work with it and simply add it to the manager.

thanks for the help. I couldn't detect the Powermate as a joystick, but when testing one of the GameControllerManager samples, I found that the Powermate was sending its simulated characters to the control setting panel, but not the game itself.



The work around I ended up using is creating a JDesktopState and adding a standard java KeyListener to it's panel. This way I get the right character from both the Powermate and the keyboard.



thanks again.

b