482 333 läst · 1 876 svar
482k läst
1,9k svar
Elmätare, H1-port / P1-port / HAN-port (många namn verkar florera)
Får ut det här från min Sagemcom t211:
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"/ELL5\\253833635_A\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1019120127W)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"varh)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"*0000.167*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"61.7.0(0002.226*kW)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:23000*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"3.7.0(0000.000*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:63.7.0(0000.167*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:24.7.0(0000.107*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:44.7.0(0000.061*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:64.7.0(0000.000*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:32.7.0(231.0*V)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:52.7.0(230.2*V)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:72.7.0(230.5*V)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:31.7.0(001.5*A)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:51.7.0(001.3*A)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:71.7.0(009.6*A)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"!7AA3\r"}
Vet dock inte riktigt hur jag ska sätta upp sensorerna i Home Assistant för att tolka datan, någon som har något förslag?
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"/ELL5\\253833635_A\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1019120127W)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"varh)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"*0000.167*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"61.7.0(0002.226*kW)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:23000*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"3.7.0(0000.000*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:63.7.0(0000.167*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:24.7.0(0000.107*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:44.7.0(0000.061*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:64.7.0(0000.000*kvar)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:32.7.0(231.0*V)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:52.7.0(230.2*V)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:72.7.0(230.5*V)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:31.7.0(001.5*A)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:51.7.0(001.3*A)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"1-0:71.7.0(009.6*A)\r"}
12:01:16 MQT: tele/powermeter/RESULT = {"SerialReceived":"!7AA3\r"}
Vet dock inte riktigt hur jag ska sätta upp sensorerna i Home Assistant för att tolka datan, någon som har något förslag?
Jag använder mig av MQTT och Node-red i HA. Så datat från elmätaren skicks med MQTT till HA. I node-red tar jag emot dem och konverter dem till float och skapar enititerna så jag kan använda dem i HA
Så här ser det ut i min node-red på HA
Resultatet i HA blir så här
Och om jag klickar på den så får jag en graf:
Så här ser det ut i min node-red på HA
Resultatet i HA blir så här
Och om jag klickar på den så får jag en graf:
Inloggade ser högupplösta bilder
Logga in
Skapa konto
Gratis och tar endast 30 sekunder
@snajgel Är det där vad du tar emot via MQTT? Du behöver parsa varje mottaget meddelande till en MQTT sensor som använder template kod (inte så lite template kod heller med tanke på hur det där ser ut).
https://www.home-assistant.io/integrations/sensor.mqtt/
För raden med id 61.7.0 så borde detta fungera för att få ut nuvarande förbrukning i W (taget ur huvudet så testa i utvecklingsverktyget först) där X är meddelandet "61.7.0(0002.226*kW)\r":
{{ X.split('(')[1].split('*')[0]|float*1000 }}
Detta förutsätter att du kör MQTT direkt mot HA.
https://www.home-assistant.io/integrations/sensor.mqtt/
För raden med id 61.7.0 så borde detta fungera för att få ut nuvarande förbrukning i W (taget ur huvudet så testa i utvecklingsverktyget först) där X är meddelandet "61.7.0(0002.226*kW)\r":
{{ X.split('(')[1].split('*')[0]|float*1000 }}
Detta förutsätter att du kör MQTT direkt mot HA.
Har iofs nodered på plats så det kanske är enklast.M MrDuco skrev:Jag använder mig av MQTT och Node-red i HA. Så datat från elmätaren skicks med MQTT till HA. I node-red tar jag emot dem och konverter dem till float och skapar enititerna så jag kan använda dem i HA
Så här ser det ut i min node-red på HA
[bild]
Resultatet i HA blir så här
[bild]
Och om jag klickar på den så får jag en graf:
[bild]
Låter man nodered ta emot mqtt?
Skapar nodered sensorn i HA eller ska den fördefinieras?
Misstänkte att jag var tvungen att göra något liknande. Tack för exempel!Fn87 skrev:@snajgel Är det där vad du tar emot via MQTT? Du behöver parsa varje mottaget meddelande till en MQTT sensor som använder template kod (inte så lite template kod heller med tanke på hur det där ser ut).
[länk]
För raden med id 61.7.0 så borde detta fungera för att få ut nuvarande förbrukning i W (taget ur huvudet så testa i utvecklingsverktyget först) där X är meddelandet "61.7.0(0002.226*kW)\r":
{{ X.split('(')[1].split('*')[0]|float*1000 }}
Detta förutsätter att du kör MQTT direkt mot HA.
Jag har en node i node-red som tar emot MQTT (mqtt in) och sensorn behöver bara skapas i node-redS snajgel skrev:
Domoticz skickar allt i samma topic dvs domoticz/out till min MQTT-broker. När jag plockar in det i HA blir det knepigt.
Hur får jag ut de 6 värden som jag är ute efter (nedan exempel på idx 4 dvs Spänning fas 3)?
Det är idx 2-7 som jag vill åt. Några tips?
{
"Battery" : 255,
"RSSI" : 12,
"description" : "",
"dtype" : "General",
"hwid" : "2",
"id" : "00000003",
"idx" : 4,
"name" : "Voltage L3",
"nvalue" : 0,
"stype" : "Voltage",
"svalue1" : "235.600",
"unit" : 1
}
Hur får jag ut de 6 värden som jag är ute efter (nedan exempel på idx 4 dvs Spänning fas 3)?
Det är idx 2-7 som jag vill åt. Några tips?
{
"Battery" : 255,
"RSSI" : 12,
"description" : "",
"dtype" : "General",
"hwid" : "2",
"id" : "00000003",
"idx" : 4,
"name" : "Voltage L3",
"nvalue" : 0,
"stype" : "Voltage",
"svalue1" : "235.600",
"unit" : 1
}
Har du sett https://www.home-assistant.io/integrations/dsmr/ ?
Använd ser2net från pajen till HASS istället. Känns överkurs att behöva installera ett helt extra system...
Använd ser2net från pajen till HASS istället. Känns överkurs att behöva installera ett helt extra system...
Den ville inte vara med och lira. Jag kontrollerade med telnet på min HA burk mot Pi med USBsladd och jag fick datan. När jag startade upp tjänsten på HA var något parsern inte gillade:
2020-10-20 11:00:24 ERROR (MainThread) [homeassistant] Error doing job: Fatal error: protocol.data_received() call failed.
Traceback (most recent call last):
File "/usr/local/lib/python3.8/asyncio/selector_events.py", line 860, in _read_ready__data_received
self._protocol.data_received(data)
File "/usr/local/lib/python3.8/site-packages/dsmr_parser/clients/protocol.py", line 87, in data_received
data = data.decode('ascii')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 0: ordinal not in range(128)
2020-10-20 11:00:24 ERROR (MainThread) [homeassistant] Error doing job: Fatal error: protocol.data_received() call failed.
Traceback (most recent call last):
File "/usr/local/lib/python3.8/asyncio/selector_events.py", line 860, in _read_ready__data_received
self._protocol.data_received(data)
File "/usr/local/lib/python3.8/site-packages/dsmr_parser/clients/protocol.py", line 87, in data_received
data = data.decode('ascii')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 0: ordinal not in range(128)
Denna var datan jag såg över telnet samt hur den kodas in i HA.M mbqmbq skrev:Den ville inte vara med och lira. Jag kontrollerade med telnet på min HA burk mot Pi med USBsladd och jag fick datan. När jag startade upp tjänsten på HA var något parsern inte gillade:
2020-10-20 11:00:24 ERROR (MainThread) [homeassistant] Error doing job: Fatal error: protocol.data_received() call failed.
Traceback (most recent call last):
File "/usr/local/lib/python3.8/asyncio/selector_events.py", line 860, in _read_ready__data_received
self._protocol.data_received(data)
File "/usr/local/lib/python3.8/site-packages/dsmr_parser/clients/protocol.py", line 87, in data_received
data = data.decode('ascii')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 0: ordinal not in range(128)
/ELL5\253833635_A
0-0:1.0.0(201020085222W)
1-0:1.8.0(00001605.055*kWh)
1-0:2.8.0(00000000.131*kWh)
1-0:3.8.0(00000003.642*kvarh)
1-0:4.8.0(00000185.707*kvarh)
1-0:1.7.0(0006.000*kW)
1-0:2.7.0(0000.000*kW)
1-0:3.7.0(0000.200*kvar)
1-0:4.7.0(0000.470*kvar)
1-0:21.7.0(0003.172*kW)
1-0:41.7.0(0000.441*kW)
1-0:61.7.0(0002.386*kW)
1-0:22.7.0(0000.000*kW)
1-0:42.7.0(0000.000*kW)
1-0:62.7.0(0000.000*kW)
1-0:23.7.0(0000.000*kvar)
1-0:43.7.0(0000.200*kvar)
1-0:63.7.0(0000.000*kvar)
1-0:24.7.0(0000.222*kvar)
1-0:44.7.0(0000.000*kvar)
1-0:64.7.0(0000.247*kvar)
1-0:32.7.0(234.4*V)
1-0:52.7.0(233.3*V)
1-0:72.7.0(235.1*V)
1-0:31.7.0(013.6*A)
1-0:51.7.0(002.0*A)
1-0:71.7.0(010.2*A)
!80FF
- sensor.energy_consumption
- sensor.energy_production
- sensor.reactive_energy_consumption
- sensor.reactive_energy_production
- sensor.energy_usage
- sensor.energy_production
- sensor.reactive_energy_usage
- sensor.reactive_energy_production
- sensor.energy_usage_L1
- sensor.energy_production_L1
- sensor.energy_usage_L2
- sensor.energy_production_L2
- sensor.energy_usage_L3
- sensor.energy_production_L3
- sensor.reactive_energy_usage_L1
- sensor.reactive_energy_production_L1
- sensor.reactive_energy_usage_L2
- sensor.reactive_energy_production_L2
- sensor.reactive_energy_usage_L3
- sensor.reactive_energy_production_L3
- sensor.voltage_L1
- sensor.voltage_L2
- sensor.voltage_L3
- sensor.current_L1
- sensor.current_L2
- sensor.current_L3
Spännande, det ser ut som att det första tecknet som kommer in inte är det HASS förväntar sig.
Några personer med samma problem:
https://community.home-assistant.io/t/dsmr-help-needed/102063/8
Hm, ja då kanske det är läge att använda Domoticz ändå....frågan är vad som är lättast. Använda REST och läsa sensorerna så eller jobba med din inte så trevliga MQTT struktur.
Kör du Node-red? Tror det är lättare att lösa där än i HASS....personligen kör jag inte Node-red eftersom jag fortfarande inte har hittat ett problem som är olösligt i HASS.
Några personer med samma problem:
https://community.home-assistant.io/t/dsmr-help-needed/102063/8
Hm, ja då kanske det är läge att använda Domoticz ändå....frågan är vad som är lättast. Använda REST och läsa sensorerna så eller jobba med din inte så trevliga MQTT struktur.
Kör du Node-red? Tror det är lättare att lösa där än i HASS....personligen kör jag inte Node-red eftersom jag fortfarande inte har hittat ett problem som är olösligt i HASS.
Jag har kört node-red för min automationer i HA. Får nog fokusera på node-red spåret, för Domoticz fimpar en hel del av variablerna.Fn87 skrev:Spännande, det ser ut som att det första tecknet som kommer in inte är det HASS förväntar sig.
Några personer med samma problem:
[länk]
Hm, ja då kanske det är läge att använda Domoticz ändå....frågan är vad som är lättast. Använda REST och läsa sensorerna så eller jobba med din inte så trevliga MQTT struktur.
Kör du Node-red? Tror det är lättare att lösa där än i HASS....personligen kör jag inte Node-red eftersom jag fortfarande inte har hittat ett problem som är olösligt i HASS.
Är du säker på att Tibber Pulse verkligen stöder den elmätare du kommer att få?J JohanLun skrev:Nu har jag köpt en Tibber Pulse (då jag har en Easee laddare och vill ha lastbalansering) men man funderar ju på om man skulle velat ha ut data till Home Assistant via en RPi, jag antar att detta interface är 1:1 så man inte kan ha två klienter? Om nu inte någon bygger en lösning som både kan konvertera en RJ12 - RJ45 eller bara ligga mellan två portar av samma sort för att tanka ur data OCH supporta en extra klient (som Pulse).
Jag har inte tillräcklig kunskap för att bygga en egen lösning, men följer med spänning denna tråd. Kanske kan Home Assistant koppla till Tibber och få ut den data man kan tänkas vilja ha den vägen...
Tyvärr har jag inte (ännu) rätt elmätare, men vi ska få mätare bytt, förhoppningsvis förr än senare - alla ska vara bytta om 4 år och är elbolaget sjyssta lägger de mig tidigare i kön.
Härligt!M MrDuco skrev:
Använder du fortfarande https://github.com/matthijskooijman/arduino-dsmr som bas? Har du lust att posta dina modifikationer till svensk standard här?
Har du utgått från någon av de exempel-sketcher (t.ex denna: https://github.com/matthijskooijman/arduino-dsmr/blob/master/examples/read/read.ino) som finns och lagt till en MQTT-klient där som postar datat som du sedan konsumerar i Node-RED?
Borde man inte kunna definera upp MQTT-sensorer direkt i HA för att slippa gå omvägen via Node-RED? https://www.home-assistant.io/integrations/sensor.mqtt/
En sista fråga Har du lust att posta ditt slutliga kopplingsdiagram som du kör med? Eller finns det redan upplagt här i tråden?
Grymt bra jobbat!