Sixpair-emu customizer

The final sixpair-emu firmware for the Teensy++ is available there.

I wrote a small python app that makes the customization of the sixpair-emu easier: nothing to compile, no firmware to download (except the pre-compiled initial one) to the Teensy++!

It looks like this:


Disclaimer:

  • use it at your own risk
  • the (vendor id, product id) = (0x054c, 0x0268) is the property of Sony

Instructions:

  • plug the Teensy++ to the PC
  • download the firmware to the Teensy++ with the Teensy loader
  • if the bluetooth device to be used is a dongle, then plug it to the PC (if external)
  • launch the sixpair-emu customizer
  • select the Teensy++
  • select the bluetooth device, or select and edit custom bdaddr
  • select the (vendor id – product id): sixaxis = 0x054c – 0x0268, original firmware = 0x03eb – 0x2042
  • clic apply (if there is no change, the application tells nothing was modified)
  • unplug the Teensy++
  • plug it to the PS3

=> the bluetooth device is registered as a Sixaxis by the PS3, so that it can connect to the PS3 as a sixaxis!

If a Teensy++ or a bluetooth device is plugged after the application is started, the refresh button allows to refresh the gui without restart.

Python code is available there.

Ubuntu:

It requires following packages:

  • python 2.6.5
  • python-tk
  • libusb > 1.0
  • pyusb > 1.0
  • pybluez 0.18

It has to be launched in a terminal with the following command:

sudo python sixp-emu-cust.py

Windows:

(tested in windows vista)

python 2.6.5 (includes python-tk)
libusb filter driver 1.1.14.0
pyusb 1.0.0-a0 (to be installed in cmd shell with ‘setup.py install’)
pybluez 0.18

(the bdaddrs are not read, but custom bdaddr can be set)

4 Replies to “Sixpair-emu customizer”

  1. When i try to run sixp-emu-cust.py, it tells me:
    Traceback (most recent call last):
    File "sixp-emu-cust.py", line 5, in
    import usb.core
    ImportError: No module named core
    What do I do?
    I have pyusb installed :s

Leave a Reply

Your email address will not be published. Required fields are marked *