If you're thinking of microcontroller development, you probably imagine either a breadboard with a chip or a USB board. However, Tim Ansell presented an ARM development board that is almost completely hidden in a USB port. His talk at the Hackaday Supercup 2018 tells this story and more. Check out the newly released video along with more details on the talk after the break.
Tim is the creator of Tomu, the tiny ARM Cortex M0 + board we discussed for the first time in January. The board has an EMF32 from Silicon Labs on one side, four lanes to connect to a USB port on the other side, and two LEDs and two capacitive buttons on one edge. This form factor comes from a 2-factor authentication device he found on Amazon – he was intrigued, but appreciated the price.
Knowing the components for a tiny universal U2F device (U2F) costs very little. He spent a weekend distributing the circuit board, and after finishing his average SMD skills, ended up with some prototypes. The problem was that some U2F firmware was actually being transferred to the device. Since he did not have time to delve into this part of the project, he began to forgive as many of these open hardware boards as possible, and at some point somebody wrote the U2F code (it was Sergei Glushchenko, this is the repo).
To FPGA in your USB port
Now Tim is busy with the next big thing. He has adapted the Tomu form factor to an FPGA board called Fomu with an active crowdfunding campaign. The board comes with an already loaded RISC-V core that can be programmed via DFU (or possibly mass storage). This is currently a popular step as many people want to play with RISC-V or FPGA. Here's one way to do both without having to carry extra equipment with you.
Some may think, what can you do? with an FPGA, where it is difficult to connect external circuits? You could practice adding peripherals to RISC-V and other cores, but perhaps you should consider the following: What could I do with my laptop if I had dedicated parallel processing available? The board has a Lattice iCE40UP5K, 1 MB Flash, 128 KB RAM, 48 MHz and is compatible with the open source tool chain IceStorm.
Tim's Supercon-Talk is down, he even provided slides for the talk.