Architecture recommendations for IR-based Space Heater integration

Hello HASS community, after attending the conference I thought I’d dive a bit into the dev side.

I have two space heaters from different brands, and have them connected to my hass setup through two IR hubs: 1x Broadlink IR, 1x Logitech Harmony. I can control this through automations and general service calls.

The problem is that the space heaters I have are stateful: remotes only have a power toggle button, and temperature up+down, I can’t send IR commands requesting a particular temperature or power state.

My intention is to model some form of device in home assistant that persists the state of the machine, so I can only control it through hass but more easily write automations/scripts that setup particular states (i.e turn off at night, but only if heater was already on).

I’ve come to think of three possible options:

  1. good-old fashioned integration, spin up python and doing it the traditional way. I am confident this will work properly but seems like a big investment.
  2. hack something together using Node RED. It seems that there’s a persistence module I could use, and with that I feel confident I can make the rest work using a Node Red “Sensor”
  3. Use some form of “dummy” hass sensor and use simple API calls to persist state (in home assistant), possibly from Node RED? Dummy sensor

Any help or suggestions are appreciated. I worry about choosing an architecture that will make things too complicated/hard to evolve, while also fearing overkill. Am I getting something wrong here?

I am comfortable in Linux environments and with dynamic languages.

How about using a power monitoring device to obtain state information?

It’s what a lot of people do for washing machines.