Comment on Home Assistant - am I missing something?

<- View Parent
agressivelyPassive@feddit.de ⁨1⁩ ⁨year⁩ ago

Sure.

My setup here is pretty simple: a handful of temp/humidity sensors that push their readings to an MQTT queue, which then is read by Telegraf an written to InfluxDB. Optional complexity: I would prefer these sensors to delay the acutal send events, so they can push a batch of readings in one go.

Now, ideally HA would be able to read the data from Influx as a sensor and even import the history. I tried the Influx integration, was told to configure that in the config files and literally for days I tried to get everything to work, but it just would not work. I can’t even list the different error messages here, it’s been a few weeks, but the consensus seems to be, that Influx is essentially not readable for HA for reasons. Like, there’s no error message that I could make sense of, it’s just generalFuckYouError 5446.

Ok, then maybe I can read the measuements directly from MQTT? I would have duplicated data, but I can always delete old data in HA, so that’s ok. All my sensors currently write in the same topic and each message contains the sensor name, a timestamp and two measurements. That data structure however is utterly unreadable in for HA. Obviously, I need to split the messages into different (HA-)sensors based on the sensor name field and then differentiate between the different sensor values (humidity/temp). That is not possible. Like, it is completely not supported and the official stance is to put a bunch of MQTT listeners for each sensor/value pair in your config and then filter the messages based on sensor name and reading. Well, that’s really convenient! Especially for the completely outlandish case, that someone might want to automatically add new sensors.

But ok, I played ball. I set up two testsensors (so four listeners in total). And it kind of worked. Until I noticed, that each message is processed once, which is perfectly in line with MQTT semantics, but it meant that messages that didn’t fit the listener they happened to collide with were just dropped. Awesome!

But ok, next try, I’ve got Telegraf, that thing can probably help out. So I created new topics for each sensor and value, in a nice hierarchy and created a bunch of HA listeners, each having its very own topic.

And that finally kind of worked. I still can’t batch-import messages, because HA ignores MQTT timestamps, I still can’t dynamically add new sensors, I still can’t “fuse” sensors belonging together (hum/temp do kind of correlate, after all), etc. etc.

My case isn’t really unusual and not really complicated, yet it took me literally weeks to get to this point and it’s still a clunky, semi-functional clusterfuck, whos only benefit compared to Influx is, that it has an Android app.

Disclaimer: I might mixed some thing up in the description above, it’s been a while. And I’m certain I could make some things nicer, but that’s not the point. I’m a senior software developer and can’t get this pile of Python to run. Maybe I’m really stupid, but I’d say HA is the culprit here.

source
Sort:hotnewtop