USB Wildcard: Open Hardware Advent Calendar Day 5

Today’s project is more of a tool that I’ll be using in future projects: what I call the USB Wildcard.

Overview

The USB Wildcard is a basic breakout board for developing USB systems using AVR microcontrollers. It’s basically the USB to Serial section of an Arduino Uno, but on its own circuit board.

USB Wildcard, from above USB Wildcard, from below USB Wildcard boards in a panel

The main configuration for this board is as a USB to Serial adapter for my own Arduino experiments, but the back has pads for connecting to the other I/O lines on the ATmega16U2 chip on the board.

Hardware

The board is a double-sided PCB with parts only on the top side. It’s a really basic setup - the microcontroller, some capacitors, the crystal, a handful of LEDs, and a USB connector.

Schematic

The schematic and PCB files can be downloaded from our GitHub. This includes a version of the board that merges two of the boards into one, so you can get 20 boards from an order of 10 5x5cm boards.

Software setup

The software for this one is really basic so far. For the USB to Serial board, I use the Arduino Uno HEX file, so it looks exactly like an Arduino Uno’s serial port to the computer. The hex file can be download from here.

To load the firmware, you either need FLIP (Windows) or dfu-programmer (Linux and OS X). Instructions can be found on the Arduino site here, but the basic steps for programming the board on a Mac or Linux machine are to plug the blank board into the computer, and run the following from the command line:

sudo dfu-programmer atmega16u2 erase –force sudo dfu-programmer atmega16u2 flash Arduino-usbserial-atmega16u2-Uno-Rev3.hex sudo dfu-programmer atmega16u2 reset

Unplug it, plug it back in, and you’ve got a USB to Serial adapter.

Future projects will expand on this one, and present some more detailed usage instructions.

Future plans

This is the basis of a few future projects, as it gives us an easy, pre-made platform for building USB gadgets. I have a lot of plans for it, is what I’m trying to say.

Conclusion

This isn’t the best writeup of this project - I’m writing it on the way to a concert, so I’m rushing it - but the details will be filled in later.