09-08, 09:15–09:55 (Europe/Berlin), Main Stage
The DRAM shortage broke the typical setup for connecting devices to a CI HW lab. Dropping a Linux SoC next to every device under test used to be cheap and easy. However, there's another way: instead of connecting a computer per device, we can share its USB over the network with USB/IP.
This talk will explain the design of such a board which is built around an MCU that does not require DDR memory. Yet it still boasts USB 3.0 and Gigabit Ethernet, along with a secure element that proves each bridge is genuine before the lab trusts it.
We walk through designing that board entirely in KiCad: routing all the USB and Ethernet differential pairs, handling the Ethernet magnetics, placing the secure element, and generating test points for easy QA checking.
Lastly we'll showcase the USB/IP demo of connecting a DUT to the Linux host.
USB/IP hardware is a good board to design in KiCad because it collides three demanding subsystems
on one small board.
The selection of the MCU is based on the whole point: to avoid the RAM that made SoCs expensive during the ongoing DRAM shortage. Therefore the board is built around a RISC-V microcontroller that runs entirely from on-chip memory. Almost 1 MB of internal RAM no external DDR and still integrates the two peripherals this job actually needs:
- a high-speed USB port
- a Gigabit Ethernet MAC
That combination in a single, low-cost QFN package is what makes a per-device USB/IP bridge
cheap enough to deploy.
We'll cover USB and Ethernet from the signal up and look at what the differential pairs actually carry, why they need controlled impedance and length matching, selecting the Ethernet magnetics and more.
Since the board is designed to be distributed to developers it needs to be optimized for manufacturing and easy bring-up. That means test points laid out so QA can be done efficiently without specialist knowledge.
An embedded Linux developer working on hardware enablement and diagnostics for a mobile Linux OS, closing the gap between mobile Linux and Android. The tooling that lets developers and users confirm a device actually works: the USB/IP bridge grew out of needing a cheap, reliable way to wire real devices into a TronCI lab.