Woah hey I haven’t updated since last year. Well here’s a post. Here’s some backstory behind this one: Last time SparkFun had a Free Day, I won $100 after entering a ton of Captchas for several hours and getting lucky. One of the things I spent it on was continuous-rotation servos because I felt like trying to make a robot of some sort. I once tried modifying some regular servos to be continuous-rotation but I pretty much just ruined them, so I don’t want to try doing that again.
In any case, here’s a quick attempt at a simple robot that just moves forward slowly. The wheels were made from parts of a VHS case which were then taped to the servos. I guess the main issue is that it’s USB-powered so it has a really limited range. I tried using a 9V battery to power the Arduino but apparently that isn’t enough to power two servos (I could hear them clicking, but not moving), so I’ll need an extra power source specifically for the servos. The problem is my lack of battery holders.
Today I was bored and I remembered this video I saw awhile back that had a TF2 kill counter using an Arduino. I’ve been playing TF2 a lot recently (since it became free to play, I’ve been doing a lot better in comparison) so I figured it would be cool to implement something like that. I could’ve done it with LEDs or even GLCD screens (actually it might be cool to do something with the LoLShield), but since Cubey’s been sitting on my desk unused for the past few months, I thought I’d put him to use. Cubey gradually turns around as I get more kills, and after a certain point, he starts moving his ears. He turns back around in disappointment when I die, though.
I used Python to read the config.log file located in the tf folder (on mine, it’s “C:¥Program Files (x86)¥Steam¥steamapps¥your_username_here¥team fortress 2¥tf”). It reads the latest lines and looks for “A killed B” or “A suicided” and sends either a + to the Arduino when A kills someone or it sends a 0 when A is killed by someone else or kills themself. The Arduino then reads from the serial port one character at a time and makes the Cubey servos move accordingly.
Python and Arduino code are in this zip file.
In my search for some more awesome music-related Arduino things, I found Miditones and Playtune. Miditones takes a MIDI file as input and outputs a C array that you can copy/paste into your Arduino code and play it using the Playtune library. I just used the example code for an Arduino Nano, with pins 10, 11, and 12 going to three different speakers.
I didn’t realize until just now that the comment in the code says that you can wire all three pins to a terminal of one speaker, but I guess having three speakers makes it kinda surround-sound-ish. Maybe I’ll upload some more videos with a single-speaker setup or with a piezo buzzer. Anyway, here are some videos of Vocaloid songs being played with the Arduino.
Continue reading “Miditones & Playtune”
Now Cubey can be controlled using using TouchOSC
on iPhone / iPod Touch (TouchOSC is also available on Android so this should probably work on that too).
Source code (Arduino and Processing source code, along with TouchOSC template) can be found here. It requires the oscP5 library for Processing, which can be found here.
So I designed this Kyubey papercraft this weekend, with the idea based on this image on @kevinchai’s twitpic. It’s Cubey because it’s a cube (well technically a rectangular prism).
Cut along the solid lines, fold along the dotted lines. The ears and the gold ring things are meant to be folded back on themselves so that they’re colored on both sides (I’m seeing a lot of people who don’t get this! It’s somewhat important!). See the images in the gallery if you’re confused. I didn’t add the tail to mine because I didn’t glue the back closed, but basically cut along the solid line on the tab on the back part of the main body and insert the tab from the tail. If you make one of these, post it here, I’d like to see it!
I also added electronics to it (I am terrible at soldering; you have permission to laugh at the pictures of the circuit)! One servo for rotation of the entire papercraft, another servo and a rubber band for moving the ears up and down, and two photocells (one on each side) to sense light. I have it so that Cubey will turn either toward or away from light depending on what I set in the program. I tried adding remote control, but my IR receiver kinda broke somehow. Here are some videos of the other stuff, though.
And more on the channel. Image gallery in the full post.
Continue reading “Cubey Papercraft”
Now that fall semester is over and winter break has begun, I’m gonna start making more stuff! Building on to the color-crossfading ping pong ball, I decided to use the 38kHz infrared receiver module and keychain remote I bought awhile ago to make it remote-controlled. Each button on the remote corresponds to a color, except the power button which turns it off.
It’s a modified version of this RGB LED crossfader program combined with the sample code provided in the keychain remote item page.
Continue reading “Remote controlled crossfading ping pong ball”
So rather than studying for the exams I have next week, I decided to mess around with LEDs. I used this code with a diffused RGB LED (put a ping pong ball on top of it for more diffusion and it also looks cooler).
Edit: Found this online today, turns out someone else had the exact same idea of using a ping pong ball as a diffuser! There’s a more detailed write-up, with pretty diagrams and stuff, if anyone is interested in learning more.
I also tried doing this with an RGB LED but it just resulted in possibly seizure-inducing effects. It probably works better with three individual LEDs.