Solved 8BitDo USB Wireless Adapter 2 disconnects instantly

Recently I purchased the SN30 Pro Bluetooth gamepad from 8BitDo. Because the bluetooth support by FreeBSD is rather lackluster (and my desktop doesn't have bluetooth) I also bought the USB Wireless Adapter 2 from 8BitDo, so the gamepad could do its bluetooth stuff with the dongle and FreeBSD just handles it as an USB gamepad device. Upon plugging the adapter into the system it gets seen as gamepad and hgame(4) actually picks it up, but it gets disconnected multiple times. This is the corresponding dmesg(8) output:

Code:
[25729] usbhid3 on uhub0
[25729] usbhid3: <8BitDo 8BitDo Receiver, rev 2.00/1.00, addr 6> on usbus0
[25729] hidbus3: <HID bus> on usbhid3
[25730] ugen0.2: <8BitDo 8BitDo Receiver> at usbus0 (disconnected)
[25730] usbhid3: at uhub0, port 4, addr 6 (disconnected)
[25730] hidbus3: detached
[25730] usbhid3: detached
[25730] ugen0.2: <8BitDo Controller> at usbus0
[25730] usbhid3 on uhub0
[25730] usbhid3: <8BitDo Controller, rev 2.00/1.14, addr 7> on usbus0
[25730] hidbus3: <HID bus> on usbhid3
[25731] ugen0.2: <8BitDo Controller> at usbus0 (disconnected)
[25731] usbhid3: at uhub0, port 4, addr 7 (disconnected)
[25731] hidbus3: detached
[25731] usbhid3: detached
[25731] ugen0.2: <Nintendo Co., Ltd. Pro Controller> at usbus0
[25731] usbhid3 on uhub0
[25731] usbhid3: <Nintendo Co., Ltd. Pro Controller, class 0/0, rev 2.00/2.10, addr 8> on usbus0
[25731] hidbus3: <HID bus> on usbhid3
[25731] hgame0: <Nintendo Co., Ltd. Pro Controller Joystick> on hidbus3
[25732] ugen0.2: <Nintendo Co., Ltd. Pro Controller> at usbus0 (disconnected)
[25732] usbhid3: at uhub0, port 4, addr 8 (disconnected)
[25732] hgame0: detached
[25732] hidbus3: detached
[25732] usbhid3: detached
[25732] ugen0.2: <8BitDo 8BitDo Receiver> at usbus0
[25732] usbhid3 on uhub0
[25732] usbhid3: <8BitDo 8BitDo Receiver, rev 2.00/1.00, addr 9> on usbus0
[25732] hidbus3: <HID bus> on usbhid3
[25733] ugen0.2: <8BitDo 8BitDo Receiver> at usbus0 (disconnected)
[25733] usbhid3: at uhub0, port 4, addr 9 (disconnected)
[25733] hidbus3: detached
[25733] usbhid3: detached
[25734] ugen0.2: <8BitDo Controller> at usbus0
[25734] usbhid3 on uhub0
[25734] usbhid3: <8BitDo Controller, rev 2.00/1.14, addr 10> on usbus0
[25734] hidbus3: <HID bus> on usbhid3
[25735] ugen0.2: <8BitDo Controller> at usbus0 (disconnected)
[25735] usbhid3: at uhub0, port 4, addr 10 (disconnected)
[25735] hidbus3: detached
[25735] usbhid3: detached
[25735] ugen0.2: <Nintendo Co., Ltd. Pro Controller> at usbus0
[25735] usbhid3 on uhub0
[25735] usbhid3: <Nintendo Co., Ltd. Pro Controller, class 0/0, rev 2.00/2.10, addr 11> on usbus0
[25735] hidbus3: <HID bus> on usbhid3
[25735] hgame0: <Nintendo Co., Ltd. Pro Controller Joystick> on hidbus3
[25736] ugen0.2: <Nintendo Co., Ltd. Pro Controller> at usbus0 (disconnected)
[25736] usbhid3: at uhub0, port 4, addr 11 (disconnected)
[25736] hgame0: detached
[25736] hidbus3: detached
[25736] usbhid3: detached
[25737] ugen0.2: <8BitDo IDLE> at usbus0
[25737] usbhid3 on uhub0
[25737] usbhid3: <8BitDo IDLE, class 0/0, rev 1.10/2.00, addr 12> on usbus0
[25737] hidbus3: <HID bus> on usbhid3

At the end the adapter is recognized as "8BitDo IDLE" and not as a gamepad, hgame(4) gets detached multiple times.
Any ideas to diagnose and fix this?
 
Solved it! I updated the firmware of both devices to the latest version. Now it works. When you activate the gamepad and pair it with the adapter, the device changes from "8BitDo IDLE" to "8BitDo 8BitDo Receiver" and hgame(4) attaches to it:

Code:
[36557] usbhid3 on uhub1
[36557] usbhid3: <8BitDo 8BitDo Receiver, rev 2.00/1.00, addr 56> on usbus0
[36557] hidbus3: <HID bus> on usbhid3
[36558] ugen0.2: <8BitDo 8BitDo Receiver> at usbus0 (disconnected)
[36558] usbhid3: at uhub1, port 4, addr 56 (disconnected)
[36558] hidbus3: detached
[36558] usbhid3: detached
[36558] ugen0.2: <8BitDo Controller> at usbus0
[36558] usbhid3 on uhub1
[36558] usbhid3: <8BitDo Controller, rev 2.00/1.14, addr 57> on usbus0
[36558] hidbus3: <HID bus> on usbhid3
[36558] ugen0.2: <8BitDo Controller> at usbus0 (disconnected)
[36558] usbhid3: at uhub1, port 4, addr 57 (disconnected)
[36558] hidbus3: detached
[36558] usbhid3: detached
[36559] ugen0.2: <8BitDo IDLE> at usbus0
[36559] usbhid3 on uhub1
[36559] usbhid3: <8BitDo IDLE, class 0/0, rev 1.10/2.00, addr 58> on usbus0
[36559] hidbus3: <HID bus> on usbhid3
[36580] ugen0.2: <8BitDo IDLE> at usbus0 (disconnected)
[36580] usbhid3: at uhub1, port 4, addr 58 (disconnected)
[36580] hidbus3: detached
[36580] usbhid3: detached
[36580] ugen0.2: <8BitDo 8BitDo Receiver> at usbus0
[36580] usbhid3 on uhub1
[36580] usbhid3: <8BitDo 8BitDo Receiver, class 0/0, rev 2.00/1.00, addr 59> on usbus0
[36580] hidbus3: <HID bus> on usbhid3
[36580] hgame0: <8BitDo 8BitDo Receiver Gamepad> on hidbus3
 
Back
Top