In FIRST Tech Challenge, with the advent of Modern Robotics control modules in about 2015, it has been impossible to escape using copious amounts of Mini-B USB cables. Then, 2017 came along and so did REV Expansion Hubs, also with Mini-B connectors (but significantly fewer). In 2019, the Control Hub has been legalized in select areas, but gone is the Mini-B connector! So, how about getting more reliability out of your Expansion Hub?
It's no secret that most USB hubs have 4-layer PCBs. However, making 4-layer PCBs would have easily quadrupled the cost per PCB and increased development time over a 2-layer design. So what would happen if someone tried to make a 2-layer hub?
This is a little journey back into the prototyping for this project.
It all started with a dream...
The original idea:
Create a board that would simply convert the Mini-B connector on the REV Expansion Hub to a Type-C port.
Include ESD protection on the USB lines for extra disconnect resistance.
Make sure it's sturdy and can last for much longer than a Mini-B cable.
And thus, the mini V1 prototype was born:
However, after I did some polling of interested customers, about 2/3 of teams responded that they would also like to use a webcam on their robot. That would mean introducing a USB hub into the wiring of the robot, which can lead to disconnects from the sheer number of connections.
So what's the solution? Slapping a USB hub controller on the board, obviously.
The IC used was a USB2422 from SMSC (Microchip). This is the absolute smallest 2-port USB hub chip available. The LDO was an NCP170 LDO. Unfortunately, I learned the hard way that you can't just willy-nilly route the USB lines on a 2-layer board, because no matter what I tried, I was always greeted with USB errors.