Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 2 of 2

Thread: Teensy 3.6 Xbox360 USB Passthrough

  1. #1
    Junior Member
    Join Date
    Oct 2018

    Teensy 3.6 Xbox360 USB Passthrough

    Hi everyone !

    For a current project, I need to make a Teensy appear as an XBOX360 controller.

    This is done via the XInput library ( ).
    I have it working fine with a laptop ( the Teensy actually appears as a controller if the driver is installed, & I can send joysticks & buttons states ), but it doesn't handle the "security handshake" ( necessary for it to work on an actual xbox360 console ).

    After some digging, I'm starting to realize that using transistors to 'switch' between the Teensy's & the xbox360 controller's D+ & D- won't do the trick, and that I actually need to act as an USB host on the Teensy to be able of doing 'passthrough' ( xbox360 controller <--> Teensy <--> xbox360 console ).

    From the docs I could find, it seems that once The teensy receives a 3 bytes updates for the xbox360 controller ( regarding rumble, LEDS & cie ) the handshake is ok ( else the console would have stopped communicating a while before that & never send it ).

    From, I deduce that using a Teensy 3.6 I don't need the USB Host shield but instead just a cable ( that I can wire myself, no pb ;p )

    My question is thus the following: what would it take to be able to "pass" stuff received from the xbox360 console to the Teensy-connected xbox360 controller & vice-versa ?

    I already guess that I'll have to modify some of the MSF-XINPUT lib calls, but Im' not sure yet of what this 'd involve on the Teensy Host part ..
    I digged, but it's quite big, hence my post to get answers from others with more knowledge on the subject while I continue digging

    This being said, the above goal is part of a bigger project, which you can find at the following address ( in case anyone's interested ;P )

    Thanks in advance to anyone reading this,
    And keep up the good work everyone

  2. #2
    Join Date
    Jul 2018
    I modified a USB keyboard pass through/key remapper program to use the Teensy 3.6 USB host library. The project also works on a Leonardo/32u4 with USB host shield. The sketch gets the raw HID report from the USB keyboard on the USB host port, modifies the HID report, then sends the HID report out the USB device port to the computer or console. A similar technique may work for the xbox or playstation gamepads.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts