Cynthion, LUNA, Packetry, and Facedancer make it easier than ever before to build, test, and experiment with USB devices. These open source hardware and software projects take advantage of the reconfigurability of field-programmable gate arrays (FPGAs), enabling a powerful combination of capabilities with unprecedented flexibility and ease of use. I’ll show how these tools can be used to reverse engineer and meddle with off-the-shelf USB devices, and I will review their architecture and the open source ecosystem that makes them possible. Lastly I’ll show new ways to construct USB devices, building upon these open source projects.