LighTouch was an idea I had as I was just diving into Arduino.  Like anyone getting started, I bought an Uno and three random shields just to play with (music shield, bluetooth, and ultrasonic range finder).  To that end, I got each of them up and running in record time and got bored.  So what was the next logical step?  Right... figure out how many of these shields can I use at the same time.  In this case, a music shield and ultrasonic range finder made the cut.

The idea is pretty simple; an mp3 player that you never have to touch.  Simply hold your hand over the device to adjust volume, pause, and move to the next track.  All the commands basically key on the distance of your hand from the sensor.

A little modification of the demo code for both, some enclosure work, and before i knew it I had a pretty functional little prototype.

Here's the current control scheme:

0-7cm = Pause (LED OFF)
7-30cm = Lowest Volume->Highest Volume (LED DIM)
30-50cm = Highest Volume (LED ON)
50-55cm = Next Track (LED OFF then ON)

So basically the setup works based on your hand's distance from the sensor with feedback given by the LED so you know where you are in the control scheme.  There's 'dead zones' setup to avoid accidentally moving from volume mode to next track.  For instance, once you're at the max volume (30cm) , there's a +20cm dead zone until you hit the next track and the LED turns bright so that you know you're at the max volume.

Whenever you move your hand away, and the distance becomes 'infinite' (ie, the ceiling) it locks in the last distance it recorded for your hand.  So basically you move your hand to the volume you want, then slide your hand off to the side to lock it in.

To pause, move your hand close to the sensor until the LED turns off, then slide your hand away.
To change volume you raise your hand up or down while the LED is dimly lit, until it's brightest (then you're at max volume)
Once you're at max volume, you can pop your hand up, watch for the LED to turn off, then back down to move to the next track (then you're back in volume mode, or just move your hand off to the side).


I plan on expanding on this idea.  Ultrasonic proves to be a very simplistic, but very precise user interface for just about everything I've tried it on.

What's next?  An alarm clock that I can just wave my hand over to shut it off.

assembly pictures after the break:


Project Gemini - Phase 1 - XBMC (complete)


If you're reading this post than you are probably where I was a couple of months ago.  You wanted to jump on the bandwagon of the single board, SOC craze and ran out and bought a Beagleboard XM (rev C in this case).  You did this not because you're a developer or a potential product manufacturer but you thought the idea of a 1Ghz computer that fits into the palm of your hand is just plain AWESOME.  You got it in the mail, opened it up, plugged it into your TV, and played with the demo image for 5 full minutes before going "ok, what else can I do with this?"

Then you started researching (and perhaps started secretly wishing you bought a Pandaboard or RasPi due to the overwhelming amount of prebuilt software/support available).  You spend hours sifting through Google Groups, forums, and blogs only to find that there are hardly any detailed 'how-tos'. Or even worse, only brief glimpses of people who are facing the exact same issues you are or the occasional, "I HAVE AN ISSUE"........."NEVERMIND.  I FIXED IT" with nothing explanation as to how....

So I decided that I could either be part of the problem, or part of the solution.  These posts won't contain issues or 'work in progress'.  These will be detailed how-to's on how myself and my partner in crime plan on turning a Beagleboard XM rev C into a "Swiss Army Knife" of portable computing.  Each 'phase' will basically be it's own 'sdcard' to swap out at will depending on what you want to accomplish.

Upcoming Projects:

Phase 1 - XBMC

  • Phase 1.5 - XBMC - CarPC
  • Phase 2 - Full Android System (rooted, google apps, etc)
  • Phase 3 - Wireless Webcam Monitoring System (mjpegstreamer, lighttp)
  • Phase 4 - Headless Music Server (MPD, lighttp)
  • Phase 5 - OpenWRT Wireless Router

Phase 1 - XBMC 

The first time I saw this little board my mind immediately jumped to using this thing as a replacement for my CarPC.  While that process is ongoing, the majority of my time was spend just getting Angstrom, SGX, and XBMC to play nicely.  Here is EXACTLY how to get XBMC running on your Beagleboard XM rev C (as long as you already have some basic knowledge of Linux).

(continued after the break)


$15 (easy) Water Detector

After the slew of hurricanes and tropical storms that plagued the east coast this year, I think just about everyone became aware of 'flooding basement syndrome'.  I certainly did.  And, in accordance to Murphy's Law, the flooding MUST begin at 3am when you are soundly asleep in bed then continue to flood until you wake up the following morning to a brand new indoor pool.  The second night is even better.  You've learned your lesson and you're prepared for the worst.  Unfortunately, all this results in is you standing there at 1am staring at a sump pump float for hours, performing your own scientific field test of the adage 'what goes up....must come down' and each time praying that it does.

Around hour 3 of this, it occurred to me that this is the 21st century!! I should just be alerted to the fact that my basement is flooding while I'm sound asleep by some device with the voice of Pierce Brosnan!!

As with most good ideas at 3am, I completely forgot about it.  Then I recently saw this post on Make for a $25 water detector which reminded me.  I thought I'd take my own spin at a simplified method.  So here it is.....might not be a soothing voice to awake you (yet), but it will definitely get the job done...

What you'll need

  • A battery operated smoke detector ($7)
  • a large PVC coupler ($6)
  • a large sponge ($1)
  • A SPST switch ($1)
  • wire
  • a soldering gun
  • glue

How it works

It's pretty simple and should only take you a good 30 minutes to put together.  Basically, your highjacking the 'test button' that's present on any smoke alarm by attaching to leads to the PCB that go down into a sponge that's at ground level.  When water saturates the sponge it completes the circuit causing the alarm to sound (and yes, the smoke detector still works too...as I quickly found out while soldering).

(see the rest after the break)


USB Webcam Microscope

Not everthing I do is original.  This just seemed like a cheap fun project.


Only took about an hour and I'm fairly impressed with the results

my hair
the table it was sitting on

Project - AlarmTock

Backstory - I don't know why this didn't occur to me sooner, but once again my wife comes to the rescue in inspiring my creativity.  You see, I've had the same same Sony alarm clock since 1992.  The damned thing still has a tape deck in it!!  I never really gave it much thought because I only stared at the thing once a day for 3 seconds, and that was to turn it off.  My wife absolutely hated it though.  It sounded terrible and looked even worse.  So she went to target and picked me up a $10 alarm clock that at least looked like it belonged in the 21st century.  I stared at it for about 30 seconds before asking myself "Why am I limited to waking up to a radio station that could be playing a song I absolutely hate or the most annoying BEEEEEP sound imaginable? Why doesn't my alarm clock tell me exactly what I need to know in the morning?"

Based on some other projects I've been working on (BlueBell), I used the idea of rss-driven text to speech combined with cron job built on a Chumby Hacker Board, crammed it inside a cheap alarm clock and Viola!  Enter the AlarmTock.

After the break you can here a quick sample of the output.  It's not quite Tony Stark's 'Jarvis' yet, but it's a step in the right direction.  Currently only does weather and top headlines, but I'm working on Facebook updates, personalized TV lineups, and todo lists.

(more after the break)

Musicbox V2

This is simply a revamp of my previous wireless jukebox setup posted here http://wolfebaine.blogspot.com/2010/06/project-musicbox-portable-hidden-and.html

Nothing more to say really.  I just wanted something that had a little more polish and looked very unobtrusive when stowed away.


(UNDER CONSTRUCTION) BlueBell - The household audible alert system

What is BlueBell?

BlueBell is the evolution of one of the last, untapped pieces of technology in your household; the doorbell.  Your doorbell is probably the only audible alert system heard throughout your entire house yet it is limited to a single sound and triggered by one physical button.  BlueBell seeks to improve upon this antiquated technology by transforming your doorbell into an household audible informational system that requires as little physical intervention as possible.  BlueBell takes the traditional doorbell to it's logical extremes by incorporating wifi, bluetooth, and audio to bring you, the homeowner, a limitless notification system.

(in these examples, John and Marsha are the home owners and Eric and Trent are the guests)
  • Bluetooth Doorbell 
    • Personalized Indoor Notification System
      • The system will announce a guest by name before they even arrive at the door
      • UNDER DEVELOPEMENT: The system will also notify the homeowner via SMS at the same time
        • Example:  "Eric and Trent have arrived"
    • Personalized Outdoor Greeting System
      • The system will greet a known guest by name and alert them as to whether whether or not one more more of the homeowners are currently present
      • UNDER DEVELOPEMENT: The system will also notify the homeowner via SMS at the same time 
        • Example 1: "Welcome Eric and Trent.  John and Marsha are home and will be with you shortly"
        • Example 2: "Welcome Eric.  No one is currently home but they have been alerted to your presence "
  • Generally Interactive Realtime Vocal Information System (GIRVIS) (ha! can't sue me now!!)
    • The Arrival System
      • A personalized audible reading of live internet-based information designed to operate when you return to your house
        • Example: "Welcome home, John.  The current temperature is 88 degrees and mostly cloudly.  The forecast for tonight is clear.  You have 8 unread emails and 9 facebook notifications. Here are the tops stories in the news...."
    • UNDER DEVELOPMENT: The Departure System
      • A personalized audible reading of live internet-based information designed to operate as you leave your house
        • Example: "Marsha today you have a doctor's appointment at 11:30.  Don't forget to pick up your drycleaning before 9pm.  There is currently and accident on I-81 northbound at mile marker 100.  Today's forecast calls for an 80% chance of rain."
  • Remote Controlled Wireless Music System (via MPD)
    • Wireless Jukebox
      • By utilizing the thousands of MPD clients available (from web browsers to iphone and android apps) your doorbell becomes a household jukebox system that be controlled by any person on your wireless network.
    • COMING SOON!! Bluetooth Party Mode
      • A dynamically shifting music playlist based on the presence of known individuals.  The program will detect who is present at a party and automatically shift the genres of music according to user-defined likes and dislikes.  The system will also work in tandem with The Personalized Indoor Notification System to pause a live playlist, announce the arriving party instantly start playing their user-defined 'theme song'.
  • COMING SOON Wireless web-accessible CCTV system (via usb webcam) 
How does BlueBell work?
BlueBell operates by utilizing one of the most commonplace of all wireless protocols; Bluetooth.  Bluetooth exists on over 90% of all cell phones and since Bluetooth is designed to work over relatively short distances (30 feet or so) and each bluetooth radio has a unique identifier (it's MAC address) it makes it an ideal candidate for proximity detection.  

These unique identifiers are then compared to a list of known people, a 'Rolodex' of MAC addresses if you will, and executes a certain task based on who has arrived and when.  The output or 'notification' can take form of a spoken voice, and sent text message, playing of a song, or hundreds of other programmable actions.  Basically, if it can be plugged into a wall, then your presence will be able to activate it!

By combining this bluetooth proximity detection with internet access (via wifi) and audio (via text to speech engine or mp3 library), you have real-time access to a world of information that can be delivered to you simply by walking into your house.

How can I get BlueBell in my house?
Bluebell is currently in the development stages and not yet available for distribution.  Our goal is to integrate a low-power platform using a lightweight application structure that is both modular and scaleable.  We currently have a prototype in operation, but are looking to gauge public interest in this project before moving forward with an alpha release.

Until that time, please enjoy this brief video highlighting some of the features BlueBell is currently capable of and the current platform we have chosen to use for the prototype.