Recently I was approached by an architecture/design firm to help with an electronic install at a client site. The client had requested a system that interacts with users in the bathroom- “interacts” meaning, hassles them when they come and go.
The system has three events- enter, exit, and “loiter”, and sounds in different folders on the USB drive will be played for each event, allowing users to change the sounds later if they wish.
He centered his project around a Chumby hacker board thanks to its ability to handle audio.
(I)t offered the benefit of playing many types of audio files natively, being programmable in Python (yay!) and being, well, cool. I partly defrayed the cost to the client by offering to do the job in return for enough parts to build a setup for myself (so I have a CHB of my own to play with) and pizza after the opening.
The electronics are fairly simple (outside of the CHB, of course)- I used a protoshield to interface with the CHB (on these beta release boards, Arduino-ish headers are in place; the final product is likely to have that removed as the compatability with Arduino shields is pretty low due to the 3.3V signal level and the lack of hardware SPI and PWM on the right pins of the header). For ease of installation, I hacked on a terminal block (Altech AK950 5-pos). The install of that is quite a good hack (IMO)- the AK950 is a 5mm spaced header which is close enough to .2″ to line up well with the holes on the protoshield. I pushed some pins that I dug out of a .156″ spaced header into the holes and soldered a right-angle .1″ spaced snappable header to that. The right-angle pins drop through the board and Bob’s your uncle. I used hot glue to secure the terminal block.
Mike’s project write-up has tons of technical info. (But he leaves out the most salacious aspect of the project: what exactly does the thing say to people going potty?)