Umwandlung 8 Bit Folge in einzelne Binär-Sensoren?

Moin, ich bin auf der Suche nach einem Tip zur Lösung von folgendem Problem:

Ich bekomme einen Wert von einem Sensor, der mir verschiedene Zustände eines Gerätes anzeigt. Es ist ein 8 Bit Wert, er enthält vier Bits, die einen Schaltzustand repräsentieren. Also Bit 2 zeigt an, ob Funktion A an oder aus ist, Bit drei zeigt an, ob Funktion B an oder aus ist …

Ich möchte nun aus dem 8 Bit Wert einzelne Sensoren machen, also im Prinzip “aufschneiden” in die einzelnen Bits und dann in einen Sensor wandeln für Funktion A, B, …

Wie und wo kann ich das machen? Wahrscheinlich irgendwie über Templates?

Danke Euch im.voraus!

Das sollte mit einem Template Sensor gehen. Der Wert vom jeweiligen Template Sensor kann dann so berechnet werden:

{{ (sensors.the_8bit_sensor.state | int) & 4 > 0 }}

Wobei die 4 für das Bit ist. 1 ist das erste Bit, 2 das 2te, 4 das 3te, 8 das 4te, etc.

Disclaimer: ich hab’s nicht getestet :sweat_smile:

Hmm, das funktioniert irgendwie auch nicht… mit dem Template Sensor - Binär Sensor habe ich schon rumgespielt. Wenn ich jetzt als Template eingebe:
{{ (sensor.bsb_lan_00_24_benutzerdefiniert_10018_status_trinkwasser | int) & 2 > 0 }}

Bemängelt er das & - den Namen vom Sensor habe ich direkt so aus der Eigenschaft über ommen. Kommt da noch .state ans Ende?

Probier mal bitwise (am Ende des Abschnitts):

Filter value_one|bitwise_and(value_two) perform a bitwise and(&) operation with two values.
Filter value_one|bitwise_or(value_two) perform a bitwise or(|) operation with two values.
Filter value_one|bitwise_xor(value_two) perform a bitwise xor(^) operation with two values.


{{ states('sensor.the_8bit_sensor') |int |bitwise_and(4) > 0 }}

Jawoll, das war es! Ich danke Dir, Kitty!