[<< | Prev | Index | Next | >>]

Friday, June 04, 2021

Changing an UltraStik 360 ID in linux

[Nerdy stuff of possible interest to MAME gamers and such]

I recently bought a couple of Ultrastik 360s and needed to change the ID of the second one to be player 2. The linux utility they provide turns out to be for the prior firmware revision, so who knows what would have happened if I'd managed to compile it but fortunately I didn't.

As often happens, I quickly ascertained it would take me less time to write my own utility than to find or compile someone else's, so I did. (In the process I found someone else's but it was much heavier weight than I needed and not in python.)

Here's a simple python script to change the ID of your UltraStik 360 (as of 2021 -- this wont work on a pre-2015 model unless you've updated the firmware).


It worked for me, but I was biting my nails the first and only time I ran it since I didn't know if it was going to: A) do nothing, B) brick my joystick, C) work. Fortunately it was (C).

Here's the python source file: change_ultrastik_id

It uses libusb1 which may not be installed by default, so:

> sudo apt install python3-libusb1
> chmod a+x change_ultrastik_id
> sudo ./change_ultrastik_id

You might not need to run it as root (sudo) depending on your device permissions. (Try first without -- it will tell you.)

I won't be insulted if you read it before running it. :) It's mostly cautious preamble, with just a few lines to acquire the device, and a single active command to send the update code.

The basic method and constants were borrowed from here.

[<< | Prev | Index | Next | >>]

Simon Funk / simonfunk@gmail.com