Probleme mit DPT 1.003 openhab<>KNX

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

calabi78
Beiträge: 10
Registriert: 17. Sep 2018 08:06
Answers: 0

Probleme mit DPT 1.003 openhab<>KNX

Beitrag von calabi78 »

Guten Morgen,

zunächst ein herzliches Hallo an alle, dies ist mein erster Beitrag. Ich habe mich in den letzten Wochen und Monaten schon intensiv mit openhab beschäftigt, doch sind meine Kenntnisse eher rudimantär. Viele Probleme konnte ich mittlerweile lösen, aber jetzt komme ich nicht weiter.
Ich möchte meine Lüftungsanlage (Zehnder Comfoair Q350) via dem Modul Comfoconnect KNX C steuern. Grundlage war dieser Thread: https://community.openhab.org/t/integar ... nx-c/30028.

Problem daran ist, diese Programmierung basiert noch auf der KNX 1 Version, d.h. ich musste alles für KNX 2 anpassen (Things/Items getrennt). Das Auslesen der Daten funktioniert mittlerweile und auch die Ansteuerung der Lüftungsstufen mit einem Dummy-Item. Was ich partout nicht schaffe, ist das Schalten des Automatik-Modus. Dieser hat den Datenpunkt-Typ 1.003 (Abschalten/Freigeben), d.h. ON/OFF oder 0/1 funktionieren nicht.

Hier meine .things:

Code: Alles auswählen

    Thing device zehnder_comfoair [
        address="1.1.55",
        fetch=true,
        pingInterval=300,
        readInterval=3600
    ] {
Type number        : luefter_stufe	"Lüfterstufe"	[ ga="5.010:5/2/10+<5/2/15" ]
Type string           : auto_modus	"Auto-Modus"	[ ga="1.003:5/2/30+<5/2/31" ]
Type number        : temp_profil_modus	"Temperatur Profil-Modus"	[ ga="5/2/50+<5/2/51" ] 
Type number        : temp_profil	"Temperatur Profil"	[ ga="5/2/40+<5/2/41" ] 
Type number        : abwesend	"Abwesend"	[ ga="5/2/60+<5/2/61" ] 
Type number        : temperatur_voreinst	"Temperatur Voreinstellung"	[ ga="5/2/90+<5/2/91" ]
Type number        : status_error	"Status"	[ ga="5/2/100" ]
Type number        : error	"Fehler"	[ ga="5/2/112" ]
Type string           : filterwechsel   "Filterwechsel" [ ga="7.007:5/2/110" ] 
Type number        : temperatur_fortluft   "Fortlufttemp." [ ga="5/2/71" ] 
Type number        : temperatur_abluft   "Ablufttemp." [ ga="9.001:5/2/72" ] 
Type number        : temperatur_aussenluft   "Außenlufttemp." [ ga="9.001:5/2/73" ] 
Type number        : temperatur_zuluft   "Zulufttemp." [ ga="9.001:5/2/74" ]
Type number        : luftfeuchtigkeit_fortluft   "Fortluftfeuchte" [ ga="5/2/81" ] 
Type number        : luftfeuchtigkeit_abluft   "Abluftfeuchte" [ ga="5/2/82" ] 
Type number        : luftfeuchtigkeit_aussenluft   "Außenluftfeuchte" [ ga="5/2/83" ] 
Type number        : luftfeuchtigkeit_zuluft   "Zuluftfeuchte" [ ga="5/2/84" ]
Type number        : luftmenge   "Luftmenge" [ ga="5/2/111" ] 

.items:

Code: Alles auswählen

Group gLueftung  "Lüftungsanlage"    <pie>

Number Lueftung_Fan_Level_Control       "Lüfterstufe Steuerung"
Number Lueftung_Fan_Level       "Lüfterstufe]"   <fan>   	    (gLueftung)	{ channel="knx:device:bridge:zehnder_comfoair:luefter_stufe"} 
Number Lueftung_Auto_Mode_Control          "Auto Modus Steuerung"
String Lueftung_Auto_Mode          "Auto Modus"                            	(gLueftung) { channel="knx:device:bridge:zehnder_comfoair:auto_modus" }
Number Lueftung_Airflow         "Luftmenge [%d l/h]"              				        (gLueftung, gLueftung_Chart_Airflow) { channel="knx:device:bridge:zehnder_comfoair:luftmenge" }
Number Lueftung_Filterwechsel   "Filterwechsel [%d h]"              				(gLueftung) { channel="knx:device:bridge:zehnder_comfoair:filterwechsel" }
Number Lueftung_Status          "Status [%d]"                       				(gLueftung) { channel="knx:device:bridge:zehnder_comfoair:status_error" }
Number Lueftung_Temperature_profile_mode  "Temperatur Profil Modus [MAP(tempprofmodmode.map):%s]"      <settings> (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temp_profil_modus" }
Number Lueftung_Temperature_profile  	  "Temperatur Profil [MAP(tempprofmode.map):%s]"           <settings> (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temp_profil" }
Number Lueftung_Temperature_set_point     "Temperatur [%.1f]"         <temperature> (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temperatur_voreinst" }

.rules (nur für erstmal die AnSteuerung):

Code: Alles auswählen

rule "Lüftungsanlage Stufen"

when
	Item Lueftung_Fan_Level_Control received command
then
		switch (receivedCommand) {
		    case 0 : Lueftung_Fan_Level.sendCommand(0)
            case 1 : Lueftung_Fan_Level.sendCommand(1)
            case 2 : Lueftung_Fan_Level.sendCommand(2)
            case 3 : Lueftung_Fan_Level.sendCommand(3)
		}
end

rule "Lüftungsanlage Stufen"

when
	Item Lueftung_Auto_Mode_Control received command
then
		switch (receivedCommand) {
		    case 0 : Lueftung_Auto_Mode.sendCommand(OFF)
            case 1 : Lueftung_Auto_Mode.sendCommand(ON)

		}
end
.sitemap (Ausschnitt):

Code: Alles auswählen

Frame label="Lüftungsanlage Steuerung"{
      Switch item=Lueftung_Auto_Mode mappings=[0="Aus", 1="An"] icon="control"
	Switch item=Lueftung_Fan_Level_Control mappings=[0="abwesend", 1="1", 2="2", 3="3"] icon="fan"
	Switch item=Lueftung_Temperature_profile_mode label="Temp. Profil Modus" mappings=[0="adaptiv", 1="fest", 2="setpoint"]
	Switch item=Lueftung_Temperature_profile label="Temperatur Profil" mappings=[0="normal", 1="kalt", 2="warm"]
	Setpoint item=Lueftung_Temperature_set_point minValue=16 maxValue=24 step=0.5
	//Switch item=Lueftung_Chart_Period label="Chart Period" icon="chart" mappings=[0="Hour", 1="Day", 2="Week"]
        	}
 
Ich bekomme zwar mittlerweile eine Reaktion auf den KNX Bus, aber in Hexadezimaler Form. Entweder muss ich hier noch irgendwie konvertieren, oder der Ansatz ist grundsätzlich ein anderer. Eine Rückmeldung vom Bus fehlt mir hier ebenso.
Könnt ihr mir bitte dabei helfen?

Vielen Dank
VG Torsten

Benutzeravatar
udo1toni
Beiträge: 15243
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Probleme mit DPT 1.003 openhab<>KNX

Beitrag von udo1toni »

Da Du ein Bit zum Ansteuern verwendest, solltest Du auch einen Switch Channel verwenden, keinen String Channel.
Welche exakte Version von openHAB2 verwendest Du? Wenn es openHAB2.3 ist, es gibt da einen Bug (schon gefixt, aber nicht im stable-Zweig), der verhindert, dass man mehrere GA in einem Parameter verwenden kann, ohne den DPT mit anzugeben.

Code: Alles auswählen

Type number        : temperatur_voreinst	"Temperatur Voreinstellung"	[ ga="5/2/90+<5/2/91" ]
funktioniert nicht.

Code: Alles auswählen

Type number        : temperatur_voreinst	"Temperatur Voreinstellung"	[ ga="9.001:5/2/90+<5/2/91" ]
funktioniert (vorausgesetzt, DPT9.001 ist korrekt).
Hilfreich wäre eine Liste aller GA mit zugehöriger Funktion (lesen/schreiben,Status/Befehl usw) und jeweils zugehörigem DPT. Ich muss dazu sagen, dass ich keine Comfoair habe und entsprechend nur theoretische Hilfestellung geben kann, was aber kein Hinderungsgrund sein sollte :)
Zuletzt geändert von udo1toni am 17. Sep 2018 14:11, insgesamt 1-mal geändert.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

calabi78
Beiträge: 10
Registriert: 17. Sep 2018 08:06
Answers: 0

Re: Probleme mit DPT 1.003 openhab<>KNX

Beitrag von calabi78 »

Hallo udo1toni,

danke für deine Antwort.
Ich werde das mit dem Switch Channel heute abend mal prüfen. Ich glaube dies aber schon probiert zu haben und es war die einzige Variante, dass überhaupt etwas auf den KNX Bus übertragen wurde. Das Log hat aber keine Probleme gemeldet.

Hier die möglichen Objekte und Parameter:
Gruppenobjekte comfoconnect_1.jpg
Gruppenobjekte comfoconnect_2.jpg
Gruppenobjekte comfoconnect_3.jpg
Auf dem KNX Bus sehe ich für den Auto Mode - das ist der Status/Auto Mode (set) - das ist der Parameter zum einstellen, als DPT 1.003: Abschalten und Freigeben für aus bzw. ein.

VG Torsten
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
udo1toni
Beiträge: 15243
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Probleme mit DPT 1.003 openhab<>KNX

Beitrag von udo1toni »

Und die zugehörigen GA? Welche GA hängt an welchem Kommunikationsobjekt?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

calabi78
Beiträge: 10
Registriert: 17. Sep 2018 08:06
Answers: 0

Re: Probleme mit DPT 1.003 openhab<>KNX

Beitrag von calabi78 »

Hier die Übersicht:
Gruppenobjekte comfoconnect mit GA.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
udo1toni
Beiträge: 15243
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Probleme mit DPT 1.003 openhab<>KNX

Beitrag von udo1toni »

Die Masse der möglichen DPT hat mich etwas irritiert. Ist aber (in Teilen) erklärbar. Den Teil, den ich nicht erklären kann, musst Du in ETS herausfinden und passend parametrieren.

Die Haupt-DPT geben die Länge des Wertes an:
1.xxx: 1 Bit
5.xxx 8 Bit (unsigned integer)
7.xxx 16 Bit (unsigned integer)
9.xxx 16 Bit (float)

Im Haupt-DPT 1 bedeuten die verschiedenen UnterDPT folgendes:

Code: Alles auswählen

       |   0    |  1
1.001 :|  on    |  off
1.002 :| false  |  true
1.003 :|disable | enable
1.017 :|trigger | trigger
openHAB sollte jeden der Sub-DPT verstehen und korrekt umsetzen können, allerdings nur (je nach Typ Switch oder Contact) in ON/OFF bzw. OPEN/CLOSED.

Im Haupt-DPT 5 bedeuten die verschiedenen UnterDPT folgendes:

Code: Alles auswählen

5.001 : 0% - 100% (Schrittweite ~ 0,4%)
5.004 : 0% - 255% (Schrittweite 1%)
5.010 : Ganze Zahl im Zahlraum 0 - 255
7.007 steht für die Einheit Stunden, es kann also ein Wert von 0h - 65535h angezeigt werden.

Im Haupt-DPT 9 bedeuten die verschiedenen UnterDPT folgendes:

Code: Alles auswählen

9.001 : Temperatur in °C (von -273°C bis +670.760 °C)
9.002 : Temperatur in K (von -670.760 K bis +670.760 K)
9.007 : Luftfeuchte in % (von -670.760 % bis +670.760 %)
9.025 : Fließgeschwindigkeit in l/h (von -670.760 l/h bis +670.760 l/h)
9.027 : Temperatur in °F (von -459,6°F bis +670.760 °F)
Du solltest nach Möglichkeit natürlich °Celsius als Einheit auswählen (das muss in der ETS parametriert werden).
Der Haupt-DPT 13 ist ein vorzeichenbehafteter 32Bit Integer (also -2.147.483.648 bis 2.147.483.647), wobei der Untertyp 13.002 in meiner Liste nicht drin ist (ich hab auf die Schnelle nur das Dokument von 2010 gefunden...)

Da ist also noch etwas Interpretationsspielraum vorhanden.

Ansonsten muss es für den Auto-Mode jedenfalls so aussehen:

Im Thing:

Code: Alles auswählen

Type switch : auto_modus "Auto-Modus" [ ga="1.003:5/2/30+<5/2/31" ]
und im Item:

Code: Alles auswählen

Switch Lueftung_Auto_Mode "Auto Modus" (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:auto_modus" }
Natürlich setzt openHAB hier als mögliche Schaltstellungen nur ON und OFF um, das wird aber vom Binding automatisch auf 1/0 umgesetzt (im knx-Telegramm steht da unabhängig vom Untertyp 1 oder 0, es wird im Telegramm nur die Länge der Nutzdaten (1 bis 16 Byte) und die Nutzinformation übertragen, sprich, falls es mit DPT1.003 nicht geht, nimm einfach DPT1.001, bei 1Bit gibt es da keinen Unterschied. Schwieriger wird es bei den mehrbittigen Typen, da muss man schauen, wie die Daten zu interpretieren sind (kann man schön im verlinkten Dokument sehen).
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

calabi78
Beiträge: 10
Registriert: 17. Sep 2018 08:06
Answers: 0

Re: Probleme mit DPT 1.003 openhab<>KNX

Beitrag von calabi78 »

Hallo,

danke für die Infos. Ich muss mich da noch etwas reinarbeiten, die Zusammenhänge sind mir noch nicht ganz klar.
Ich habe jetzt verschiedene Varianten ausprobiert, aber leider führte nichts zum Erfolg. Das Schalten des Auto-Modus ist eine Grundvoraussetzung um die Anlage zu steuern, da die weiteren Optionen nur bei deaktiviertem Auto-Modus ansteuerbar sind.

Momentaner Stand:

.things:
Ich habe vor allen Gruppenadressen den jeweiligen Datenpunkttyp geschrieben. Das führt aber seltsamerweise dazu, dass ich keinerlei Kommunikation zum KNX Bus mehr habe. Lt. openhab Protokoll wird aber gesendet. Nachdem ich die DPT's entfernt habe, habe ich zumindest alle lesenden Items zum Laufen bekommen. Im KNX habe ich von 1.003. auf 1.001 umgestellt, leider ohne Erfolg. Das ist der aktuelle Code für den Auto-Modus (ich habe auf switch umgestellt, mit number kam ich nicht weiter):

Code: Alles auswählen

Type switch        : lueftung_auto_mode	"Auto-Modus"	[ ga="5/2/30+<5/2/31" ]
.items (hier mit einem Dummy Item, um von 0/1 auf OFF/ON umstellen zu können):

Code: Alles auswählen

Switch lueftung_auto_mode                 "Auto Modus"                            	(gLueftung) { channel="knx:device:bridge:zehnder_comfoair:Lueftung_Auto_Mode" }
Number lueftung_auto_mode_control         "Auto Modus Steuerung"                        
.rules (ich kann hier nur 0/1 oder OFF/ON eintragen:

Code: Alles auswählen

rule "Auto Modus"
when
	Item lueftung_auto_mode_control received command
then
		switch (receivedCommand) {
		  case 0 : lueftung_auto_mode.sendCommand(OFF)
        case 1 : lueftung_auto_mode.sendCommand(ON)
		}
end
.sitemap:

Code: Alles auswählen

Switch item=lueftung_auto_mode_control mappings=[0="Aus", 1="An"] icon="control"
Das Log zeigt mir beim auslösen:

Code: Alles auswählen

2018-09-19 06:56:30.162 [ome.event.ItemCommandEvent] - Item 'lueftung_auto_mode_control' received command 0
2018-09-19 06:56:30.174 [vent.ItemStateChangedEvent] - lueftung_auto_mode_control changed from 1 to 0
2018-09-19 06:56:30.181 [ome.event.ItemCommandEvent] - Item 'lueftung_auto_mode' received command OFF
2018-09-19 06:56:30.186 [vent.ItemStateChangedEvent] - lueftung_auto_mode changed from ON to OFF
Allerdings bekomme ich darauf keine Reaktion auf dem KNX Bus. Irgendwo zwischen openhab und KNX scheint das Telegramm ins Leere zu laufen.

Als ich das noch mit einem Number Item probiert hatte, bekam ich eine Reaktion auf dem KNX Bus. Allerdings sah das so aus:

Code: Alles auswählen

#	Zeit	                 Dienst  FlagsPrio	Quell-Adresse	     Quell-Name	Ziel-Adresse	Ziel-Name	Rout	Typ	DPT	Info
5	19.09.2018 06:30:17,846	vom Bus		Low	1.0.0	SCN-IP100.02 IP Router	5/2/30	(2) Gebäude_HWR_Zehnder Comfosense_Automodus_setzen	6	GroupValueWrite		00 00 oder 00 64
Hoffe du hast eine Idee dazu.

Danke und VG
Torsten

Benutzeravatar
udo1toni
Beiträge: 15243
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Probleme mit DPT 1.003 openhab<>KNX

Beitrag von udo1toni »

Welche Version von openHAB2 verwendest Du?
Wie sieht Deine Bridge Definition aus?

Vergiss bitte Number im Zusammenhang mit einer boolean GA! Die Rule (zumindest in der Form, wie Du sie da nutzt) sollte komplett unnötig sein. Du kannst einfach das Item selbst umschalten, und Du solltest, solange es nicht funkioniert, keinesfalls noch zusätzliche Ebenen einziehen.

Da Du im Thing den Channel komplett klein schreibst, muss dies im Link in den items ebenso gehalten werden.

Code: Alles auswählen

Type switch        : lueftung_auto_mode	"Auto-Modus"	[ ga="5/2/30+<5/2/31" ]
bedeutet, das Item muss so aussehen:

Code: Alles auswählen

Switch lueftung_auto_mode                 "Auto Modus"                            	(gLueftung) { channel="knx:device:bridge:zehnder_comfoair:lueftung_auto_mode" }
Vorausgesetzt natürlich, dass die Bridge den Namen bridge trägt und das Thing weiterhin zehnder_comfoair heißt.
Vermeide weiterhin, Namen doppelt zu verwenden. Im Beispiel sollte der Switch nicht exakt gleich geschrieben werden, wie der Channel (auch wenn das kein Problem sein sollte, es ist schlicht guter Stil).
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

calabi78
Beiträge: 10
Registriert: 17. Sep 2018 08:06
Answers: 0

Re: Probleme mit DPT 1.003 openhab<>KNX

Beitrag von calabi78 »

Ich habe die Version 2.3.

Bridge:

Code: Alles auswählen

    Thing device zehnder_comfoair [
        address="1.1.55",
        fetch=true,
        pingInterval=300,
        readInterval=3600
    ] {
Also ich habe es jetzt zum laufen bekommen und wieder dazu gelernt. Alle "Schalter" mit mehr als einer Einstellmöglichkeit funktionieren nur über Number, bei nur 2 Einstellmöglichkeiten per Switch. Wenn ich bei Switch den DPT in der der Bridge angebe, bekomme ich keine Reaktion auf den KNX Bus. Bei Number ist der DPT allerdings zwingend notwendig. Die Namen habe ich alle angepasst, hat zumindest ein paar seltsame Fehler mitbeseitigt.

.things:

Code: Alles auswählen

Type number        : fan_level                  "Lüfterstufe"	[ ga="5.010:5/2/10+<5/2/15" ]
Type switch        : auto_mode	                "Auto-Modus"	[ ga="5/2/30+<5/2/31" ]
Type number        : temperature_profile	    "Temperatur Profil"	[ ga="5.010:5/2/50+<5/2/51" ]
Type number        : temperature_profile_mode	"Temperatur Profilmodus"	[ ga="5.010:5/2/40+<5/2/41" ] 
//Type number        : abwesend	                "Abwesend"	[ ga="5/2/60+<5/2/61" ] 
Type number        : temperature_set_point	    "Temperatur Voreinstellung"	[ ga="5/2/90+<5/2/91" ]
Type number        : temperatur_extract         "Fortlufttemp." [ ga="5/2/71" ] 
Type number        : temperatur_exhaust         "Ablufttemp." [ ga="5/2/72" ] 
Type number        : temperatur_outdoor         "Außenlufttemp." [ ga="5/2/73" ] 
Type number        : temperatur_supply          "Zulufttemp." [ ga="5/2/74" ]
Type number        : humidity_extract           "Fortluftfeuchte" [ ga="5/2/81" ] 
Type number        : humidity_exhaust           "Abluftfeuchte" [ ga="5/2/82" ] 
Type number        : humidity_outdoor           "Außenluftfeuchte" [ ga="5/2/83" ] 
Type number        : humidity_supply            "Zuluftfeuchte" [ ga="5/2/84" ]
Type switch        : status	                    "Status"	[ ga="5/2/100" ]
Type number        : filterwechsel              "Filterwechsel" [ ga="7.007:5/2/110" ] 
Type number        : airflow                    "Luftmenge" [ ga="5/2/111" ]
Type number        : statuserr	                "Störung"	[ ga="5.001:5/2/112" ]    
.items:

Code: Alles auswählen

Number Lueftung_Fan_Level                 "Lüfterstufe [%s]"              <fan>   	    (gLueftung)	{ channel="knx:device:bridge:zehnder_comfoair:fan_level"} 
Number Lueftung_Fan_Level_Control         "Lüfterstufe [MAP(stufemode.map):%s]"                        
Number Lueftung_Auto_Mode                 "Auto Modus [%s]"                            	(gLueftung) { channel="knx:device:bridge:zehnder_comfoair:auto_mode" }                  
Number Lueftung_Auto_Mode_Control         "Auto Modus [MAP(automode.map):%s]" 
Number Lueftung_Temperature_profile_mode  "Temperatur Profil Modus [%s]"  <settings>    (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temperature_profile_mode" }
Number Lueftung_Temperature_profile_mode_Control         "Profil Modus [MAP(profilmode.map):%s]"
Number Lueftung_Temperature_profile  	  "Temperatur Profil [%s]"        <settings>    (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temperature_profile" }
Number Lueftung_Temperature_profile_Control         "Profil [MAP(profil.map):%s]"
Number Lueftung_Temperature_set_point     "Temperatur [%.1f]"             <temperature> (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temperature_set_point" }
Switch Lueftung_StatusErr                 "Error Status [%d]"                           (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:statuserr" }

Number Lueftung_Airflow                   "Luftmenge [%d l/h]"              			(gLueftung, gLueftung_Chart_Airflow) { channel="knx:device:bridge:zehnder_comfoair:airflow" }
Number Lueftung_Filterwechsel             "Filterwechsel [%d]"              			(gLueftung) { channel="knx:device:bridge:zehnder_comfoair:filterwechsel" }
Number Lueftung_Status                    "Status [%d]"                       			(gLueftung) { channel="knx:device:bridge:zehnder_comfoair:status" }
Number Lueftung_Temperatur_Extract        "Fortluft [%.1f °C]"                          (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temperatur_extract" }
Number Lueftung_Temperatur_Exhaust        "Abluft [%.1f °C]"                            (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temperatur_exhaust" }
Number Lueftung_Temperatur_Outdoor        "Außenluft [%.1f °C]"                          (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temperatur_outdoor" }
Number Lueftung_Temperatur_Supply         "Zuluft [%.1f °C]"                            (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:temperatur_supply" }

Number Lueftung_Humidity_Extract          "Fortluft [%d %%]"                            (gLueftung, gLueftung_Chart_Humidity) { channel="knx:device:bridge:zehnder_comfoair:humidity_extract" }
Number Lueftung_Humidity_Exhaust          "Abluft [%d %%]"                              (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:humidity_exhaust" }
Number Lueftung_Humidity_Outdoor          "Außenluft [%d %%]"                            (gLueftung) { channel="knx:device:bridge:zehnder_comfoair:humidity_outdoor" }
Number Lueftung_Humidity_Supply           "Zuluft [%d %%]"                              (gLueftung, gLueftung_Chart_Humidity) { channel="knx:device:bridge:zehnder_comfoair:humidity_supply" }
.sitemap:

Code: Alles auswählen

Frame label="Lüftungsanlage Steuerung"{
      Switch item=Lueftung_Auto_Mode_Control label="Auto-Modus" mappings=[0="Aus", 1="An"] icon="control"
	Switch item=Lueftung_Fan_Level_Control label="Lüftungsstufe" mappings=[0="abwesend", 1="1", 2="2", 3="3"] icon="fan"
	Switch item=Lueftung_Temperature_profile_mode_Control label="Profil Modus" mappings=[0="adaptiv", 1="fest", 2="setpoint"]
	Switch item=Lueftung_Temperature_profile_Control label="Profil" mappings=[0="normal", 1="kalt", 2="warm"]
	Setpoint item=Lueftung_Temperature_set_point minValue=16 maxValue=24 step=0.5
	Switch item=Lueftung_Chart_Period label="Chart Period" icon="chart" mappings=[0="Hour", 1="Day", 2="Week"]
        	}
Frame label="Lüftungsanlage Status" {
      Text item=Lueftung_Filterwechsel_Msg
      Text item=Lueftung_Airflow_Msg
      Text item=Lueftung_Status_Msg
      Text item=Lueftung_StatusErr_Msg
     	//Chart item=gLueftung_Chart_Airflow period=h refresh=600 visibility=[Lueftung_Chart_Period==0, Lueftung_Chart_Period=="NULL"]
	//Chart item=gLueftung_Chart_Airflow period=D refresh=3600 visibility=[Lueftung_Chart_Period==1]
	//Chart item=gLueftung_Chart_Airflow period=W refresh=3600 visibility=[Lueftung_Chart_Period==2]
        	}
Frame label="Lüftungsanlage Temperaturen" {
      Text item=Lueftung_Temperatur_Extract_Msg
      Text item=Lueftung_Temperatur_Exhaust_Msg
      Text item=Lueftung_Temperatur_Outdoor_Msg
      Text item=Lueftung_Temperatur_Supply_Msg
        	}
Frame label="Lüftungsanlage Luftfeuchtigkeit" {
	Text item=Lueftung_Humidity_Extract_Msg
	Text item=Lueftung_Humidity_Exhaust_Msg
	Text item=Lueftung_Humidity_Outdoor_Msg
	Text item=Lueftung_Humidity_Supply_Msg
	//Chart item=gLueftung_Chart_Humidity period=h refresh=600 visibility=[Lueftung_Chart_Period==0, Lueftung_Chart_Period=="NULL"]
	//Chart item=gLueftung_Chart_Humidity period=D refresh=3600 visibility=[Lueftung_Chart_Period==1]
	//Chart item=gLueftung_Chart_Humidity period=W refresh=3600 visibility=[Lueftung_Chart_Period==2]
	}
Wie kann ich die einen Refresh bestimmter Daten anstoßen? Manche Daten werden scheinbar nur 1x täglich übertragen (Filterwechsel und Status/Error). Einzig bereiten mir nur die Charts noch Probleme. Hast du da Erfahrung mit?

Danke.

Benutzeravatar
udo1toni
Beiträge: 15243
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Probleme mit DPT 1.003 openhab<>KNX

Beitrag von udo1toni »

openHAB versucht per default, beim Start von allen GA den aktuellen Status zu holen, bei denen ein < davor steht. Wenn Du im Thing readInterval größer als 0 gesetzt hast, versucht openHAB alle readInterval Sekunden, alle GA dieses Thing zu lesen, bei denen das < dabei steht.
Es sollte klar sein, dass nur GA erfolgreich ausgelesen werden können, bei denen in exakt einem Device das L-Flag gesetzt ist. Logischerweise muss das in diesem Fall das Comfoair knx Gateway sein.
Die Angabe des DPT bei GA sollte nur dann erforderlich sein, wenn der DPT nicht dem default DPT des Parameters übereinstimmt oder mehr als eine GA im Parameter angegeben werden sollen (dieser Teil ist ein Bug in der Version 2.3 und sollte inzwischen gefixt sein, also in testing oder unstable).
Welchen Channel Typ man nutzen muss, hängt einzig vom DPT ab, manche DPT können mit verschiedenen Channeltypen korrekt arbeiten, aber normalerweise gibt es da keine freie Wahl.

Auf Comfoair-Seite (also in ETS auf dem comfoair gateway) sollte man konfigurieren können, wie oft das Gateway Informationen zum Filter sendet. Fehlermeldungen sollten immer dann gesendet werden, wenn ein Fehler auftritt :)

Bei den Charts kommt es darauf an, wo Dein Problem ist. Welche Persistence setzt Du ein? Hast Du die Persistence als default gesetzt?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Antworten