Lets figure out how we can control InMoov & mobile platforms with the Xbox (and other controllers)
get visual controller pictures describing possible input
- get Joystick service working with each and document the output events & number of component each controller has
- make an easy & unified interface which allows configurable mapping, deadzone and other capabilities
- layout a strategy to map InMoov movements to this unified interface - so we would actually expect different controllers to do the same thing when attached to InMoov
|Button||XBOX 360||PS3 DualShock3 (win/xbox driver||PS3 (Mac/KMC layout)||RumblePad2|
|POV||Directional Pad||Directional Pad||N/A||Directional Pad|
|x||Left stick (left/right)||Left stick (left/right)||Left stick (left/right)||Left stick (left/right)|
|y||Left stick (up/down)||Left stick (up/down)||Left stick (up/down)||Left stick (up/down)|
|rx||Right stick (left/right)||Right stick (left/right)||N/A|
|ry||Right stick (up/down)||Right stick (up/down)||N/A|
|z||1-0Left trigger -1 to 0 Right trigger||1-0Left trigger -1 to 0 Right trigger||Right stick (left/right)||Right stick (left/right)|
|rz||N/A?||N/A?||Right stick (up/down)||Right stick (up/down)|
|Button 4||Left Bumper||L1||Dir Up||5|
|Button 5||Right Bumper||R1||Dir Right||6|
|Button 6||Back||Select||Dir Down||7|
|Button 7||Start||Start||Dir Left||8|
|Button 8||Left Stick Press||Left Stick Press||L2||9|
|Button 9||Right Stick Press||Right Stick Press||R2||10|
UberJoy is the "perfect" Archtype Software GamePad Controller
This is what is looks like.
It currently has 3 Axis & 1 POV and 12 Buttons. Here also is my silly Rumblepad2 interfacing it. My Rumblepad onlly has 2 Axis and they are identified x y and z rz
But I thought I'd half impersonate an Xbox controller. So I did this
joy = Runtime.start("joy", "Joystick")joy.mapId("x", "rx")
joy.map("y", -1, 1, 0, 180)
Connecting to a Servo or Motor will be a single line.
Number of components ???
RX & RY are analog events of the 2nd joystick vs Z & RZR on the RumblePad
Left bumper - open left hand
Left trigger - close left hand
Right bumper - open right hand
Right trigger - close right hand
Platform movement ?
Using a PS3 controller on windows works well if you fake it out to use the XBOX 360 device driver. There's a video link below that shows how to set it up. If you plug in the PS3 controller and you see it show up as an XBox 360 controller in your "Device and Printers" settings page (in windows control panel), it will work with MRL.
- Connect PS3 to Windows using XBox 360 driver http://www.youtube.com/watch?v=a4vzhPntwvo
- Youtube Video using Joystick service with InMoov https://www.youtube.com/watch?v=raPnLjcQ9-Y&feature=youtu.be
There appears to be a java warpper for the razor hydra