Stuff for the Make to Learn Youth Contest:
What did you make?
I made a sonic screwdriver TV-B-Gone combo as a birthday present for a friend. It started out as a crazy idea that I had one day, but transformed into the awesome finished product you see above. In preparation for this, I learned all about how the TV-B-Gone circuit worked so I could modify it to use the least amount of parts possible. In order to build it, I ordered parts off of Digikey, Amazon and Sparkfun, then I assembled everything according to my plans. I used my Raspberry Pi, a breadboard, my trusty soldering iron, wire cutters, needle nose pliers, an exacto knife, solder, and desoldering wick.
How did you make it?
The idea came to me one day while I was browsing around online, I was looking for potential ideas for a birthday present, and I came across several homemade Sonic Screwdrivers online, and thought, "Hey! I can do something like that!" and it worked out perfectly because my friend is a huge Doctor Who fan. I ended up using my dad's help to split it open and his clamps and plastic cement to seal it back up. My initial design called for a capacitor to help smooth out the current, but in the end it ended up not fitting, so I had to leave it out. I could probably have left out the resonator too, but I had already bought it, so there was no point in wasting it if it fit.
Where did you make it?
I made this at home, upstairs in the room with all of my dad's model trains. He has a small work area up there that I'm allowed to solder at, and it's got this really comfortable chair to sit in, which definitely helps with my ADHD. I had to balance this with homework because the last day of the term was today, and I had to make sure I had all my grades in order.
What did you learn?
Honestly, this turned out amazing! I only had two gripes, and those were the range and the fact that I had to leave out the capacitor. It functions just fine, but you can see the UV LED flicker ever so slightly when in use. I feel the most proud about programming the microcontroller, it was a first., that combined with this being my first complex circuit made me really happy. All in all, it was a project full of firsts for me, and considering I designed the whole thing myself, and it actually works, made me a really happy person the last week or two. It doesn't hurt that my friend loves it either!
Step 1: Designing
Step 2: Parts List
Items you will need:
Max Power IR LED Kit from Sparkfun (could be replaced with appropriate transistor, LED, and resistors to save money, we won't use the circuit board anyways)
10th Doctor's Sonic Screwdriver (I got mine off of Amazon because Thinkgeek was out of stock)
220uF Capacitor (Helps smooth out power, but makes it an extremely tight fit)
Raspberry Pi (Or any other avr programmer. I will provide instructions for a Raspberry Pi though)
Desoldering Wick (Useful if you make mistakes, and helps clean up the circuit board if you decide to rewire everything)
Step 3: Program the Microcontroller
To start, I'm going to assume you have a Raspberry Pi and you know how to run commands and connect the GPIO pins to a breadboard. Before you can program the Attiny, you need to first install a patched version of Gordon's AVRdude. Run the following commands:
sudo dpkg -i avrdude_5.10-4_armhf.deb
sudo chmod 4755 /usr/bin/avrdude
After you have completed that, you may now make the connections from the Raspberry pi to the Attiny. I have included a pinout of the GPIO and the Attiny. Ensure to power off your Pi.
(Raspberry Pi --> attiny85)
MOSI --> MOSI (PB0)
MISO --> MISO (PB1)
SCLK --> SCK (PB2)
CE0 --> RESET (PB5)
3V3 --> VCC (pin 8)
GND --> GND (pin 4)
When you are done, turn your Pi back on and run the following commands:
Avrdude -c gpio -p t85 -U lfuse:w:0xfe:m -U hfuse:w:0xdf:m -U efuse:w:0xff:m
Then, make sure you have your oscillator connected, because the Attiny won't run without it. The outer pins go to pin 2 and 3 on the Attiny, and the middle pin goes to ground.
After that, run this command:
avrdude -p t85 -c gpio -v -U flash:w:tvbgone.hex
Congratulations! As long as AVRDude didn't spit out any errors, everything probably went fine!