From 17ed3ad68d38bd07c770eee16014e08667a41ecf Mon Sep 17 00:00:00 2001 From: Charles Mangin Date: Thu, 21 Nov 2013 12:50:08 -0500 Subject: [PATCH] added calibration to USB Joystick Interface --- .DS_Store | Bin 15364 -> 12292 bytes USB_Joystick/Arduino/SPI_test/SPI_test.ino | 67 ----------- .../Arduino/USBHIDJoystick/USBHIDJoystick.ino | 4 - .../USBHIDJoystick_calibrated.ino | 110 ++++++++++++++++++ .../hidjoystickrptparser.cpp | 104 +++++++++++++++++ .../hidjoystickrptparser.h | 60 ++++++++++ .../Arduino/digital_pot/digital_pot.ino | 90 -------------- .../Arduino/sketch_oct28a/sketch_oct28a.ino | 52 --------- USB_Joystick/PCB/USB_Joystick-rev2.fzz | Bin 0 -> 25468 bytes USB_Joystick/PCB/USB_Joystick.fzz | Bin 23168 -> 0 bytes 10 files changed, 274 insertions(+), 213 deletions(-) delete mode 100644 USB_Joystick/Arduino/SPI_test/SPI_test.ino create mode 100644 USB_Joystick/Arduino/USBHIDJoystick_calibrated/USBHIDJoystick_calibrated.ino create mode 100644 USB_Joystick/Arduino/USBHIDJoystick_calibrated/hidjoystickrptparser.cpp create mode 100644 USB_Joystick/Arduino/USBHIDJoystick_calibrated/hidjoystickrptparser.h delete mode 100644 USB_Joystick/Arduino/digital_pot/digital_pot.ino delete mode 100644 USB_Joystick/Arduino/sketch_oct28a/sketch_oct28a.ino create mode 100644 USB_Joystick/PCB/USB_Joystick-rev2.fzz delete mode 100644 USB_Joystick/PCB/USB_Joystick.fzz diff --git a/.DS_Store b/.DS_Store index 1d4c3ef81572af7dbea45fa8eb1d6932598cc818..823937a077fcd851ace4e7bd5937176f1245d938 100644 GIT binary patch delta 438 zcmZpvXi1P@U|?W$DortDU;r^WfEYvza8E20o2Vx_*+7Ry6v$_g1!6{^I73dlVQ_MO zZoy_jgXQd-**RD^7-c8(C`eiKs{)m!Vh#Vix59eS)GLwrXgf~aA0B!&q(vW~S>?`p8?iG~Lkofq^>8OT_!Sam110pa3BBB@(*gVsz^x37#$T62+vZp5Ogt3*B>P0!ea(Uhne zj;1H6M&w5<%cT6?toK+#Pfw0(jhW2G^ES2zyEe?X2Qz&=J?+8X?(X?{#uTRgRH;96 z{pM{W(aeqWH{DDlqJ(@NJXJX+f4-%l@1{(qtGl;7?;$f10f~S_KqBycLm<0mD8BXn z`v!xYuS7s1Py_+~ehAXRZ76FO94lTObmE`Tyq|TMMEaj*R@pC;s6g@@KMua$iB=Aq81BOS#nbDCsfkO z^NbpPao=Jcn)d9l6Wl4gE{D?Vx!?{{1C?89)uCO9xRs0~4jAKFwN2rj?Q}VuGG-IT z+_+W~kDBorGnzIAOp`m=V{yxznM&Hb(#HNYFWF;Tsq_|6IId|kwz1P7|HP~jrdIa2 zR?B<3d^(-5lJ*rw$|k!e)Jemp#FV2|4X2*I_6O@X_G~`3qFSq|ty9%K6ktlG6W1n; z)aV?K8|{wTaU-cGk`rUI2|E!pjge$@%BaD1#*WogYb(^Iz$&KwLD{R*JukI%-c}bi zfu_J}MY)ofZ%G++c8b+A0&AESRYq)@fzw5++Qu}SjqIa%m(z5e+M#GV8#SXb!*q%| z)eVZagN@BP6LAXb)NY0CqBqGD4cm6g`T`dy+DppS{Kl6=?eyi-Mw0G*VgE%dXh?&( zdHCn2D7$%!0bMurHKDdFO7s#?pc&4D^I#hc!*0-F4i3WIa1Y!IkHD|tkMJzK0I$Gb z;5GOwybf=}Kj2^R4txlo!vEkiWLS%JSdR^ODz3$|@N8_u4(!Gr?8Eahgxm3AyaX@B zQM?+*@fu8E3T>RhS^Nne!h7%m{3Sk)zrx?+Gx)4CsInZzw>sCkGd@ST((JWov*E_F zokbZrv{LQ=b{ToR%HiS4`UXMF-U|ov&(`-i-Lw)+a;PFGl%t4Xs+X6IP0gzUE$Zr0 zBp4+I8v7MaZ>{2(@Fu!)I%$e?*&1k5i0)dMxK!5#IyjlNWlpUism`?JPVFYOhZ9>X zcWTd9H**SWryN_=)ZEzLqN*CuzY)KU+8PKmMZ?dTw+Qc!!c*|P;M{R|6aEeF!G95n zY1P<_r(+P;5Yt-mT`YOrnL?;{nXz zJl=#0_%pm658@rfzkBgMydNL+G4F>t&N&tzTa0-{R;-dNEwW~n^!2P-jnjN6C4GGh zwKHsamIz1$BmxoviGW1lYeS%xdMbzYFhM)rX^&_MN6v89xjqaIz5kB5f4-gTL!h9} zv+(bDl{c&qiaQP+j%;;_)ZgSjcE7>B_3ZvP?XCCm&Gp_++Fb9Uyl-=z@2xM0X_l6$ zw-!#uElz#&^q|{1F;LieaUse`h}MUPimJ!2DoI^hqKFWspB?xGD63=jr9RAE!j$o^ zbMb92WGgEwK)H}8B0zaD^9WE;(#l){R5V@3+yYb-buzC26@_)oBS1x2X#vWI^yLI- zUax0`Xgl=7PS``ghDiz`dIubW!*D-5N>cQ9@C-@O7vWFvGQ0}M;cxJFcmv*rkKkkY z4+#Vn16YMCNRGDPX+kKRh3iQsbdgNx%?gAek_cDe81BL-UPsbkilo6j-bPaNE_@Il z!iVuFKJ|r!sGq5e%1`3q(8{f$Z-<8`N_MiZO?EQB?BvwU%TBh5d1WWd$xf~`Sqlp> zrh$;1%r86hd=v7sINNyG<7r~r%kXCkdb|n$gb&~o;#URMU?VnBprZv>i$KRYxXu;q z*o;HC6}M5yV+W2 z^1b#T9oNvo6Zc!-8A_Dr)!d4$c(P(Eo~(EYXX`>)yWm)=rF6o71i*JFzF62 #include diff --git a/USB_Joystick/Arduino/USBHIDJoystick_calibrated/USBHIDJoystick_calibrated.ino b/USB_Joystick/Arduino/USBHIDJoystick_calibrated/USBHIDJoystick_calibrated.ino new file mode 100644 index 0000000..2ca96c3 --- /dev/null +++ b/USB_Joystick/Arduino/USBHIDJoystick_calibrated/USBHIDJoystick_calibrated.ino @@ -0,0 +1,110 @@ + + +#include + +// set pin 4 as the slave select for the digital pot: +const int slaveSelectPin = A0; //4; +//const float foo = .21; +const int TrimPin = A3; + +const int Butt0Pin = A4; +const int Butt1Pin = A5; + + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "hidjoystickrptparser.h" + +#include +#include +#include +#include + +USB Usb; +USBHub Hub(&Usb); +HIDUniversal Hid(&Usb); +JoystickEvents JoyEvents; +JoystickReportParser Joy(&JoyEvents); + +void setup() +{ + // set the slaveSelectPin as an output: + pinMode (slaveSelectPin, OUTPUT); + + + pinMode (Butt0Pin, OUTPUT); + pinMode (Butt1Pin, OUTPUT); + + + // initialize SPI: + SPI.begin(); + + + + Serial.begin( 115200 ); + Serial.println("Start"); + + if (Usb.Init() == -1) + Serial.println("OSC did not start."); + + delay( 200 ); + + if (!Hid.SetReportParser(0, &Joy)) + ErrorMessage(PSTR("SetReportParser"), 1 ); + + + + +} + +void loop() +{ + Usb.Task(); + + float foo = float(analogRead(TrimPin))/1023.000; + + + int joyX = JoyEvents.X; + int channel = 5; + + digitalPotWrite(channel, joyX); + digitalPotWrite(channel - 1, joyX * foo); + + int joyY = JoyEvents.Y; + channel = 3; + + digitalPotWrite(channel, joyY); + digitalPotWrite(channel - 1, joyY * foo); + + + digitalWrite(Butt0Pin,JoyEvents.Butt0); + digitalWrite(Butt1Pin,JoyEvents.Butt1); + + + + +} + + + +void digitalPotWrite(int address, int value) { + // take the SS pin low to select the chip: + digitalWrite(slaveSelectPin,LOW); + // send in the address and value via SPI: + SPI.transfer(address); + SPI.transfer(value); + // take the SS pin high to de-select the chip: + digitalWrite(slaveSelectPin,HIGH); +} + diff --git a/USB_Joystick/Arduino/USBHIDJoystick_calibrated/hidjoystickrptparser.cpp b/USB_Joystick/Arduino/USBHIDJoystick_calibrated/hidjoystickrptparser.cpp new file mode 100644 index 0000000..c8aeef9 --- /dev/null +++ b/USB_Joystick/Arduino/USBHIDJoystick_calibrated/hidjoystickrptparser.cpp @@ -0,0 +1,104 @@ + + + + +#include "hidjoystickrptparser.h" + +JoystickReportParser::JoystickReportParser(JoystickEvents *evt) : + joyEvents(evt), + oldHat(0xDE), + oldButtons(0) +{ + for (uint8_t i=0; iOnGamePadChanged((const GamePadEventData*)buf); + + for (uint8_t i=0; i> 4); + uint16_t changes = (buttons ^ oldButtons); + + // Calling Button Event Handler for every button changed + if (changes) + { + for (uint8_t i=0; i<0x0C; i++) + { + uint16_t mask = (0x0001 << i); + + if (((mask & changes) > 0) && joyEvents) + if ((buttons & mask) > 0) + joyEvents->OnButtonDn(i+1); + else + joyEvents->OnButtonUp(i+1); + } + oldButtons = buttons; + } +} + +void JoystickEvents::OnGamePadChanged(const GamePadEventData *evt) +{ + +X = evt->X; +Y = evt->Y; + Serial.print("X: "); + Serial.print(X); + //PrintHex(evt->X, 0x80); + Serial.print("\tY: "); + Serial.print(Y); +// PrintHex(evt->Y, 0x80); + Serial.println(""); + + +} + + +void JoystickEvents::OnButtonUp(uint8_t but_id) +{ + Serial.print("Up: "); + Serial.println(but_id); + if(but_id == 1) { + Butt0 = false; + } + + if(but_id == 2) { + Butt1 = false; + } + +} + +void JoystickEvents::OnButtonDn(uint8_t but_id) +{ + Serial.print("Dn: "); + Serial.println(but_id); + + + if(but_id == 1) { + Butt0 = true; + } + + if(but_id == 2) { + Butt1 = true; + } +} + + diff --git a/USB_Joystick/Arduino/USBHIDJoystick_calibrated/hidjoystickrptparser.h b/USB_Joystick/Arduino/USBHIDJoystick_calibrated/hidjoystickrptparser.h new file mode 100644 index 0000000..45f41e9 --- /dev/null +++ b/USB_Joystick/Arduino/USBHIDJoystick_calibrated/hidjoystickrptparser.h @@ -0,0 +1,60 @@ +#if !defined(__HIDJOYSTICKRPTPARSER_H__) +#define __HIDJOYSTICKRPTPARSER_H__ + +#include +#include +#include "avrpins.h" +#include "max3421e.h" +#include "usbhost.h" +#include "usb_ch9.h" +#include "Usb.h" + +#if defined(ARDUINO) && ARDUINO >=100 +#include "Arduino.h" +#else +#include +#endif + +#include "printhex.h" +#include "hexdump.h" +#include "message.h" +#include "confdescparser.h" +#include "hid.h" + +struct GamePadEventData +{ + uint8_t X, Y; +}; + +class JoystickEvents +{ +public: + virtual void OnGamePadChanged(const GamePadEventData *evt); + virtual void OnButtonUp(uint8_t but_id); + virtual void OnButtonDn(uint8_t but_id); + +uint8_t X; +uint8_t Y; + +boolean Butt0; +boolean Butt1; + +}; + +#define RPT_GEMEPAD_LEN 5 + +class JoystickReportParser : public HIDReportParser +{ + JoystickEvents *joyEvents; + + uint8_t oldPad[RPT_GEMEPAD_LEN]; + uint8_t oldHat; + uint16_t oldButtons; + +public: + JoystickReportParser(JoystickEvents *evt); + + virtual void Parse(HID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf); +}; + +#endif // __HIDJOYSTICKRPTPARSER_H__ diff --git a/USB_Joystick/Arduino/digital_pot/digital_pot.ino b/USB_Joystick/Arduino/digital_pot/digital_pot.ino deleted file mode 100644 index 5783947..0000000 --- a/USB_Joystick/Arduino/digital_pot/digital_pot.ino +++ /dev/null @@ -1,90 +0,0 @@ -/* - Digital Pot Control - - Based on the original sketch for AD5206.... - - This example controls a Microchip digital potentiometer. - The MCP42 has 2 potentiometer channels. Each channel's pins are labeled - PAx - connect this to voltage - PWx - this is the pot's wiper, which changes when you set it - PBx - connect this to ground. - - The MCP42 is SPI-compatible,and to command it, you send two bytes: - - The first byte is the Command Byte which has this format when - the next byte is to be data: XX01XXpp - note these bits ...............^^.... the 01 means the next byte is data - (where pp = potentiometer selection, X= don't care) - pp= 00 = dummy code, no pot selected - pp= 01 = pot0 - pp= 10 = pot1 - pp= 11 = both pots - - Simplest case is to have X= 0 so the Command Byte will be: - pp= 00: 00010000 = 16 - pp= 01: 00010001 = 17 - pp= 10: 00010010 = 18 - pp= 11: 00010011 = 19 - - The second byte is the resistance value for the channel (0 - 255). - - The circuit: - * All PA pins of MCP42 connected to +5V - * All PB pins of MCP42 connected to ground - * An LED and a 220-ohm resisor in series connected from each PW pin to ground - * CS - to digital pin 10 (SS pin) - * SI - to digital pin 11 (MOSI pin) - * SCK - to digital pin 13 (SCK pin) - - created 10 Aug 2010 - by Tom Igoe - - Thanks to Heather Dewey-Hagborg for the original tutorial, 2005 - - Version for MCP42xx April 2013, Jim Brown - -*/ - - -// include the SPI library: -#include - - -// set pin 4 as the slave select for the digital pot: -const int slaveSelectPin = 4; - -void setup() { - // set the slaveSelectPin as an output: - pinMode (slaveSelectPin, OUTPUT); - // initialize SPI: - SPI.begin(); -} - -void loop() { - // go through pp=01, 10, 11 for pot0, pot1 and both together of the digital pot: - for (int CommandByte = 17; CommandByte < 19; CommandByte++) { // 17, 18 and 19 - // change the resistance on this pot from min to max: - for (int level = 0; level < 255; level++) { - digitalPotWrite(CommandByte, level); - delay(10); - } - // wait at the top: - delay(100); - // change the resistance on this channel from max to min: - for (int level = 0; level < 255; level++) { - digitalPotWrite(CommandByte, 255 - level); - delay(10); - } - } - -} - -int digitalPotWrite(int CommandByte, int value) { - // take the SS pin low to select the chip: - digitalWrite(slaveSelectPin,LOW); - // send in the address and value via SPI: - SPI.transfer(CommandByte); - SPI.transfer(value); - // take the SS pin high to de-select the chip: - digitalWrite(slaveSelectPin,HIGH); -} diff --git a/USB_Joystick/Arduino/sketch_oct28a/sketch_oct28a.ino b/USB_Joystick/Arduino/sketch_oct28a/sketch_oct28a.ino deleted file mode 100644 index 54b04a6..0000000 --- a/USB_Joystick/Arduino/sketch_oct28a/sketch_oct28a.ino +++ /dev/null @@ -1,52 +0,0 @@ - - -// inslude the SPI library: -#include - - -// set pin 10 as the slave select for the digital pot: -const int slaveSelectPin = 4; - -void setup() { - // set the slaveSelectPin as an output: - pinMode (slaveSelectPin, OUTPUT); - // initialize SPI: - SPI.begin(); -} - -void loop() { - - int channel = 5; - float foo = .21; - - - - delay(1000); - - -// change the resistance on this channel from min to max: - for (int level = 0; level < 255; level++) { - digitalPotWrite(channel, level); - digitalPotWrite(channel - 1, level * foo); - delay(10); - } - // wait a second at the top: - delay(1000); - // change the resistance on this channel from max to min: - for (int level = 0; level < 255; level++) { - digitalPotWrite(channel, 255 - level); - digitalPotWrite(channel - 1, (255 - level) * foo); - delay(10); - } - -} - -void digitalPotWrite(int address, int value) { - // take the SS pin low to select the chip: - digitalWrite(slaveSelectPin,LOW); - // send in the address and value via SPI: - SPI.transfer(address); - SPI.transfer(value); - // take the SS pin high to de-select the chip: - digitalWrite(slaveSelectPin,HIGH); -} diff --git a/USB_Joystick/PCB/USB_Joystick-rev2.fzz b/USB_Joystick/PCB/USB_Joystick-rev2.fzz new file mode 100644 index 0000000000000000000000000000000000000000..902204b7d1934dc20e4631a5190de673998b196a GIT binary patch literal 25468 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