AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |
Back to Blog
![]() Hi, I've managed to get the 16 bit 8 axes + 4 hats working with Teensy 3.0.Īttached are the 4 changed files from the teens圓 dir. ![]() You'll probably want to pore over the other files within usb_serial_hid as there's more to tweaking stuff than the two files I mentioned. Before you touch anything in usb.c make sure you read his tutorial on HID reports (). I learned a lot about USB HID Reports from Frank Zhao. In usb.c you'll find all the HID report descriptions. In usb_private.h you can adjust the device name, manufacturer name, serial number, vendor ID and product ID. Assuming you're creating a "Serial + Keyboard + Mouse + Joystick" device, you'll want to look at these files (starting at /hardware/teensy/cores): Program Files (x86)/Arduino/hardware/teensy/coresĪssuming you have the latest Teensyduino installed you'll have the following directories:ĭepending on the board (Teensy 3.x vs Teensy 2, etc) and device USB type (Serial, Serial+Joystick, etc), you'll find what you're looking for in different places. Applications/Arduino.app/Contents/Resources/Java/hardware/teensy/cores On OSX you can find all of the Teensy libraries here: I'm not sure of the exact location on Ubuntu, but the location of the Teensy libs might follow a similar pattern as OSX or Windows. Input (Cnst,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 03įeature (Data,Var,Abs,NWrp,Lin,Pref,NNul,NVol,Bit) B1 02Įnd Collection - my knowledge on this is still forming since I've just started trying to sort this all out myself. Input (Data,Var,Abs,NWrp,Lin,Pref,Null,Bit) 81 42 Input (Data,Var,Abs,NWrp,Lin,Pref,NNul,Bit) 81 02 Interface 0 HID Report Descriptor Joystick Here is the device descriptor for the BU0836A:Ĥ bDeviceClass 1 00h Class info in Ifc DescriptorsĬonfiguration Descriptor 1 Bus Powered, 100 mAĮndpoint Descriptor 81 1 In, Interrupt, 4 ms I can only access up to the 8th axis.Ġx05, 0x01, // USAGE_PAGE (Generic Desktop)Ġx26, 0xff, 0x00, // LOGICAL_MAXIMUM (255) However the axes are not shown in the Windows descriptor nor are their values visible in any way I can test. Well, it doesn't error when there are more than 8 axes available at any point in development. You can learn more about them from the USB HID Usage Tables.Ġx05, 0x01, /* Usage Page (Generic Desktop) */Ġxa1, 0x01, /* Collection (Application) */ This is the HID descriptor for the joystick. HID descriptor is listed on the project web page at : Here is another project using an Arduino that supports 40 buttons and 8 axes. In fact, I probably will wait to work on it until at least a couple people have volunteered here to help test. ![]() I *really* need your help with testing, when I work on this. I'm also hoping anyone interested in many-asix joystick support will subscribe to this thread. I need the actual HID descriptors from these devices, or some other way of figuring out how to write the descriptors so Windows will recognize the device and show it properly. This forum topic is my reminder to again investigate 8 (or more) axis support. This product implements 8 and has screenshots of the Windows control panel. Robert Ferguson send me a link to this project which seems to work with 7 axes. With limited time, I reverted to the 6 axis HID descriptor from Teensy 2.0. Windows seemed to detect the device, but it would not show up in the Joystick control panel as 8 axes. When I wrote the Teensy 3.0 version, I briefly tried 8 axes, but ran into trouble. Teensyduino currently implements a 6 axis joystick. Moderator Edit: the latest many-axis source code is attached to reply #36 (). ![]()
0 Comments
Read More
Leave a Reply. |