Also ich habe auch Tasmotas, aber die hab ich alle in Text-Files angelegt. In den Things habe keinerlei Formatangaben(Formatters,Patterns, Suffixe, etc.) gemacht.
Beispiel:
Code: Alles auswählen
Thing mqtt:topic:claudi:esp_amica01 "ESP8266 Amica Nr 01" (mqtt:broker:claudi ) @ "MQTT2" {
Channels:
Type switch : reachable "Amica01 Reachable" [ stateTopic="tele/amica_01/LWT", transformationPattern="MAP:reachable.map" ] // on="Online",off="Offline"
Type number : temp "Amica01 Temp. DHT22" [ stateTopic="tele/amica_01/SENSOR", transformationPattern="JSONPATH:$.AM2301.Temperature"]
Type number : hum "Amica01 Hum. DHT22" [ stateTopic="tele/amica_01/SENSOR", transformationPattern="JSONPATH:$.AM2301.Humidity"]
Type number : dew "Amica01 Tau. DHT22" [ stateTopic="tele/amica_01/SENSOR", transformationPattern="JSONPATH:$.AM2301.DewPoint"]
Type number : dist "Amica01 Abstand SR04" [ stateTopic="tele/amica_01/SENSOR", transformationPattern="JSONPATH:$.SR04.Distance"]
Type number : rssi "Amica01 WiFi Signal " [ stateTopic="tele/amica_01/STATE", transformationPattern="JSONPATH:$.Wifi.RSSI"]
Type string : version "Amica01 Fw Version" [ stateTopic="stat/amica_01/STATUS2", transformationPattern="JSONPATH:$.StatusFWR.Version"]
Type string : hardware "Amica Chip Set" [ stateTopic="stat/amica_01/STATUS2", transformationPattern="JSONPATH:$.StatusFWR.Hardware"]
Type string : ipaddress "Amica IP Address" [ stateTopic="stat/amica_01/STATUS5", transformationPattern="JSONPATH:$.StatusNET.IPAddress"]
Type string : grouptop "Group Topic " [ stateTopic="stat/amica_01/STATUS1", transformationPattern="JSONPATH:$.StatusPRM.GroupTopic"]
Type number : temp1 "Temp. BME280" [ stateTopic="tele/amica_01/SENSOR", transformationPattern="JSONPATH:$.BME280.Temperature"]
Type number : hum1 "Hum. BME280" [ stateTopic="tele/amica_01/SENSOR", transformationPattern="JSONPATH:$.BME280.Humidity"]
Type number : dew1 "Tau. BME280" [ stateTopic="tele/amica_01/SENSOR", transformationPattern="JSONPATH:$.BME280.DewPoint"]
Type number : pres1 "Pres. BME280" [ stateTopic="tele/amica_01/SENSOR", transformationPattern="JSONPATH:$.BME280.Pressure"]
Type number : seapres1 "Sea-Pres. BME280" [ stateTopic="tele/amica_01/SENSOR", transformationPattern="JSONPATH:$.BME280.SeaPressure"]
}
Diese werden, dann als Yaml-File so dargestellt:
Code: Alles auswählen
UID: mqtt:topic:claudi:esp_amica01
label: ESP8266 Amica Nr 01
thingTypeUID: mqtt:topic
configuration: {}
bridgeUID: mqtt:broker:claudi
location: MQTT2
channels:
- id: reachable
channelTypeUID: mqtt:switch
label: Amica01 Reachable
description: null
configuration:
retained: false
postCommand: false
formatBeforePublish: "%s"
stateTopic: tele/amica_01/LWT
transformationPattern: MAP:reachable.map
- id: temp
channelTypeUID: mqtt:number
label: Amica01 Temp. DHT22
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/SENSOR
transformationPattern: JSONPATH:$.AM2301.Temperature
- id: hum
channelTypeUID: mqtt:number
label: Amica01 Hum. DHT22
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/SENSOR
transformationPattern: JSONPATH:$.AM2301.Humidity
- id: dew
channelTypeUID: mqtt:number
label: Amica01 Tau. DHT22
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/SENSOR
transformationPattern: JSONPATH:$.AM2301.DewPoint
- id: dist
channelTypeUID: mqtt:number
label: Amica01 Abstand SR04
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/SENSOR
transformationPattern: JSONPATH:$.SR04.Distance
- id: rssi
channelTypeUID: mqtt:number
label: "Amica01 WiFi Signal "
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/STATE
transformationPattern: JSONPATH:$.Wifi.RSSI
- id: version
channelTypeUID: mqtt:string
label: Amica01 Fw Version
description: null
configuration:
retained: false
postCommand: false
formatBeforePublish: "%s"
stateTopic: stat/amica_01/STATUS2
transformationPattern: JSONPATH:$.StatusFWR.Version
- id: hardware
channelTypeUID: mqtt:string
label: Amica Chip Set
description: null
configuration:
retained: false
postCommand: false
formatBeforePublish: "%s"
stateTopic: stat/amica_01/STATUS2
transformationPattern: JSONPATH:$.StatusFWR.Hardware
- id: ipaddress
channelTypeUID: mqtt:string
label: Amica IP Address
description: null
configuration:
retained: false
postCommand: false
formatBeforePublish: "%s"
stateTopic: stat/amica_01/STATUS5
transformationPattern: JSONPATH:$.StatusNET.IPAddress
- id: grouptop
channelTypeUID: mqtt:string
label: "Group Topic "
description: null
configuration:
retained: false
postCommand: false
formatBeforePublish: "%s"
stateTopic: stat/amica_01/STATUS1
transformationPattern: JSONPATH:$.StatusPRM.GroupTopic
- id: temp1
channelTypeUID: mqtt:number
label: Temp. BME280
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/SENSOR
transformationPattern: JSONPATH:$.BME280.Temperature
- id: hum1
channelTypeUID: mqtt:number
label: Hum. BME280
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/SENSOR
transformationPattern: JSONPATH:$.BME280.Humidity
- id: dew1
channelTypeUID: mqtt:number
label: Tau. BME280
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/SENSOR
transformationPattern: JSONPATH:$.BME280.DewPoint
- id: pres1
channelTypeUID: mqtt:number
label: Pres. BME280
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/SENSOR
transformationPattern: JSONPATH:$.BME280.Pressure
- id: seapres1
channelTypeUID: mqtt:number
label: Sea-Pres. BME280
description: null
configuration:
retained: false
postCommand: false
step: 1
formatBeforePublish: "%s"
stateTopic: tele/amica_01/SENSOR
transformationPattern: JSONPATH:$.BME280.SeaPressure
Wie du siehst, hat das System den Parameter
formatBeforePublish: "%s" selbst ergänzt. Und wenn ich die
Doku richtig verstehe, wird auch nur "%s" als Formatter unterstützt.
Hast du mal einen "Restart" gemacht (sudo systemctl restart openhab) ? Im Moment kann ich mir nicht erklären, warum es plötzlich nicht mehr gehen sollte.
Die Formatierungen finden bei mir im Item statt:
Beispiel:
Code: Alles auswählen
Group gAmica_01 "ESP8266 - Amica 1 Microprozessor" <sonoff_pow> (gEG_Buero) ["Receiver"]
Switch esp_amica_01_Unreach "ESP Amica 1 LWT-Ereichbarkeit [%s]" <siren1> (gAmica_01,gLWT) ["Point"] { channel="mqtt:topic:claudi:esp_amica01:reachable"} // persisted in mapDB
Number esp_amica_01_temp "ESP Amica 1 DHT22 Temperatur[%.2f °C]" <temperature> (gAmica_01,gRtIstI) ["Temperature","Measurement"] { channel="mqtt:topic:claudi:esp_amica01:temp", influxdb="temperature" [floor="gEG_Buero"]}
Number esp_amica_01_hum "ESP Amica 1 DHT22 Luftfeuchtigkeit[%.1f %%]" <humidity> (gAmica_01) ["Humidity", "Measurement"] { channel="mqtt:topic:claudi:esp_amica01:hum", influxdb="humidity" [floor="gEG_Buero"]}
Number esp_amica_01_dew "ESP Amica 1 DHT22 Taupunkt[%.1f °C]" <temperature> (gAmica_01) ["Control","Temperature"] { channel="mqtt:topic:claudi:esp_amica01:dew"}
Number esp_amica_01_dist "ESP Amica 1 Abstand[%.0f cm]" <temperature> (gAmica_01) ["Control","Measurement"] { channel="mqtt:topic:claudi:esp_amica01:dist", influxdb="distance" [floor="gEG_Buero"]}
String esp_amica_01_Version "ESP Amica 1 Version [%s]" <sonoff_pow> (gAmica_01,gVer) ["Point"] { channel="mqtt:topic:claudi:esp_amica01:version" }
String esp_amica_01_Hardware "ESP Amica 1 Hardware [%s]" <sonoff_pow> (gAmica_01,gHard) ["Point"] { channel="mqtt:topic:claudi:esp_amica01:hardware" }
String esp_amica_01_IPAddress "ESP Amica 1 IP-Address [%s]" <sonoff_pow> (gAmica_01,gIpAd) ["Point"] { channel="mqtt:topic:claudi:esp_amica01:ipaddress" }
String esp_amica_01_GroupTopic "ESP Amica 1 Group Topic [%s]" <sonoff_pow> (gAmica_01,gGrTop) ["Point"] { channel="mqtt:topic:claudi:esp_amica01:grouptop" }
Number esp_amica_01_RSSI "ESP Amica 1 RSSI [%s]" <qualityofservice> (gAmica_01,gRSSI) ["Status"] { channel="mqtt:topic:claudi:esp_amica01:rssi" }
Number esp_amica_01_temp1 "ESP Amica BME280 Temperatur[%.1f °C]" <temperature> (gAmica_01,gRtIstI) ["Temperature","Measurement"] { channel="mqtt:topic:claudi:esp_amica01:temp1"}
Number esp_amica_01_hum1 "ESP Amica BME280 Luftfeuchtigkeit[%.1f %%]" <humidity> (gAmica_01) ["Humidity", "Measurement"] { channel="mqtt:topic:claudi:esp_amica01:hum1"}
Number esp_amica_01_dew1 "ESP Amica BME280 Taupunkt[%.1f °C]" <temperature> (gAmica_01 ) ["Control","Temperature"] { channel="mqtt:topic:claudi:esp_amica01:dew1"}
Number esp_amica_01_pres1 "ESP Amica BME280 Luftdruck[%.1f hPa]" <pressure64> (gAmica_01) ["Pressure", "Measurement"] { channel="mqtt:topic:claudi:esp_amica01:pres1"}
Number esp_amica_01_seapres1 "ESP Amica BME280 Luftdruck Meereshöhe[%.1f hPa]" <pressuregauge> (gAmica_01) ["Pressure", "Measurement"] { channel="mqtt:topic:claudi:esp_amica01:seapres1"}
Diese Formatierungen müsstest du eigentlich auch in deinen Items gemacht haben. Allerdings sind diese
nicht in der Items-Übersicht zu sehen.
items.jpg
Erst in der Item-Detail werden diese angezeigt
detail.jpg
Das gilt allerdings nicht für Items mit UoM (Unit of Measurement). Diese werden auch in der Übersicht bereits mit der Einheit angezeigt.