• Sneezycat
    link
    fedilink
    arrow-up
    3
    ·
    edit-2
    4 months ago

    I got the 8bitdo ultimate 2 wireless to replace my Xbox one controller. Other than the confusing as hell naming scheme, I like it, but it has its quirks:

    -Gyro works fine, but only in Bluetooth mode, so I can’t use it on my PC with the 2.4GHz dongle.

    -The firmware upgrade software is not on Linux, so you need a windows machine to update it.

    -Sometimes it bugs out, holding the last joystick position, and you have to reboot it to fix it. Almost got me killed on a honor mode run of DOS2.

    Also, I wish it had capacitive joysticks to activate the gyro. But other than that, it’s pretty feature-complete.

    It seems that the upcoming Steam Controller does everything this controller can, and fixes my problems with it. So I’ll probably get one of those next. But the 8bitdo still is the best controller I’ve had so far.

    Edit: actually, if anyone else is interested, you can actually update the controller on linux, through a bit of hackery. I followed this guide, which I’ll copy:

    In this guide i will teach you how to run 8BitDo Ultimate software v2 under Linux
    Some people tried running it under clear wine and failed, i found out the issue, you need tts-ms-win10
    https://github.com/streetsamurai00mi/ttf-ms-win10 All you have to do is follow installation guide on this repo
    After you successfully launched your software, you have to map udev rules
    At first, type lsusb. It will list your usb devices. Find your device there. I am using keyboard as an example
    Bus 003 Device 013: ID 2dc8:5200 8BitDo 8BitDo Retro Keyboard
    Do the same for wireless usb dongle
    Now, we have to create the rule. I am using Kate as an example
    kate /etc/udev/rules.d/99-8bitdo.rules
    Input your rules there, here`s an example
    SUBSYSTEM=="hidraw", ATTRS{idVendor}=="2dc8", ATTRS{idProduct}=="5200", MODE="0666"
    SUBSYSTEM=="hidraw", ATTRS{idVendor}=="2dc8", ATTRS{idProduct}=="5201", MODE="0666"
    idvendor is the first line in bold text, idproduct is second
    5200 is my keyboard, 5201 is usb dongle
    Now, reload udev rules and your done
    sudo udevadm control --reload-rules
    sudo udevadm trigger
    If you found this guide helpful, upvote for others to see it!
    

    I may actually be able to use gyro with the dongle now :o

    Edit 2: indeed, gyro works! I had to follow another guide though.

    The important bits:

    • Turn the controller on in DInput mode by holding B while pressing the home button to turn it on.

    • Add these udev rules in /etc/udev/rules.d/71-8bitdo-u2w.rules:

    # 2.4GHz/Dongle
    KERNEL=="hidraw*", ATTRS{idProduct}=="6012", ATTRS{idVendor}=="2dc8", MODE="0660", TAG+="uaccess"
    # Bluetooth
    KERNEL=="hidraw*", KERNELS=="*2DC8:6012*", MODE="0660", TAG+="uaccess"
    

    And reboot or reload the rules (sudo udevadm control --reload)