FHT80 Ventilposition ohne "%" an KNX senden

Begonnen von JochenFHEM, 25 Januar 2026, 21:17:17

Vorheriges Thema - Nächstes Thema

JochenFHEM

Ich bekomme es bisher nicht hin, die Ventilposition der FHT8 Heizungsaktoren an KNX zu senden.
Problem ist wohl, dass der actuator Wert in % ausgegeben wird.
Mein Code funktioniert zumindest mit den Max Heizungsthermostaten, weil hier der Wert nicht in % ausgegeben wird.
Kann/muss man hier vor Übergabe der Wert noch umgerechnet/umformatiert werden und wenn ja, wie?

Der Code, der für Max funktioniert aber mmit den FHTs nicht:

define ValveZiW KNX 0/5/144:dpt5.001
attr ValveZiW room KNX
define FHEMtoKNXValveZiW notify ZiW_Hz:actuator.* set ValveZiW g1 $EVTPART1

Chat GPT hat mir einen Code mit Perl vorgeschlagen, der aber Fehler erzeugt:

define ValveZiW_to_KNX notify ZiW_Hz:actuator:.* {
  my $val = ReadingsVal("ZiW_Hz","actuator",0);
  fhem("set ValveZiW $val");
}

Für jede Hilfe dankbar!


Beta-User

Die KI kennt scheinbar ReadingsNum() nicht...
Server: HP-elitedesk@Debian 13, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

JochenFHEM

ich leider auch nicht - wie sicherlich an meiner Frage zu erkennen ist, noch Newbie


rudolfkoenig

Anders formuliert: im Vorschlag von ChatGPT sollte ReadingsVal durch ReadingsNum ersetzt werden.

joc_w

Danke für die Hilfe! Genau das wird sicherlich am Ende funktionieren!

Auf der wiki Seite sieht es auch so aus, dass "ReadingsNum" kein Perl Code ist, weil zumindest die geschweiften Klammern fehlen??

Wenn ich den Chat Gpt Code mit ReadingsNum geändert eingebe, kommt trotzdem folgende Fehlermeldung:

"Unknown command my, try help. Unknown command fhem("set, try help. Unknown command }, try help."

Mein (wahrscheinlich falsch) geänderter Code ohne Perl liefert zwar keine Fehlermeldung, aber gibt auch den Wert nicht weiter.

So habe ich das jetzt eingegeben:


define FHEMtoKNXValveZiW notify ZiW_Hz:actuator.* set ValveZiW g1 ReadingsNum($EVTPART1)