Replacing A Harmony Remote Using Home Assistant

For a long time I’ve been a fan of the Logitech harmony remote controls. They let you orchestrate the operations of lots of devices. I like to think of them as setting scenes. For example in the room we watch tv, we have a tv, soundbar, Apple TV, sky box, HDMI switch and a couple of games consoles. So to watch sky tv :

  • Power on the tv
  • Power on the soundbar
  • Power on the sky box
  • Set the tv to HDMI 3
  • Set the soundbar to HDMI 1(ARC)
  • Set the HDMI switch to 1

Switching to the Apple TV needs a similar sequence, the games console another etc.

An E-Ink Display - Icons And Basic Graphics

An E-Ink Display - Icons And Basic Graphics



We have previously shown how to display text on our E-Ink display, but to enhance the user experience, it’s crucial to be able to create basic icons and graphics.

ESPHome provides detailed documentation on this topic. As an example, here’s a simple code snippet from my lambda:



//
// center vertical line
//
it.line(max_x/2,row_indent, max_x/2, max_y-row_indent);

max_x and max_y are the max dimensions of my screen.

Icons are slightly more complex, but libraries like Material Design make life easier.

An E-Ink Display - HomeAssistant Data

The next focus is how can we present data that we are interested in onto our E-Ink display screen. One of the things I want to use the display for is to show information on the energy usage of our home. Within Home Assistant I have access to info like the current house battery level, energy imported from the grid, energy exported and the current costs.

So within ESPHome you can expose home assistant data by defining entries in the sensor section of the YAML file as follows :

An E-Ink Status Display - Battery Status

An E-Ink Status Display - Battery Status



The firebeetle 2 supports charging and being powered via a LiPo battery. This means it can be moved around and left without being plugged into a USB cable for extended periods of time. In addition the firebeetle also supports a deep sleep mode that reduces its power consumption hugely (one for a later post).

To get hold of the current battery voltage you can use a sensor in esphome :

An E-Ink Status Display - First Steps

I’ve been looking at the excellent TRMNL TRMNL device and have been very impressed by the simple ecosystem they have created and the openness of the software. My particular itch was to create a display showing information about elements of our home. Things like energy usage/generation, car charge levels, weather forecasts etc. It looks like this would all be possible with TRMNL and I might need to write a simple plugin for the homeassistant data I wanted to consume. However, the waiting list for a device had grown significantly so I had to look at alternates.

Home Assistant Static Network Routes

I run home assistant using the pi docker image. My IOT devices live on different networks to devices in the home and I have a slightly weird network setup at this moment in time that means I can’t create static routes at a router level for a couple of these IOT subnets.

I can easily add the required static routes using ssh into the docker container

/sbin/route add -net 172.16.2.0 netmask 255.255.255.0 gw 172.16.0.153 
/sbin/route add -net 172.16.3.0 netmask 255.255.255.0 gw 172.16.0.153 

However I’ve struggled to get these saved in the traditional way to survive post boot. This may be a busybox issue, but I can’t crack it in any normal way. As such I’m documenting a quick way of sorting it if you are having the same issue.

Monitoring Anderssen Konnect A2

Home Assistant has an excellent system for monitoring energy usage/solar generation/grid usage/gas usage, etc.

One of the features is the ability to monitor specific devices, i.e., anything that can show electricity usage in kWh. We’ve been able to monitor many devices, like the fish tank, computers, etc., using plugs that can monitor power usage. However, many things are harder to measure, and it’s not economical to add monitors to everything in the house. This means that the gap between usage and monitored usage shows up as “Untracked consumption”.

Controlling Solis Inverters With Home Assistant

Our general setting for the house prioritises energy use as follows :

Solar » Battery » Grid

This means we minimise our usage of the grid when possible.

Given the cheap rate period of energy usage through the night, we had manually set the inverter to charge the battery from the grid during the core hours 23:30 - 05:30. This effectively stops the battery from being used to power the house in that period and we have no solar in that period bar the peak summer months.

3D Printed Hydroponics Tower

Last summer I became curious about trying hydroponics to grow basic greens on our patio. I looked at potential systems, but the UK pricing for solutions was expensive. For tower systems, these would typically cost £300-£500+ for a tower capable of growing 12-18 plants. This was more than I was prepared to spend to find out if it was something I was interested in.

Earlier in the year I purchased a Bambu X1C that I ran alongside an older Prusa Mk3S. So I thought I would see if I could build something myself.

Simple Dependency/SBOM/License/Vulnerability Tracking

I’ve recently been returning to writing some software. I was looking for an automated solution to allow me to do the following things :

  • Track Vulnerabilities
  • Track Licenses Used
  • Track Package Versions

I also wanted something that would alert me to new vulnerabilities appearing even when I’ve not performed a build on the project for a while. Ideally, this would be free until I find a revenue stream for the software.