[John Boiles] introduces us to dimlet, his portable network controlled light dimmer. Inside the box is a fonera 2100 router that is running openWRT connected to an unnamed AVR microcontroller. Right now, he’s controlling the unit with his iPhone. It has three modes of control; a manual “slider” mode, an accelerometer controlled “dance” mode, and a programmable “tap” mode. You can download all the source code and schematics on his site.
In April we saw a pretty creative way to add GPS to an iPod by using a homebrew accessory. The new app is a better solution because it utilizes the larger screen and more functional UI of the iPod touch. We’re glad to see this come along because we’d rather not upgrade to the iPhone 3G just to get GPS support. roqyGPS has a fairly long supported hardware list, which should make it relatively inexpensive to pick up a GPS module either on sale or second-hand.
We’ve got a video of the release candidate after the break. As always, we’d like to hear from anyone already using this so please leave your thoughts in the comments.
Last week we saw a rotating iPhone dock built from Lego. This week we’re happy to put up another example of a dock made of these popular building blocks. Thank goodness this one takes into account all of the sudden jolts that our desk is prone to by incorporating shock absorbing springs. The design is very sleek with a jazzy red scheme and a less-is-more attitude. We are a bit concerned about our expensive hand held falling out but then again that’s what the springs are for. Who can be the first to put together a step-by-step guide for building this one?
The iPhone doesn’t have the market cornered on the use of accelerometers. The tiltphone project incorporates a three axis accelerometer into a set of headphones transforming them into a remote control for an iPod. A PIC16F690 reads in data from the analog sensor, translates specific movements into commands, and like the Arduino iPod Remote from last week, relays them to an iPod via the Apple Accessory Protocol. A quick nod left or right skips tracks, holding a sideways nod controls the volume, and setting the headphones down pauses.
This project is a bit older but we’re glad [anon] tipped us off as we hadn’t seen it before. There doesn’t seem to be any code or schematics available but because the Apple Accessory Protocol is known, it’s only a matter of working out how to interpret the sensor data. There is video after the break and if you pull off this hack yourself be sure to send in details for a followup.
[Linux4Nano] over at the [Gna! repositories] have just finalized a breakthrough for their bootloaderproject. Because the iPod Nano 2G has a hardware encryption chip, it could previously not be flashed with a custom firmware. By digging around in some assembly code (and working their magic) the team was able to get Linux onto the 2G, develop drivers for its peripherals (screen, clickwheel and serial interface are a few), and put all of that code into a package convenient to install by the end user. If you’ve ever considered installing uClinux (the ported distro) on your Nano, the [Linux4Nano] team have made the iLoader an easy place to start.
Update: Closer inspection yields that the iLoader is not yet able to load uClinux onto a 2G because it has not been ported. However, it can reload it with other custom firmware which is still a solid breakthrough.
Hot on the heels of the aluminum dock and the Lego camera mount, [Steve] sent in his iPhone/iPod Touch dock made out of Lego bricks. It’s very stylish with a black and grey theme but we think the function makes this DIY spectacular. In the design [Steve] has included the ability to rotate the cradle so that the iPhone can be presented either vertically or horizontally. A step-by-step guide is not yet available but resourceful Lego lovers should be able to build this using his flickr set.
[David] had an Arduino in search of a project. He decided to make an Arduino powered iPod remote control using an ipod connector breakout board and a 3.3v to 5v level converter (both from SparkFun). The circuit was built on a mini breadboard, controlled by an Arduino Mini, and housed in an Altoids tin. To talk to the iPod the Apple Accessory Protocol is used. With driving in mind [David] connected a Staples Easy Button as the play/pause button. This is a good example of how to interface Arduino with iPod. Using his example code we’d like to see more people working on homemade iPod accessories.
Last week we mentioned an article to cover up that ugly iPod dock; [Jozerworx] did one better by creating his own iPhone dock entirely. He had access to a machine shop where he combined some spare aluminum with an existing iPhone connection cable, but mentions the dock could probably be created with basic hand tools and a power drill. The design is quite minimalist and we would go as far as to say it has that shiny-and-made-by-apple-so-I-have-to-buy-one look. Alternatively, frosted acrylic with some leds would probably look pretty cool too, maybe it would blink whenever there is activity. What kind of dock would you hack?
[Marco Tempest] has developed some software called MultiVid that allows synchronized video across multiple iPhone or iPod Touch devices. For this to work, all of the devices must be connected to the same WiFi network. Playback can be controlled from any one of the iPhones/iPod Touches or from the Mac running the controller software. There is of course the option of connecting to larger monitors through a video output cable. The app also supports OSC. We’ve embedded the example video as well as a video detailing the software setup after the break.
The Linux4nano project has been working to port the Linux kernel onto the iPod Nano along with other iPods in general. Although the iPodLinux project has had luck with some older iPods, newer models protect firmware updates with encryption. One of the ways they plan on running code on the device is through a vulnerability in the notes program; it causes the processor to jump to a specific instruction and execute arbitrary code. To take advantage of this, they first need to figure out where their injected code ends up in the memory. Currently, they are testing every memory location by painstakingly loading in a bogus note and recording its effect. Each note takes about a minute to test and they have tens of thousands of addresses to check over several devices.