Page 1 of 1

USB Hub v2.1 and bluetooth (Updated with log info)

Posted: Tue Feb 23, 2021 3:35 pm
by geiger9
This is related to an issue with the 2.1 MiSTer USB hub and bluetooth adapters. I didn't update my previous thread because visibility and also I feel like I was bringing a lot of new data plus it's not specific to 8bitdo anymore.

I've determined how much power each of my USB devices is drawing.
8Bitdo BT dongle - 0.5A
8Bitdo M30 2.4ghz dongle - 0.1A
Generic BT dongle - 0.1A
Logitech unifying receiver (2.4ghz) - 0.1A
Wired SN30 controller - 0.48A
Wired N30 controller - 0.48A
keyboard - 0.1A

If I plug in the wired SN30, a keyboard, and the M30 2.4ghz dongle, there are NO issues. Total amps demanded is 0.68A

If I plug in the generic BT dongle, the SN30, the N30, plus a keyboard, there are NO issues. Total amps demanded is 1.16A.

If I connect the generic BT dongle plus the M30 2.4ghz dongle (or the Logitech receiver), the LED indicator on the USB port for the BT dongle starts to blink. Total amps demanded is 0.2A.

If I connect the M30 2.4ghz dongle plus Logitech unifying receiver, this works fine. The Logitech receiver operates on 2.4ghz as well.

If I connect the generic BT dongle and the 8bitdo BT dongle, the generic dongle USB LED indicator starts to blink.

What is going on here? It can't be a power issue since the hub had no issues providing 1.16A. This is assuming that the LED indicators on the USB hub only indicate that the device has power.

Has anyone else used a generic BT dongle on the hub alongside a 2.4ghz M30 without issue?

Update: Someone on the MiSTer FPGA Computer Facebook group said this,
The MiSTer USB HUB v2.1 is known for having a 2-layer layout, without a reference ground plane under the upstream USB port which concentrates all the traffic with the DE10-Nano. Wrong return path in GND and wrong 90-differential impedance transmission lines without the reference ground plane on that upstream port... and other “features” implemented for DIY “AS IS”...
That board works well for low-speed connections and few USB endpoints.
If you are intended to mix full-speed and several high-speed peripherals you better use an external USB HUB, professionally implemented by any hardware manufacturer.
Hope this comment helps understand your MiSTer related issue.
What do you make of that?

Update Feb 25: This is what the logs say about the dongles disconnecting:

Feb 25 15:21:28 MiSTer daemon.info bluetoothd[1273]: Adapter /org/bluez/1273/hci0 has been disabled
Feb 25 15:21:28 MiSTer daemon.info bluetoothd[1273]: Unregister path: /org/bluez/1273/hci0
Feb 25 15:21:28 MiSTer user.info kernel: [ 737.965101] usb 1-1.4: new full-speed USB device number 116 using dwc2
Feb 25 15:21:28 MiSTer user.info kernel: [ 737.997152] input: MiSTer virtual input as /devices/virtual/input/input4
Feb 25 15:21:28 MiSTer user.info kernel: [ 738.061506] usb 1-1.4: New USB device found, idVendor=0a12, idProduct=0001, bcdDevice=88.91
Feb 25 15:21:28 MiSTer user.info kernel: [ 738.061519] usb 1-1.4: New USB device strings: Mfr=0, Product=2, SerialNumber=0
Feb 25 15:21:28 MiSTer user.info kernel: [ 738.061527] usb 1-1.4: Product: CSR8510 A10
Feb 25 15:21:28 MiSTer daemon.err bluetoothd[1273]: Parsing /etc/bluetooth/serial.conf failed: No such file or directory
Feb 25 15:21:28 MiSTer daemon.err bluetoothd[1273]: Could not get the contents of DMI chassis type
Feb 25 15:21:28 MiSTer daemon.err bluetoothd[1273]: Unknown command complete for opcode 19
Feb 25 15:21:28 MiSTer user.info kernel: [ 738.529777] usb 1-1.4: USB disconnect, device number 116
Feb 25 15:21:30 MiSTer daemon.info bluetoothd[1273]: Adapter /org/bluez/1273/hci0 has been enabled
Feb 25 15:21:30 MiSTer daemon.info bluetoothd[1273]: Adapter /org/bluez/1273/hci0 has been disabled
Feb 25 15:21:30 MiSTer daemon.info bluetoothd[1273]: Unregister path: /org/bluez/1273/hci0

This pattern repeats over and over but each time the device number increases by 1