I have used an openHAB based home automation setup for several years now, and I am mostly happy with it … except in those very lazy moments where I just want to turn on a light, and wish I didn’t have to to pull my phone from my pocket, unlock it, open the openHAB app, navigate to the right UI page, and push a button. So … I decided it was time for voice-based interaction, Alexa style.
Continue readingCategory: openHAB
Rhasspy satellite with Raspberry Pi — UPDATED
I have several Raspberry Pies around the house, serving as voice interfaces (Rhasspy “satellites”), some of them also as media players using Kodi. They all have a ReSpeaker 2-Mics Pi HAT sound card, which contains two microphones and an audio output, connected to a small speaker.
Continue readingRhasspy with openHAB
I wanted my voice interaction solution to be fairly independent from openHAB, in order to have the option to switch to a different home automation controller in the future. That drove my design decisions in how to couple Rhasspy and openHAB.
The solution also needed to extensible: I expect to add more openHAB items for lights and other gadgets in the future, and I don’t want to have to manually edit lists of expected voice command sentences every time I do that.
I implemented three kinds of voice interaction: voice announcements, voice commands and voice questions and answers.
Continue readingMyDashboard for openHAB — home automation status at a glance
Before I leave the house, I want to see an overview of all relevant home automation variables: are all the windows and doors closed? are all the lights off? is my computer off? is the washer or dryer still running?
For this, I built a small, battery-powered display next to the front door. It has a Wifi connection to the home network, and pulls all relevant OpenHAB variables via its REST interface, every hour, and at the push of a button
Continue readingLight control for indoor plants
Winter is approaching, so I needed to bring my kitchen herbs collection inside, and I thought some artificial light might help to keep them thriving during the dark part of the year.
Continue readingFreezer door open alarm
We all need to minimize energy consumption these days, so what you really don’t want is for the freezer door to be not completely closed, accidentally, wasting a lot of electrical energy.
Continue readingMyGasMeter – a low-power link between the gas meter and home automation
This sensor node is attached to the gas meter in my home. It uses a 2,4 GHz RF link to a MySensors MQTT gateway to reports natural gas consumption data to my home automation controller. The gas meter is of the type that creates magnetic pulses when the meter dial moves, so the connection is contact-less, and works without access to the inside of the “official” meter from the utility company.
Continue readingMyMotionSensor – a MySensors based sensor for motion and ambient light level
I needed a couple of motions sensors to automate lighting in hallways and other rooms. Since the lights should only turn on when it is dark, the system also needs to know the ambient light level in the location where the motion was detected — so I added a simple brightness sensor to each node.
Continue readingWeather-mood-alarm-light
When my alarm clock goes off in the morning, the lamp on my bedside table also turns on, to help me wake up, and its color indicates outside temperature: from red for warm through yellow and green to blue and violet for “it’s freezing outside”.
Continue readingopenHAB proxy items and groups
Lights in my home automation setup may be controlled multiple ways: by a physical switch hardwired to the light, by a button on a UI screen, or by a rule in response to some other events. To keep it simple, I combine the design patterns for Proxy Items,for Groups and for Associated Items. I define rules for the desired behavior at the level of a group, and then assign the lights to that group.
With this setup, the proxy item will always correctly reflect the status of the light, independent of what caused that status (command from a rule, gesture on a physical control, gesture on a UI element).