The Sip and Puff Bed Controller – a Tetra Project

Not long into my new hobby as a volunteer for Tetra Society of North America (an organization that creates customized assistive devices for people with disabilities), I fell into  a doozy of a project.

The client has C4/C5 quadriplegia‎ with limited hand movement.  He has an amazing, high-end, electronically adjustable bed, but can’t operate the buttons of the hand-held remote control.  He wanted to be able to operate the bed independently.  I went in thinking the solution would be the relatively easy task of making an apparatus, with some oversize levers added to the controller, that would mechanically press the buttons so it could be operated with palms/arm movement.

No dice — his arms are too weak and he needed it adapted with a sip-puff interface instead (a method used to send signals to a device using air pressure by “sipping” and “puffing” on an accessory called a “straw” or “wand”).  I wasn’t prepared for this, as I had no experience with sip-puff technology and electronics isn’t my main thing.  But in the end, it took a while but I made it work — here is the blow by blow, complete with many pictures …

The Bed

Below is the Volker bed — this is a thing of beauty from an industrial and mechanical design viewpoint.  Looks amazing for this type of product, flawless adjustability, silent operation, typical German attention to detail.

Unfortunately, this is all it has for controls:

Not too useful for people with limited hand-movement.

So, I decided the logical thing to do would be to use sip and puff actions to control a computer via a simple visual menu, and the computer would, in turn, control the bed.  I wondered if the bed could be controlled by computer directly (via. serial or USB or whatever) so that the remote control could be bypassed altogether.  Unfortunately, Volker didn’t respond to my inquiries, and without that specific info, I was left with figuring out how to ‘remote control the remote.’

First I picked up another remote control from Hertz Supply in the US.  I also got a splitter from them so the original hand-held remote could still be used to operate the bed by others, when needed.

Then I got this 8 channel USB relay board from

Then, I tore apart the Volker remote, and soldered leads directly onto the switch contacts, and connected them each to the relay board.  Everything was zap-strapped/screwed to an ABS base and wound up looking like this:

I then sealed the whole thing in a stock electronic enclosure ‘black box’ I got from Mcmaster-Carr:

That’s it for the remote interface — moving on to the computer interface, I picked up this USB sip-puff switch and gooseneck-hose kit from Orin Instruments:

The above package is great — the supplied USB switch simply emulates mouse buttons (‘sip’ and ‘puff’ for left and right mouse buttons, respectively).  No messing with hardware drivers or cryptic serial commands.  And the gooseneck is plenty long, easily clamps to the arm of the bed, and looks good.

For the computer and screen, went with a basic Dell Mini10 netbook, running winXP:

The sip-puff switch and the 8-channel-relay board each connect to it via USB.  For software, I chose to go with Java– mainly for development portability since I commonly switch between Mac, Linux and XP/Win7.  Also, earlier on I wasn’t sure if the netbook would be running Linux or XP.

Using the open-source Netbeans IDE I developed a simple Java/Swing application:

You ‘puff’ to toggle through the menu items, and ‘sip’ to activate and/or open up a sub-menu.  I used photos of the buttons on the actual remote and dropped them into the app.

Another screenshot, with a sub-menu open:

I even added a ‘settings’ popup, where you can customize a few things:

A few safety features were added (one must be mindful of liability)… the software automatically turns OFF the switch after a pre-defined delay, so that it doesn’t inadvertently raise/lower something forever and cause a horrible accident.  Also an ‘emergency call’ feature was added: if you sip&puff 3 times fast, at any point within the menu, the system automatically places a skype call (the client commonly uses skype already to ask for assistance from others in his house).

A link to the netbeans project files with source code is here.

In the end it all came together and works pretty slick! The client is stoked and has had no issues so far.

Update Nov 19/2010:

This project was awarded Tetra’s prestigeous 2010  ‘Most Innovative’ Gizmo Award and written up in the North Shore News!

NS News link here

Photo from the story below, courtesy of Tetra Society:

John Ramsden, Colin Adamson


10 Responses to “The Sip and Puff Bed Controller – a Tetra Project”

  1. tom says:

    what a great hobby

  2. Mike says:

    I’m the client’s Dad …

    Thanks so much to you, and to the Tetra Society, for this! Gives our son more independence, which he really appreciates.

    We’ve got the box suspended under the bed, and if you didn’t know, you’d think it was part of it. I like the fact that with the PC controller, it can be modified to add function as needed. Next stop: light and furnace control.

    Oh … you thought you were finished? ;-)

    Great job.

  3. great work – a word from a namesake

  4. Ken Moren says:

    Great work Colin… I’m impressed!

  5. dute says:

    a gizmo award

  6. Cindy Margraf says:

    So wonderful – found this solution for a bed. My husband has ALS uses a lounge chair to sleep and loosing hand control was looking if sip and puff technology could be applied to a lounge chair that has similar controls that raise and lower head and knees.

  7. jon ko says:

    That is awesome, wish I could make one… quad C2/C4. I’m pretty sure you could hook up X10 home automation to the notebook to get lights & some appliances.

  8. Sarah says:

    Hi. I have a Volker double bed with two independently moving halves and am looking for a splitter box so that I can control both sides in unison from the one control box. If you know where I can get one, I’d be really grateful!

    Sarah in Cornwall, England

  9. Bill Conn says:

    Is the source code available?

  10. admin says:

    Yes! (Sorry took forever to respond…) have added a link to source in the original post, and you can also download it from here:

Leave a Reply