Page 1 of 1

Hardware testing with Orbotron 9000

Posted: June 23 2013, 21:11 PM
by Tehrasha
Initial quick and dirty testing with the Orbotron 9000 with various types of serial spacemice.



Using the BasicJoystick script... w/SpaceOrb360

SpaceOrb360 -- Works perfectly

SpaceController -- Does not initiallize properly.





Using the BasicJoystick script... w/SpaceBall4000 (Spaceball Hardware)

Spaceball 2003c -- Joystick functions all work, but none of the buttons map.

Spaceball 3003c -- Same as 2003c.

Spaceball 4000 -- Works perfectly, all joystick and button functions.





Using the BasicJoystick script... w/SpaceBall5000 (Magellan Hardware)

Spaceball 5000 -- Everything works, though buttons A,B,C map the same as 1,2,3

Spacemouse Classic -- Buttons work, but no joystick data. (tried 3 diff mice)

CyberPuck -- Nothing works, but not surprising as it is essentially a Classic without buttons.

Spacemouse Plus -- Everything works, though side buttons A,B map the same as buttons 6,7.

Spacemouse PlusXT -- Same as above, lighted buttons do not illuminate.



How hard would it be to script something that will initialize the mouse, then dump all the raw serial data to the SerialMonitor?

Should not be that difficult to get all the button mappings fixed, plus see whats going on with the other devices.

Re: Hardware testing with Orbotron 9000

Posted: June 27 2013, 5:49 AM
by vputz
So easy it's already done ;). Check the "orbserial" sketch in the examples... Serial goes to the computer, serial1 goes to the orb. That would get you started... More later but on the road in airport!



Nice work, though, and thanks!

Re: Hardware testing with Orbotron 9000

Posted: July 03 2013, 5:13 AM
by Tehrasha
Awesome! Used the orbserial sketch and found... strange results.



When I tested my Spaceball 5000 using the basicJoystick, I saw issues with with buttons A,B,C mapping the same as Buttons 1,2,3

Even though the serial data has a completely different byte of the button packet changing...

(sorry, converted the values to HEX so my brain wouldnt explode trying to figure out which bits were changing. :) )



Button 1 -- 6b 41 30 30 0d

Button A -- 6b 30 30 42 0d



Button 2 -- 6b 42 30 30 0d

Button B -- 6b 30 30 44 0d



Button 3 -- 6b 44 30 30 0d

Button C -- 6b 30 30 48 0d





Even stranger, were the results from my Spacemouse Plus where the buttons A,B (left and right) were mapping the same as button 6,7.

According to the Orbotron, they actually do! But the proprietary xDriver from 3dConnexion in debug mode says otherwise....



Button 6 -- 6b 30 42 30 0d

Button A -- 6b 30 [color=#FF0000]42[/color] 30 0d

xDriver A -- 6b 30 30 [color=#FF0000]42[/color] 0d



Button 7 -- 6b 30 44 30 0d

Button B -- 6b 30 [color=#FF0000]44[/color] 30 0d

xDriver B -- 6b 30 30 [color=#FF0000]44[/color] 0d



I suspect that both issues are related, but I dont know enough about sketch language to dissect it.

(though I suspect its in the orbotron_buffer.h)



Working on the Spaceball 2003/3003 buttons now.



(odd side note:: the 'Leftie switch' on the 5000 generates a key-press packet, but no value change.)

Re: Hardware testing with Orbotron 9000

Posted: July 03 2013, 6:00 AM
by Tehrasha
Comparing the Spaceball 4000 output to the 2003/3003 output using the orbserial sketch.

Looks like the 4000 uses an 8-byte packet for buttons, while the older mice use only a 4-byte packet.


[code] 4000 2003 3003
Button 1 -- 4B 40 41 0D 2E 40 41 0D 4B 40 41 0D 4B 40 60 0D
Button 2 -- 4B 40 42 0D 2E 40 42 0D 4B 40 42 0D 4B 50 50 0D
Button 3 -- 4B 40 44 0D 2E 40 44 0D 4B 40 44 0D
Button 4 -- 4B 40 48 0D 2E 40 48 0D 4B 40 48 0D
Button 5 -- 4B 41 40 0D 2E 40 50 0D 4B 41 40 0D
Button 6 -- 4B 42 40 0D 2E 40 60 0D 4B 42 40 0D
Button 7 -- 4B 44 40 0D 2E 40 C0 0D 4B 44 40 0D
Button 8 -- 4B 50 40 0D 2E 41 40 0D 4B 50 40 0D
Button 9 -- 4B 40 40 0D 2E 42 40 0D
Button A -- 4B 40 40 0D 2E 44 40 0D
Button B -- 4B 40 40 0D 2E 48 40 0D
Button C -- 4B 40 40 0D 2E 50 40 0D
Leftie -- 4B 40 40 0D 2E 60 40 0D
Zeroize -- 4B 60 40 0D 4B 60 40 0D
Release -- 4B 40 40 0D 2E 40 40 0D 4B 40 40 0D 4B 40 40 0D[/code]


I only included the leftie switch and zeroize buttons for thoroughness.

I cant think of any reason they would be needed external to the device itself.



Thats all I can think to include for now... after 6:am... time for bed. :)

Re: Hardware testing with Orbotron 9000

Posted: July 09 2013, 14:40 PM
by vputz
You're the king, Teh! Not sure what I can do with that yet but I'll have a think when I get some more free time. AWESOME work!

Re: Hardware testing with Orbotron 9000

Posted: October 02 2013, 4:19 AM
by Tehrasha
Finally got my hands on a Spaceball 1003!



Will have to build a custom cable to test it out though. It will also need an external power supply (wall wart).

It's serial port is the wrong gender compared to all other serial spacemice and IIRC it uses a non-standard pinout, so a simple gender swapper will not work.