Thomas shares makes

OpenPlank Proof Of Concept

led matrix

Prototype with reckless veneer seams

In November I saw a cool device at an event. The device was presented as an unobtrusive way to interact with technology. Unlike usual touch screen devices, it looks like a wooden plank that is sensitive to touch and uses a LED pixel matrix behind the wood to visualize icons and text.

Since the device wasn't available for sale, I wondered how easy it would be to DIY a (much) simpler version that I could use for some of the same tasks.

I worked on this for a few hours each week, and by the end of December I had this simple proof of concept, making use of cheap parts and easy to assemble.

I call it the OpenPlank. Check it out...

Continue reading ...

Rainwater Tank Plumbing


After having the rainwater tank installed and connected to the roof, there was still quite some plumbing missing. The filter and calmed inlet add up to hundreds of euros. In my case the way the tubes were connected to the tank made off the shelve filters unusable, so I opted to DIY everything.

Continue reading ...

Rainwatertank Level Sensor

rain water level sensor principle

Mechanical sensor parts assembled with a very short sensor tube to fit the picture.

This project idea scored 3/3 stars, combining electronics, water and creating something from scratch. I couldn't resist building my own reed switch array water level sensor.

This kind of sensor has a floating part moving up and down a sensor tube.

It's not an off the shelve solution to sensing water levels, buying a water pressure sensor or an ultrasonic level sensor would probably be easier, but DIY is fun!

My goal was to do some electronics and 3D design, 3D print, experiment and get a circuit board fabricated. I'd build a sensor using easily obtainable parts whenever possible. The electronics should be easy to build at home.

I will use it to monitor and log the water level in Home Assistant. Getting to automate the adding of a minimal amount of tap water to the tank during the summer will be a useful feature.

Continue reading ...

(dir)VimDiff as GIT difftool

diff screenshot

Tig blame + VIM showing all files of a GIT commit in diff-tabs using dirvimdiff

I configured GIT's difftool command to show the changed files as diff-split file tabs I can easily cycle through by pressing gt.

This makes for a good terminal-based meld/beyond compare/... alternative.

Combined with Tig, it allows to quickly inspect a GIT commit's modifications in file context, let's take a look at the quick and simple steps to set it up.

Continue reading ...

Home Assistant Multi room audio setup


I was able to cook up a fun audio setup controlled and automated with Home Assistant! It features

  • Multiple room synchronised audio speakers (fixed/analog, portable Bluetooth devices and via app on phone or tablet)
  • Playback of internet radio, Spotify streaming and local audio files.
  • Sound notifications for Doorbell, garden gate and other sensors and home alarm events.

In my setup, a docker container running on the Home Assistant machine takes care of retrieving audio from Spotify, internet radio streams and local storage.

Physical devices like raspberry pi's or an Android phone/tablet use a snapcast client to use drive speakers.

Continue reading ...

openHASP touch display build

openHASP running in a 3D printed case

openHASP running in a 3D printed case

I discovered openHASP while I was searching for projects integrating touch interfaces with Home Assistant.

It's easy to wire up a cheap ESP microcontroller board and TFT display module, and by loading this opensource firmware you can turn it into a network connected touch control panel and control devices and display things.

When I bumped into a nice 2.8" TFT Desktop stand enclosure on thingiverse, I remembered I had an unused 2.8" ILI9341 display with resistive touch layer from a previous project.

Connecting the dots... I had all the necessary parts in my workshop, this would make a nice project to make over a weekend evening.

Continue reading ...

lighting scene / mood control proof of concept

twatch running lighting scene selector

Lilygo twatch 2020 running simple lighting scene (mood) control proof of concept

I discovered a lovely smart watch development platform; the Lilygo t-watch 2020. It's an ESP32 based hackable watch, with a small capacitive touch display.

I had already played with the idea of building a small home automation control and status display that fits into the existing switch cover plate, so clicked the order button and leveraged the open source watch firmware to quickly hack together a proof of concept.

Continue reading ...

Openscad: Interlocking Hash shaped platform


While designing a screw-drive based RC tank (perhaps more on that later), I wanted to create a large easily customisable support structure out of a minimal amount of plastic. I started prototyping an interlocking structure in the shape of a octothorpe (#). This turned out to be a lot of ugly code, and so I got sucked into rabit hole of optimising my openscad model and found a cleaner solution.

Continue reading ...

Home assistant based automatic alarm


image: cover from

At one point I wanted a basic home security system (burglar alarm) to offer me some peace of mind at night.

My Home Assistant instance has enough sensors to figure out what we are up to, so it was possible to create an alarm system that works autonomously. The system automatically arms and disarms while we sleep during the night and when we leave and return to the house during the day.

Continue reading ...

Reviving my Standing stats project


I have used an Ergotron standing desk for 5 years, then it broke, right out of warranty. Several years ago I started building a sensor device to track how much time I spend standing up versus sitting down in my chair. The hardware prototype finished, it got shelved since I found other fun things to do with my limited hobby-time.

Later I noticed that I was sitting down 99% of the time when working from home. To revive my healthy habit of working upright part of the time, I decided to pick up my parked project by re-printing the enclosure I made on my own printer and leveraging the power of esphome on and home assistant to finish the project after all.

Continue reading ...

ILI9341 SPI TFT on the raspberry pi4


I've been running network services on embedded arm platforms for for more than 8 years now, and when things go wrong, had to drag around HDMI monitors to hook up. For the last years I had a pi connected to the serial console to avoid that.

I have been mounting all my networking and smarthome devices on a DIN rail, and I had some small 2.2" TFT displays around for a different project.

I thought it would be nice to create a raspberry pi enclosure that included such a display so there's a real video console on the device that can also be used as status display.

Continue reading ...

Din-rail mounted Home assistant gear

din rail mounted stuff

I have a technical wall with several pieces of electronics mounted onto it. It started to look a bit disorganized, with all these things mounted at random places on the wooden board and cables running all over the place.

So I wanted to clean it up a bit... I stumbled upon a DIN-rail mount on Thingiverse, and remembered I had a piece of DIN rail in a box. Time to remix a bit and mount everything on DIN rail!

Continue reading ...

Board stacks

raspberry pi stack prototype

At home and at work, I always tend to have around 5 small development boards on my desk. In a fixed setup with identical boards, metal or plastic standoffs can be a nice solution to build a stack that reduces the footprint on desk and avoid a spiderweb of cables.

In reality, the boards are of different sizes, and standoffs still cost a few euro's each. I knew I could do better, using a 3D printer and some parametric CAD modeling.

Continue reading ...

TV Console corner protector

from the side

During COVID19 lockdown, the kids were running around the living room a lot more, and a lot more reckless. Our TV console is covered with glass plates. These have chamfered corners (45 degree cut off), but still it's a hard, glass corner, and I could imagine painful or catastrophic injuries and trips to the ER.

I decided to create a quick and dirty cover that, once installed, would provide safer plastic, rounded corners.

Continue reading ...

DIY extension block

from the side

During COVID19 lockdown, I found myself struggling with cheap extension blocks, in fact I find most extension blocks horrible, and most power supply blocks can't fit next to each other.

I still had three brand new, wall sockets left over from electricity renovations (I opted to place earth wire so installed appropriate sockets). These are Niko brand, the finest EU/BE sockets available, and are lovely to use in every way possible. I already considered making larger extension blocks this way.

Continue reading ...

An improvised door handle

OpenScad render

I designed a simple door handle during COVID-19 lock down. After my kids slammed the kitchen door against the radiator a few times, I had to glue the existing handle again and again. I didn't feel like installing a door stop (also, shops were closed) for this old door that will be replaced at one point in the coming years. I did feel like modelling a replacement object...

Continue reading ...

Mutually Exclusive Media Players in Home Assistant

hass rpi mpd

I have Raspberry Pi's in different rooms, and one thing I use them for is to play music to speakers.

Each of them has two music player services on it (MPD, Spotify), and it's a bit annoying that I have to stop a player when I want to listen to the other one.

Since I'm running home assistant as an automation hub, I wrote two short automations that stop the already playing service when the second one kicks in.

Continue reading ...

Central Heating sensor manipulation


We used to have a gas-powered central heating system that had no external controls other than radiator valves. It had a sun-exposed exterior temperature sensor on the west side of the house that caused it to refuse to heat in the evening.

I wanted to fix the issue and control it via Home Assistant, and since only the newer models had bus control, I resorted to manipulate the outside sensor readings and designed a man-in-the-middle device.

Continue reading ...

Next → Page 1 of 3
Follow me on Mastodon!