Hello everyone
A few months ago I bought a usb host shield, to mount a usb-usb converter (like this one https://yaowei.dev/posts/usb-to-usb-converter/, for example).
It is supposed to be able to directly attach a promicro or similar microcontroller (I have a Chinese clone saved for it).
The right column of the usb host shield is labelled as in the picture:
The problem is that the order on that row of pins should be (from top to bottom), SS-MOSI-MISO-CLK.
Looking into the issue, it's not clear to me if it's a problem with the labelling, or if the MOSI-CLK pins are actually crossed. Most mini USB host shields sold on Aliexpress are labelled like mine; I'm surprised that all of them are wrong.
Thanks in advance.
USB host shield doubt/problem
Actually the labels are saying otherwise, but I don't know if the pins are in correct order.
Well, the promicro (and clones) pinout:
The elite-C one:
and even the new RP2040 based microcontrollers
use the same pin order (from bottom to top, SS, MOSI, MISO, CLK)
So I wonder why a board intended to work alongside (literally, pin-to-pin) with this class of devices, has a pair of twisted pins.
Thanks for reading.
- Bjerrk
- Location: Copenhagen, Denmark
- Main keyboard: Cherry G80-1800 & Models F & M
- Main mouse: Mouse Keys, Trackpoint, Trackball
- Favorite switch: IBM Buckling Springs+Beamspring, Alps Plate Spring
I had (have, really) the same problem! In fact, I still have a non-functional pro micro/USB host shield wired up somewhere on my desk ...
Anyway, I think the source of the problem is explained here:
https://forum.arduino.cc/t/usb-host-min ... spi/314349
As I understand it, it mimicks the Pro Mini pinout rather than the Pro Micro!
Anyway, I think the source of the problem is explained here:
https://forum.arduino.cc/t/usb-host-min ... spi/314349
As I understand it, it mimicks the Pro Mini pinout rather than the Pro Micro!
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
This rings a bell. I looked into USB to USB, and therefore USB host shields, a few years ago when investigating making an internal converter for my Realforce. (I wanted to make it Bluetooth, which is more trouble still.)
The appropriately sized USB host shield the tutorials pointed to was long out of production, and I didn't know about these Chinese copies. Before I shelved the project I remember some big gotcha about the shield being for the Pro Mini and needing jumped around a bit for Micro. The smaller shield is effectively a shrunk down version of the widely available big shield, which was indeed aimed for a fatter project board.
I haven't revisited any of this since I bit the bullet and did all my mods with Karabiner.
From what I read in that post, it's a related problem, but it's not what I'm dealing with. It does indeed change the logical pin assignment, which has implications for firmware programming, but physically, the pins are in the same place on the promicro and the promini.Bjerrk wrote: ↑14 Oct 2022, 07:35I had (have, really) the same problem! In fact, I still have a non-functional pro micro/USB host shield wired up somewhere on my desk ...
Anyway, I think the source of the problem is explained here:
https://forum.arduino.cc/t/usb-host-min ... spi/314349
As I understand it, it mimicks the Pro Mini pinout rather than the Pro Micro!
This is the assignment on the pro mini:
(from https://www.etechnophiles.com/arduino-p ... in-detail/)
On the other hand, I found a page (in Japanese, https://ht-deko.com/arduino/shield_usbhost_mini.html)[*] explaining the procedure with the promicro and the differences with the promini. The interesting thing is that in the pictures, the usb shield it uses is labelled like mine (and like most of the ones sold on aliexpress). In fact, I'd say it's exactly the same.
But I'm not sure yet if it's a labeling problem or the pins are really swapped.
Thanks for the help.
[*] It was in the OP's link, but being a Japanese page, I left it pending to read it.
- jsheradin
- Location: USA
Have you wired it up yet? There should be no damage or anything if they're wired backwards. If it doesn't work, try swapping the lines around and try again.
If you want to be extra safe you can add a ~1kOhm series resistor on the data lines. You can also look up the pinout in the datasheet for whatever chip is on the shield and trace the pins back to it visually or with a multimeter.
Not sure what exact chip you have but here's the first one I found:
Finally, I was able to confirm that it is a labelling problem with the USB host shield. After reading your post, I looked up the diagram of my chip (which is the same one you linked to), and followed the path from the corresponding pin to its hole. Indeed, the UHS pins are correctly positioned and incorrectly labelled, as I suspected.
Also, I wrote to Deko (the Japanese guy I mentioned in the OP), who confirmed that the Chinese clones of the UHS must be mislabelled.
I soldered my UHS to the promicro, and it works perfectly. This is what it looks like: Not the best soldering in the world, but it works.
Thank you all for your interest and help.
Best regards.