UNO Q, USBC dongle issue

I just received the arduino uno Q , my usbc dongle works normally with my pc when i connect my keyboard /mouse, when i plug it to the arduino ,
it powers on and hdmi works too (it shows the logiv screen, but the keyboard and mouse arent powered, not sure wats the reason. Help me out.

I'm not an Uno Q user but it might help if you tell us which USB-C dongle you're using. The original Arduino one?

It's my understanding that it might not work with every random dongle.

hi @ventoron

we tested many different dongles out in the market, and the only one that was not working was the apple one.

could be somehow a power related issue ?

look at this doc, are your supplying 5V/3A ?

https://docs.arduino.cc/tutorials/uno-q/single-board-computer/

@AndreaRichetta

Can you share a link to what you call the Apple USB-C dongle?

(post deleted by author)

Thank your for the quick response:
I am using this dongle:

STRIFF USB Type-C Hub Dock, 8-in-1 HDCP Aluminium Adapter with 4K HDMI & Ethernet Port,100mbps, Power Delivery, TF/SD Card Reader, Mac & Windows USB-C & 3.0 Devices

And yes I am powering it with 5V 3A

I received the UNO Q yesterday and I try to connect it with a NOVOO 11 in 1 RM11 Docking Station and there is no signal on HDMI or VGA. I use a 5V 3A charger on PW port. The arduino boot and works fine. I can log in with SSH. Docking station USB ports and Ethernet are OK but nothing on HDMI.

Thank you for your help

Hi guys, if the board is actually well powered (eg. the animation on the led matrix ā€œfinishesā€ also when connected via a dock) the video converter chip should be operational.

The black screen could be triggered by an issue with hotplug (which is not yet working as expected, so the monitor should be connected at the board power up) or because the video converter inside the dongle is doing nasty stuff with the monitor EDID.

To debug this, I’m writing a small tutorial that I’ll paste here in the next few hours.

In the meantime, I took a look at the problematic dongles and:

  • NOVOO 11 in 1 RM11 has 3 video out, but we only support one in DP alt mode, so it might require additional drivers (or maybe only one of the ports is active by default)
  • STRIFF USB Type-C Hub Dock, 8-in-1 HDCP looks like a rebranding of a dongle we tested successfully, so in this case it might be something related to the monitor
3 Likes

could you clarify which Apple dongle does not work ?

  • send the attached kernel to the board with your preferred method
    -> eg: adb push linux-image-6.16.7-g3370b31815a9_6.16.7-g3370b31815a9-1_arm64.deb /home/arduino/
  • install the kernel with
    -> sudo dpkg -i linux-image-6.16.7-g3370b31815a9_6.16.7-g3370b31815a9-1_arm64.deb
  • sync and reboot to make sure the kernel has been successfully installed
    -> check the version with uname -a
  • connect the board to the dock and the monitor, wait a minute or until the bootanimation starts the heartbeat
  • either connect via SSH with the board still connected or disconnect the dock and connect to a pc; extract the kernel log
    -> via ssh: just type dmesg | grep anx
    -> on a computer: type journalctl -b-1 | grep anx (which means, shouw me the log of last boot)
  • paste it here so we can debug what's going on :slight_smile:

Thanks for your cooperation

2 Likes

This one is surely problematic, since it ā€œhidesā€ the power delivery capabilities of the power supply and only provides 500mA @ 5V (or higher power @18V, which we don’t support).

So the board may spontaneously reboot under heavy load.

thx

OK - yes powering through USB C as they say

is definitely designed with charging the Mac, iPad or iPhone in mind. If it's not an apple device on the other end, it falls back to classic USB power ( I think Mac can charge at 18V or higher, iPad 9V or 14.5V and iPhones usually charge at 5V or 9V via PD - so probably more output ranges are possible but may be not if it's not one of Apple's devices )

Thank you!

Thank you ! I followed the hdmi connecting part after booting up and it worked!

1 Like
dmesg | grep anx
[    4.896414] anx7625 1-0058: init gpio
[    4.900275] anx7625 1-0058: no enable gpio found
[    4.906029] anx7625 1-0058: no reset gpio found
[    4.911454] anx7625 1-0058: not low power mode.
[    4.917893] anx7625 1-0058: found MIPI DSI host node.
[    4.936191] anx7625 1-0058: attach dsi
[    5.009907] anx7625 1-0058: drm attach
[    5.013955] anx7625 1-0058: not low power mode!
[    5.021522] anx7625 1-0058: Firmware ver 1410,
[    5.026016] anx7625 1-0058: Driver version 0.1.04
[    5.072957] anx7625 1-0058: drm bridge detect
[    5.077382] anx7625 1-0058: sink detect
[    5.091075] anx7625 1-0058: drm bridge detect
[    5.092198] anx7625 1-0058: attach dsi succeeded.
[    5.095508] anx7625 1-0058: sink detect
[    5.102875] anx7625 1-0058: bound to hdmi-audio-codec
[    5.105832] anx7625 1-0058: 0x7e:0x44=70
[    5.109152] anx7625 1-0058: probe done
[   12.192515] anx7625 1-0058: sink detect
[   16.833711] anx7625 1-0058: drm bridge detect
[   16.838144] anx7625 1-0058: sink detect
[   16.845627] anx7625 1-0058: drm bridge detect
[   16.850055] anx7625 1-0058: sink detect
[   21.619996] anx7625 1-0058: sink detect
[   21.623931] anx7625 1-0058: DP not connected
[   21.659454] anx7625 1-0058: stop audio
[   22.124897] anx7625 1-0058: stop audio
[   22.226515] anx7625 1-0058: stop audio
[   22.240017] anx7625 1-0058: stop audio
[  103.253576] anx7625 1-0058: sink detect
[  103.257559] anx7625 1-0058: DP not connected
[  103.293800] anx7625 1-0058: stop audio
[  103.692914] anx7625 1-0058: stop audio
[  103.844041] anx7625 1-0058: stop audio
[  103.858997] anx7625 1-0058: stop audio

@bborredon we just tested the NOVOO 11 in 1 RM11 and all 3 output are working (and showing the same desktop, so ā€œmirror modeā€ . Did you have any luck in getting it to work? From the log it looks like no connection event is triggered DP not connected . This might indicate that the monitor is not powered up/connected when the board boots (or the cable is not fully inserted)

I bought the ACT AC7022 USB-C hub sold on the Arduino Store and it works perfectly with the UNO Q as expected.

I thought it would be interesting to see what sort of results I would get from the opposite end of the budget spectrum and so bought the cheapest hub with HDMI on Amazon, which at the time was this:

The display works as expected, but the keyboard and mouse are not recognized on the UNO Q. I don't see any effect via lsusb or dmesg when I connect/disconnect the keyboard or mouse to the hub. I do see an effect when I connect a powered standard USB hub to the USB-C hub (but not when I connect an unpowered hub to it), but still nothing if I connect the keyboard or mouse to that powered hub.

They are recognized when I connect the hub to my Windows or macOS computers. On those machines, the hub is identified as having the VID/PID pair 214b:7250 ("Huasheng Electronics USB2.0 HUB"):

Here is what I get:

arduino@margo:/$ journalctl -b-1 | grep anx
Nov 23 05:38:07 margo kernel: anx7625 1-0058: init gpio
Nov 23 05:38:07 margo kernel: anx7625 1-0058: no enable gpio found
Nov 23 05:38:07 margo kernel: anx7625 1-0058: no reset gpio found
Nov 23 05:38:07 margo kernel: anx7625 1-0058: not low power mode.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: found MIPI DSI host node.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: attach dsi
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm attach
Nov 23 05:38:07 margo kernel: anx7625 1-0058: not low power mode!
Nov 23 05:38:07 margo kernel: anx7625 1-0058: Firmware ver 1410,
Nov 23 05:38:07 margo kernel: anx7625 1-0058: Driver version 0.1.04
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm bridge detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm bridge detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: attach dsi succeeded.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: bound to hdmi-audio-codec
Nov 23 05:38:07 margo kernel: anx7625 1-0058: probe done
Nov 23 05:38:07 margo kernel: anx7625 1-0058: 0x7e:0x44=f4
Nov 23 05:38:07 margo kernel: anx7625 1-0058: 0x7e:0x45=b5
Nov 23 05:38:07 margo kernel: anx7625 1-0058: dp_hpd_change_default_func: 1
Nov 23 05:38:07 margo kernel: anx7625 1-0058:  HPD high
Nov 23 05:38:07 margo kernel: anx7625 1-0058: Secure OCM version=00
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm bridge detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm bridge detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm bridge detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm bridge get edid
Nov 23 05:38:07 margo kernel: anx7625 1-0058:  EDID Block = 2
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode fixup set
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode set
Nov 23 05:38:07 margo kernel: anx7625 1-0058: pixelclock(154000).
Nov 23 05:38:07 margo kernel: anx7625 1-0058: hactive(1920), hsync(32), hfp(48), hbp(80)
Nov 23 05:38:07 margo kernel: anx7625 1-0058: vactive(1200), vsync(6), vfp(3), vbp(26)
Nov 23 05:38:07 margo kernel: anx7625 1-0058: hdisplay(1920),hsync_start(1968).
Nov 23 05:38:07 margo kernel: anx7625 1-0058: hsync_end(2000),htotal(2080).
Nov 23 05:38:07 margo kernel: anx7625 1-0058: vdisplay(1200),vsync_start(1203).
Nov 23 05:38:07 margo kernel: anx7625 1-0058: vsync_end(1209),vtotal(1235).
Nov 23 05:38:07 margo kernel: anx7625 1-0058: config dsi.
Nov 23 05:38:07 margo kernel: anx7625 1-0058: compute M(10092544), N(442368), divider(4).
Nov 23 05:38:07 margo kernel: anx7625 1-0058: success to config DSI
Nov 23 05:38:07 margo kernel: anx7625 1-0058: drm mode fixup set
Nov 23 05:38:11 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:15 margo kernel: anx7625 1-0058: drm mode fixup set
Nov 23 05:38:15 margo kernel: anx7625 1-0058: drm mode fixup set
Nov 23 05:38:15 margo kernel: anx7625 1-0058: drm mode fixup set
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm bridge detect
Nov 23 05:38:16 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm bridge detect
Nov 23 05:38:16 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm bridge get edid
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:16 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm bridge detect
Nov 23 05:38:17 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm bridge detect
Nov 23 05:38:17 margo kernel: anx7625 1-0058: sink detect
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm bridge get edid
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode checking
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode valid.
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode fixup set
Nov 23 05:38:17 margo kernel: anx7625 1-0058: drm mode fixup set

I'm not fussed about not being able to use the cheapo hub with my UNO Q, but since the hobbyist segment of the user base tends to like to use bargain parts, it seems likely that others will also attempt to use these hubs (or others with equivalent hardware) with their UNO Q. So maybe worthwhile to see if there is a way to achieve support for it.

1 Like

I want to share my observations regarding the USB Hub issue with the Arduino UNO Q.

I tested using this hub:

Here are the exact behaviours I noticed:

  1. None of the USB ports on the hub work (mouse/keyboard), but HDMI always works.

  2. Sometimes the USB devices work if I plug and unplug my wireless mouse during boot.
    This only works occasionally — about 1 or 2 times out of 10.

  3. I connected an additional USB cable providing only 5V and GND from my laptop
    to the Arduino’s 5V and GND pins.
    The hub (with HDMI and mouse connected) was plugged in but without external power.
    After the Arduino shows the 3rd animation during boot,
    I plugged in power to the hub.
    In this sequence the USB devices work almost every time.

  4. When I see the full boot logs on the HDMI monitor,
    the mouse and keyboard always work.
    If I only see the final login screen (without the boot messages),
    then the USB ports do not work.

1 Like

Based on statement 3, PD power is only turn on after UNO Q show 3rd animation during boot, situation like this is not good, if it happens to other brand of HDMI hubs, kind of troublesome.

I can only tell after receiving my UNO Q next year, but I already bought two different models of UGREEN brand.

I am using this one and it has been working.

2 Likes