uHub Expansion Card

you got yourself a cool little bookmark now. lol

3 Likes

Gonna tell my kid that was an unreleased prototype of a great all-usb single board computer :laughing:

1 Like

Will uhub be available again on the tindie link? just seeing this now and extremely interested

3 Likes

Is there any way to get another revision or release with a USB-A internal connector put on rather than the flexible ribbon cable footprint…I want to put a Sandisk Ultrafit USB on an internal internal USB connector, have the /boot partition be on a smaller cheap SD card just to boot, then have the root paritition / on the USB internally…this way the OS is on a USB which is more resilient and a little faster read/write than a SD.
I got the uHub boards in, just need to order the components then get them SMD mounted…

It is how I have almost all my ARM based SBC’s setup and they are rock solid and have 64GB or (someday) a 128GB / partition setup

This is how my OpiZero2W is setup…

 sudo cat /etc/fstab
# <file system>                                 <mount point>   <type>  <options>                                                       <dump>  <pass>
tmpfs                                           /tmp            tmpfs   defaults,nosuid                                                 0       0
UUID=b5110915-cb65-4723-8ada-a154419be620       /media/mmcboot  ext4    defaults,noatime,commit=600,errors=remount-ro,x-gvfs-hide       0       1
/media/mmcboot/boot                             /boot           none    bind                                                            0       0
UUID=ff497056-7e4a-4bc8-af35-52e785417fb1       /               btrfs   defaults,noatime,commit=600,compress=lzo,x-gvfs-hide                    0       2
UUID=a3eea7d7-c51e-41af-8f83-e4ac218483de       /home/warhawk/hdd       btrfs   defaults,noatime,commit=600,compress=lzo,x-gvfs-hide    0       0

I also have a 1TB ssd mounted externally as well…
I do have PCB design experience…but not on very experienced on kicad…
mostly I get others designs…and remix/tweak them…I will see if I can do a revision with a USB-A connector instead of the ribbon cable one…hopefully I can get it done

I tried…uggh…ended up removing traces…however was able to get an image of (kinda) what I was talking about…a full size USB-A connector (thru hole connector might be an issue)

1 Like

The issue might not be about through-hole itself but whether there’s enough space in this place to fit a USB-A socket. Maybe you could just solder 4 wires from those pads to a socket placed somewhere else?

Also a personal update: I have finally ordered 0.8mm PCBs with ENIG surface finish, will keep you posted on whether it works from JLCPCB :crossed_fingers:

There is space underneath…a guy from YT shoehorned an entire SDR (w/o the case) in there…I showed that the footprint for the USB-A is capable…I just accidentally blew out the traces from the power chip to the actual connector…I wonder if if it’s a low powered device if the power control chip would even be needed…just traces directly from the output of the USB hub IC on the board to the USB-A footprint pads

1 Like

I’m hoping to add an internal Teensy to my uConsole (which would fit nicely inside the lower cavity) and run m8c to make music. But I’m new to this stuff and skittish about the potential for bricking neat equipment, so…

Can anyone provide noob with guidance on what hardware I need to add a short micro usb ribbon cable to the inside of my uConsole via the uHub? I’m especially interested in any plug and play options, because I really do have a talent for destruction with a soldering iron.

Thanks in advance!

Only problem with an internal teensy is that it draws power when plugged in. You’d need a way to disconnect without opening everything up.

1 Like

Wonder how gracefully this could be done with a tiny switch put in between one of the USBC connectors on the faceplate.

I finally had some time to do first, test soldering of uHub boards that came from JLCPCB for the second time, this time in 0.8mm thickness.

I was a bit nervous as I haven’t done SMD soldering in a longer while, this was my first time using a stencil and a new tiny usb-pd hot plate, so that placing components will be the only time consuming part of the entire process. And oh wow it was, including figuring out the orientation of that SOT666 anti-ESD component which had a tiny ā€œ.Fā€ marking when I had my microscope and light set really properly.

I was a bit nervous again when it came to installing that first board, as I realized it’s thinner than the dummy board provided by ClockworkPi. Fortunately the slots have some margin thanks to spring connectors and - the board works! At first attempt!

This is a testament to how good your design is, @Vitaly . Kudos.

Also tip: folks, if you don’t have the experience or equipment for small component SMD soldering, don’t learn on this board. Buy it directly from Vitaly. It will also be cheaper as you won’t have to order five boards and multiples of each component!

Two thinga remain, getting that internal connector parts and printing the cover bracket.

6 Likes

@Vitaly is it safe to assume you have another batch of these coming?

I want to try and throw a disassembled Alfa wireless card next to my battery and this ext board with the USB ext ext board you teased would be perfect.

Thanks!

I thought it was 1.00mm thick pcb, although for these sockets usually its a slight range, so should work.

Hey there, just wrote an update here: uPico Expansion Card - #94 by Vitaly

1 Like

So who here knows what they’re doing and can get one of these made?

I just placed an order for a few of the uHubs. It is my first time ordering a PCB so once I verify they work and I have a final price I will have some for sell. PM me if you are interested and I will update with a price when I get one.

2 Likes

Superb! Thank you man, and thanks Vitali for starting this.
I’ll PM you Matt, so that you can have me in your list of ā€œPeople who want oneā€

1 Like

I ordered PCBs on pcbway and just soldered one. Looks like it’s detected, but I’m getting ā€œover-current changeā€ errors in logs. I checked for shorts visually and with a probe, but couldn’t find any. I’m running uConsole with CM5 if that makes any difference. Anyone have any idea what could be the issue?

[    5.157024] usb 1-1: New USB device found, idVendor=05e3, idProduct=0608, bcdDevice=85.38
[    5.157032] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[    5.157034] usb 1-1: Product: USB2.0 Hub
[    5.157380] hub 1-1:1.0: USB hub found
[    5.157621] hub 1-1:1.0: 4 ports detected
[    5.236239] Bluetooth: hci0: BCM: chip id 107
[    5.236439] Bluetooth: hci0: BCM: features 0x2f
[    5.237480] Bluetooth: hci0: BCM4345C0
[    5.237481] Bluetooth: hci0: BCM4345C0 (003.001.025) build 0000
[    5.238875] Bluetooth: hci0: BCM4345C0 'brcm/BCM4345C0.hcd' Patch
[    5.341849] panel-cwu50 1f00130000.dsi.0: slpout
[    5.435824] usb 1-1.1: new full-speed USB device number 3 using dwc2
[    5.463825] panel-cwu50 1f00130000.dsi.0: dpon
[    5.463831] panel-cwu50 1f00130000.dsi.0: blon
[    5.508561] panel-cwu50 1f00130000.dsi.0: Read display power mode got: 24
[    5.524855] usb 1-1.1: New USB device found, idVendor=1eaf, idProduct=0003, bcdDevice= 2.01
[    5.524858] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    5.524859] usb 1-1.1: Product: Maple 003
[    5.524861] usb 1-1.1: Manufacturer: LeafLabs
[    5.524862] usb 1-1.1: SerialNumber: LLM 003
[    5.525282] Console: switching to colour frame buffer device 160x45
[    5.543071] drm-rp1-dsi 1f00130000.dsi: [drm] fb0: drm-rp1-dsidrmf frame buffer device
[    5.555834] drm-rp1-dsi 1f00130000.dsi: rp1dsi_bind succeeded
[    5.595832] usb 1-1.3: new high-speed USB device number 4 using dwc2
[    5.686040] usb 1-1.3: New USB device found, idVendor=04b4, idProduct=6572, bcdDevice=32.99
[    5.686048] usb 1-1.3: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[    5.686050] usb 1-1.3: Product: USB2.0 Hub
[    5.686500] hub 1-1.3:1.0: USB hub found
[    5.686783] hub 1-1.3:1.0: 4 ports detected
[    5.793907] usb 1-1.3-port1: over-current change #1
[    5.916547] Bluetooth: hci0: BCM: features 0x2f
[    5.917981] Bluetooth: hci0: BCM43455 37.4MHz Raspberry Pi 3+-0190
[    5.917990] Bluetooth: hci0: BCM4345C0 (003.001.025) build 0382
[    5.918712] Bluetooth: hci0: BCM: Using default device address (43:45:c0:00:1f:ac)
[    6.005442] usb 1-1.3-port2: over-current change #1
[    6.077055] Adding 204784k swap on /var/swap.  Priority:-2 extents:3 across:16146416k SS
[    6.217304] usb 1-1.3-port3: over-current change #1
[    6.221888] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    6.221894] Bluetooth: BNEP filters: protocol multicast
[    6.221900] Bluetooth: BNEP socket layer initialized
[    6.223624] Bluetooth: MGMT ver 1.23
[    6.229037] NET: Registered PF_ALG protocol family
[    6.429296] usb 1-1.3-port4: over-current change #1
[    6.645288] usb 1-1.3-port1: over-current change #2
[    6.722786] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
[    6.852540] usb 1-1.3-port2: over-current change #2
[    6.901121] usb 1-1.1: USB disconnect, device number 3
[    7.060404] usb 1-1.3-port3: over-current change #2
[    7.103827] usb 1-1.1: new full-speed USB device number 5 using dwc2
[    7.193284] usb 1-1.1: New USB device found, idVendor=1eaf, idProduct=0024, bcdDevice= 2.00
[    7.193288] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    7.193290] usb 1-1.1: Product: uConsole
[    7.193292] usb 1-1.1: Manufacturer: ClockworkPI
[    7.193293] usb 1-1.1: SerialNumber: 20230713
[    7.194508] input: ClockworkPI uConsole Consumer Control as /devices/platform/axi/1000480000.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:1EAF:0024.0001/input/input6
[    7.247881] input: ClockworkPI uConsole Keyboard as /devices/platform/axi/1000480000.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:1EAF:0024.0001/input/input7
[    7.268530] usb 1-1.3-port4: over-current change #2
[    7.343882] input: ClockworkPI uConsole as /devices/platform/axi/1000480000.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:1EAF:0024.0001/input/input8
[    7.343929] input: ClockworkPI uConsole Mouse as /devices/platform/axi/1000480000.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:1EAF:0024.0001/input/input9
[    7.343997] hid-generic 0003:1EAF:0024.0001: input,hidraw0: USB HID v1.10 Keyboard [ClockworkPI uConsole] on usb-1000480000.usb-1.1/input0
[    7.357505] cdc_acm 1-1.1:1.1: ttyACM0: USB ACM device
[    7.357565] usbcore: registered new interface driver cdc_acm
[    7.357568] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    7.480537] usb 1-1.3-port1: over-current change #3
[    7.688410] usb 1-1.3-port2: over-current change #3
[    7.896395] usb 1-1.3-port3: over-current change #3
[    8.104523] usb 1-1.3-port4: over-current change #3
[    8.312519] usb 1-1.3-port1: over-current change #4
[    8.520420] usb 1-1.3-port2: over-current change #4
[    8.728402] usb 1-1.3-port3: over-current change #4
[    8.936522] usb 1-1.3-port4: over-current change #4
[    9.144520] usb 1-1.3-port1: over-current change #5
[    9.352394] usb 1-1.3-port2: over-current change #5
[    9.560540] usb 1-1.3-port3: over-current change #5
[    9.768404] usb 1-1.3-port4: over-current change #5
[    9.976519] usb 1-1.3-port1: over-current change #6
[   10.184398] usb 1-1.3-port2: over-current change #6
[   10.392539] usb 1-1.3-port3: over-current change #6
[   10.600531] usb 1-1.3-port4: over-current change #6
[   10.812527] usb 1-1.3-port1: over-current change #7
[   11.020399] usb 1-1.3-port2: over-current change #7
[   11.228396] usb 1-1.3-port3: over-current change #7
[   11.436544] usb 1-1.3-port4: over-current change #7
[   11.644524] usb 1-1.3-port1: over-current change #8
[   11.852395] usb 1-1.3-port2: over-current change #8
[   12.060400] usb 1-1.3-port3: over-current change #8
[   12.268520] usb 1-1.3-port4: over-current change #8
[   12.476535] usb 1-1.3-port1: over-current change #9
[   12.684397] usb 1-1.3-port2: over-current change #9
[   12.892395] usb 1-1.3-port3: over-current change #9
[   13.100521] usb 1-1.3-port4: over-current change #9
[   13.308535] usb 1-1.3-port1: over-current change #10
[   13.516538] usb 1-1.3-port2: over-current change #10
[   13.724543] usb 1-1.3-port3: over-current change #10
[   13.937206] usb 1-1.3-port4: over-current change #10
1 Like

My issue is fixed. I soaked PCB in isopropyl alcohol overnight, which probably removed some leftover residue.

I have 4 PCBs left 1mm thick as the original extension board, DM me if someone wants them (in Ukraine).

2 Likes

Awesome!
I did 0.8mm board originally, but 1mm also ok I assume.

2 Likes

Thanks for letting us know, that’s the kind ofthings I would have never ever thought if I receive a unit that does not work as expected out of the box. In a way, I’m like a regular end user :stuck_out_tongue: