Joints seem to be better now, but I didn't mention one thing - no matter how much hot air I blow at it or what I do with soldering iron, I can't seem to be able to get rid of a short between D+/D- on a passthrough port 😭 It's not critical, the important parts are already operational, but it would be nice to get USB 2.0 passthrough working too! I'm assuming it's on the USB-C plug, but it all looks perfectly fine to my eye 😫 I should finally get some proper flux I guess... #soldering #diy
The hardware design is now released at https://gitlab.com/dos1/debubo
#debubo #kicad #diy #electronics #librem5 #stm32 #usbpd #oshw
@dos what will it hopefully do?`fry a computer? 😜
@aho Potentially! It's kinda a PD MITM device (so you could provide power and use USB 2 while negotiating custom alt-mode or debug accessory mode, sending VDMs etc.), plus it exposes UART on SBU over USB. One possible use-case is to get convenient access to Librem 5's serial console, but it should also be useful with, say, Macbooks or plenty other stuff.
@dos is there enough space to use desoldering braid?
@nokernel Yes, used it a lot! There were many more bridges at first 😂 Got rid of all the rest, but this one is highly resilient.
TBH, it's the first time I solder such tiny things, it's a wonder I got as far as I did already anyway :)
@dos cool! So with this device you can connect a charger to the Librem5 to charge it and at the same time connect another USB thingy, like a keyboard or flash drive or whatever?
@eliasr Nope; with Debubo (and a right TPS65982 config) you can access UART console, while also connecting a charger or some USB thingy, either host or device.
But what you described is pretty much just a regular USB-C hub with PD 😁
@dos
Are there any other devices exposing UART over SBU? I suppose this is similar to the resistor activated multiplex on micro USB that gave UART access to the baseband on Galaxy Nexus and friends?
@ge0rg It's somewhat common in DIY designs, badges etc. although those usually don't require any PD stuff. MacBooks can expose 1.2V UART, I2C and debug USB - you could use Debubo paired with SBUB to access that. And who knows what undocumented commands to mux things onto SBU may be in other devices out there 😁
@dos Very interesting... I'm not sure I have a use case for one right now, but looks like a good test case for SMD soldering :D.
@dos why the STM32 and the CH342K instead of putting a single MCU on there with USB support?
@martijnbraam I considered that, but eventually decided against:
a) CH342 has an integrated LDO; BOM wouldn't get shorter by getting rid of it
b) this way UART channel works regardless of what you're doing in firmware; one less thing to care about
c) there are free samples available for STM32G071CBT6; no samples for USB-equipped G0B1/G0C1 😄
Took me 3 days of soldering, but it works!
I can connect it to a Librem 5 and it automatically does all the needed PD stuff to expose its UART over USB-C 😁 It's also capable of a lot of other PD magic as a USB PD analyzer / injector / filter.
However, while these solder joints made a good job lasting till I got the firmware PoC working, it doesn't seem like they're going to last much longer... More soldering ahead 😫
#debubo #kicad #stm32 #usbpd #librem5 #shotonlibrem5 #diy #electronics #oshw