Michael emailed me with the link to his latest project. This is what everyone in my dorm at MIT dreamed of owning: an NTP-enabled analog panel clock!
NTP stands for Network Transport Protocol, and is how the Internet (and anything connected to it) knows exactly what time it is. By using NTP servers for updates, the clock will always be perfectly on time – useful when there’s a blackout.
The clock is powered by an Arduino. To connect to an NTP server, an XPort shield & XPort direct is used. The three analog panels are driven by the PWM channels and are tweaked by some analog circuitry on a proto shield.Theres great documentation, including code, schematics and diagrams so there is no excuse to not build one for yourself!
Jason Pepas has an old Ford truck, but he must love it a bunch because he upgraded it to have a Boarduino-controlled carburetor. Lots of people hack their engine computers but this is the first time I’ve heard of someone building such a thing from scratch.
The upshot? He’s tweaked the truck from 9-10 mpg up to 14.5!
Glacial Wanderer has posted a nice little tutorial on how to use a cheap webhosting service to log remote data from an Arduino via an XPort. (The Arduino connects to a php script that logs the information to a text file).
You ought to spend a few minutes today browsing Maurin’s techno-textile fllickr feed.
Highlights include a rug-keyboard (two conductive elements with perforated foam underneath a thick padding makes an excellent foot-switch)
Delicately assembled copper tape circuitry with felt substrate
An LED that lights up when new email has arrived is like the ‘hello world’ of physical computing. And yet, this one – with a small footprint and a dazzling star LED – is particularly touching. It uses a CP2201 serial/usb adapter, but an FTDI cable or breakout board would work just as well. Lots more code, schematics and info at Tom’s site.
One of the reasons I made the Wave Shield kit is that I wanted to be able to play with audio clips and make strange effects. When every sample passes thru the Arduino, it becomes quite easy. For example, the Arduino has an interrupt that goes off 22,050 times a second (for 22kHz audio)…by simply changing the interrupt timing now you’ve changed the playback rate!
Here is the new code for the procedure that plays back the audio. Basically, it checks the analog pin and uses that value to generate a new sample rate scaled off of the original. Then it sets the new sample rate. There’s a little hysteresis code in there to make sure it only updates it when the pot is turned. As collin mentions, you can use any sort of analog sensor, such as a photo cell, bend sensor, etc!
int16_t lastpotval = 0;
#define HYSTERESIS 3
void playcomplete(char *name) {
int16_t potval;
uint32_t newsamplerate;
playfile(name);
while (wave.isplaying) {
potval = analogRead(0);
if ( ((potval - lastpotval) > HYSTERESIS) || ((lastpotval - potval) > HYSTERESIS)) {
newsamplerate = wave.dwSamplesPerSec; // get the original sample rate
newsamplerate *= potval; // scale it by the analog value
newsamplerate /= 512; // we want to 'split' between 2x sped up and slowed down.
wave.setSampleRate(newsamplerate); // set it immediately!
Serial.println(newsamplerate, DEC); // for debugging
lastpotval = potval;
}
delay(100);
}
card.close_file(f);
}
Tim has a lovely blog (build-log!) of a wearable tricolor LED project. I liked the images of his attempt to cast them using ice cube trays. You can see the first two turned out very nicely and the remaining ones are kind of blobby. This particular effect is accidental, caused by a bubbling/melting of the casting compound. Still, it looks rather neat.
You can also, of course, make a nice mold out of milled aluminum….
I have yet to do any casting but am looking forward to trying it out
This is so cool…Phillip cut a video cable and brought out the i2c lines that are used to transmit/receive data from the monitor/display. (I guess that’s how well designed drivers know the resolutions available)
Some drivers let you poke data onto this bus, so you now have a way to communicate with i2c devices (like, say…a wii nunchuk). PC’s also have an onboard i2c bus for sensors, which I mentioned in my blinkM post.
I’m back from maker faire and am wrapping up the documentation for my latest fun toy. Its an Arduino shield that can play high quality audio, music and speech. One thing I’ve noticed in doing tronix for the last few years is how incredibly hard it is to have a project with audio in it. Audio takes up a lot of space, so you need a storage element, and our ears are sensitive to errors and noise so its tough to make it sound good. After mucking around with ISD chips, embedded MP3 boards, wiring to CD players, generating PWM sound, etc. I decided to investigate playing uncompressed Wave files from a memory card. Success!
Click on the play button to watch a demo of the wave shield playing assorted audio through a small speaker
The shield comes with an Arduino library for easy use; simply drag uncompressed wave files onto the SD card and plug it in. Then use the library to play audio when buttons are pressed, or when a sensor goes off, or when serial data is received, etc. Audio is played asynchronously as an interrupt, so the Arduino can perform tasks while the audio is playing.
* Can play any uncompressed 22KHz, 12bit, mono Wave (.wav) files of any size. While it isn’t CD quality (44KHz/16bit), it is certainly good enough to play music, have spoken word, or audio effects
* Output is mono, into L and R channels, standard 3.5mm headphone jack and a connection for a speaker that is switched on when the headphones are unplugged
* Files are read off of FAT16 formatted SD/MMC card
* Included library makes playing audio easy
Want more? Check out the webpage for documentation, code, schematics, etc & buy a kit!
After much demand, I have finally got a USB-Boarduino kit! This is a little smaller than the Boarduino but has USB built in and a 500mA fuse. It’s pretty much the same as the Boarduino in all other respects – just plug it into a breadboard for ez prototyping. I presolder and test the USB so its easy to assemble
I figure I should also mention the other stuff I added in the shop:
For my UK, European, and Australian customs I’ve added a multi-country 9V adapter, available with the ever-popular Arduino starter packs
Stacky headers! They are just like every-day 0.1″ headers but the legs are extra long.
These are very useful for stacking Arduino shields!
A USB to serial converter…some people have been having trouble getting a converter that works well with the minipov3 so I have found one that I’ve tested and works well. This one plugs right into a USB port or comes with a USB extender cable.
I’m at maker faire, sharin’ a table with Mitch Altman and like 8392732 TV-B-Gone’s and Brain Machines. I have demos of nearly every project I’ve ever done, even some unreleased ones!
We’re at the south-east (?) corner of the ‘Fiesta’ Building (Maker Shed/Store) so come by & say hello