After seeing Ladyada’s Workshop, I started thinking about various ways Adafruit electronics and LEGO bricks could be combined. I’ve always thought it would be cool to have a minifig scale video display instead of a sticker or printed brick. So, I decided to give my minifigs a dynamic train schedule.
I used the following in this project:
- Arduino Uno
- Adafruit OLED Breakout Board – 16-bit Color 0.96″ w/microSD holder
- Extra-long break-away header
- Premium Female/Female Jumper Wires 40 x 6”
- LEGO bricks
- Craft knife
- White craft glue
- Double sided tape
- Black construction paper
The first step in building the train schedule is assembling the electronics. Start by following the tutorial for the OLED and running the sample sketch to test your wiring. Next up is adding an extension cable between the OLED breakout board and the breadboard.
- Break off a nine pin length of extra long 0.1” header.
- Remove the OLED from the breadboard.
- Insert the header in the breadboard in place of the OLED (this should start from where the GND pin was on the OLED and run to where the SDOUT pin was, stopping just short of the SDDETECT pin’s location).
- Break off a nine wire wide cable from the ribbon of female/female jumper wires.
- Plug the OLED into one end of the nine wire cable and plug the other end into the header pins on the breadboard (make sure to keep the order of the wires the same on each side).
Before continuing, you will need to download the project files from github.
The next step is adding a small bezel to the OLED so that the breakout board isn’t visible through the LEGO window brick.
- Open the bezel.svg file from the project folder in a vector based graphics program (I use Inkscape which is available for Linux/Mac/Windows and is open source).
- Print the bezel template out on plain white paper.
- Place a piece of black construction paper underneath the printed out template.
- Use a craft knife to carefully cut along the black rectangles, making sure to cut through both pieces of paper.
- Place the black construction paper bezel around the OLED with the thinnest border at the bottom (I used a tiny dab of white craft glue to hold the bezel to the breakout board).
Finally, it’s time to get out the LEGO bricks and start building! Open OledTrainScheduleLegoInstructions.pdf from the project folder and build steps one through eight. At this point, you should have a rectangular enclosure with a window on the front and a two stud wide opening on the back. Place a small piece of double sided tape on the back of the OLED and carefully place it on the inside back of the enclosure so that the OLED is centered in the window brick and the cables are routed through the opening on the back.
Continue with the instructions, closing up the top of the enclosure. You can now upload the sketch from the Arduino IDE and let your minifigs know when trains will be departing, which trains will be late, and which trains they just missed. The source code, bezel template, and LEGO instructions (in both PDF and LDR format) are available in github. I’d love to hear about or see other uses you come up with for a minifig scaled display in your LEGO creations.
Don’t forget to support the Ladyada workshop/hackerspace in LEGO! We need your votes to make it real!