[ 175,736 keer bekeken / views ]
In augustus 2018 publiceerde ik een project voor het uitlezen van de Slimme Meter.
Aan de hand van de vele reacties van de mensen die het project hebben nagebouwd en mijn eigen ervaring met versie 3 van de DSMR-logger vond ik het tijd worden om een nieuwe versie van de hardware en de firmware te ontwikkelen.
[31-07-2019] Vanaf versie 0.4.5 kan de DSMRloggerWS firmware ook telegrammen van pré DSMR 4.0 standaard Slimme Meters uitlezen!
[09-03-2020] De nieuwste DSMRloggerAPI firmware kan ook telegrammen van sommige Belgisch Slimme Meters uitlezen (testers gevraagd)!
De DSMRloggerWS firmware en nog veel meer kun je op github vinden! De nieuwste DSMRloggerAPI firmware kun je hier vinden.
[15-06-2021] v3.0.1 van de DSMRloggerAPI firmware is gereleased!
Deze zgn. “One Fits All” release maakt het overbodig om voor verschillende soorten Slimme Meters (DSMR 2+, 3+, 4+ 5+ en de Belgische varianten hiervan) aangepaste firmware te gebruiken. Alle (mij bekende) Slimme Meters kunnen met deze éne release uitgelezen worden.
Een aantal gebruikers gaf aan gebruik te maken van externe diensten om de gelogde data in grafieken weer te geven. Ik heb ook de behoefte aan een grafische weergave van de gelogde data maar ik wil voorkomen dat ik daar externe diensten voor moet gebruiken.
Bij Opencircuit is versie 4.5 van de
DSMR-logger
in de aanbieding!!
De doelstellingen voor versie 4 van de DSMR-logger zijn ongeveer gelijk gebleven aan die van versie 3 met dien verstande dat ik méér data op de DSMR-logger wil opslaan én dat ik de gelogde data ook in grafieken wil kunnen bekijken.
Tot en met versie 3 van de DSMR-logger wordt iedere seconde een telegram van de Slimme Meter ontvangen. Daarvan wordt slechts een klein deel (iedere tien seconden) één telegram ook daadwerkelijk verwerkt. Op zich is dat geen probleem want de overige negen telegrammen vallen gewoon in een groot gat maar .. de ESP8266 UART moet wél op deze vloed aan data reageren (de UART is interrupt driven). Zowel de Slimme Meter als de DSMR library van Matthijs Kooijman hebben een mogelijkheid om telegrammen alleen op afroep te versturen (Slimme Meter) of te vragen (DSMR library).
Het werkt zo: De Slimme Meter verstuurd alléén een telegram als de Data Request pin “hoog” is. De DSMR library heeft een functie call “enable(true)
” die een pin van de ESP8266 “hoog” maakt en deze “hoog” houdt tot er een volledig telegram is ontvangen (waarna de pin “laag” wordt gemaakt).
Omdat ik voor de eerdere versies van de DSMR-logger een ESP-01 bordje wilde gebruiken kon van deze functionaliteit geen gebruik worden gemaakt eenvoudigweg omdat de ESP-01 niet genoeg pinnen heeft om er één voor vrij te maken.
De ESP-12(E/F) heeft wel voldoende GPIO pinnen en aanzienlijk (4x) zoveel geheugen als de ESP-01(S). Het was daarom een logische keuze om deze variant van de ESP8266 te gebruiken voor versie 4 van de DSMR-logger.
Het prototype en Proof of Concept heb ik op een 1of!-ESP12 processor bordje met een 1of!-Proto bordje gemaakt.
Data Request Circuit
Voor het “hoog” en “laag” maken van de Data Request pin van de Slimme Meter heb ik verschillende varianten uitgeprobeerd. Met een combinatie van één of twee transistoren en/of MosFets kreeg ik het niet stabiel werkend. Uiteindelijk is het een opto-coupler geworden.
Hieronder staat het schema voor de Data Request functionaliteit:
Het circuit wordt gestuurd vanuit GPIO12 van de ESP8266 en zorgt ervoor dat bij een “hoog” signaal de led in de opto-coupler gaat branden.
Hierdoor zal de transistor “sluiten” (hij gaat geleiden) waardoor de 5Volt op de collector (pin5) direct op de emitter (pin4) terecht komt (hij wordt “hoog”). Hierdoor zal DTR_SM ook “hoog” worden en zal de Slimme Meter een telegram versturen.
Telegram ontvangen
Het telegram wordt door de Slimme Meter via pin 5 van de RJ12 connector met een geïnverteerde 5volt TTL logica verstuurd. Voor de ESP8266 moet dit signaal zowel (terug) geïnverteerd- als geschikt gemaakt worden voor 3v3 logica van de ESP8266.
In rust zal R6 de Base van Q1 “hoog” trekken, waardoor Q1 “gesloten” wordt en de Collector, en daarmee Rx_SM “laag” zal zijn. Als Tx_SM “laag” is zal de Base van Q1 óók “laag” worden en zal Q1 “open” gaan staan. De Collector en daarmee ook Rx_SM zal door R8 naar 3v3 getrokken worden. Rx_SM is dan dus “hoog”. Komt er bij Tx_SM een “hoog” signaal binnen, dan zal de Base van Q1 ook “hoog” worden. Hierdoor gaat Q1 geleiden en zal de Collector samen met Rx_SM “laag” worden.
Hiernaast zie je hoe dat deel van het schema er op het 1of!-Proto bordje uit ziet.
I2C Interface
Een aantal bouwers van versie 3 vroeg of het mogelijk is in een volgende versie een klein Oled scherm op te nemen. Er zijn twee mogelijkheden om een Oled scherm aan te sturen. Eén is via een SPI interface de andere maakt gebruik van de I2C interface. Ik heb ervoor gekozen de I2C interface te gebruiken.
In versie 4 is een uitbreiding poort met I2C interface opgenomen die ook voor andere modules gebruikt kan worden. In de firmware wordt een Oled scherm aangestuurd.
Er kan in de J4 poort direct een Oled-module worden gestoken. Omdat niet iedere verkrijgbare Oled-module dezelfde aansluitingen heeft moet via draad-bruggen de juiste aansluitingen van J2 naar J3 worden doorverbonden (met name GND en 3v3 zitten niet op alle Oled-modules op dezelfde plaats).
ADC Interface
Een groot nadeel van de Slimme Meter is dat deze de energie van de zonnepanelen sommeert met die van de verbruikers op dezelfde groep.
Zo krijg je nooit een inzicht in de werkelijk opgewekte energie en de werkelijk verbruikte energie. De opgewekte energie kun je ook (buiten de Slimme Meter om) meten met een AC Stroom Sensor (bijvoorbeeld een SCT013-030 of ECS1030-L59). Deze klem je om de, in de meterkast binnenkomende, fase draad van de zonnepanelen en ze geven een spanning af die afhankelijk is van de stroom die door de kabel loopt. Voor gebruik van dit soort sensoren is de ADC (Analoge to Digital Convertor) pin van de ESP8266 uitermate geschikt. In het schema van de DSMR-logger v4 heeft deze, via een weerstands-deler een bereik van 0-5volt. Door R12 en R13 (5% tolerantie, een kleinere tolerantie is beter) aan te passen kun je dit bereik veranderen.
Putting It All Together
Om het schema van de nieuwe DSMR-logger te complementeren moet het basis-circuit van de ESP8266 nog worden toegevoegd (zie mijn post over de 1of!-ESP12). Dit basis circuit bestaat uit de ESP-12, de 3v3 voeding, een Program Interface en de schakeling rond de Reset en Flash buttons.
Dit resulteert in het complete schema voor de DSMR-logger V4:
Uitgebreide (‘technische’) documentatie van dit project kun je hier vinden.
Een complete kit met alle onderdelen kun je hier kopen.
En hieronder staat een plaatje van het prototype zoals ik dat op de 1of!-bordjes heb gemaakt en getest.
Daarna met KiCAD een PCB ontworpen:
En een life versie van het prototype in de meterkast:
Beste Willem ,
ik heb het script van michel groen aangepast voor domoticz in Docker
ik kan de file niet uploaden dus schrijf ik het hier maar bij
ik heb het volgende toegevoegd bovenin :
————————————————————————————
domoticz_in_docker = “Nee” — Zet domoticz_in_docker op Ja als domoticz op Docker is — geinstalleerd. Keuze “Ja” of “Nee” (hoofdlettergevoelig)
——————————————————
en halverwegen dit veranderd :
—————————————————————————-
if domoticz_in_docker==”Nee” then
json = (loadfile “/home/pi/domoticz/scripts/lua/JSON.lua”)()
else
json = (loadfile “scripts/lua/JSON.lua”)()
end
——————————————————-
met vriendelijke groet
Hi Hans,
Bedankt voor de informatie.
Ik denk dat niet veel makers nog gebruik maken van deze firmware nu er nieuwere, betere firmware (DSMRloggerAPI en DSMRlogger32) beschikbaar is.
Je kunt op deze post geen comments meer plaatsen.
De DSMRloggerWS firmware is ondertussen achterhaalt door de DSMRloggerAPI firmware.
Hallo Willem,
Ik zag op opencircuit.nl andere schermen staan van de slimme meter uitlezer. Ik dacht dat er dus een nieuwere versie beschikbaar was. Dus ik proberen om de firmware te upgraden. Helaas bleek er iets mis te gaan. Ik heb nu geen informatie meer op het OLED scherm, de rode led brand en de blauwe knippert om de ongeveer 8 seconden. Ook met wifi kan ik hem niet meer benaderen.
Wat moet ik nu doen om hem weer werkend te krijgen?
Thanks.
Bert,
Op zich lijkt het correct dat de rode led brandt en de blauwe om de 8 á 10 seconden knippert.
Afhankelijk wat je hebt geflashed (ook SPIFFS of niet) kan het zijn dat je WiFi credentials opnieuw moet invoeren. Haal de DSMR-logger uit de Slimme Meter en sluit hem weer aan. Lees de documentatie voor eerste keer opstarten.
Kijk vervolgens hier hoe je van alles (bijvoorbeeld of je een OLED scherm hebt of niet en welke GUI je wilt gebruiken) kunt instellen.
Als je een upgrade van DSMRloggerWS naar DSMRloggerAPI hebt gedaan let er dan op dat de hostname is veranderd in “DSMR-API.local”.
Excellent project. Your documentation is fantastic.
I wanted to post that my Kaifa E0025 (MA105) worked great with a 4 conductor RJ cable and external 5V power.
Did you ever consider RRDTool for data storage and graphing? Would that have a wear leveling impact?
Hi Russel,
Thanks for the complement.
In my book about wireless sensors I did use the RRDTool to present the temperatures in and around the house.
The main objective for the DSMR-logger was (is) to make a device that does not need other systems to present the results. It is completely “self supporting”. But you can still send the data to the RRDTool. It will, however, not have influence in wear leveling as the DSMR-logger still writes all the data to the RING-files. But, according to my calculations, the flash memory will not wear out in the next 100 years or so…
Vergeet voorgaande. Ben nu met de API versie bezig ipv de WS versie.
Excuses.
Beste,
Bij mij (in België) werd onlangs een digitale meter geïnstalleerd. Tijd om die uit te lezen en zo kwam ik bij uw project uit.
Deze week de laatste versie besteld en snel ontvangen.
De logger opgestart en kon meteen verbinding maken met mijn netwerk.
Verder kon ik naar het ip-address gaan en kon de systeeminfo bekijken, data kwam er niet binnen. Uiteraard, wij hebben blijkbaar een andere versie van datapakketten.
Ik had ergens iets gelezen over de Belgische digitale meters, alleen vind ik die info niet meer meteen terug, maar ik heb in de software DSMRloggerWS een “#include dsmr-be.h” bijgevoegd en de dsmr.h in commentaar gezet. Ook alle nodige bibliotheken geïnstalleerd zodat compileren foutloos verliep. Echter boardsetting komen niet overeen met de settings die in de zeer uitgebreide documentatie staat. Ik kan bv in de optie Flash size enkel settings met OTA kiezen, dat SPIFFS staat er niet tussen.
Maar met enige moeite toch alles kunnen installeren en logger terug in gang gekregen. Ik zie aan de ‘Systeem Info’ dat het gewijzigd is.
Er komen telegrammen binnen, maar zie geen data, de velden blijven op nu staan.
Wat ook wel is, de aansluitingen van de Belgische meters zijn RS-422 met op 5 de + lijn en op pen 4 de – lijn van de databus. Zou dit een probleem kunnen zijn? Of moet ik toch nog meer doen om de Belgische pakketten te kunnen lezen.
Alvast dank voor enig antwoord.
Heeft iemand al geprobeerd om een SSL enabled WifiClient te gebruiken, zodat we de gegevens direct naar bijvoorbeeld een AWS IoT MessageBroker gestuurd kunnen worden? Zie hier
Barry,
Ik denk dat het met een esp8266 processor niet mogelijk is.
Jelmer de Jong heeft de DSMR-logger voor een esp32 aangepast en Robert van den Breemen heeft de firmware voor deze esp32 versie van de DSMR-logger aangepast. Ik denk dat je via die ontwikkeling de meeste kans maakt.
Hou ons op de hoogte!
Hoi Willem, wat een mooi project. Binnenkort krijg ik mijn slimme energiemeter en wil gebruik maken van jouw kit.
Is het mogelijk met jouw ontwerp ook de Landys stansverwarming kan uitlezen via een infrarood seriële poort? Dit is het Optical interface EN 62056-21:2003 Protocol.
Een groot deel van Almere hangt vol met deze landys UH50 Meters die verre van slim zijn. De NUON loopt helaas behoorlijk achter met de ontwikkeling en het zou mooi zijn als beide meters kan uitlezen via dezelfde logger.
Een website in Duitsland levert het ontwerp voor de IR head voor een raspberry PI maar ook serieel, TTL en usb.
https://wiki.volkszaehler.org/hardware/controllers/ir-schreib-lesekopf-pi-ausgang
Alvast bedankt!
Erik,
Het is zonder meer mogelijk om de firmware zodanig aan te passen dat je er een IR sensor mee uit kunt lezen.
Je zult dat alleen wel zelf moeten coderen. Hou er rekening mee dat er alles aan is gedaan om de firmware zo robuust mogelijk te maken en als je veel gaat bijbouwen kán het zijn dat je tegen een geheugen (heap) probleem aan gaat lopen.
Eén van de projectjes waar ik me nog een keer op wil storten is een “DSMR-logger”-achtige module die allerhande puls-gerelateerde sensoren kan uitlezen en via een restAPI kan ontsluiten. Als we dat hebben kun je in de DSMRloggerAPI firmware volstaan met het uitlezen van de puls-logger.. Toekomst muziek.
Beste Willem , dank je voor je antwoord. Lijkt me een prima plan als je mogelijk in de toekomst een universeel board gaat bouwen om een heel scala van sensors uit te lezen. Ik houd je site in de gaten 😉 Erik
Is er iemand met een 2.2 meter variant?
Ik heb met Willem overleg gehad, maar aangezien hij deze meter niet heeft is het lastig puzzelen.
Mijn meter lijkt nu geen Actueel verbruik door te geven.
Ook de tijdsnotitie loopt een uur achter.
Dit zou iets in de software kunnen zijn. Helaas heb ik er zelf nou ook niet zoveel verstand van dat ik hier uit kom……
Ik hoop op iemand die dit bekend voorkomt en een oplossing weet!
Alvast bedankt!
Kan je een telegram via het tabblad Telegram ophalen en delen?
Dit is wat er nu uit komt:
@Robert
Ik vraag mij af of je hier uithaalt wat we nodig hebben. Volgens mij laat de Arduino-DSMR library van Matthijs alleen de gegevens zien waar in de library een OBIS van is opgegeven.
DSMRloggerAPI.h
Zie hier.
Ik heb het vermoeden dat de Slimme Meter van Wesley veel meer gegevens doorgeeft dan wat we nu zien … of ben ik abuis?!
Hoi Willem,
IK heb twee vragen.
1: Hoe kan ik veranderen van wifi netwerk?
2: Na firmeware update en spiffs update brand de blauwe led continu. Wat kan hier de oorzaak van zijn?
Vast bedankt voor je advies
Hi George,
Na het opstarten van een nieuw geflashte firmware (en spiff) zal de firmware zich melden als een accesspoint. Ga via je telefoon of computer naar het AP toe met de naam DSMR-API-xx-xx-xx-xx-xx
Daar kan je de wifi instellingen in de DSMRlogger zetten. En vervolgens kan je na een reboot (die vanzelf gaat) de firmware gaan gebruiken.
De blauwe led blijft continue branden in Wifi Configuratie modus. Dus dat is op zich juist… Als je de configuratie hebt gedaan, zal je na de reboot en het verbinden met het netwerk de blauwe led 5x zien knipperen.
Geen commentaar, klacht of probleem. Mijn bewondering voor je mateloze geduld en je tomeloze inzet. Voor mij onbegrijpelijk. Je blijft de vriendelijkheid en correctheid in persoon. Vond het nodig je dit te laten weten.
Dank en groeten.
Henk O.
Wauw.
Wat een compliment. Dank.
Ik doe mijn best hoewel het soms toch niet lukt.
Beste Willem
Ik sluit mij hier graag bij aan.
Je verdient een compliment voor je tomeloze energie en wijze dat je dit project aan het doen bent. En al zou het een keer niet lukken dan nog komt het in 2e instantie toch goed omdat jij altijd een oplossing weet te vinden.
Ik denk dat dit project mede daarom ook zo’n succes is.
OWK
Beste Willem,
Gisteren mijn P1 lezer binnen gekregen en aangesloten. Dat werkt perfect!
Is het mogelijk ergens beginstanden in te voeren of iets dergelijks? Het lijkt nu net of ik gisteren enorm veel stroom en gas heb verbruikt, waardoor ik geen mooi overzicht krijg.
Wouter,
Deze vraag is al meerdere keren beantwoord. Even de documentatie en de comments op de post’s over de DSMR-logger lezen.
Ik heb uiteraard de documentatie doorgelezen en de posts doorzocht, maar kan het niet vinden. Als ik alleen al in dit topic zoek naar het woord “stand” krijg ik 117 vermeldingen die me allen niet verder helpen. De RING bestanden worden uberhaupt niet genoemd in de documentatie.
Ik vermoed dat ik die bestanden aan moet passen. Maar moet ik ze dan alle 3 aanpassen? Als ik in de online editor bijvoorbeeld de standen van eind maart 2020 opgeef, dan blijven de hoge waarden die gisteren zijn opgeslagen gewoon erin staan. Ook als ik deze op 0 zet, komen ze gewoon weer terug.
De dagen en uren tabel geven respectievelijk na 14 dagen en 24 uur de juiste standen.
Voor de maanden moet je álle maanden invoeren. Zie ook de documentatie.
Soms moet je wat moeite doen.
Hallo Willem,
Gebruik al een tijdje de DSMR naar tevredenheid. Kwam echter gisteren iets tegen wat ik nog niet eerder gezien heb. In de uren tabel staan een paar hele hoge waardes die niet kloppen. Daardoor is de grafische weergave van die tabel ook niet juist. Je kan door die hoge waardes de normale waardes bijna niet meer zien. Als ik echter in RINGhours.csv kijk is het verloop normaal. Worden de gegevens nog anders bijgehouden ? En kun je die hoge waardes eventueel handmatig aanpassen ?
Alvast dank voor je reactie.
Piet,
Wat vreemd!
Het lijkt erop dat er tussen 00 en 01 uur iets mis is gegaan. Netzo tussen 08 en 09 uur..
Had je de DSMR-logger los gehaald? Stroom storing?
De gegevens worden alleen in de RINGhours.csv (per uur), RINGdays.csv (per dag) en RINGmonths.csv (per maand) bijgehouden.
Je kunt de RINGmonths.csv met de ingebouwde editor aanpassen. Om de uren aan te passen moet je het bestand naar je computer downloaden en daar met een echte editor (geen tekst verwerker of zo) aanpassen. Je kunt daar het beste mee beginnen om een paar minuten over het uur en dan vooral ook weer uploaden vóór het einde van het uur en de DSMR-logger re-booten.
Let er op dat de records precies de goede lengte houden anders is de ellende niet te overzien!!
Is er informatie over uitlezen van onderstaande meter??
5CTA – LTE 4G ESMR5
Ik kan er iets over vinden.
Bij het aansluiten gaat de 5V led een paar keer knipperen
Ook de blauwe led gaat aan. Op het WIFI netwerk is de DSMR te zien.
Maar het gaat toch niet goed. Met name het nipperen van de rode led doet mij vermoeden dat de te leveren stroom op P1 niet genoeg is.
https://www.zivautomation.com/metering-solutions/meters/lte-smart-meter-esmr/
Martin,
Er staats iets “vreemds” in de documentatie van deze meter … “P1: 2 wires/RJ12”.
Ik snap echt niet wat ze daar mee bedoelen. Dat de rode led knippert duidt inderdaad op onvoldoende vermogen van de SM.
Probeer eerst een externe voeding en als dat het probleem niet oplost misschien met je energie leverancier meer informatie vragen.
Dat de DSMR-logger op je netwerk te zien is lijkt erop dat je wel je WiFi credentials hebt in kunnen voeren. Is dat zo?
Ik heb niet alles gelezen, dus als het al eerder is gevraagd, dan mijn excuses.
Ik ontvang de telegram-gegevens van de slimme meter, en zet die door naar Home Assistant en visualiseer die met Grafana. Mijn systeem laat echter wel eens een gaatje vallen en registreert niet altijd alles even goed.
Nu las ik dat in de Slimme Meter ook allerlei waarden worden opgeslagen (zoals maand- dag en kwartierstanden, die na verloop weer worden overschreven.
Is het ook mogelijk om die waarden uit te lezen met een P1 kabel ?
Johan,
Je kunt de gegevens draadloos uitlezen met een API call.
toevallig wat meer info daarover of een linkje 🙂 ?
Kan zelf ook zoeken hoor, maar vermoed dat jij weet waar het te vinden is. In ieder geval bedankt voor je snelle reactie
Ik denk dat de documentatie van de DSMRloggerAPI firmware een mooi startpunt is.
Willem, ik heb een aangepaste variant van jou 4.5 werkend met Stroom Sensor SCT013-010 – 10A en buitentemperatuur sensor DS18B20, en koppeling naar Googlesheets. Mocht je geïnteresseerd zijn in de ino, gerber/diptrace en googlescript file laat het maar weten
Harrie,
Ik denk dat er best makers zijn die hier interesse in hebben!
Kun je de files op github zetten?
Vraagje Willem,
Ben een oude ESP-01 gebruiker, met een eigen op de HTTP2 logger gebaseerde versie.
Recent drie moderne bordjes aangeschaft, waarvan er 2 bij vrienden zonder problemen draaien.
Mijn eigen exemplaar nog niet aangesloten, omdat ik nog wat aanpassingen wil doen, en een stroommetertje wil aansluiten voor mijn zonnepanelen.
Heb nu een probleem met AP mode : ik kan firmware en data uploaden, maar geen verbinding maken met de webserver om netwerkverbinding te maken. Zodra ik probeer te verbinden met DSMR-WS krijg ik een reset van de logger (zit een OLED op)
Zelfde probleem treed op als ik probeer (mijn) oude versie van de firmware te laden.
Enige wat ik kan bedenken is een kapotte ESP8266??
Beste Benno,
Dit comment hoort hier niet thuis maar bij de post waar je comment over gaat!
Ik zal hem verplaatsen.
Ik heb geen idee wat je hebt aangepast en welke instellingen je gebruikt.
Wat is het probleem met de AP-mode? Kun je je WiFi credentials niet invoeren?
Kan het zijn dat je browser gegevens van je oude DSMR-logger ge-cached heeft?
Kun je er wel bij met het IP adres van de DSMR-logger?
Vooralsnog lijkt het mij onwaarschijnlijk dat de ESP8266 de geest heeft gegeven.
Benno,
Heb je soms geflashed met “Erase All” optie?
Dan moet je ná het flashen van de firmware ook SPIFFS opnieuw flashen!
Beste Willem,
Ik ben alles behalve handig met electronica op dit niveau, maar met alle beschrijvingen denk ik dat ik er wel uit kom. Een ding is voor mij nog niet helemaal duidelijk: als ik de slimmerMeter-uitlezer aansluit op de P1 port, krijgt hij hier dan zijn voeding (stroom) vandaan, of moet ik er nog wat bij aanschaffen en zo ja welke / wat dan ?
* Slimmer Meter Uitlezer
* Project Box om de printplaat erin te doen
* OLED Display (nieuwe versie)
Ik lees namelijk wat over een externe adapter en een stroom sensor.
Mbt de stroom sensor dient de software aangepast te worden heb ik gelezen.
Alvast dank.
Hoi Chris,
Jammer. Als de documentatie toereikend zou zijn had je deze vragen niet hoeven stellen. Daar moet ik dus nog wat aan verbeteren.
Als je een geschikte SM hebt, dan levert deze de stroom voor de DSMR-logger. Heb je géén geschikte SM dan heb je nog een 5volt (USB) voeding met ronde jack nodig (in beide gevallen moet je de jumper goed instellen). Of je een geschikte SM hebt kun je voor een aantal veel gebruikte meters in de documentatie vinden).
Een oled scherm SDD1306 of beter nog een SH1106 is informatief en zou ik zeker aanraden.
Er is ruimte voor een analoge input, maar daar heeft, voor zover mij bekend, nog niemand iets mee gedaan.
Beste Willem,
Dank voor je super snelle reply.
Denk meer dat het aan mijn gebrek aan electronica kennis ligt. Wat voor ‘jullie’ logisch is, wil ik misschien nog expliciet vragen.
Better save than sorry, toch ?
Aan de andere kant: zo wordt de documentatie nog duidelijker 🙂
Dank voor de info en ga vandaag de bestelling direct plaatsen.
Chris
Beste Willem,
Vandaag alle onderdelen ontvangen.
Klopt mijn aanname dat er al software op staat, of moet ik dat er eerst zelf nog op zetten ?
Het display doet helemaal niets namelijk;
Ik zie geen WiFi waar in mijn interne WiFi gegevens mee zou in kunnen vullen;
Het rode lampje brand continue en het blauwe lampje knippert continue.
Misschien vergeet ik een stap die voor kennis vanzelfsprekend is, maar mij lukt het nog niet.
Alvast dank.
Chris,
Heb je de documentatie gelezen?
Ik heb best wel een hoop moeite gedaan om uitvoerig te beschrijven hoe alles werkt. Zowel voor volledige beginners als ook voor meer technisch onderlegde gebruikers.
De firmware staat al op de DSMR-logger v4.5.
Over de hardware kun je hier het één en ander vinden.
Let vooral op de aansluitingen van het OLED scherm. Vcc en GND zijn soms omgewisseld en dan moet je de twee doorverbindingen onderaan de DSMR-logger doorsnijden (voorzichtig!) en gekruiste doorverbinding solderen.
Over het opstarten met de DSMRloggerWS firmware kun je hier het één en ander vinden.
De documentatie van de DSMRloggerAPI firmware kun je hier vinden.
Beste Willem,
Er is inderdaad erg veel beschreven wat ik allemaal kan doen. Waar ik nu op vastloop is dat ik geen WiFi ‘netwerk’ van de DSMR-logger kan zien. Wat ik begrijp uit de documentatie is dat als je de DSMR-logger aansluit deze eerst onderdeel van je interne netwerk moet worden. Dit zou je moeten kunnen doen door verbinding te maken met het WiFi signaal van de DSMR-logger, maar die zie ik niet, ook al ga ik voor de meterkast staan.
Qua OLED had ik inderdaad gelezen dat er 2 uitvoeringen zijn, maar ik heb (gelukkig) de rechter en hoef geen aanpassing door te voeren.
Het enige wat ik heb moeten doen is de jumper van extern naar SM te verplaatsen om de stroom van de meter te krijgen.
Bovenstaande uitgevoerd voordat ik de DSMR-logger aan de meter heb gekoppeld. Hierna had ik verwacht een WiFi DSMR-WR signaal te zien.
Ook als ik de OLED er weer afhaal zie ik niets.
Mis ik nog een stap ?
Via Arduino kan je flashen indien nodig, maar daarvoor moet je eerst verbinding met de DSMR-logger krijgen lijkt mij en daar loop ik al op vast.
Het niet kunnen zien van de WiFi en aangezien de OLED ook niets laat zien, is er misschien wat anders aan de hand ?
Alvast dank voor de reactie.
Beste Willem,
Ik gebruik de DSRM logger v4.5 al enige tijd met veel plezier. Echter wil ik de dsrm logger in een ander wifi netwerk plaatsen. Hoe kan ik dit aanpassen? Of vereist dit een volledige reset?
Bedankt!
Tom
Tom,
Als de DSMR-logger bij het opstarten geen verbinding kan krijgen met het, bekende en tot nu toe gebruikte, netwerk, dan start hij zichzelf op als AccessPoint en kun je de credentials van je nieuwe WiFi netwerk opgeven.
Een andere mogelijkheid is om via telnet de WiFi credentials weg te gooien. Ook dan zal de DSMR-logger bij het opnieuw opstarten zichzelf als AP presenteren.
Ah, bedankt, Ik ga ermee aan de slag!
Een rare bug tegengekomen bij de DSMRloggerWS. Het apparaat reageerde niet meer via web en bij opvragen van de site merkte ik ook timeouts in de verbinding. Via telnet leek alles OK. Na lang zoeken ontdekt dat het apparaat een reboot (!) deed bij het opvragen van het CSS bestand. Ik zag ook 1 rare waarde in het “hourly” csv bestand. Ik ga ervan uit dat er een file corruptie gebeurd is op een gegeven ogenblik. Oplossing was via een browser met development tools het downloaden van de CSS file blokkeren, dan een bestand met dezelfde naam en 0 bytes grootte uploaden via de File Explorer (die wel werkt eens je dat bestand blokkeert) en daarna de goeie versie uploaden. Daarna werkt alles weer naar behoren.
Ik begrijp dat er een nieuwe firmware is. Zet het hier neer voor het geval anderen komen zoeken met gelijkaardige issues met de oude versie.
Hoi Willem,
Ik heb de logger thuis gekregen en aangesloten. Ziet er allemaal perfect uit. Ik moest een externe voeding aansluiten en de DSMR logger start op. Tot zover goed. Ik moest handmatig verbinding maken met
http://192.168.4.1/
Zie dan de het netwerk ‘DSMR-WS-‘. Dan klik ik op Configure WiFi. Daar zie ik staan mijn WiFi netwerken en VRV95170528FC. Dan het password. Geen idee wat dat is . admin werkt niet. Van alles geprobeerd ook VRV95170528FC. Niks werkt. Ik zal ergens iets missen.Maar wat is het password?
Thanks.
Groet Bert
Bert,
Ik weet ook niet wat het wachtwoord van VRV95170528FC is. Misschien bij je buren vragen of zo. Maar waarom selecteer je niet je eigen WiFi AP (ik neem aan dat je dáár het wachtwoord wél van weet). Het gaat er immers om dat de DSMR-logger weet wat jóuw WiFi credentials zijn zodat hij zich op jouw netwerk kan aanmelden!
Willem,
Aha. Ik begreep niet dat je je eigen netwerk moest kiezen. Dat is nu gelukt. De rode led brand constant en de blauwe brand om de 10 seconden.
Hij doet het dus.
Thanks.
Hi Willem, ik heb hem nagebouwd en het werkt perfect. Ik ben een paar dingen tegen gekomen die ik even wil delen. Ik kreeg de energieprijzen eerst niet goed ingevuld. Ik had het bedrag aangepast, zoals ook de komma daar stond. Dat moet echter een punt zijn, anders wordt de waarde niet opgeslagen.
Verder had ik moeite om de MQTT verbinding te krijgen. Hij melde dat hij niet connecte. Na wat speurwerk (maar ik had beter moeten lezen) had ik de waarde die default op 0 staat, op bv 60 seconde moeten zetten. Dan gaat het wel goed.
De meest lastige om te vinden was dat de waarde van de gasmeter van de ISKRA wel goed binnenkwam, maar niet in de log bestanden opgeslagen werd. In de code maak je een table aan, waarbij ‘gas_delivered2’ vervangen wordt door ‘gas_delivered’. Maar die staan dan 2 x in de look up table en bij het inlezen van de overeenkomstige waarde pakt hij de eerste, waar niks in staat. In de code (spiFFSstuff.c) waar de log weggeschreven wordt, heb ik op regel 60 van gas_delivered gas_delivered2 gemaakt en het werkt dan vlekkeloos.
Hartelijk dank voor dit puik stukje werk. En wat een prachtige code ook, zeer inspirerend, ik ga er voor de hobby veel uit hergebruiken!
Leendert,
Wat voor meter heb je (merk en type)?
Dat gas_delivered2 moet ik even opzoeken. Volgens mij krijg je die alleen als je bij het compileren de USE_PRE40_PROTOCOL gebruikt. Heb je een oude meter?
Ik kan helaas nergens in de buurt van een regel 60 “iets” vinden wat “iets” doet met gas_delivered2 …
Omdat je bij deze post comment ga ik ervan uit dat je de DSMRloggerWS firmware gebruikt. Die is “end-of-life”. Je kunt beter overstappen op de DSMRloggerAPI firmware!
In ieder geval: veel plezier met deze leuke hobby!
Dank voor je antwoord. Het is een (oude) iskra MT382. Ik gebruik de DSMRloggerAPI inderdaad al, daar heb ik de code even aangepast, gewoon de Define pre 40 voor gebruikt. Ik sluit het Plaatje even bij.
Groet,
Leendert
Leendert,
Bedankt!
Opgelost in v1.2.3!
Willem,
Mooi project dat ook ik wil aanschaffen. Nu ben ik een beginneling en ik vraag mij af hoeveel data de logger kan opslaan voordat hij ‘vol’ is.
Ik kan hier niets over vinden. Wel via een externe partij maar ook ik wil dat niet. Kan ik de data ook overzetten naar mijn pc bijvoorbeeld?
Alvast bedankt.
Groet Bert
Bert,
Het staat wat verdekt in de documentatie over de restAPI’s
De DSMR-logger bewaard de historische gegevens per 24 uur, 14 dagen en 24 maanden. De DSMR-logger loopt dus nooit “vol” omdat de oudste waarde aan de achterkant verdwijnt als er een nieuwe waarde (nieuw uur, nieuwe dag of nieuwe maand) aan het begin bijkomt.
Via de ingebouwde FSexplorer kun je de bestanden naar je computer uploaden. Dit kan ook automatisch met een script.
Ik heb een dsmrlogger v4,5 gekocht, en een Rj12.
Maar als ik ze aansluit op mijn slimme meter een sagemcom T210-D ESMR5 gebeurd er niks.
Ik wil hem met een rest api aan home assistent koppel?
Misschien dat ik iets mis dat ik er eerst iets op moet installeren, zou iemand mij hierbij kunnen helpen?
Hi Job,
Ik heb nog niet eerder informatie over deze Slimme Meter gekregen. Kijk hier maar.
Er zijn een paar mogelijkheden:
De DSMR-logger is in principe “plug-and-play” maar je moet wel de documentatie goed lezen.
Mocht je dan nog problemen hebben, dan moet je meer informatie geven. Lees alle andere comments om te zien wat ik nodig heb om op afstand te kunnen helpen.
Beste Willem,
Hartelijk dank voor deze mooie logger. Ik heb nu net de koppeling via MQTT en Home Assistant voor elkaar. Nu lees ik dat meerdere mensen problemen hebben met de koppeling MQTT en Home Assistant. Men krijgt daar geen waarde maar de tekst Onbekend ipv van een waarde. Dat had ik ook en heb het op de volgende wijze opgelost.
Ik heb deze logger recent gekocht V4.5 met firmware V1.03C erop. De geeft MQTT berichten in het volgende formaat: {“power_delivered_l1″:0,”unit”:”Watt”}
Zojuist heb ik de firmware upgrade van de logger naar V1.04 geupgrade. (Dank voor de duidelijke uitleg via het filmpje op youtupe).
Met de upgrade veranderde ook de MQTT berichten. Nu hebbende berichten dit formaat: {“power_delivered_l1”:[{“value”:1.564,”unit”:”kW”}]}
En nu werkt het wel met het MQTT uitleg en format zoal op de site opencircuit staat beschreven.
Ik ben helemaal blij.
Beste Hein,
Welke firmware gebruik je nu?
Ik neem aan dat je nog steeds DSMRloggerWS gebruikt (die is “end of life”). Je kunt het beste upgraden naar DSMRloggerAPI (dat is écht hele andere firmware).
Toevallig heb ik vandaag de documentatie aan gevuld met hoe je deze firmware met Home Assistant kunt koppelen.
In ieder geval: mooi dat je het naar tevredenheid werkend hebt gekregen.
Je hebt gelijk. Ik maak nog gebruik van de DSRMLoggerWS en niet van de DSMRLoggerAPI.
Dank dat je me daarop attendeert. Voor nu ben ik al blij dat het allemaal samenwerkt en ik wacht nog even met het updaten naar die versie. Ik ga nu genieten van mijn resultaat.
met vriendelijke groet,
Hein.
hallo willem,
mijn DSMRlogger doet het niet meer.
ik heb dit werkend gehad op mijn HA met versie v1.0.3 nu heb ik hem gisteren geupdate en zit nu op V1.1.0 maar aal mijn sensoren blijven op onbekend.
het viel mij wel op dat in de Mosquitto broker hij binnen kwam als DSMR-API.
dit heb ik weer terug veranderd naar DSMR-WS.
maar zonder succes.
wat zie ik over het hoofd?
Nick,
Het topTopic van DSMRloggerWS was: “DSMR-WS/JSON”
Bij DSMRloggerAPI is het nu: “DSMR-API”
Je kunt in setting het topTopic aanpassen naar zoals het wás, maar mooier is het natuurlijk om de configuratie van HA aan te passen.
Laat even weten of het hiermee weer lukt!
Willem, de logger heeft een tijd gewerkt, maar nu komt er geen data meer. Waar moet ik naar kijken voor de oorzaak?
Harrie,
Kort antwoord: onderzoek waarom er geen data meer binnenkomt en los het op.
Ik kan echt niets met de vraag “hij doet het niet”.
Zo’n stomme vraag “hij doet het niet” heb ik ook niet gesteld. Mijn terechte vraag was er komt geen data binnen, waar moet ik zoeken?
1 de p1 poort geeft geen data
2 de kabel is stuk
3 de print doet niet wat hij moet doen
1. Kan ik verder zelf niet vaststellen
2. Is ok
3. De print, wat kan ik met multimeter meten?
Is de vraag nu wel ok?
Harrie,
Ik heb ook niet geschreven dat het “een domme vraag” is. Ik schreef dat ik er niets mee kán!
Wat zou helpen:
Kortom, je kunt een hoop doen en doorgeven waar ik wellicht iets mee kan.
Op dit moment heb ik geen idee!
Willem,
De GUI funktioneert, blijft alleen op data wachten, TELNET zie bijlage funktioneert, alleen nullen,
ook de restAPI werkt, alleen maar nullen.
Dus ik verdenk de P1 meter, maar wat kan daar fout gaan, die is toch met optocouplers beveiligd, en het scherm op de slimme meter geeft alles juist weer.
Harrie,
Doet de GUI het (iets)Ik wil echt wel helpen, maar je maakt het erg moeilijk.
Gebeurd er helemaal niets als je met telnet in de DSMR-logger “kijkt”? Je hebt de letter “d” ingetoetst waarna je de inhoud van het PRDdays.csv bestand te zien krijgt. Maar ik ben juist geïnteresseerd in de andere meldingen. Wat wel handig is om een “b” in te toetsen zodat ik de board informatie kan zien en “f” en “s”.
Maar goed.
Als ik het met deze informatie moet doen dan lijkt het mij onwaarschijnlijk dat de Slimme Meter “kapot” is. Ik zou het eerder in het kabeltje zoeken. Kun je controleren of hij goed in de meter zit (je moet een duidelijke “klik” horen) en of hij goed in de DSMR-logger zit. Je zult verbaast zijn hoe vaak gebruikers hier fouten / problemen door krijgen.
Mocht dit het probleem niet oplossen, dan zou je met een scoop moeten controleren wat er voor signaal uit de P1 poort komt (pin 5 en pin 2). Als pin 2 niet hoog wordt stuurt de SM geen telegram. Heb je wel gecompileerd met “USE_ESP12”?
Mocht dit allemaal niets opleveren dan is mijn inschatting (maar bedenk: ik vaar nog steeds blind) dat de DSMR-logger stuk is.
Willem, ik ben een RUND:
Heb je wel gecompileerd met “USE_ESP12”?
Dat was de oplossing. Hij doet het weer prima.
Omdat de logger niets meer deed heb ik de firmware opnieuw geüpload, met geen vinkje bij USE_ESP12. Waarom? ik zou het niet meer weten.
Bedankt voor al je moeite, en SORRY!
PS de andere info schermen van Telnet had ik opgeslagen, maar ik kon er maar 1 meesturen, en een zip ging ook niet.
Harrie,
Ik ben blij dat het is opgelost .. maar snap je nu mijn vragen? Als je bij je eerste comment een beetje meer informatie had gegeven (zoals bijvoorbeeld “na opnieuw compileren en flash-en deed hij het niet meer”) of als je een scherm afdruk van de “Systeem Info” pagina had gepost, dan hadden we het in één keer kunnen oplossen.
Any way: de volgende stap is overschakelen naar de DSMRloggerAPI firmware.
Hi Wim,
Je advies opgevolgt en het resultaat is dat volgens de log van de MQTT broker 2 devices zijn aangesloten, i.e. ip ….180/181 en 10. Het DSMR board is 180 en blijkt de enige te zijn die ondanks het feit dat het connected is, geen data doorstuurt. Mijn conclusie op basis van bescheiden ervaring is dat dit aan de DSMR firmware ligt maar laat mij graag adviseren door jou met mogelijke vervolg stappen om tot een oplossing te komen.
Grtjs
Dick
Dick,
Het klopt dat de optie HAS_NO_METER het versturen van een MQTT bericht niet uitvoert. De reden hierachter is dat de dummy data niet in de vorm van een telegram wordt gegenereerd. MQTT maakt zijn berichten aan op basis van een telegram .. dat er dus niet is 🙁
Overigens blijf ik van mening dat je beter kunt overstappen op de DSMRloggerAPI firmware! In die firmware worden MQTT berichten ook verstuurd als je de “HAS_NO_METER” optie gebruikt!
Lees ook deze post!
Voor de integratie met HA op basis van mqtt heb ik de navolgende documenten geconsulteerd:
1) https://opencircuit.nl/Blog/Integratie-ESP8266-data-met-Home-Assistant/
2) https://mrwheel.github.io/DSMRloggerWS/integratieHassio/
Nr. 1 lijkt mij niet van toepassing aangezien ik HASSIO 0.106.6 draai en dus geen toegang heb tot unix commands.
Nr. 2 heb ik volledig gevolgd en met uitzondering van de aanpassing van de configuratie.yaml. In HASSIO maak ik gebruik van de Mosquitto broker Add-On waarin de configuratie plaats vindt.
De MQTT broker is reeds lange tijd functionerende voor een paar andere ESP8266 devices. De DSMR blijkt tevens communicatie te hebben getuige het navolgende uit de Log van de broker:
1584135104: New client connected from 192.168.2.180 as TEST-DSMRA4:CF:12:C2:FD:76 (p2, c1, k15, u’xxxx’).
Ondanks dit krijg ik toch geen data van de sensors/ DSMR-Actueel.yaml door. Tevens blijft de Entity State onde Developer Tools “Unknown”.
Enige richtlijn waar ik verder naar kan zoeken om de data door te krijgen? Onder Settings is De MQTT Topic aangegeven als DSMR-WS, overeenkomstig het sensor DSMR-Actueel.yaml bestand.
Dick,
Ik geloof dat ik sowieso een oude versie van hassio draai dus het kan zijn dat mijn configuratie niet up-tp-date is.
Wat je het beste kunt doen is met een mosquito client subscriben op toptopic DSMR-WS en dan kijken hoe de berichten eruit zien die uit de DSMR-logger komen. Vervolgens je .yaml file daarop aanpassen.
Hi Wim,
Dank! Ik maak vooruitgang. Oled scherm leest mooi uit met test data. Volgende stap MQTT naar HA. Struikel nog een beetje over het juiste topic in de settings in vergelijk met het voorbeeld. Genoeg te lezen en als ik er niet uit kom meld ik me weer.
Grtjs
Dick
Beste Wim,
Dank nogmaals. Een heleboel te absorberen maar wel erg mooi verwerkt en uitgebreid. Voor een “novice user” even een paar ophelderingen:
Ik heb inderdaad de DSMR bedraad aan m’n PC hangen. Begrijp ik het dus goed dat in dat geval niets anders nodig is dan het gebruik van de ” ESP8266 Sketch Dat Upload commando. Dus geen navolgende “Upload” commando van de Arduino IDE (knop naast de Verify knop). Ik neem tevens aan dat “Hard resetting via RTS pin message inhoudt dat ik de reset van de DSMR board moet indrukken.
Als voorstaande compleet is dan begrijp ik dat de .spiffs.bin slechts betrekking hebben op de OTA flash.
Ik hoop dat ik hiermede juist zit.
Grtjs Dick
Hi Dick,
Dat klopt helemaal. Als je bedraad flashed hoef je niets speciaals te doen. Als OTA spiffs wil flashen moet je uitzoeken waar de IDE het spiffs.bin file heeft neergezet. In de documentatie staat precies hoe je daar achter kunt komen (standaard zet de IDE dat telkens ergens anders neer).
“Hard reset” betekent inderdaad dat je op de reset knop van de DSMR-logger moet drukken.
Hallo Willem, tot nu toe heb ik versie 1.03 gebruikt en dat loopt prima. Met de update naar versie 1.0.5 heb ik een probleem met de MQTT info. De struktuur is is veranderd door de Json strings en daar staat nu het topic dubbel in. Dat is natuurlijk wel oplosbaar, maar daarvoor zou ik in de testversie ook graag de MQTT signalen hebben. In v1.0.3 lukte dat door een extra sendMQTTData in has_no_meter.h op te nemen. Maar in v1.0.5 werkt dat niet. Heb jij daar een oplossing voor?
Vriendelijke groet,
Dick
Hi Dick,
Ik zou, als je toch aan het updaten bent, overstappen op de restAPI versie.
Zie deze post.
Ik denk niet dat het topic dubbel in de MQTT berichten staat. Per veld uit de Slimme Meter is er een topic. De inhoud van het bijbehorende bericht is een json string. In die json string staat ook weer de “name” van het veld (en de value en eventueel een unit).
Anyway: de structuur van de MQTT berichten staat nu vast en zal in nieuw versies van de DSMRloggerAPI firmware niet meer veranderen.
Beste Willem, Dank voor snelle reactie. Ik ben inmiddels verder hetgeen gerealiseerd is door versie ESP8266FS-0.5.0.zip te laden (voorheen versie 4). Zo te zien draait alles nu perfect en ben in de FSexplorer ESP folder van de DSMR logger. Ik probeerde “Update Firmware” uit maar stuit op het probleem dat bij het kiezen van “Choose File” van het DSMR-logger Flash utility, ik niet zou wteen waar de xx.spiffs.bin files staan. Heb ik iets over het hoofd gezien dat nog apart gedownload moet worden?
Grtjs
Dick
Beste Dick,
Heb je dit gelezen?
Heb je de firmware ook met de Update Server ([Update Firmware]) ge-flashed?
Als je dat “bedraad” hebt gedaan kun je het SPIFFS ook het makkelijkste bedraad flashen.
Heb je dit trouwens gelezen?
Met Arduino IDE 1.8.12 onder Windows 10 compiled de DSMRLoggerWS zonder fouten. Echter, het succes verhaal stopt bij “Firmware Bedraad Flashen. De foutmelding die ik krijg na het commando ESP8266 Sketch Data Upload is “SPIFFS Create Failed!”
Ik gebruik een FT232R USB to Serial/TTL Interface Module welke is aangesloten overeenkomstig het hoofdstuk “USB to TTL Serial adaptor kabel”.
Is iemand die mij mogelijk op weg kan helpen hoe e.e.a. op te lossen.
Beste Dick,
Heb je toevallig het Serial Console open staan?
Weet jij toevallig welke DSRM versie mijn meter is (Iskra AM550-ED1.01)? En of deze voldoende stroom levert onderstaand bordje van stroom te voorzien?
DSMR-logger v4.5
Hoi Bas,
Heb je de uitvoerige documentatie van de DSMR-logger gelezen?
De enige eis aan de Slimme Meter is dat hij de minimaal aan de DSMR 4.0 standaard voldoet.
Als je wat Googelt kun je vinden dat jouw meter met de DSMR 5.0 standaard werkt.
Ik verwacht dan ook geen problemen. In het érgste geval moet je een externe USB voeding gebruiken, maar dat verwacht ik met deze combinatie niet.
Hi Willem,
Ik had wel wat uurtjes zitten zoeken, maar ik ben nieuw in het veld, mogelijk dingen verkeerd begrepen of verkeerde zoektermen 🙂
Bedankt voor je snelle reactie!!!
Groet.
Harrie,
Dat moet je niet aan mij vragen 😉 ik heb geen idee of iemand dat doet.
Er zijn twee niet gebruikte GPIO pinnen (zoals je in het schema kunt zien) n.l. GPIO14 en GPIO16. GPIO16 is “hoog” tijdens het opstarten. Ik denk dat GPIO14 de beste keuze is.
Ik ben trouwens wel benieuwd waarom je de temperatuur in de meterkast wilt weten.
Willem,
Niet in de meterkast, maar er zit een sensor achter de deurbel, dus buiten 🙂
Hi Willem,
Is er iemand die de stroom meet van de zonnecellen, en die verwerkt heeft in het programma?
En nog een vraag: Is er nog een vrije pin voor een DS18B20 temperatuursensor?
Hi Willem,
Ik gebruik de DSMR software nu een week naar alle tevredenheid.
Wat mij opviel is dat in het Actueel overzicht geen weergave is van de actuele GAS verbruik, dan enkel de actuele meterstand. Van de elektriciteit verbruik is wel een actuele weergave.
Is het mogelijk om ook de actuele gas verbruik weer te geven?
Mvrg,
Ronald
Ronald,
De Slimme Meter geeft geen actueel gas verbruik. Dat moet je dus zelf berekenen aan de hand van de vorige stand en de actuele stand.
Actueel_Verbruik = Meterstand(t) – Meterstand(t-1);
De standaard GUI van de nieuwe DSMRloggerAPI firmware laat het actuele verbruik in de chart zien.. nog even wachten dus.
Ik had de volgende structuur eerst:
Arduino
– DSMLoggerWS ( alles gekopieerd vanuit github)
– libraries
– tools
Nu heb ik:
Arduino
– DSMLoggerWS ( alles gekopieerd vanuit github)
– libraries
– tools
– data ( gekopieerd van de DSMLoggerWS folder)
Dit laatste leek de oplossing te zijn dus. Ik had verwacht dat hij standaard de data folder zou herkennen van het DSMLoggerWS project. Dit lijkt in mijn geval dus niet zo te zijn.
De logger is nu wel benaderbaar op het adres. Ik heb nogmaals een reset uitgevoerd en de data folder heb ik in de root folder gezet van het Arduino project. Nu kan ik op het ipadres alles weer benaderen. Bedankt Willem. Enig idee hoe het kan dat ik voorheen dit via dsmr-ws.local kon gebruiken en het nu alleen werkt via het ip-adres? Moet ik een dns instelling nog ergens doen?
Ik heb niet zo snel een idee.
In ieder geval heb je de firmware niet goed van github gehaald anders zou de data-map automatisch in de root-directory van je DSMRloggerWS project hebben gestaan.
Ronald (zie de comments) had ook problemen met mDSN en hij heeft dat weten te isoleren door het mee compileren -of niet- van een OLED scherm. Ik heb nog geen tijd gehad om dat verder te onderzoeken.
Bij de standaard geïnstalleerd firmware is de code voor een OLED scherm mee gecompileerd. Je kunt dus nog even proberen of dat voor jou ook de oplossing is.
Nee de logger is niet benaderbaar op 192.168.2.39 in mijn geval. De DSMR-logger deed het wel goed, behalve de problemen met de API. Vandaar de keuze uiteindelijk om te upgraden. Het IP is wel zichtbaar in mijn router.
Dankje Willem. Met deze versie en een reset werkt het wel gelukkig. Zowel de firmware , reset, data upload tool zijn nu gelukt. Vervolgens kies ik een netwerk en dan blijft hij 4x knipperen. De website http://dsmr-ws.local/ is niet bereikbaar. Wat kan ik nu nog doen? Het zou toch moeten werken?
Kun je de DSMR-logger via het IP adres benaderen?
Heeft de DSMR-logger met de originele (geïnstalleerde) firmware wel gewerkt?
Ik heb even gegoogled en kom hier uit.
Hier vind je de laatste (officiële) releases van dit data-upload tool.
Ik gebruik versie 0.5.0 en die werkt met de esp8266 core versie 2.6.2 en 2.6.3.
Mijn Arduino IDE zit op versie 1.8.10
Ik hoop dat jullie hier mee uit de voeten kunnen.
Met versie 0.5.0 werkt het !!, bedankt
Hi Willem,
Ook ik heb hetzelfde probleem als Hilbert en Chris
“esptool: error: unrecognized arguments: –end”
De update en FSexplorer kan ik niet bereiken.
ESP8266FS-0.4.0.zip is de versie die ik geïnstalleerd heb, en dat zou de laatste versie zijn
Ik snap niet hoe ik nu verder moet ???
Hoi Willem,
Het flashen van de firmware is gelukt, echter het uploaden via de Data upload tool werkt niet.
Ik krijg de volgende melding:
Het gaat om versie #define _FW_VERSION “v1.0.5 (09-01-2020)”
Weet jij wat er fout gaat? Ik heb een bord via OpenCircuit.nl compleet gekocht zo.
Hilbert,
Volgens mij heb je hetzelfde probleem als Chris. (zie hier).
Google op “esptool: error: unrecognized arguments: –end” geeft dit resultaat.
Kun je wel de update pagina bereiken (http://dsmr-ws.local/update)?
Of de FSexplorer (http://dsmr-ws.local/FSexplorer)?
Als dat lukt kun je proberen de files in de data-map handmatig te uploaden.
Hi Willem,
Ik heb het e.e.a. opgebouwd met een ESP-12E op een breakout board gesoldeerd. Voor het geheel een enkelzijdige printplaat ontworpen. GPIO 12 omgezet naar GPIO 15. Geheel werkt super!!! Bij gaand 2 foto’s van de print.
Vraagje m.b.t. de web pagina’s. Ik merk dat in Microsoft Edge en IE-11 de tabellen niet netjes uitlijnen. Chrome en Firefox is het wel goed.
Ander vraagje, ik heb last dat vaak de mDNS responder niet start. Van de 10x wil hij 8x niet starten. Enig ide wat dit zou kunnen veroorzaken?
Groet,
Ronald
Koperzijde
Mooi gemaakt!
Waarom heb je GPIO12 omgezet naar GPIO15?
Microsoft Edge is van, nou ja, Microsoft 🙁
Geen idee waarom dat niet compatible is met de andere browsers maar compatibiliteits problemen komen bij meer Microsoft producten voor. Mijn advies: niet gebruiken.
mDNS is een protocol dat op bijna ieder netwerk “werkt”. Wel blokkeren veel WiFi repeaters dit protocol. Waarom het dan soms wel en soms niet werkt weet ik niet.
Binnenkort geven we de nieuwe firmware vrij. Deze is helemaal opnieuw ontworpen om de DSMR-logger via restAPI’s te ontsluiten. Er zit ook een GUI bij, maar die draait helemaal in de browser en is vooral bedoelt om anderen uit te dagen zelf mooie GUI’s te ontwikkelen. Arjan de Jong is bijvoorbeeld al met een héle mooie GUI bezig.
GPIO15 kwam qua pcb routering beter uit. Moest anders een draadbrug maken en dat vond ik minder mooi. PCB’s met de handtekenen vergt altijd wat meer ruimte, vandaar de wat ruime opzet.
Oudere DSMR versie op de ESP-01S gaat mDSN wel goed. Wellicht iets met mijn ESP-12E. We gaan verder zoeken.
Gaaf die nieuwe look and feel.!
Dank voor al je mooie werk.
Groet,
Ronald
Hi Willem,
Lijkt er op dat ik het probleem met de mDNS heb gevonden.
Ik gebruikte nog geen OLED display, dus dat had ik gedisabled, //#define HAS_OLED_SSD1306. Vandaag kwam toevallig de SSD1306 binnen. Compileer de firmware opnieuw met de OLED enabled.
Bij reboot zie ik gelijk dat de mDNS opstart. Enkele keren gerest, mDNS blijft het netjes doen. Denk das gek… dus gecompileerd zonder de OLED en ja hoor, mDNS werkt niet meer. 4x met en zonder OLED gecompileerd om zeker te zijn. Blijkbaar door het enable van de OLED wordt er nog iets extra’s gedaan, delay of zo???, waardoor de mDNS het doet.
Mvrg,
Ronald
Hm… vreemd ..
Bedankt voor het doorgeven!
Ik ga ernaar kijken.
Hoi Willem,
Het uploaden van de laatste versie is fout gegaan ( over the air). Ik kan nu http://dsmr-ws.local bv niet meer benaderen en ik zie het ip-adres ook niet meer bij mijn router. Ik heb de meter gekocht via opencircuit.nl. Ik denk dat ik de logger via hardware moet flashen weer? Wat heb ik hiervoor nodig? via https://mrwheel.github.io/DSMRloggerWS/hardware_V4_Programmer/ zie ik zoveel opties dat ik niet weet of ik dit allemaal nodig heb of dat 1 van de opties de manier is? Wat is het eenvoudigste om te doen?
Alvast bedankt!
Groeten, Hilbert
Hilbert,
Wat vervelend dat het uploaden fout is gegaan. Heb je enig idee wát er niet goed is gegaan?
Ik gebruik voor de DSMR-logger meestal deze programmer. Let er dan wél op dat je de rode draad op de 5 volt pin (naast de RJ11 jack) aansluit. GND (zwarte draad) kun je op de GND naast de 5Volt aansluiten óf op de programmer port naast de 3v3 pin. De groende en witte draad is altijd even uitzoeken. Als je een time-out krijgt tijdens het flashen dan moet je groen en wit omdraaien.
Succes!
Dankje Willem. Het laden van de nieuwe firmware leek niet te gebeuren en elke pagina reageerde ook niet meer. Uiteindelijk maar uit gezet aangezien de logger toch niet te bereiken was.De enige reden om te upgraden naar de laatste firmware ( 1.03 -> 1.05) was trouwens dat de API niet meer werkte. Ken je dit probleem? Ik zal de programmer kopen. Via Arduino.ide kan je dit dan eenvoudig upgraden?
Bedankt!
Hi
Ik heb vandaag je bordje via opencircuit binnen gekregen ea netjes aangesloten op mn iskra meter maar geen enkele vorm van data. Dit terwijl mn homewizard kastje wel netjes ea ontvangt.. Enig idee wat er mis kan zijn?
Hi Martin,
Heb je dit gelezen?
Ik heb er door heen gescanned maar niet de reden kunnen vinden…
Beste Willem
Dank voor de 1.04 firmware!
Tip voor het upgrade proces: als er een volgorde is voor het uploaden van de 2 bin bestanden, dan lijkt het logisch om de velden op de upload pagina ook in die volgorde te zetten. Nu staat ino.bin als eerste terwijl die als laatste aangeboden moet worden.
Als beide bestanden vereist zijn dan misschien zelfs met een stap 1 en stap 2 label?
Groet,
OWK
OWK,
Bedankt voor de tip. Ik ga ermee aan de slag!
Hi Willem,
Ik ben bezig om je project na te bouwen en hiervoor een print te ontwerpen waarop de ESP-12E via een adapterboard geplaatst kan worden.
Om de pcb routing te vergemakkelijken wil ik graag GPIO12 vervangen voor GPIO15. Is het voldoende om in de software bij DTR_ENABLE 12 voor 15 te vervangen?
Andere vraag, ik kan nergens in de software de setting voor GPIO13 vinden. Waar wordt die gedefineerd?
Alvast dank voor je reactie.
Groet,
Ronald
@Ronald,
Je kunt GPIO12 vervangen door GPIO15, maar bedenk wel dat GPIO15 tijdens het opstarten “laag” moet zijn!
GPIO13 wordt door het swap() commando gebruikt als seriële RXD poort. De ESP8266 core zorgt voor de juiste instellingen.
Hi Willem,
Dank voor je snelle respons.
Mvrg
Ronald
Gelukt! 🙂
Hoi Willem,
Voor de zekerheid mijn Tektronix oscilloscoop mar eens aan de P1 poort gehangen. Tot mijn verbazing zag ik geen data voorbij komen. na wat meting op de interface en aan het kabeltje naar de P1 poort constateerde ik dat daar de RTS niet contact maakte, dus ook geen Data kon spugen op de data pin! nadat ik dat probleem had verholpen kreeg ik zowaar data uit op mijn notebookscherm. Toch wil ik graag overstappen op jouw DSMRloggerWS versie om dat ik zag dat daar hiermee ook MQTT rapporten kunnen worden verstuurd, en aangezien ik met Domoticz werk lijkt me dat niet verkeerd. Ik ga mij eens verdiepen in jouw DSMRloggerWS en even een nieuwe interface bouwen. Heb ook sterke twijfels of wat er in mijn scherm verschijnt wel klopt. In de snapshots zie je wat ik in mijn scherm te zien krijg.
En nog een snapshotje
Fokke,
Waarom denk je dat het niet klopt?
Ik krijg bij het compileren van de V4 sketch een heel aantal foutmeldingen die ik niet kan thuis brengen.
Fokke,
Het is wél handig als je de, best wel uitvoerige, documentatie leest. Er staat écht héél duidelijk dat je de esp8266 core 2.5.2 moet gebruiken.
Ah ja, inderdaad! had ik wel gelezen, maar vergeten weer te downgraden… sorry. Ga ik direct doen. 😉
Beste Willem,
Ik heb jouw Slimme Meter project opgepakt. D e hardware was appeltje-eitje. Met de software ondervind ik echter problemen. De sketch heb ik met succes kunnen uploaden en ook daarna via de webbrowser kunnen configureren in mijn netwerk. Maar ik krijg geen data binnen waarschijnlijk omdat ik de SPIFFS nog niet had geflashed. Het probleem ontstaat bij het flashen van de SPIFFS. Na wat Googlen bleek dat er veel hobbyisten problemen hebben met het flashen van de ESP8266 of ESP-01 na update van het ESP8266 board in Arduino-IDE. De aanbevolen downgrades naar ESP8266 2.5.1. heeft geen positieve uitwerking. Inmiddels dan ook weer geupdate naar de laatste versie. Ondanks dat blijf ik de foutmelding SPIFFS upload failed! behouden. De bestanden staan in de juiste directories en de compoort communicatie loopt volgensmij ook goed. Ik weet het ff niet meer. Zou je mij verder kunnen/willen helpen?
Fokke, natuurlijk wil ik je verder helpen maar of ik dat ook kán ..
De laatste versie van de DSMRloggerWS firmware is getest met de Arduino IDE versie 1.8.10 en ESP8266 core 2.5.2. Ik zou die dan ook gebruiken. Ondertussen zijn er wat updates van het
esptool.py
verschenen. De DSMRloggerWS documentatie verwijst naar versie 4, wellicht dat je meer geluk hebt met een nieuwere versie. Je kunt er hier één uitkiezen.Dat je geen data binnenkrijgt heeft waarschijnlijk niet zoveel met SPIFFS te maken al zal de DSMR-logger zonder SPIFFS wel moeite hebben met het wegschrijven van de bestanden ;-). Heb je de instellingen voor SPIFFS wel goed staan (1MB / 256kB SPIFFS voor een Versie 3 DSMR-logger/ESP-01)? Sluit je ook de Serial Monitor van de IDE af vóórdat je SPIFFS probeert te flashen?
Wat bedoel je met “de COM poort communicatie loopt goed“? Bedoel je telnet? Via de COM poort kun je alleen de eerste boodschappen zien, tot dat de Slimme Meter enabled wordt geloof ik.
Als je nog meer hulp nodig hebt moet je ook wat meer informatie geven. Bijvoorbeeld de uitvoer van telnet als je “b”, “s” en “f” intoetst. Eventueel kun je met “p” ook kijken of er überhaupt telegrammen binnen komen. Maak er overigens géén plaatjes van. Die zijn niet of nauwelijks te lezen! Gewoon de uitvoer als tekst is veel leesbaarder!
——-
Ok, ik zie nu pas dat je met DSMRloggerHTML werkt. Die kan met wat minder SPIFFS toe (al zou ik ook voor deze versie SPIFFS op 256kB zetten). Aan de melding die je krijgt te zien denk ik dat je de Serial Monitor niet hebt afgesloten. Met de Serial Monitor “open” lukt SPIFFS flashen niet!
Hallo Willem,
De serial monitor staat niet open hoor. Daar heb jij in jouw artikel ook nog nadrukkelijk op gewezen.
Ik krijg nu nog steeds het onderstaande rapport:
Fokke,
Dank voor de extra info. Het probleem is dat ik al heel lang niets meer met DSMRloggr2HTTP heb gedaan.
De timeout zou erop kunnen wijzen dat het esptool geen verbinding met de ESP-01 kan maken.
Ik zie wel dat je de esp8266 core 2.6.3 gebruikt…. Krijg je daar de DSMRlogger2HTTP firmware mee gecompileerd?
Is er een reden waarom je niet overstapt naar DSMRloggerWS? Die heeft wat meer mogelijkheden en de firmware is ook met wat recentere tools (Arduino IDE 1.8.10, esp8266 core 2.5.2) getest.
Dag Willem,
De meters zijn hier ongeveer 1,5 maand geleden geinstalleerd.
Elektriciteitsmeter is een Sagemcom S211 (1-fasig) en de gasmeter een Flonidan Uniflo G4SRTV. Dit zijn de meters die Fluvius momenteel in België installeerd bij hun klanten. Na wat opzoekwerk online ben ik op een document terechtgekomen die vermeld dat de gebruikerspoort ingericht is vlg het Nederlands concept. nl. 5.0.2 P1 companion standard.
Ik heb ondertussen wel gevonden welk bestand ik zou moeten aanpassen van die DSMR bibliotheek, maar ik heb de aanpassingen nog niet uitgevoerd. Ben momenteel nog wat in de handleidingen van die DSMR5.0.2 aan het lezen. Misschien dat ik nog andere aanpassingen aan die bibliotheken zou moeten doen?
Alvast bedankt voor uw antwoord
Mvg
Hellinx Johan
Johan,
Ik heb zelf ook de dsmr-bibliotheek aangepast, en staat gecommit in een fork (https://github.com/pdemeyer/arduino-dsmr), met een pull-request naar de repo van Matthijs. De gasmeting wordt ingelezen via “gas_delivered_non_temp_converted” ipv “gas_delivered”. In de dsmr-logger moet je niets aanpassen. Er komen automatisch nieuwe MQTT topics bij.
Hey,
Wat een knap project. Ik heb zonet de V4.5 ontvangen en geinstalleerd in BE op een meter van Fluvius. Elektriciteitsdata komt dadelijk binnen en werkt perfect.
Maar bij de gas zit ik wel met een probleem. Deze data komt niet correct binnen.
Restapi Get actuel geeft me hetvolgende: (Dus 0 voor gas)
Maar als ik dan via telnet connecteer en hier P ingeef, krijg ik dit:
Op de laatste regel zie ik hier wel de gasmeterstand, (385.264) maar deze zie ik dus niet in de DSMR logger.
Hier ook nog even de Devinfo via restapi
Heb je enig idee hoe ik die gaswaarde wel kan zien in de DSMR logger?
Alvast bedankt
Johan,
Je meter geeft deze obis-id af voor de gas meting:
Terwijl de dsmr bibliotheek deze verwacht:
Er zit niets anders op dan de dsmr bibliotheek hierop aan te passen …
Nu ik er wat beter naar kijk.. is het wel een Slimme Meter met dsmr 4.0 of hoger?
Ik mis allerhande informatie zoals, o.a., de P1 versie! Ook de power_delivered_l1/2/3 zijn “0” terwijl power_delivered niet nul is…
Dag Willem,
De DSMR v4.5 logger werkt na enkele wijzigingen perfect met de Belgische slimme meters van Fluvius. Elektriciteitsmeter is een Sagemcom S211 (1-fasig) en de gasmeter een Flonidan Uniflo G4SRTV.
De wijzigingen die ik uitgevoerd heb zijn de volgende:
– RJ12 werkt niet. Krijgt niet voldoende van de Slimme meter; via een externe voeding gaat het natuurlijk wel.
– De DSMR bibliotheek heb ik inderdaad wat moeten aanpassen. (Enkel de fields.h)
– Dan de firmware opnieuw compileren met de optie SM_HAS_NO_FASE_INFO actief en OTA uploaden naar de DSMR.
Hierna werkt alles wel ok.
Mvg
@Johan,
Wat fijn om te lezen. Je bent zelf best ver de diepte in gegaan begrijp ik!!!
Wel vreemd dat de SM niet voldoende stroom levert. In de specificatie staat toch écht dat hij 250mA moet leveren en pas bij 300mA mag stoppen. Zoveel trekt de DSMR-logger écht niet!
Hey Willem,
Ik heb net nog eens geprobeerd met een andere RJ12 kabel en met deze werkt het wel.
Ik heb ook de oude kabel eens doorgetest met een tester en ja pin 6 maakte geen verbinding, dus het werkt wel degelijk met een RJ12. Ik had gewoon een slechte kabel…
Hallo Johan,
Ik heb zelf ook een nieuwe electriciteitsmeter van Fluvius. Welke wijzigingen heb je precies gemaakt? Zou je die beschikbaar willen maken. Het liefst gecompileerde firmware zodat de logger ook voor belgische klanten van Fluvius werkt? Bij voorbaat dank.
@Willem, staat ondersteuning voor onze belgische meter al op de ‘roadmap’ voor een volgende versie?
@Dennis,
Er zijn een aantal mensen die de arduino-dsmr library hebben aangepast voor de Belgische “Slimme Meter”. Omdat ik dat niet kan testen wil ik ook geen binary’s daarvan beschikbaar stellen. Wellicht dat één van de mensen die deze aanpassingen hebben gemaakt een binary voor je wil maken. Je moet daarvoor zelf contact met ze opnemen.
@dennis,
Ik heb de library die zou moeten werken voor je. Kan jij die dan uitproberen (ik woon in NL) en dat terug melden. Als dat werkt, dan kan ik namelijk voor firmware 1.04 het zo maken dat het werkt in Belgie.
Groet
Robert
Hallo Robert,
Ik wil graag helpen met het testen van de firmware.
Groet,
Dennis.
Geweldig project l; software, hardware, documentatie, uitleg ziet er allemaal goed verzorgd uit, compliment. Nog wel paar zaken om eens naar te kijken aub.
gebruik esp12 maar versie 2.5.0 geeft compiler fouten. 2.5.2 compileert wel zonder problemen (wel een waarschuwing). Lastige is dat 2.5.2 niet toe staat dat de flash via een usb kabel wordt gedaan. bug vanaf 2.5.1 en dat is weer 0pgelost ergens in 2.6.x en tot 2.5.0 moet het ook werken.
Wil de wifi SSID wijzigen, maar …….. als er iets mis gaat kan ik er niet meer in met de huidige 2.5.2 versie en kan ik ook niets meer via OTA wijzigen. Zag ook dat het access point niet meer opkomt als de wifi verbinding uitvalt ; had eigenlijk gehoopt dat dit zou gebeuren zodat ik daarmee de wijziging kon aanbrengen.
Zou goed zijn als er weer een mogelijkheid komt om via usb te flashen, dan gaat het altijd goed. Mogelijk snelst om even te checken waarom versie 2.5.0 mis gaat?
Frans,
Dank voor het compliment.
Je kunt het beste esp8266 core 2.5.2 gebruiken. Daar is de laatste firmware mee ontwikkelt. Core 2.6.n compileert niet.
Ik snap niet hoe je erbij komt dat de firmware met core 2.5.2 niet via USB te flashen is. Ik doe dat regelmatig zonder problemen (met een USB naar tty adaptor of een eenvoudige programmer).
Als de DSMRloggerWS geen verbinding met WiFi kan maken start hij automatisch een AP op waar je de (nieuwe) credentials kunt invoeren.
Upload via de update server werkt ook prima (als je een WiFi verbinding hebt).
Als je de WiFi credentials wilt verwijderen kun je inloggen met telnet en dan de optie “W” (hoofdletter!) selecteren.
Misschien moet je duidelijker beschrijven wat je probleem is.
Na het upgraden naar 1.0.4 krijg ik de waardes niet meer te zien in Home Assistant. Is er misschien iets mis/veranderd met de MQTT berichten?
Jochem,
Inderdaad, de structuur van de berichten is veranderd. Ik moet de documentatie daar nog op aanpassen.
De Json string per rubriek ziet er nu zo uit:
hmm ok, ik weet zelf niet hoe ik dit aan moet passen. Ik weet hier te weinig van. Enig idee wanneer de documentatie aangepast is. Of kun je kort zeggen wat ik moet veranderen?
Ceriel,
Ik heb er zelf voor gekozen om alle data te loggen op het maximale resolutie, dat is elke 10 seconden. De logger zorgt voor betrouwbare MQTT berichten. Die kan je dan oppikken met je favoriete oplossing. In mijn geval, Home Assistant, en dan weer door InfluxDB uitlezen, zodat je een database opbouwt met de hoogst mogelijke resolutie.
Ik besef me dat je dan wat meer nodig hebt dan de DSMR logger, maar goed, het is wel hoe ik het oplos. Het feit dat dat de DSMR logger betrouwbaar data logt, MQTT aanmaakt en via Wifi uitleesbaar was is voor mij de reden geweest om Willem’s project te gebruiken.
Groet,
Robert
Hoi Robert,
Bedankt voor jouw suggestie. Na het teruglezen van eerdere post was ik hem al tegengekomen: de Pi met Home Assistant plus InfluxDB plus Grafana. Lijkt dit op de manier zoals jij Grafana aan de praat krijgt? Of die je dat compleet anders?
Groeten, Ceriel
PS Willem: Dropboxen en (i)Clouds gebruik ik bewust niet.
Willem, wat ik mij verder nog afvraag: heb je een schakelende DC DC conversie overwogen (zoals 300mA TPS62240 of 600mA TPS62260) in plaats van een LDO (MCP1700-3302E)?
Bij 90% efficiëntie levert dat continu 0,250 × 5 × 0,9 = 1,125W ÷ 3,3 ≍ 341 mA op 3.3V
Ceriel,
Bedankt voor het compliment!
Eén data record is 80 bytes. Er is ongeveer 800kb vrij op het SPIFFS. Dus ruimte is het probleem niet.
Wat wel een probleem is, is de bestands-structuur. Zoals die in de webSocket firmware is opgezet is het niet aan te raden langere periodes op te slaan.
Bij de firmware die ik nu aan het ontwikkelen ben is het eenvoudig één define in de code waarmee je kunt aangeven hoeveel metingen je wilt vastleggen en dat werkt snel en efficiënt. Daarnaast kun je via api’s alles wat er uit de Slimme Meter komt opvragen. Als jouw meter die spanning en stroom per fase afgeeft kun je die dus ook via een api opvragen. Eventueel de bestandsstructuur (met die extra velden) aanpassen wordt in de nieuwe firmware ook vrij eenvoudig..
.. maar ik ben nog in een héél prematuur stadium met de ontwikkeling. Gaat nog wel twee a drie maanden duren. Eventueel kun je de ontwikkel versie natuurlijk zelf al van github halen.
Op github heb ik ook een library gezet waarmee je gegevens kunt loggen. Die zou je voor die uitzonderingen mooi kunnen gebruiken!
De Slimme Meter levert maximaal 250mA bij 5 volt. De ESP8266 vraagt maximaal 200mA á 250mA tijdens het aanmelden bij een WiFi AP. Normaal gebruik is zo’n 80mA. De LDO is goedkoop en ruim bemeten voor zijn taak.
Met 80 bytes en 800kb kom ik op ruim 10.000 records. Bij één record per dag komt dat overeen met ruim 28 jaar. Mijn doel is 16 jaar historie, dus dat gaat lukken met wat extra ruimte voor aggregatie per maand, wat recente details per kwartier, en nog wat excepties. Voor echt veel historische details te bewaren, is er een andere oplossing nodig.
Ceriel,
Toch denk ik niet dat de DSMR-logger/ESP8266 geschikt is om dit in zijn eentje te doen. Ik neem tenminste aan dat je ook nog iets met die historische gegevens wilt dóen. Dan kun je beter de data beperkt op de DSMR-logger bewaren (bijv. een uur/week/maand) en via een api call de aanwezige historie automatisch naar een echte computer uploaden en daar de bewerkingen doen en de data naar de cloud kopieëren (iCloud, DropBox you name is).
Anyway: mogelijkheden zat.
Hoi Willem, een mooi project vindt ik dit. Met name de keuze om het bord bus-powered te maken. Zelf zou ik wat telegramdata uit een 3-fase Sagemcom T210-D willen bewaren. Het gaat om een meter van een PV-productieinstallatie, dus gasverbruik is niet aan de orde.
De schermafbeeldingen lijken slechts met één jaar te vergelijken. Ik wil graag (1) meer historie qua jaren bewaren en (2) uitzonderingen, zoals spanning buiten -10 en +15% en fasestroom > 80A, met detailtijdstempel loggen. En deze data ook nog via de webinterface toegankelijk maken, zonder dat iemand kan schrijven (alleen lezen).
Kun je een idee geven met welke snelheid met hw 4.5 + sw 1.0.4 het 940 kB bestandsysteem vol loopt? Oftewel hoeveel jaar historie past er in de opslagruimte bij jouw standaard opzet?
Upgraden naar de DSMRloggerWS v1.0.4 firmware.
================================================
Er zijn drie manieren om vanaf versie v0.4.7 of hoger te upgraden naar v1.0.4
1)
Via de upload firmware pagina kun je zowel het SPIFFS filesysteem (..spiffs.bin) alsook de firmware (..ino.bin) flashen. Wél in deze volgorde want de firmware heeft bestanden die op het filesysteem staan nodig!
Nadeel van deze methode is dat je de historische bestanden kwijt raakt.
2)
Als 1 alleen download je eerst de PRD..csv bestanden (3 bestanden) naar je computer. Na het flashen van SPIFFS en de firmware upload je de 3 bestanden weer naar de DSMR-logger. Niet vergeten direct na het uploaden van de 3 bestanden de DSMR-logger resetten!
3)
Je flashed alleen de ..ino.bin firmware en upload daarna alle .html, .js en .css bestanden uit de data-map naar de DSMR-logger. De aanwezige PRD..csv bestanden laat je ongemoeid. Niet vergeten na het uploaden van alle bestanden de DSMR-logger te resetten!
Om te beginnen wensen wij iedereen een mooie jaarwisseling. Happy 2020!
En eindelijk!
Versie v1.0.4 van de DSMRloggerWS firmware is gereleased.
Wij raden iedereen aan om naar deze release over te stappen omdat we erg ons best hebben gedaan om het geheugenbeslag van deze release te verkleinen, wat de stabiliteit ten goed komt! Tevens is er standaard een integratie met Mindergas.nl toegevoegd.
Dit is ook meteen de láátste DSMR firmware die op webSockets is gebaseerd.
Alle files van deze versie (inclusief de binaries) kun je hier vinden.
Bekijk ook de aangepaste documentatie!
API’s zijn de toekomst en in het nieuwe jaar gaan we druk aan de slag met een versie die helemaal uit te vragen en te configureren wordt via restAPI’s.
Hoi Willem,
Bedankt voor je reactie IK wacht op V1.0.4. MQTT ken ik niet
Groeten
George,
V1.0.4 is nog niet de versie die helemaal met api’s communiceert.
Ik moest de firmware zelf compilen, omdat ik een oudere meter heb. Het is me gelukt om de dsmr logger te verbinden en ik krijg data.
Alleen staat in het info scherm
Free Heap 7264 / max.Blck 5920 te laag!
in het rood. Wat kan ik daar aan doen?
Jochem,
Als de freeheap zo laag blijft zou je de opties die je niet nodig hebt uit kunnen schakelen.
De nieuwste versie die einde 2019 uitkomt is geoptimaliseerd om meer heap space vrij te maken.
Ok, bedankt. Ik zal eens kijken.
Je bedoelt waarschijnlijk de #defines?
Eind 2019 is niet lang meer wachten 😉
Firmware V1.0.4 met MQTT en Mindergas enabled
Hoi Willem.
De logger werkt perfect. Alleen wil ik graag een logbestand (CSV file) over een langere periode per 10 seconden. Is dit mogelijk. ( de overige loggingen zijn dan niet nodig)
Vast bedankt.
Hi George,
In principe is alles mogelijk.
Binnenkort releasen we V1.0.4. Via MQTT kun je alle gegevens uit de Slimme Meter uitlezen. Alleen of dat ook per 10 seconden lukt durf ik niet te garanderen.
Je kunt de firmware natuurlijk helemaal aan je eigen behoefte aanpassen. Als je alles weghaalt wat je niet nodig hebt en alleen de zaken logt die voor jou van belang zijn moet je een heel eind kunnen komen.
Wellicht moet je nog even geduld hebben. Wij zijn op dit moment druk bezig met een re-design waarbij we alle gegevens alleen nog maar via MQTT en api call’s beschikbaar stellen.
George,
De MQTT versie kan elke 10 seconde de Telegrams doorsturen. Dat is het laatste wat je momenteel kan instellen. Je kan dan bijvoorbeeld met MQTT communiceren naar Home Assistant, en als je dat dan combineert met InfluxDB en Grafana, kan je prachtige logs opbouwen van je verbruik en mooie grafieken maken.
Hoi willem,
dat klopt ik bedoel voor het inloggen van de dsmr site dat je daar een pop up krijgt in je browser om in te loggen voor je je gegevens ziet. als je iets met telnet wil bekijken is dat toch wat voor gevorderden, normale mensen weten daar toch niks van:).
ik ben zelf al een beetje bezig geweest alleen kom niet echt uit het programmeer skilss van jouw 😉 ben nog wat een beginner.
zou willem mij daar in kunnen helpen?
dit heb ik gemaakt
Nieuw tablad: Autentication
Groet, Jelmer de Jong
Beste Willem,
Ik heb een vraag,
kan er op het in loggen een authenticatie komen? als je inlogt je een wachtwoord met gebruiker moet invoeren?
zoals: Admin
PassW: admin
als er iemand in je wifi zit kunnen ze zo je gebruiks gegevens inzien:).
misschien een idee voor de volgende update?
Met vriendelijke groet,
Jelmer de Jong
Jelmer,
Telnet is een protocol zonder username en password.
Daarnaast is de ESP8266 niet krachtig genoeg voor een SSH encryptie.
Kleine aanvulling:
Telnet wordt als debug kanaal voor de firmware gebruikt, een soort serial over telnet zeg maar, als je de USB aangesloten zou houden, zou je exact dezelfde output lokaal kunnen zien op je PC via de serialmonitor.
De telnet is vooral bedoeld voor lokale debugging doeleinden (alleen lokaal). We zouden nog een “no-debug” kunnen bedenken, maar dat maakt het ondersteunen van gebruikers weer ingewikkelder.
Het punt is wel dat de logger in je interne netwerk draait, en eigenlijk ook niet afhankelijk moet zijn van beveiligingsfuncties. Kan je uitleggen waartegen je wilt afschermen?
Groet,
Robert
Hoi robbert!
Wou graag dat de website een wachtwoord heeft,
dat er mensen in je netwerk op de wifi zitten dat zij geen toegang kunnen krijgen in jouw verbruik;-)
Hi Jelmer,
Goed idee. Een simpele authenicatie voor de HTTP server zou moeten kunnen. Echter het afschermen met TLS op de 8266 te laten draaien zal moeilijk blijken. De oorzaak is vooral dat er weinig vrij HEAP over is en encryptie nogal een taak is.
Misschien toch maar eens het hardware ontwerp omzetten naar een ESP32.
Robert
Ja dat zat ik ook al te denken! een upgrade naar esp 32.
ik heb het een en andere al geprobeerd maar het lukt mij nog niet.
leuk dat er meer mensen intresse in hebben!
Gr, Jelmer de Jong
Heb het web design ook flink onderhanden genomen!
wil het graag even laten zien maar hoe upload je een foto hier?
Gr Jelmer.
Wat heb je exact aangepast aan het webontwerp?
Hoi Robert,
ik heb de hele style verandert. deze is ook geschikt voor je mobiel nu, hij past automatische de resolutie aan met dag en nachtmodus wat nu helemaal in is op ios devices. daar bij heb ik nog wat extra opties in de code gemaakt en ik ben bezig met een esp32 printplaatje voor die authenicatie.
Wit modus
Grafiek
Beste Willem,
Ik ben met DSMRLogger v4.5 bezig, nog niet aan de slimme meter maar via een usb aan mijn laptop van prik voorzien. Ziet er goed uit.
Om mqtt te testen heb ik de software opnieuw gecompileerd met de optie HAS_NO_METER enabled. Na OTA flashen start de DSMRLogger weer netjes op.
Ik zie dat ik v1.0.4 draai (ipv 1.0.3c) en dat er csv bestanden gevuld worden. Grafiekje verschijnen.
Er gaat echter iets niet goed, de verbinding valt telkens weg en in het debug venstertje krijg ik:
[16:02:51]
[16:02:51] WebSocket(‘ws://192.168.178.42:81/’, [‘arduino’])
[16:02:51] bootsTrap()
[16:02:54] DebugMode checked!
[16:02:56] newTab: tabSettings
[16:03:11] Error: [object Event]
[16:03:11]
[16:03:11] Disconnected!
[16:03:11]
te lezen.
Om de zoveel seconden gaat het blauwe LED weer aan en blijft het even branden. Daarna gaat het weer uit en valt de verbinding weer weg. Het lijkt allemaal heel traag te werken.
Ik kan met wat pogingen wel weer OTA flashen, terug naar v1.0.3c zonder HAS_NO_METER en dan lijkt het weer te werken.
Enig idee wat er fout gaat?
Gr. Erik
Erik,
V1.0.4 is nog in alpha test en niet productie rijp!
Om meer inzicht te krijgen in wat er eventueel fout gaat kun je beter telnet gebruiken.
V1.0.3c (main branch) kun je óók met HAS_NO_METER compileren.
Ik ben wel nieuwsgierig of je dan ook problemen krijgt.
Via een ander command window kun je ook “ping 192.168.178.42” invoeren en dan kun je zien of je een stabiele verbinding hebt (hoe korter de trip tijd is hoe beter)
Ik had V1.0.3c ook met HAS_NO_METER gecompileerd maar ben er niet achter gekomen wat er fout ging. Na verwijderen van de TST bestanden en nogmaals compileren (zonder HAS_OLED_SSD1306) gaat het weer goed.
De ping is redelijk, telnet werkt prima.
Blij dat het weer werkt, nu mqtt nog testen 🙂
Gr. Erik
Hi Erik,
Ik heb zowel de main branch als de alpha branch, met has_no_meter draaien zonder problemen. Het is mij niet helemaal duidelijk de versie die je had zo instabiel was.
Lees dat dit bij jou ook werkt op dit moment. Draait jouw MQTT broker ook weer naar behoren?
Robert,
Ja, nu ik het teruglees was mijn tekst niet heel duidelijk 🙂
Ik merk onder zowel 103c als 104 dat het heel erg traag wordt met HAS_NO_METER en dat ik telkens een disconnect krijg tijdens het testen.
Er stond een bin file (SPIFFS), die heb ik weggehaald en nu lijkt het beter te gaan, ruimte gebrek?
Ik heb de code van 103c wat aangepast om ook bij HAS_NO_METER mqtt berichten te versturen, dat werkt prima.
Gr. Erik
Erik,
Als je het spiffs.bin file op je spiffs filesysteem hebt ge-upload heb je zéker een ruimte probleem. Dat spiffs.bin file is n.l. het hele filesysteem met alle noodzakelijke bestanden daarin .. en 1Mb groot.
De bedoeling is dat je de spiffs.bin naar de DSMR-logger flashed (bedraad of met de updat server via de onderste selectie en flash knoppen!
Beste Willem,
Ik heb de DSMRlogger V4.5 gekregen (de geassembleerde en geprogrammeerde versie). Het lijkt mij een mooie DIY manier om met mijn energie gebruik te kunnen spelen, zeker als ik het later kan combineren met enkele buiten en binnen sensoren. Ik geef meteen toe dat dit nu nog een vergezicht is, want het aansluiten van de DSMRlogger blijkt al weerbarstig. Dit ligt natuurlijk vooral aan mijn kunsten/inzicht die ik met dit kerstproject langzaam wat hoop te ontwikkelen.
1e poging: erg gebeurt na aansluiten niks: wel 5 volt over de buitenste draden van de 6 aderige kabel maar verder nergens spanning. Na tijdje verder doormeten blijkt dat deze versie standaard ingesteld staat op spanning vanuit externe jack en niet vanuit de SM? Klopt dit?
2e poging (na schakeling omzetten van jack naar SM). Rode led gaat kort 1 tel aan, blauw led knippert 1 keer. Verder niks. Als ik op reset knop druk herhaalt dit zich. Geen knipperende lichtjes geen rode led.
Wat mij (te laat) opviel is dat de oled display (die standaard aangeraden wordt op de verkoopsite en waarvan ik dus onterecht dacht dat die wel zou passen) idd de v3v en grnd heeft omgedraaid vergeleken met de voorbeelden hierboven.
Hier zit ik nu even vast. Moet ik me gaan verdiepen in hoe ik de software opnieuw moet gaan uploaden (en daar de tools voor aanschaffen); heb ik door het verkeerd aansluiten van de oled al onherstelbare schade toegebracht, is er misschien nog een switch die ik moet omzetten, of moet ik toch opzoek naar een externe voeding?
Bedankt voor beginnerstips, Ype
Ype,
Het lijkt er inderdaad op dat de voeding van de Slimme Meter zich zelf uitschakelt. Dat het oled scherm de aansluitingen andersom heeft zal zeker niet geholpen hebben. Ik hoop dat er niet iets kappot is gemaakt.
Heb je geprobeerd om de meter te starten zónder oled scherm? Je kunt de sporen onder het PCB bij (ik meen) J2 en J3 onderbreken en dan met jumper draadjes de juiste verbindingen maken.
Geeft de SM ook zonder oled scherm niet voldoende stroom dan is een externe voeding inderdaad noodzakelijk.
De software opnieuw flashen lijkt mij vooralsnog niet aan de orde!
Hallo Willem,
Zelden heb ik zo’n gedegen bouw- en installatieinstructie gezien op internet. Dank!
Inmiddels heb ik de v4 werkend met een nodemcu op een breadboard.
Meest interessant vind ik het actuele verbruik om te kunnen achterhalen wat voor invloed veranderingen en bepaalde apparaten in mijn huis hebben op het verbruik. Ik mis echter het actuele gasverbruik. Uit jouw commentaar maak ik op dat dit verbruik in de telegrammen slechts 1x per 5 minuten wijzigt. Maar dit zou ik al erg waardevol vinden: een volume per 5min. Zou ik dit zichtbaar kunnen krijgen in de “actuele” grafiek? Ik kan enigszins firmware programmeren met de Arduino IDE, maar heb geen ervaring met grafische gebruiksinterfaces programmeren.
Peter,
De gegevens zitten allemaal in de DSMR-logger in de PRD-tabellen. De grafieken worden in de GUI opgebouwd en daar kun je alles in aanpassen of toevoegen. Het zijn de DSMRlogger.html .js en .css bestanden. De meeste graphics zitten in DSMRgraphics.js.
Eat your hart out!
Peter,
Het gasverbruik (meterstand) wordt wel naar de MQTT broker gestuurd. Met MQTT kun jehen dus uit de logger halen.
Hallo Willem,
Dank voor je reacties. Ik ga ermee aan de slag. Ik laat nog weten of het is gelukt.
Hallo Willem,
Ik heb hier in Gent ook een digitale meter gekregen.
Volgens de gevonden documentatie is de P1 interface gebouwd naar het voorbeeld van Nederland.
Ik kan reeds de boodschappen inlezen in een ESP8266 maar met de CRC lukt
het langs geen kanten.
Hier een voorbeeld van een ontvangen bericht:
/FLU5\253769484_A
0-0:96.1.4(50213)
0-0:96.1.1(3153414733313030303638373236)
0-0:1.0.0(191204184601W)
1-0:1.8.1(000050.069*kWh)
1-0:1.8.2(000055.085*kWh)
1-0:2.8.1(000019.870*kWh)
1-0:2.8.2(000005.678*kWh)
0-0:96.14.0(0001)
1-0:1.7.0(00.655*kW)
1-0:2.7.0(00.000*kW)
1-0:32.7.0(225.1*V)
1-0:52.7.0(000.0*V)
1-0:72.7.0(225.7*V)
1-0:31.7.0(001*A)
1-0:51.7.0(002*A)
1-0:71.7.0(001*A)
0-0:96.3.10(1)
0-0:17.0.0(999.9*kW)
1-0:31.4.0(999*A)
0-0:96.13.0()
0-1:24.1.0(003)
0-1:96.1.1(37464C4F32313139303935373430)
0-1:24.4.0(1)
0-1:24.2.3(191204184600W)(00070.043*m3)
!6E84;
Kan u mij een CRC functie geven die de CRC van dit bericht kan controleren.
Als ik mijn bericht in de “dsmr parse” van Matthijs Kooijman stop
https://platformio.org/lib/show/5702/Dsmr/examples
krijg ik enkel:
Error found:
!6E84
^
Checksum mismatch
Met vriendelijke groet,
Willy Verbiest
Willy,
De crc wordt door de dsmr library berekent en vergeleken met de door de Slimme Meter meegestuurde crc.
Waarom zou je die zelf willen berekenen?
Als de door de parser berekende waarde afwijkt van de meegestuurde dan zijn er ergens tekens verloren gegaan en wordt het telegram terecht afgekeurd.
Willem,
Ik krijg steeds een foutmelding met gelijk welk telegram die ik gelogd heb in het parse programma van https://platformio.org/lib/show/5702/Dsmr/examples.
Woensdag heb ik Fluvius gemaild (onze netbeheerder in Vlaanderen) om uitleg over de CRC en zij hebben een testtool om te kijken of de meter een juist CRC berekend.
Ze hebben mij een screendump van de testresultaten opgestuurt.
Zelf met hun voorbeeld uit de screendump bekom ik op alle mogelijke crc programma’s een foutief crc getal.
Hier hun voorbeeld:
/FLU5\253770234_A
0-0:96.1.4(50213)
0-0:96.1.1(3153414731313030303030323331)
0-0:1.0.0(191219105454W)
1-0:1.8.1(000000.915*kWh)
1-0:1.8.2(000001.955*kWh)
1-0:2.8.1(000000.000*kWh)
1-0:2.8.2(000000.030*kWh)
0-0:96.14.0(0001)
1-0:1.7.0(00.000*kW)
1-0:2.7.0(00.000*kW)
1-0:32.7.0(228.3*V)
1-0:31.7.0(000*A)
0-0:96.3.10(1)
0-0:17.0.0(999.9kW)
1-0:31.4.0(999*A)
0-0:96.13.0(466C7576697573)
0-2:24.1.0(003)
0-2:96.1.1(37464C4F32313138303030313237)
0-2:24.4.0(1)
0-2:24.2.3(191219105038W)(00000.003*m3)
!AAC1
Ik laat de code uitrekenen op een ESP8266 en werk met PlatformIO om de code te compileren en te downloaden.
Ik moet niet echt nog zelf de crc uitrekenen maar ben wel op zoek naar waar het foutloopt.
Zonder goede crc is voor mij de P1 telegram waardeloos.
Willy,
Ik weet niet wat je aan het doen bent en wat je opstelling is.
Ik vermoed dat je zelf een telegram kopieert en als invoer gebruikt. Als dat zo is denk er dan aan dat elke regel van een telegram afgesloten moet worden met een CR en LF. Eén verkeerd teken in je telegram maakt dat de CRC verandert. Ook een lege regel bestaat uit minimaal een CR en LF!
Beste Willem,
Ik heb de bestaande const char raw[] definitie uit het parse voorbeeld van Matthijs Kooijman gewijzigd naar het ontvangen telegram van Fluvius en het ziet er zo uit:
// Data to parse (Fluvius mail)
const char raw[] =
“/FLU5\253770234_A\r\n”
“\r\n”
“0-0:96.1.4(50213)\r\n”
“0-0:96.1.1(3153414731313030303030323331)\r\n”
“0-0:1.0.0(191219105454W)\r\n”
“1-0:1.8.1(000000.915*kWh)\r\n”
“1-0:1.8.2(000001.955*kWh)\r\n”
“1-0:2.8.1(000000.000*kWh)\r\n”
“1-0:2.8.2(000000.030*kWh)\r\n”
“0-0:96.14.0(0001)\r\n”
“1-0:1.7.0(00.000*kW)\r\n”
“1-0:2.7.0(00.000*kW)\r\n”
“1-0:32.7.0(228.3*V)\r\n”
“1-0:31.7.0(000*A)\r\n”
“0-0:96.3.10(1)\r\n”
“0-0:17.0.0(999.9kW)\r\n”
“1-0:31.4.0(999*A)\r\n”
“0-0:96.13.0(466C7576697573)\r\n”
“0-2:24.1.0(003)\r\n”
“0-2:96.1.1(37464C4F32313138303030313237)\r\n”
“0-2:24.4.0(1)\r\n”
“0-2:24.2.3(191219105038W)(00000.003*m3)\r\n”
“!AAC1\r\n”;
Dit heb ik ook gedaan voor een ganse reeks van telegrammen die ik zelf heb kunnen loggen alle geven een fout CRC.
Ik vermoed dat Fluvius (Netbeheerder in Vlaanderen) iets gewijzigd heeft aan de CRC berekening zoals die in
Nederland uitgevoerd word en beschreven staat in document:
https://www.netbeheernederland.nl/_upload/Files/Slimme_meter_15_a727fce1f1.pdf (DSMR 5.0.2 P1 companion standard)
The Metering System transmits the data message, as described below, immediately following the activation through the Request signal.
/ X X X 5 Identification CR LF CR LF Data ! CRC CR LF
CRC is a CRC16 value calculated over the preceding characters in the data message (from
“/” to “!” using the polynomial: x16+x15+x2+1). CRC16 uses no XOR in, no XOR out and is
computed with least significant bit first. The value is represented as 4 hexadecimal characters (MSB first).
Uit de dsmr lib van Matthijs Kooijman kan ik de CRC berekening niet achterhalen, deze lib is voor mij moeilijk te begrijpen.
Willy,
Ik zou je graag willen helpen maar daar is deze post niet echt een geschikte plek voor.
Dat jullie provider de CRC berekening zou hebben verandert lijkt mij erg onwaarschijnlijk. De DSMR-logger die hier beschreven staat en die je hier kunt kopen werkt met de meeste Slimme Meters ook in België.
Willy,
Verander deze regel:
“/FLU5\253770234_A\r\n”
In:
“/FLU5\\253770234_A\r\n”
En probeer dan nog eens te parsen.
Een backslash heeft een speciale betekenis.
Beste Willem,
Fantastisch het werkt! Ik heb de originele _crc16_update gebruikt uit (https://github.com/PaulStoffregen/cores/blob/master/teensy3/util/crc16.h)
en de extra \ tegevoegd en bekom het zelfde CRC getal uit als opgestuurd in het P1 telegram van mijn digitale meter (slim is die niet).
Hartelijk bedankt.
Nu was mijn aandacht ook op de \ gevallen daar ik veel ervaring heb in het schrijven van communicatie
programma’s maar normaal wordt er een \ verzonden als er in de data zelf een start (stx) of (etx) stop teken moet verzonden worden.
In PlatformIO stonden na de \ ook de volgende 3 tekens highlighted.
Welke … heeft dat bedacht om een \ op te sturen in de telegram header?
Zeker 4 dagen eraan verloren en testen met 45 polynomials plus testen op websites en reverse-enginering CRC (hackaday.com) zonder succes.
De DSMR-logger lijkt mij een fantastisch produkt echt aan te raden aan vrienden.
Daar mij hobby elektronika en programmeren zijn wil ik wel zelf iets programmeren tussen de digitale meter en mijn ‘Loxone smart home’ processor.
Mijn idee is een modbus TCP interface op de ESP8266 te schrijven zodat de Loxone enkel een modbus bevel moet maken om de gewenste waarde te lezen.
Nog prettige feestdagen.
Hallo Willem,
Bestaat er ook gewoon een soort gateway voor de P1 die die elke “zoveel” kwh eenpuls geeft op een digitale (potentiaal vrije) uitgang?
Met vriendelijke groet,
Edwin Steenbeek
Hoi Edwin,
Ik heb géén idee.
Ha Willem,
Nu weer even terug naar mijn tweede logger. Deze heb ik in elkaar gezet. Na wat hardware debugging bleken TX en RX op de ESP niet goed gesoldeerd. Nu geflashed en na een paar keer proberen gelukt.
Ik kreeg een knipperende rode led, dus ik heb voeding van de meter ontkoppeld in de steker en tegelijk een 5V externe voeding aangesloten.
Echter: ik kan inloggen op de logger, alle pagina’s bekijken, maar ik krijg geen data uit de meter. Wat kan ik daaraan doen? Het is een Landis & Gyr slimme meter. Het uitlezen met de lezer van Youless lukt wel gewoon.
@Jan Willem,
Het enige dat ik mij kan voorstellen is dat de DTR pin (ook) niet goed doorverbonden is óf dat je hem, met het “ontkoppelen” van de 5Volt uit de meter (pin 1), per ongeluk óók pin 2 hebt “ontkoppelt”…
Als de DSMR-logger voor het eerst opstart of als de SSID van je (WiFi) netwerk veranderd is start de DSMR-logger een Access Point (AP) op waar je de credentials van je WiFi netwerk kunt invoeren (zoals het laatste frame van deze video).
Zijn deze gegevens al bekend dan meldt de DSMR-logger zich aan bij je WiFi netwerk, start de webserver op en verwerkt de binnenkomende telegrammen (dat zie je dus niet op deze video).
Beste Willem,
Ik wilde graag nog een twee printje maken, voor een andere meter, maar helaas is de kit niet meer te koop! Wat ontzettend jammer. Ik was echt geïnspireerd, bouwde daarom een eigen ontwerp voor watermeter.
Ik zal de geassembleerde versie kopen als deze weer beschikbaar komt. Wel heel erg jammer.
@Marco (comment)
Wat fijn dat je een oplossing hebt gevonden. Eén minuut is ook wel een héle korte lease tijd!
Hebben andere devices binnen je netwerk daar dan geen last van? Ik dacht trouwens dat die lease alleen verloopt als je geen verbinding meer hebt en opnieuw verbinding zoekt met de DHCP server.
In ieder geval bedankt voor het delen!
Hoi Willem,
Ja ik dacht ik deel het maar. Ja die minuut was ooit erin gezet om diagnostic redenen, en natuurlijk verder vergeten. En nee elke dhcp client wordt geacht een DHCP renewal te doen binnen de leasetijd, anders verloopt het IP address. Nee ander devices hebben daar geen last van (Allemaal Sonoffs met Tasmota – ik draai alle IoT op een aparte SSID in een andere IP range met eigen DHCP server en met de nodige IP filtering erop).
Hey Willem,
Je hebt echt een top toepassing gemaakt man, helemaal goed.
Al een paar weken je DSMR 1.0.3 software hier dus draaiend op een wemos D1mini clone.
Heb enkel de BC547B-inverter onderdelen gebruikt om de boel simpel te houden want waarom ingewikkeld als t makkelijk kan 😛
Een kleine opmerking, geen idee of iemand daar al tegenaan gelopen is.
Mijn LAN-IP adres (dus uiteindelijk IP wat de DHCP uit de router braakt) was 192.168.0.1
En daar ging t ff helemaal mis met de MQTT optie.
Die gaf continue aan dat ie geen broker kon vinden. Terwijl een test met een externe internet broker wel goed werkte.
Blijkt na lang zoeken dat in je software een kleine glitch zit naar mijn mening.
In de MQTT-stuff.ino zit een IP check (OF) 1 van de 4 parameters een 0 (nul) bevat.
Zo ja doet ie de IP afwijzen van de broker….
Ik heb mn LAN-IP in de router aangepast naar 192.168.1.1 en dan doet ie t uiteraard gewoon wel….
Wellicht kan je hier naar kijken en die nog in een eventuele vervolgversie aanpassen, want zie dat je al bezig bent met een 1.0.4 versie op github.
Nogmaals heel veel dank voor je prachtige stukkie huisvlijt 🙂
betreft de onderstaande code in de MQTT-stuff.ino file.
if ( MQTTbrokerIP[0] == 0 || MQTTbrokerIP[1] == 0
|| MQTTbrokerIP[2] == 0 || MQTTbrokerIP[3] == 0) {
DebugTf(“ERROR: [%s] => is not a valid URL\r\n”, MQTTbrokerURL);
Marco,
Dank voor de lovende woorden.
Ik ga dit aanpassen in v1.0.4 (vanmorgen v1.0.3c gereleased, net te vroeg om deze fout op te lossen). Eerlijk gezegd nooit geweten dat die nullen geldige IP adressen maken!
Hoi Willem,
ik heb wat problemen met het uploaden van je code 1.0.3
dit is de fout melding
De Firmware is getest met de ESP8266 core v2.5.2.
Core versie v2.6.n breekt van alles.
Terug naar v2.5.2 is voorlopig de enige optie.
oke super bedankt dit heeft gewerkt
Hi Willem,
Zoals ik al eerder aangaf heb ik mindergas.nl in gebruik en wilde ik het integreren. Dat is gelukt. Daarnaast heb ik de gas delivered op drie cijfers nauwkeurig, zoals in de telegram,uitgelezen.
Wat is een handige manier om de code changes aan je door te geven.
Robert
Hallo,
ik gebruik v3 met espeasy software werkt super i.c.m domoticz
gr b.kalk
Hoi Willem,
Kun je me aangeven waar / hoe ik de layout van de website kan wijzigen. met name de “per uur” en “per dag” tabellen komen er een beetje te smal uit. Is dat HTML5/CCS3?
Verder wil ik je vertellen dat ik super tevreden ben. Loopt als een zonnetje.
Wel jammer dat het systeem niet meer als bouwpakket te koop is (maar ik begrijp je beweegredenen -:) ).
Mvrgr, Bauke
Hoi Bauke,
De layout is vastgelegd in de bestanden DSMRlogger.css en DSMRlogger.html
Die kun je naar hartelust aanpassen aan je eigen wensen.
Het is niet mijn keuze om de DSMR-logger niet meer als bouwpakket te verkopen (door opencircuit.nl). Mijn motivatie voor dit soort projecten is juist om makers te laten zien hoe leuk het is om zelf microprocessoren te programmeren en eenvoudige elektronische schakelingen te ontwikkelen. Met de verkoop van een “kant en klaar” product hoopt opencircuit.nl om makers vragen te voorkomen.
Succes met het aanpassen van de layout en stuur een plaatje van het uiteindelijke resultaat!
Het was even stoeien met Mqtt maar is goed gekomen.
Goed om te weten is dat de omschrijving op de website over versie 1.03 gaat.
Ik heb 1.02 draaien en dan zit het net iets anders blijkbaar.
De Mqtt gegevens dan goed controlleren die verstuurd worden!
Nu kan ik mooi verder met Home assistant en dit project!
Geweldig gemaakt!
Willem, wat een topproject is dit toch. Alles werkt perfect toen ik het bordje op de slimme meter aansloot.
Volgende vraag is of je ook een dergelijk project gedaan hebt voor de Landis & Gyr warmtemeter (Ultraheat 2WR5, de voorloper van de T550). Er schijnt een IR naar USB kabel in omloop te zijn, waar je de meter mee kunt uitlezen. Ik heb hem nog niet kunnen vinden. Is zelf bouwen een optie?
Ik heb dezelfde vraag voor een domme elektriciteitsmeter. Kan ik daar ook iets zelf voor bouwen. De watermeter komt wat mij betreft als laatste aan de beurt. Hartelijke groet.
Jan Willem,
Bedankt voor het compliment!
Ik heb helaas geen ervaring met de “Landis & Gyr warmtemeter” maar omdat hij blijkbaar een IR interface heeft moet het zonder meer mogelijk zijn om hem uit te lezen en dan is zelf bouwen zéker een optie! Ik juich dat toe. Mijn motivatie voor de door mij ge-poste projecten is juist om mensen aan deze leuke hobby (het programmeren van microprocessoren en electronica) te krijgen!
Voor het uitlezen van de “domme elektriciteitsmeter” zijn tientallen projecten op internet te vinden. Deze maken allemaal gebruik van een optische koppeling (LDR of halfgeleider) en dat is dus zonder meer (na) te bouwen. Wel moet je erop verdacht zijn dat de uit te lezen data t.o.v. een Slimme Meter erg beperkt is!
Hi Willem, bedankt voor een mooi stukkie software. Nu heb ik een ESP 12E development board, met een 5V-3V3 aan boord, USB connectie. Je kent ze wel. Ik kan de software flashen, ik krijg een website te zien, ik zie op de TX poort -aangesloten op mijn RS232 ingang van de PC- meldingen dat de bole opstart en de wifi wordt herkend. So far so good.
Om de slimme meter te emuleren heb ik een PIC controller geprogrammeerd die op 115kBaud een telegram stuurt elke 10 sec. Ook getest en dat werkt. Echter ik zie op de logger geen enkele respons. Nu heb ik meerdere RS232 poorten op mijn ESP12E bordje, en ik dacht de telegram van de PIC controller aan te sluiten op de pin RX, dus die naast de TX die de meldingen geeft. Helaas geen sjoege. Daarna de pin D6 geprobeerd, dat zou de 2e RX pin zijn. Maar ook dan krijg ik geen enkele repons. ook niet dat het telegram errors zou bevatten. Welke pin moet ik gebruiken als input vd slimme meter?
Telegram:
Op mijn website (en die van opencircuit.nl) staat het volledige schema. Daar zou je alles uit moeten kunnen halen wat je nodig hebt.
Hallo Willem,
Enige tijd geleden vroeg ik je of je wist hoe de P1-poort kon worden gesplit.
Ik gebruik namelijk Eneco Toon en nu ook jouw P1-logger (met veel plezier!!).
Heb eerst zelf wat zitten knutselen op experimenteer bord maar dat lukte niet.
Nu een splitter gekocht bij Tech4U en ik wilde even melden dat dit prima werkt.
Mvrgr, Bauke
Hallo Willem,
Ziet er perfect uit. Ik ben ook van plan om deze te kopen/installeren om het te intergreren met mijn home assistant.
Helaas woon ik tegenwoordig in Belgie en ben ik niet zeker of het in BE ook gaat werken. Ik heb alvast een aanvraag gedaan bij de netbeheerder om de communicatie/gebruikerspoorten open te zetten (staan standaard uit in BE en je netbeheerder moet deze open zetten om de poorten te kunnen gebruiken).
Van zodra mijn netbeheerder (fluvius) de poort(en) heeft open gezet zal ik het bordje bestellen en het eens uittesten.
Jeroen
De gebruikspoorten kun je zelf open zetten via de portal van fluvius en dit kost op het moment van schrijven niets extra. Het bordje ga ik dus bestellen en uittesten 🙂
Is dit gelukt, met de slimme meter van Fluvius (België).
Ik ben ook geïnteresserd om dit eventueel te bestellen.
En de laatste vraag voor vandaag, ik heb R12 en R13 niet gemonteerd… Volgens mij is dat alleen nodig als je ook daadwerkelijk externe power gaat gebruiken.
Nu heb ik een v4 board van je gekocht recent. Nu staat er sinds kort een 4.5rev op de site, met specifiek externe power mogelijkheid. Maakt dit nog veel uit?
Kuch, kuch, de laatste vraag met je negeren… ADC input, r12/r13 maken een net leesbaar signaal.
Het verschil tussen rev 4.0 en rev 4.5 is de power jack aansluiting volgens mij. Is er een pagina waar je bijhoudt wat de rev. verschillen zijn?
Nog een vraagje… op de site van OpenCircuit staat vermeld dat met “enig knutselwerk” de logger in een doosje te bouwen is. Kan je wellicht vertellen wat het knutselwerk is dat je moet doen? Ik heb het doosje, en zit al een poosje te puzzelen wat je het beste kan doen.
Wellicht een voorbeeld? Of tips hoe ik dat het beste kan aanpakken?
Het doosje is: https://opencircuit.nl/Product/14161/Project-Box-zwart-101-x-61-x-26mm
Robert,
Op de site van opencircuit staan wat plaatjes van mijn knutselwerk. Wellicht kunnen die je verder helpen.
Kijk plaatjes zeggen idd meer dan 1000 woorden. Had ze gewoon niet gevonden 🙂
Prachtig project. Dank je wel Willem. Heb dit weekend alles in elkaar gesoldeerd. En het werk nu als een zonnetje. Nu wil ik het nog inbouwen in het doosje dat ik erbij gekocht heb, en dan de integratie met home assistant.
Een van mijn wensen die ik zelf nog wil implementeren is vanuit de logger direct mindergas.nl updaten, dat is 1 simpele JSON call per dag. En dan heb ik het daar ook bijgewerkt, dat doe ik nu nog via Home Assistant, maar dat kan evenzogoed vanuit de ESP lijkt mij.
Beste Robert,
1)
Ik ken “mindergas.nl” niet, maar het moet niet al te moeilijk zijn om dat te implementeren. Als je het voor elkaar hebt kun je de oplossing wellicht hier delen.
2)
Je moet een uitsparing in de project-box maken waar de RJ12 stekker doorheen past. Er moet ook één gaatje in de deksel waar de lange (flash) schakelaar doorheen kan. Afhankelijk of je een Oled scherm hebt moet je dáár ook een uitsparing voor in het deksel maken.
3)
R12 en R13 heb je inderdaad niet nodig.
Het v4.5 bordje heeft een mogelijkheid om een externe voeding aan te sluiten. Verder is het bordje “kant en klaar” en al “in elkaar gezet”. Véél minder leuk dan hem zelf in elkaar te zetten.
Als het v4 bordje het doet zonder een externe voeding heb je die aansluiting ook niet nodig.
Hoi Willem
Wat fijn dat je zo snel reageert.
1. Als ik de integratie met minder gas voor elkaar heb deel ik het.
2. Dank, ik ga vanavond maar eens zagen en knutselen 😉
3. Hmmmm, jammer, ik denk dat makers het juist leuk vinden om zelf te maken. Als je naar 40 euro gaat met rev 4.5, kom je in de buurt van de commerciële p1-uitleesopties. Het hele idee voor mij is juist zelf in control te zijn, dus geen externe kant en klare oplossingen als ik het niet kan beïnvloeden of begrijpen.
Nogmaals enorm bedankt voor je snelle reactie, en dit geweldige project.
Willem, ik kreeg bij het uitlezen van “electricity_tariff” in Home Assistant de waarde “unknown”, terwijl alle andere getallen en tekst goed worden weergegeven. De waarde van deze parameter kan 0001 of 0002 zijn, zie ik met de MQTT sniffer.
Volgens mij is er in de MQTT sketch een probleem met de leading zeroes in deze waarde. Ik heb in MQTTstuff de volgende regel:
sprintf(cMsg, “{\”electricity_tariff\”:%04d}”, String(ElectricityTariff).toInt());
veranderd in:
sprintf(cMsg, “{\”electricity_tariff\”:\”%s\”}”, String(ElectricityTariff).c_str());
Nu werd de waarde in Home Assistant correct weergegeven als 0001 of 0002. Wellicht dat anderen ook tegen dit (kleine) issue aanlopen.
Beste Willem,
Ik probeer de DSMRlogger v1.02 te gebruiken om mijn Belgische DSMR 5.0 meter Sagemcom S211 uit te lezen via Wemos D1 Mini, en invertor met BC547, 3.3V vanuit Wemos. De firmware werkt ok, ik zie system info in de logger, maar Telegrams Processed blijft op 0 staan, errors ook op 0. Mijn data input staat op Wemos RX. Is dat correct? In de code staat #define IS_ESP12
#define USE_UPDATE_SERVER
verder staat #define DTR_ENABLE 12 en die wordt gebruikt voor
P1Reader slimmeMeter(&Serial, DTR_ENABLE);
Moet ik dan poort GPIO12 gebruiken, dus D6 op Wemos?
Als ik via telnet naar wemos ga zie ik menu, met B zie ik board info, idem als in browser, verder bijv.
[00:05:52] [ 17520] webSocketEve( 46): [0] Got message: [tabActual]
Als ik dan P + Ctr-Enter doe zie ik niets, behalve dat menu verandert naar
P – Start Parsing again
Enig idee wat ik verkeerd heb? Of welke andere testen ik kan doen?
Alvast bedankt,
Luc
Hi Luc,
Je kunt het beste dit bordje bestellen
Hallo Willem.
Ik heb mijn logger nog niet op mijn slimme meter aangesloten. Ik ben nog niet in de buurt geweest van de betreffende lokatie. Ik doe nu een test met dummy data. Is het juist dat die dummy data niet via MQTT verzonden worden? Als ik via telnet mee kijk naar de activiteiten zie ik er niet over.
Kan ik MQTT verkeer op een andere manier testen als ik niet in de buurt van een slimme meter ben?
Hi Jan Willem,
In de documentatie geef ik aan hoe je de binnenkomende MQTT berichten die naar de broker worden gestuurd via de mosquitto_sub client kunt uitvragen.
Ten overvloede: ik het de rechte haken in de value templates vervangen door accolades. Dus dat zou het probleem niet moeten zijn.
Ben je al iets verder gekomen met het unknown probleem in Home Assistant?
Ik heb hetzelfde probleem hiermee.
Ook de haakjes vervangen idd.
Ja bij mij klopt alles nu. Als de meter uitlezer in de teststand staat, worden deze data niet naar de MQTT broker gestuurd. Daarom krijgt HA geen waarde voor de sensoren die gedefinieerd zijn.
Zodra je de lezer aansluit op de meter (nadat je de software geflashod heb zonder de testdata optie te kiezen), komen de data gewoon naar HA op het onderwerp dat je in de sensor gekozen hebt, goed op de lezer is ingesteld.
De test-data modus aangezet.
Via de restAPI kan ik deze data uitlezen.
Maar via de Home Assistant krijg ik bij alle sensoren “unknown”. Klopt het dat de test data via Home Assistant niet uitgelezen kunnen worden? Of is hier iets anders aan de hand. Ik heb de topic in HA op DSMR gezet. In de logger staat het topic op dezelfde naam. Wat kan hier aan de hand zijn?
Jan Willem,
Ik ga ervan uit dat je MQTT gebruikt. Dat heeft alleen niets met de restAPI te maken.
Het (MQTT) hoofd-topic heet standaard “DSMR-WS” en niet “DSMR” (behalve als je dat hebt aangepast).
De documentatie hier En hier is je beste vriend.
Prachtig project. PCB solderen was simpel.
Bij het compilen van de sketch krijg ik nogal wat foutmeldingen. Een melding geeft exit code 1:
“DSMRloggerWS_v103:104:11: error: redefinition of ‘uint8_t settingSleepTime’
uint8_t settingSleepTime; // needs to be declared before the oledStuff.h include
^
DSMRloggerWS:103:11: error: ‘uint8_t settingSleepTime’ previously declared here
uint8_t settingSleepTime; // needs to be declared before the oledStuff.h include”
Wat kan hier het probleem zijn? Het lijkt wel alsof tab 1 en tab 2 hetzelfde doen? Moeten die beide bestaan?
^
Jan Willem,
Je geeft te weinig informatie om een zinnig antwoord te kunnen geven.
Heb je de hele Sketch gedownload en zie je ook alle tabbladen?
Heb je versie 2.5.n van de esp8266 core geïnstalleerd?
Ik heb 2.5.2. van esp8266 gedownload. Ik heb alle tabbladen. De eerste twee tabbladen zijn:
DSMloggerWS
DSMloggerWS_v103
Deze twee zijn bijna gelijk, de tweede is een nieuwere versie van de eerste. Zou dit de verklaring kunnen zijn dat de compile vast loopt op een dubbele declaration van ‘uint8_t settingSleepTime’. Ik ga de eerste tab weghalen om te kijken of dat wat uit maakt.
Na weghalen van DSMloggerWS tab en hernoemen van DSMloggerWS_v102 naar DSMloggerWS lukt de compile nu goed.
Nu krijg ik de meldingen:
Daarna krijg ik vele malen de volgende foutmeldingen:
Om te eindigen met:
Heb ik misschien een soldeerfout gemaakt?
Gek genoeg werkt de ESP8266 Sketch Data upload wel zonder foutmeldingen.
Hier hebben meer makers last van. Als je tijdens een hapering van het uploaden nog een keer (snel, binnen de time-out) de esp8266 in Flash-Mode zet gaat de upload daarna vaak gewoon verder.
Niet waarschijnlijk. Een rommelig contact tussen je programmer en het DSMR-logger bordje is meer waarschijnlijk ..
Jan Willem,
Mijn fout!
Ik heb net github ge-update. Als je daar nu de firmware vanaf haalt moet het goed gaan.
Ja, het verwijderen van de “oude” versie TAB zorgde voor een goede compile.
Daarna inderdaad nog een keer de Flash mode ingegeven. Dat werkte. Prachtig project! Echt een aanrader.
Binnenkort de integratie met Home Assistant inregelen!
Bericht aan Bauke.
Bauke, ik las dat je bezig met met de data naar Domoticz te sturen.
Dat wil ik ook.
Ben zo ver dat de data via Mqtt op een PI4 komt en Domoticz is geïnstalleerd.
Ben nu op zoek naar de volgende stap.
Zou jij me een duwtje in de rug willen geven zodat ik de goeie kant op ga?
Ik ben vrij goed in Python en Electronica.
Maar Domoticz is nog een geheel lege bladzijde in mijn hoofd.
Hallo Wim,
Als je Domoticz hebt geinstalleerd , ben je eigenlijk al een heel eind.
Ik gebruik zelf versie 4.10717.
Ik maak gebruik van het script van Michel Groen om data van de logger over te krijgen in Domoticz. Dat gebeurt niet via MQ maar via een api call vanuit het script van Michel naar de logger. De logger antwoordt dan met de actuele waarden.
In Domoticz moet je een aantal virtuele sensoren aanmaken (kijk bij Instellingen – Hardware). Onder Instellingen – Apparaten zie je de sensoren dan staan en hierbij is het IDX nummer van belang.
IDX nummer invullen in het script en de sensoren onder het tablad Overige worden nu bijgewerkt.
Het script zelf kun je vinden op de Github pagina van Willem en dit script kopieer je naar Domoticz onder Instellingen – Meer opties – Gebeurtenissen
Zelf ben ik nog niet helemaal tevreden met het type van de sensoren (ik gebruik Counter – Incremental maar daar is nog wel aan te onderzoeken).
Ben ik mee bezig.
Dag Bauke,
kan je me PM (eMail adres weggehaald) sturen Hoe eea in te stellen is in Domoticz?
ben best wel nieuw met scripten, maar wil dit wel werkend krijgen..
Super mooi project! ben er erg blij mee, heb zelf de mqtt iets aangepast denk dat je met deze aanpassing heel veel mensen blij zou maken.
Aan de MQTT Json de volgende onderdelen toevoegen:
ElectricityTariff , EnergyDeliveredTariff1, EnergyDeliveredTariff2.
Heb zelf PowerRetL1, PowerRetL2, PowerRetL3 Uit gezet omdat ik dit niet gebruik weet niet of de Json anders te groot word. Het zou ook mooi zijn om de MQTT Poort instelbaar te maken (na het flashen van de software) aangezien deze nu vast in de code zit:
MQTTclient.setServer(MQTTbrokerIPchar, 1883);
Dit miste ik een beetje in de software zou mooi zijn als dit er standaard bij in zou zitten bij de volgende update! (ook voor mij omdat ik inmiddels versie 4.5 ook heb besteld).
Remco,
Vanaf Versie 1.0.3 van de DSMRloggerWS firmware kun je de poort van de MQTT broker opgeven.
Remco,
De firmware vanaf v1.0.3 stuurt de volgende velden naar de MQTT broker:
Werkt top, dank hiervoor! Ik heb eerst een tijdje geëxperimenteerd met ESPEasy en de DSMR sensor in HomeAssistant, dan ziet HA eigenlijk direct wat de P1 poort kan leveren. Nadeel wat ik hiervan ondervond is dat het veel data (updates) zijn die er naar verloop van tijd voor zorgen dat de sensoren niet meer updaten.
Met de DSRMLoggerWS en handmatig aangemaakte MQTT sensoren gaat het een stuk beter 🙂 Maar dan mis ik het actuele gasverbruik die ik eerder wel had. Eigenlijk zoals energy_delivered de tegenhanger van gas_delivered is, zoek ik nog een tegenhanger van power_delivered voor gas. Kan die sensor toegevoegd worden?
Beste Marco,
Als je gasmeter op de Slimme Meter is aangesloten komt het gasverbruik ook gewoon op de DSMR-logger binnen.
Dat klopt! En ik zie op de web interface ook een waarde achter ‘Gas verbruik (M3)’ staan, maar dat is een waarde die alleen maar oploopt, net als ‘Energie verbruikt (kWh)’. Maar ik ben eigenlijk nog op zoek naar de actuele waarde van gasverbruik, zodat ik kan zien op welke momenten van de dag ik (het meest) gas verbruik. I weet dat de P1 poort die ook doorgeeft, maar hoe kan ik die aan de DSMR-Logger toevoegen? Of waar moet ik met HomeAssistant een JSON query op doen om deze waarde te krijgen?
Het “actuele verbruik” (van de afgelopen vijf minuten) is de nieuwe eindwaarde van de vorige eindwaarde aftrekken.
De Slimme Meter geeft die waarde niet zelf!
Bedankt voor de hulp bij de problemen die ik had met dit project.
Blijkbaar lag het probleem bij mijn soldeer kunst en heb je dit snel gevonden voor mij!
Erg blij mee.
Nu kan ik komende tijd verder met het integreren in Home Assistant.
Super!
Hoi Willem,
Geweldig project!
Heb het printje besteld en gisteren gesoldeerd.
Nu aan het voorbereiden voor de flash.
Ik lees in het deel van Data Upload tool dit:
Als er onder de map van je Sketch óók een map data staat, dan kun je de bestanden die in deze data-map staan met het Sketch Data Upload tool naar het SPIFFS van de ESP8266 flashen.
Ik weet niet precies waar ik dit moet vinden? Als het er niet staat kan je het dan overslaan ofzo?
Ik heb weinig ervaring met Arduino dus ben graag voorzichtig!
Beste Wesley,
Bedankt voor het compliment!
Je hebt het Data Upload Tool echt nodig want er staan files in de map “data” die onderdeel van de DSMRloggerWS firmware zijn!
Heb je alle documentatie goed gelezen. Alles wat je moet weten staat daarin!
Succes
Het eerste deel van die pagina lukt wel. Het extra kopje sketch data upload staat er.
Maar daarna snap ik het niet meer.
De map tools staat in mijn sketch lokatie.
In een andere map , DSMloggerWs staat wel de map data.
Wordt deze bedoeld? Vanaf deze stap moet de logger aangesloten zijn of nog niet?
Waar de map “tools” staat is niet belangrijk. Als in het “drop-down” menu de optie “ESP8266 Sketch Data Upload” staat, dan heb je de tool goed geïnstalleerd. Nadat je de firmware naar de DSMR-logger hebt geflashed kies je de optie “ESP8266 Sketch Data Upload” waarna de bestanden in de map “data” naar het SPIFFS file systeem van de DSMR-logger wordt geflashed. Klaar!
Ok ik denk dat ik dit deel snap.
Nu probeer ik met mijn flasher te flashen.
Krijg helaas melding:
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
Ik had al gelezen dat dan vaak tx en rx niet gekruisd zitten, maar dit heb ik wel zo zitten.
Nog een tip misschien?
Wesley,
Heb je écht de documentatie goed gelezen?
Als esptool geen verbinding met de DSMR-logger kan maken, dan heb je hem niet goed in flash-mode gezet. Soms is het nodig dat nog een keer te doen als de Arduino IDE al die …___…___ in het log window laat zien.
Ja heb denk ik alles meerdere keren gelezen, het zijn nogal wat pagina’s.
Ik heb de knoppen flash en reset gebruikt om in flash mode te komen.
als ik indruk zie ik een blauwe led branden.
maar toch de foutmelding helaas
@Wesley,
Het enige dat ik dan nog kan bedenken is dat je ‘ergens’ een slechte soldeer verbinding hebt …
Dat de blauwe LED heel even oplicht is normaal gedrag dus de reset en flash knoppen ‘werken’ (waarschijnlijk).
Kun je met een multimeter controleren dat Rx en Tx op de program poort ook zijn verbonden met de ESP-12?
Alle solderingen bekeken en gemeten.
Lijkt me goed.
De TX en RX hebben ook connectie.
Begin de moed op te geven, snap niet waar het mis gaat!
Steeds dezelfde melding
Beste Willem,
Heel interessant project! Recent heb ik een slimme meter gekregen (Landis+Gyr E360) en het leek mij heel geschikt om zelf de slimme meter uit te lezen.
Ik heb het bouwpakketje (Versie 4) bij openCircuit besteld en in elkaar gesoldeerd. Als programmer gebruik ik een USB to Serial adaptor bordje, aangesloten op een Windows 10 laptop. De firmware en de data flashen lukt.
Na de eerste keer opstarten, blijft de blauwe LED aan. Via mijn telefoon kan ik de SSID en het wachtwoord opgeven en opslaan. Na het herstarten van de DSMR logger (verbonden met de laptop) kan ik de web-pagina van de DSMR logger bereiken en ook via telnet inloggen op de DSMR logger. Zowel de blauwe als de rode led branden continue (wacht op telegram).
Als ik de DSMR logger afkoppel van de programmer en aansluit op de slimme meter, start de DSMR logger op (rode led brandt continue), de blauwe led knippert 3x langzaam en blijft daarna aan. Ik kan geen verbinding maken met de DSMR logger. Niet via het ingestelde IP adres. Er verschijnt ook geen DSMR-WS netwerk op telefoon/computer.
Enig idee wat er aan de hand is?
Hallo Dick,
Ondanks je uitvoerige uitleg mis ik informatie om hier iets zinnigs over te kunnen zeggen.
Er zijn lichtpuntjes (de rode LED brand!). Dat de blauwe LED na drie x knipperen “aan” blijft zou betekenen dat hij geen verbinding met je WiFi netwerk kan maken en dus het Access Point weer opstart.
Het zou helpen als je een kopie van de uitvoer van telnet post. Met name de board-info en SPIFFS info geeft inzicht in wat je hebt. Omdat je via de Slimme Meter geen netwerk verbinding krijgt volstaat deze informatie als de DSMR-logger op je PC is aangesloten.
Bedankt voor je reactie, Willem.
Boardinfo
SPIFFS info:
Als je meer informatie nodig hebt, hoor ik het graag. Alvast bedankt!
Hi Dick,
Vreemd. Je hebt alles, voor zover ik het kan zien, goed ingesteld. Jammer dat je geen OLED schermpje hebt, want die geeft wat meer inzicht in wat de DSMR-logger aan het doen is en waar hij dus, blijkbaar, stopt met werken.
Volgens de documentatie start hij opnieuw het Access Point op. Dit gebeurd bijvoorbeeld als hij (in de meterkast) geen verbinding met je WiFi netwerk kan maken. Als hij opnieuw het Access Point opstart zal hij na ongeveer 3 minuten geen contact met een client opnieuw opstarten. Je ziet dan weer de blauwe LED 3x langzaam knipperen…
Als dat niet het geval is dan wacht hij op een telegram en is de verbinding met je Slimme Meter niet in orde.
Bedankt voor je reactie. Ik ga er een OLED schermpje aanhangen.
OLED schermpje aangesloten en nieuwe firmware geupload. Schermpje werkt als een zonnetje!
Als ik de DSMR-logger op de Slimme Meter aansluit, blijft het schermpje staan op:
“Verbinden met WiFi”
Zowel de rode als de blauwe led blijven branden (meer dan tien minuten gecontroleerd).
Dick,
Vreemd. Kan het zijn dat je geen (WiFi) dekking hebt in je meterkast?
Ik stuur je een PM, dan kunnen we wat sneller schakelen.
Hoi Willem, mooi project. Toevallig had ik net zelf een print ontwikkeld toen ik dit tegenkwam. Ik heb helaas wel een vreemd issue. na ongeveer een minuut disconnect zowel de websocket als de telnet. Dit is op vaste tijdstippen (dus onafhankelijk wanneer je telnet of web socket connect). lijkt iedere 60 sec na boot te zijn. Ook de MQQT geeft een foutmelding dat ie niks kan versturen (kom niet boven de payload size). Heb al zo’s beetje alle combinaties van settings geprobeers (NO_meter, wel/geen display), draaien open een kale wemos D! mini (zonder print) voeding viaextern of USB. Maakt allemaal niks uit. Uitlezen meter gaat prima en display werkt ook prima. Enig idee waar ik dit zou moeten zoeken?
Marco,
Ik heb echt geen idee.
Het meest voor de hand liggende is dat het met SPIFFS acces te maken heeft maar ik heb gewoon te weinig informatie.
Wat helpt is een log van telnet met de optie ‘b’ (Board info) en wat log regels. Ook een (duidelijke) schermafdruk van de Systeem Info pagina is handig.
Beste Willem, bedankt!
Ik heb nu maar even een python script draaien wat de waardes via REST uitleest in een database zet – dus kan vooruit. Denk zelf dat het ergens in de compiler misgaat, misschien ergens toch een lib die niet helemaal lekker is. Het probleem is namelijk ook aanwezig als ik helemaal niks verander behalve HAS_NO_METER op aan zet en het op een kale WEMOS D1 mini draai gevoed via USB en zonder in de pcb te steken. Mijn pcb gebruikt een andere pin voor data_request en gebruikt de gewone serial – wilde kijken of dat wellicht een probleem was. Ik zal eens een stand-alone arduino IDE opzetten en alles opnieuw via de (werkelijk zeer goede) documentatie ‘kaal’ installeren. Het zou overigens wel heel fijn zijn als je in de bin van de github ook een 1.0.2. versie zou kunnen zetten, ik zie daar nu alleen oude verses staan – kan ik in elk geval kijken of dat helpt…voor de zekerheid de board info. Schermafdruk kan ik eventueel apart zenden
Aanvullende info systeem Info pagina:
kleine update: standalone (portable) arduino ide en proberen zoveel mogelijk de geteste versies van de libaries te gebruiken werkt niet: zelfde resultaat. Moet het ergens anders gaan zoeken. NB heb al jaren Sonoff Tasmotas werken over dezelfde wifi met mqtt en dat werkt zonder probleem.
Ik ben er eindelijk achter wat de reset geeft iedere 60 seconden. Dit ligt aan de DHCP. Mijn DHCP server stond op een lease tijd van 60 seconden en blijkbaar veroorzaakt een DHCP renewal een reset van verbindingen: Telnet en web socket worden verbroken en MQTT stopt er mee. Mocht iemand dus soortgelijk probleem hebben, verhoog dan de leasetijd van de DHCP server.
Dag Willem en Dick,
Bij mij was er geen knipperende LED, maar helemaal geen LED. Oftewel: externe voeding nodig.
Net getest zonder voeding met een 100µF op C3. Dit werkt zonder problemen en stabiel. Ook de laatste firmware OTA geupload zonder problemen.
Meter is een Iskra AM550.
gr,
Allart
Allart,
Dat is goed om te weten! Bedankt voor je update.
hallo ik krijg de firmware er niet op…
timed out waiting for packet header..
hoe moet ik nu verder? zit al een avondje te puzzelen..
groetjes marco
Marco,
Als je in de IDE de opdracht geeft om de sketch to uploaden, verschijnen er, na het compileren, een serie puntjes en streepjes. Als je op dát moment (is niet kritisch) de flash knop indrukt en ingedrukt houdt vervolgens op de reset knop drukt, deze weer los laat en dán de flash knop loslaat, moet het lukken.
Normaal gesproken kun je dat ook al doen tijdens het compileren of zelfs daarvóór, maar sommige bouwers hebben ondervonden dat er “iets” naar de ESP8266 gestuurd wordt waardoor hij uit de flash-mode gaat.
Mocht bovenstaande niet werken, dan heb je waarschijnlijk de Tx en Rx draadjes verkeerd-om aangesloten. Tx van de programmer moet naar Rx van de DSMR-logger. Tx van de DSMR-logger moet naar Rx van de programmer. Zie ook de documentatie!
Laat even weten of het nu wel lukt.
Dag Willem, Werkt de V4 versie ook voor de Belgische slimme meters (P1 Versie 5 ?)
Alvast bedankt en vriendelijke groet,
Tony
Hi Tony,
Kort antwoord is “Ja”.
Er zijn al meerdere landgenoten van je die de meter met succes gebruiken.
Wel lijkt het dat jullie meters die alleen geschikt zijn voor 1-fase niet de, door de DSMRloggerWS firmware verwachtte data afgeven voor de “Actuele Chart”.
Door bij het compileren de
#define SM_HAS_NO_FASE_INFO
actief te maken kun je toch deze actuele data in de web-gui zien.Zie ook de documentatie!
Hi Willem,
Ik denk erover om je V4 te bestellen. Graag zou ik ook de watermeter willen integreren. Dit zal moeten gebeuren door het ‘wieltje’ te gaan tellen. Is hier ruimte voor in de firmware en pinnen op de ESP?
Juno,
Er is weinig nodig om die pulsen te tellen. Met een interrupt functie moet je een heel eind komen en daar is zeker ruimte voor (één GPIO pin).
Moet dus zeker kunnen. Je moet zo’n aansluiting wel direct op de ESP-12 solderen of je moet er de nu naar buiten gevoerde ADC pin voor gebruiken. Zie https://arduino.stackexchange.com/questions/17903/interrupt-on-analog-port-esp8266-w-arduino
Leuk idee!
Hou je ons op de hoogte?
Hi Willem,
Een fototje uploaden via deze relpay lukt niet. Als je mij een mailtje stuurt, krijg je een foto van de logger met 1.3″ Oled retour. Die dingen zijn bij Ebay voor iets minderals USD 5 te koop.
Ik raad aan om de spanning op pin 3 van ESP12 te meten. Dit moet 3V zijn. Dit is de Enable pin. Bij mij zat daar ook een probleem.
Hoi Dick,
ik heb net met twee verschillende waardes voor C3 geprobeerd. Maar op mijn KAIFA meter lukt het niet
eerste poging was een 470uF 25V voor C3.
Rode led ging aan en de blauwe led knipperde als een gek.
tweede poging was een 100uF 63V voor C3.
Rode en blauwe led knipperde als een gek.
Dus orginele elco terug gezet RJ12 afgedekt en weer via externe voeding aan gesloten en start meteen op.
groeten Michael
Hallo Willem,
Wat een ontzettend leuk project is dit! Ik heb het bouwpakket kado gekregen, en heb de print en de software zonder problemen aan de praat gekregen.
Een collega van me wilde ook graag zijn slimme meter uitlezen, dus een tweede bouwpakket besteld, maar die kreeg ik niet aan de praat.
In eerste instantie ging bij het aansluiten van de voedingsspanning via de USB programmer wel de rode led branden, maar zag ik niet dat de ESP spanning kreeg (de blauwe led licht heel even op bij mijn eerste print). Bij het doormeten bleek dat de ESP geen voedingsspanning kreeg. Na het opnieuw solderen van de Vcc op de ESP kwam de voedingsspanning wel door en zag ik ook de blauwe led even oplichten, maar kon ik de ESP niet flashen.
Vervoglens heb ik de verbinding tussen de switches en de ESP doorgemeten en die was goed (de flash en reset kan ik meten op de ESP), en ook de rx/tx verbindingen waren in orde, net als de spanning op de Enable pin.
Dus uiteraard even gecheckt of ik met de Arduino software mijn eerste bordje nog wel kan flashen, en dat werkte gewoon. Maar flashen van het nieuwe bordje met dezelfde software en programmer niet.
Is het mogelijk dat de ESP beschadigt is geraakt doordat er geen voedingsspanning op de chip stond terwijl er wel signaal op stond?
Wat kan ik nog meer proberen om de ESP aan de praat te krijgen?
Vast bedankt voor je tijd,
Peter
Peter,
Het is niet waarschijnlijk dat de ESP-12 beschadigt is geraakt door het ontbreken van de voedingsspanning.
Ik denk dat het verstandig is om álle pinnen (boven en onderkant, de pinnen aan de achterkant worden niet gebruikt en hoeven ook niet gesoldeerd te worden) nogmaals te solderen. Hou er wel rekening mee dat zo’n pin maar één á twee seconden tot zo’n 280 graden verwarmt mag worden. Laat de ESP-12 dus na iedere pin even afkoelen en soldeer twee naast elkaar liggende pinnen niet direct na elkaar vast maar sla steeds een paar pinnen over.
Als het dan nóg niet werkt zou de ESP-12 kapot kunnen zijn maar dat komt eigenlijk bijna nooit voor. Vervangen van de ESP-12 is een lastig klusje en daar heb je eigenlijk een hot-air gun voor nodig.
Keep me posted!
Dank voro de snelle reactie!
Ik ga alle pinnen opnieuw solderen. Dank ook voor de tip om een paar pinnen over te slaan, die informatie had ik wel gezocht maar kon ik niet vinden. Ik laat je weten hoe het afloopt.
Gr. Peter
Opnieuw solderen van de contacten van de ESP-12 heeft niet geholpen. Ik heb de instellingen in de software nog een keer nagelopen, en verschillende keren geprobeerd te flashen maar geen witte rook (wat op zich een goed ding is 😉
De temperatuur van mijn soldeerbout stond ingesteld op 375 graden, wellicht heeft de temperatuur het probleem veroorzaakt.
Desolderen is niet mijn ding, dus ik ga een nieuwe kit bestellen.
Gr. Peter
P.S. De eerste print staat vrolijk data te verzamelen.
Hi Willem,
Prima projectje, met passende hardware en duidelijke software.
Maar toch nog wat opmerkingen.
-Mijn slimme meter kan blijkbaar de startstroom niet aan en schakelt dan af, om even later het weer te probereb. Resultaat een knipperende rode led. Het blijkt dat Elco C3 te groot is, daardoor te grote startstroom. C3 is door mij vervangen door 100microF en nu ok.
-Ik heb een wat groter OLED display aangesloten(1.3″), deze heeft een SH1106 chip. Om hem te gebruiken is het alleen nodig om in oledStuff.h regel 62 aan te passen oled.begin(&SH1106_128x64, I2C_ADDRESS);
-In de beschrijving wordt gesproken van het meten van de stroom van bv een solarpaneel. In de software heb ik hier niets van kunnen vinden, is het wel gerealiseerd? Als stroomsensor wordt de SCT013-030 genoemd, maar dit is een stroomtrafo die met hoge frequentie bemonsterd moet worden om de effectieve stroom te krijgen, lukt dat?
Ik broed op nog wat aanvullingen, lukt dat, dan laat ik het weten.
Groet,
Dick
Dick,
Dank voor je comment.
De meeste mensen (ik eigenlijk ook) denken dat een groter elco voor meer stabiliteit zorgt. Dat is ook zo, maar aan die grotere startstroom heb ik nooit gedacht (ik ben in mijn omgeving alleen Slimme Meters tegengekomen die blijkbaar volledig aan de DSMR-standaard voldoen en dus ook geen enkele moeite hebben met de startstroom. Ik was het probleem zelf dus ook nooit tegen gekomen). Ik hoop dat meer mensen met het knipperende rode ledje ook een kleinere elco plaatsen en terugkoppelen of dit het probleem ook voor hun oplost.
Ik ontvang graag een fotootje van je DSMR-logger met dat grotere OLED scherm. Kan wellicht ook als compiler optie worden ingesteld.
De firmware doet niets met de ADC ingang. Dat zul je dus zelf moeten uitzoeken.
Hallo Willem,
Wat een tof project. Zou het ook mogelijk zijn om er een ethernet aansluiting op te maken. Of zal dan wel een externe voeding benodigd zijn, of dan wel met POE. Ik ben niet zo van de wifi verbindingen behalve telefoons.
Tom,
Dank voor het compliment.
Ik denk niet dat het héél moeilijk is om een ethernet variant te maken .. maar ík ga het niet doen.
Volgens mij is juist draadloos communiceren de norm en waarom zou je moeilijk doen?
De basis van dit project is een ESP8266 en laat die nou juist gemáákt zijn met alle mogelijkheden van WiFi!
Of je voor ethernet een externe voeding nodig hebt is vooral afhankelijk van je Slimme Meter. De standaard schrijft voor dat deze minimaal 250mA moet leveren. Als je op de ESP8266 WiFi uitschakelt kun je volgens mij zonder problemen een ethernet ‘dingetje’ aansluiten. Er zijn nog genoeg GPIO pinnen over.
Als je dat gaat doen: succes!
En laat ons weten hoe je het gedaan hebt.
Hallo Willem,
even een vraagje…..
Ik kan mijn logger via het thuis netwerk goed benaderen maar buiten mijn netwerk om wil de pagina niet laden.
Ik krijg wel de tekst DSMR-logger en het mapje te zien.
Via mijn laptop kan ik dat mapje niet aanklikken maar op mijn telefoon lukt dit wel en krijg dan FSexplorer.
Ik heb via No-Ip een hostname die werkt.
Portforwarding staat ook goed ingesteld.
Als ik namelijk mijn port 80 doorverwijs naar mijn raspberry werkt dit goed.
Of is het benaderen van de logger extern niet mogelijk?
Alvast bedankt,
groeten Michael
Michael,
De DSMR-logger maakt ernstig gebruik van WebSockets. Hiervoor gebruikt de firmware DSMRloggerWS poort 81. Hoewel ik er geen ervaring mee heb (als je van buiten je thuis netwerk op wil zou ik altijd aanraden om een VPN verbinding te gebruiken) lijkt mij dat als je poort 81 op dezelfde manier routeert als je nu met poort 80 doet, het zou kunnen werken.
Hou er wel rekening mee dat als jij poort 80 van buitenaf kunt benaderen, anderen dat ook kunnen!
Als je het “aan de praat” krijgt, schrijf je dan weer een comment?
Hoi,
ik heb nu poort 81 geforward naar de logger.
Als ik nu het ip adres van mijn router invoer met daarachter :81
dan krijg ik het volgende in mijn browser te zien:
This is a Websocket server only!.
Kan ik hier iets mee?
Michael,
Zo als ik al schreef: ik heb echt geen idee 🙁
Hoi Willem,
ik heb openVpn server om mijn raspberry geinstalleerd en nu werkt het wel.
Nu kan ik buitenshuis de pagina wel laden.
Ook heb ik alle poorten weer dichtgezet, behalve die voor de vpn server.
Groeten Michael
Michael,
Dat is precies hoe je het beste van buitenaf je eigen netwerk kunt benaderen!
Hallo Michael,
Je kunt de DSMR logger benaderen als je zowel poort 80 als 81 forward naar het ip adres van de DSMR logger. Je kunt dan met je browser de webpagina benaderen, en de javascript code kan via port 81 de websockets benaderen. Ik heb dat net getest en het werkt prima.
Succes,
Peter
Hoi Peter,
bedankt voor de tip….
Ik had alleen poort 80 of 81 ge-forward en dan laad de pagina niet.
Wat ook opviel was dat de “Free heap” omlaag kelderde en in de rode cijfers kwam.
Het lukt nu ook prima, en heb meteen een VPN server.
En alle poorten van mijn modem staan nu dicht.
Hoi Willem,
Eindelijk! Een manier om in mijn meterkast buiten mijn appartement en zonder stopcontact toch mijn stroomverbruik te kunnen gaan meten. Enige is dat het jammer is dat ik niet heel erg goed ben in solderen en dat weerhoudt me een beetje om de V4 aan te gaan schaffen. Hoe ingewikkeld is dit en bestaat er ook een mogelijkheid om dit bordje gesoldeerd (en eventueel geprogrammeerd) te bestellen?
Hoi Camiel,
Ik stuur je een PM
Camiel,
Je bent onbereikbaar per eMail. Er is iets mis met het MX record in je mailserver.
Bel me als je tijd hebt
Hallo Willem,
Allereerst nogmaals bedankt voor dit prachtige stukje werk en niet te vergeten je snelle en goede tips.
De IDE 1.89 geïnstalleerd op een Raspberry PI 3, het compileren duurde erg lang om vervolgens in een hangup van de Raspberry te eindigen.
IDE 1.85 geïnstalleerd daarna compileerde het programma prima.
Tijdens het uploaden verscheen er een timeout, door nu nogmaals de Flash en Reset in te drukken ging het uploaden verder.
Bij het testen kwam ik erachter dat de data niet was overgezet, geprobeerd de data te uploaden, dit lukte niet.
Nu heb ik de soldeerverbindingen van de esp eens goed bekeken en een aantal opnieuw gesoldeerd. Het uploaden van de bestanden lukte nu perfect.
Hierna kon ik ook de webserver gebruiken!
Alles werkt nu, ik wil mijn project verder uitwerken om afhankelijk van de terug geleverde energie via MQTT apparaten aan of uit te schakelen.
Indien iemand hier ervaring mee heeft dan hoor ik het graag.
Willem graag kom ik in het bezit van het door jou geschreven sensor boek.
Ik hoor graag hoe te bestellen.
Goeieavond Willem,
net het printje gesoldeerd firmware geladen en data er in geladen ik dacht dit kan niet meer mis gaan! 😛
helaas heb ik het probleem dat de DSMR niet overeind komt als AP op de wifi niet als ik hem aan de p1 poort hang niet als ik hem aan een 5v voeding hang (met 1e pen op RJ12 afgetaped) en ook niet als hij aan de computer hangt
enig idee? solderingen zijn allemaal gewoon in orde voor zover ik kan zien
met vriendelijke groet,
Jos
Jos,
Heb je een DSMR-logger met OLED schermpje?
Wat voor meldingen komen daarop voorbij?
Wat doet het blauwe ledje op de ESP-12?
Wat bedoel je met “niet overeind komt als AP op de wifi”?
Als de blauwe led eerst knippert en daarna blijft branden dan moet je met je computer bij de WiFi settings een AP zoeken die DSMR-WSnnnnn heet en je computer daar verbinding mee laten maken. Vervolgens kun je de WiFi credentials van je eigen AP invullen.
met niet overeind bedoel ik dat ik de access point niet in de lijst met wifinetwerken zie op mijn computer/iphone/android toestel
de blauwe led knippert zoals je documentatie aangeeft 3x langzaam en daarna continu na x aantal minuten begint de logger aan een reboot
ik heb geen oled scherm maar heb wel met de seriele monitor de dsmr logger uit kunnen lezen
22:37:23.576 ->
22:37:23.576 -> ets Jan 8 2013,rst cause:2, boot mode:(3,6)
22:37:23.576 ->
22:37:23.576 -> load 0x4010f000, len 1384, room 16
22:37:23.609 -> tail 8
22:37:23.609 -> chksum 0x2d
22:37:23.609 -> csum 0x2d
22:37:23.609 -> v8b899c12
22:37:23.609 -> ~ld
22:37:23.676 ->
22:37:23.676 -> SDK:2.2.1(cfd48f3)/Core:2.5.2=20502000/lwIP:STABLE-2_1_2_RELEASE/glue:1.1-7-g82abda3/BearSSL:a143020
22:37:23.676 ->
22:37:23.676 ->
22:37:23.676 -> Booting….[v0.4.7 (06-08-2019)]
22:37:23.710 ->
22:37:48.281 -> *WM:
22:37:48.281 -> *WM: AutoConnect
22:37:48.281 -> *WM: Connecting as wifi client…
22:37:48.315 -> *WM: Using last saved values, should be faster
22:37:48.315 -> *WM: Connection result:
22:37:48.315 -> *WM: 0
22:37:48.315 -> del if0
22:37:48.315 -> usl
22:37:48.315 -> mode : softAP(86:f3:eb:78:53:8c)
22:37:48.315 -> add if1
22:37:48.315 -> dhcp server start:(ip:192.168.4.1,mask:255.255.255.0,gw:192.168.4.1)
22:37:48.315 -> bcn 100
22:37:48.315 -> [00:00:16] [ 21576] configModeCa( 43): Entered config mode
22:37:48.349 -> [00:00:16] [ 21640] configModeCa( 45): 192.168.4.1
22:37:48.349 -> [00:00:16] [ 21640] configModeCa( 48): DSMR-WS-84:F3:EB:78:53:8C
22:37:48.349 -> *WM:
22:37:48.349 -> *WM: Configuring access point…
22:37:48.349 -> *WM: DSMR-WS-84:F3:EB:78:53:8C
22:37:49.131 -> *WM: AP IP address:
22:37:49.131 -> *WM: 192.168.4.1
22:37:49.131 -> *WM: HTTP server started
blijkt dus dat deze wel opstart maar zoals ik zeg ik zie hem niet in de lijst met wifinetwerken
Jos,
Aan de kant van de DSMR-logger ziet alles er prima uit. Het klopt dat hij, als hij na ongeveer drie minuten geen reactie op het AP krijgt, de DSMR-logger reboot.
Ben je in de gelegenheid om de DSMR-logger bij iemand anders te testen? Als je daar wél het AP krijgt kun je de WiFi credentials van je thuis WiFi invoeren.
Bij iemand anders testen als in bij iemand anders thuis of op iemand anders z’n telefoon?
Ga ik dan zeker even proberen!
Mijn gevoel gaat uit dat er iets mis is met de antenne ofzo van de esp zou dit kunnen of is dat gekke praat 🙈
Willem,
dankjewel voor je hulp en uiteraard het ontwerp! het is uiteindelijk gelukt om een 2e DSMR logger in elkaar te solderen zonder problemen door opencircuit goed geholpen bij de vervanging van de defecte logger even in het midden gelaten of ik iets fout heb gedaan of dat de esp-12 problemen had.
al met al een redelijk eenvoudig soldeer project met een mooie uitgebreide uitleg hoe je alles stap voor stap moet uitvoeren!
ik heb zelf nog gebruik gemaakt van de koppeling met Homey ook dit werkt prima!
Hallo Willem,
Ik heb de arduino IDE op een Raspberry pi3 gezet en alles geïnstalleerd, op dit moment is de raspberry aan het compileren.
Ik vraag me af of dit kan op een Raspberry aangezien de Raspberry nu al een uur bezig is,
Er komen geen warnings alleen het ledje op de Raspberry knippert soms, verder zie ik niets gebeuren. Ik vraag mij af of dit wel gaat werken op met een Raspberry.
Rasbian versie image 2019-7-10
IDE versie 1.8.8.
Kun jij aangeven hoe lang dit kan duren?
met vriendelijke groet,
Pieter
Pieter,
Ik heb geen enkele ervaring met de Arduino IDE op een Raspberry.
Ik verwacht dat het moet kunnen werken maar .. als de Raspberry al “uren” aan het compileren is dan dénk ik dat er iets mis is. Ik zou eerst eens een simpel programmaatje (blink.ino) compileren en flashen. Kijken of dat gaat.
Dag Willem,
dank je wel voor je snelle reactie, ik heb het e.e.a uitgeprobeerd en nu blijkt dat geen enkel programma compileert als ik bij bord kies voor de 8266, bij de keuze voor bijvoorbeeld een mega 2560 compileert hij wel blink.ino
Heb jij hier een verklaring voor? Ik zal ongetwijfeld iets verkeerd doen maar weet niet wat.
Met vriendelijke groet,
Pieter
Pieter,
Ik heb echt geen idee en ook geen ervaring met deze setup.
Het lijkt mij meer een vraag voor Raspberry, Arduino en/of ESP8266 core fora.
Willem,
Dank je wel voor het geweldige stuk werk, het ziet er allemaal perfect uit.
Ik ga proberen om de logger via mijn Apple te programmeren.
met vriendelijke groet,
Pieter
@Michel,
Ik heb gebruik gemaakt van je lua script om data naar Domoticz door te zetten.
Als ik in de log kijk dan zie ik de json data prima doorkomen.
Echter in de virtuele sensors (ik heb er 3 aangemaakt om te testen) zie ik ik geen waarde hoewel ik de idx nummers goed heb opgegeven; ook heb ik het bijwerken van de dummy-switches onderaan geactiveerd.
Heb je enig idee hoe dit kan Michel?
Ik maak gebruik van de logger v4 en Domoticz 10.717
@Bauke,
Heb je de Debug optie al eens aangezet, mogelijk dat er dan meer te zien is waar het fout gaat. Plaats als onderstaan niets verhelpt ook eens een deel van de logging zodat ik kan zien wat er gebeurt.
Belangrijk is dat je de namen in het script niet veranderd aangezien deze nodig zijn ivm JSON output. Je kunt de JSON output zelf controleren door in je browser te gaan naar http://DSMR-WS.local/restAPI?get=Actueel
Waarbij je DSMR-WS.local eventueel kunt vervangen door het het ip-adres van jouw DSMR-logger.
Controleer of deze namen nog steeds overeen komen met die in het script.
Ik gebruik niet de meest recente versie van de firmware dus mogelijk is hierin nog iets veranderd.
Kijk ook of bij onder commandArray={} ook de — hebt verwijderd. Je moet dus op 2 plekken de — verwijderen in het script.
@Michel,
Wat je opnoemt, heb ik ook allemaal gedaan. Wat dat betreft had je het script ook duidelijk ingedeeld en goed aangegeven wat moet worden gewijzigd. De debug-logging had ik ook al aangezet en komt precies overeen met een losse RESTapi call.
Ik denk dat jouw script prima werkt. !
Overigens heb ik het idee dat het meer een issue is van domoticz zelf en de juiste type van de virtuele sensors. Ik vind dat niet voldoende flexibel maar moet nog wel wat experimenteren..
@Bauke,
Ik gebruik wel de beta van Domoticz en meestal de meest recente versie. Juiste type sensor staat er ook achter vermeld en daar werkt het bij mij wel dus op zich zou dat geen probleem moeten zijn. Mogelijk omdat jij de stable versie gebruikt dat hierin een verschil zit.
Als je Domoticz vai een SD kaart draait zou je een image kunnen maken van je SD kaart en daarna voor de test upgraden naar de beta versie. Als het dan wel werkt weet je gelijk waar het probleem zit.
Als je klaar bent met testen en je wilt terug naar de stable dan zet je de image weer terug op SD.
Nu moet ik er wel bij zeggen dat Domoticz hier inderdaad niet heel overzichtelijk werkt en eigenlijk valt mij dat zwaar tegen. Ik wil tzt dit gaan omzetten naar
Grafana icm InfluxDB aangezien het grafiek deel niet denderend is in Domoticz.
En denk ook sterk om tzt over te stappen op HA omdat dit veel meer bied al is het instellen ervan weer een stuk lastiger. Maar eenmaal dat deel draaiend dan is iets toevoegen vaak weer veel eenvoudiger.
Ik gebruik nu ook vaak mijn.energieinzicht.nl om een eenvoudig overzicht te krijgen en hoef je helemaal niets voor in te stellen alleen toestemming geven om 1x per dag je gegeven van je meter uit te lezen.
Hoi Michel,
Las nog ff je reply terug. En wil nog ff melden dat je DSMR-logger script prima werkt.
Bedankt hiervoor.
Mvgr, Bauke
Beste Willem,
Ik kan de Domoticz aansluiting (script van Michel) niet meer op GitHub vinden.
Is dat niet meer beschikbaar? Een alternatief zou zijn een MQTT oplossing maar dat is lastig omdat Domoticz al specifieke kenmerken in het bericht wenst (idx). Niet bepaald een nette ontkoppeling van pub en sub.
Hi Bauke,
Hij staat gewoon op github hoor!
Onder “Koppelingen”.
Ok. Gevonden. Bedankt.
Bedankt voor je mooie project!
Bauke,
Ik zoek me rot, maar kan dat script niet vinden. Ik wil graag de DSMR logger ook in Domoticz integreren.
Hier kun je alle documentatie vinden.
Leuk idee!
Ik heb er van de week 1 besteld, alles netjes gesoldeerd en aangesloten via een FTDI232-plankje… maar het uploaden werkt niet. Ik krijg de volgende fout:
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
Nu lees ik online dat dit komt omdat de ESP niet in flash-mode komt…
Ik zie ook geen enkel verschil tussen de normale mode en de flash mode. Het LEDje blijft branden, maar knippert nooit ofzo. Ik druk zoals in de doc, eerst op flash, dan reset, dan eerst reset loslaten en dan flash. Niks, nada, noppes.
Wat doe ik verkeerd?
Hi PimB,
Als we ervan uitgaan dat je bij het solderen niets fout hebt gedaan, dan is de enige fout die ik kan bedenken dat je de TxD en RxD lijnen niet goed hebt aangesloten. Tx van de FTDI moet naar de RxD van de DSMR-logger en de Rx van de FTDI moet naar TxD van de DSMR-logger!
Kun je dat nog eens controleren?
Gedaan, met meerdere FTDI-plankjes. No rock n’ roll.
Ik ga het eens op een Windows-laptop proberen, ik heb wel vaker problemen gehad met Arduino op de Mac.
PimB,
Wat vervelend.
Je kunt inderdaad niet zien of de ESP-12 in Flash- of Normale-Mode zit maar onder normale omstandigheden moet het allemaal toch vrij probleemloos gaan (ik werk zelf uitsluitend met MacOS).
Als je er toch niet uitkomt moet je de DSMR-logger maar naar mij opsturen. Dan probeer ik hem voor je aan de praat te krijgen.
“Failed to connect to ESP8266: Timed out waiting for packet header” -> FTDI bordje levert waarschijnlijk onvoldoende power op zijn 3V3 uitgang. Met een losse 3V3 voeding was het probleem bij mij opgelost.
Thanks for sharing!
Hier is mijn 3d behuizing met display te vinden.
Dag Willem
Ik heb zojuist versie 4.7 geinstalleerd. MQTT werkt. Dat is al mooi. Dat ziet er zo uit:
De meeste waardes zijn nul. Geen idee wat daar de oorzaak van kan zijn. Ik heb een Telnet sessie gestart maar dat geeft geen verder inzicht. Is e.e.a. het gevolg van het hebben van een Belgische meter? Kan ik meer debug info in Telnet boven water krijgen?
Jos,
Als de SM bepaalde waarden niet geeft, dan zijn ze uiteraard “0”.
Kun je in telnet een paar “raw” telegrammen opvangen? Dit doe je met invoer van de letter “p” (had ik als reactie op je eerdere comment ook al aangegeven).
Ik ben benieuwd wat voor telegrammen je binnen krijgt!
Als je in telnet op [Enter] drukt krijg je een menu met mogelijkheden te zien. “v” geeft verbose output, nog een keer “v” nog meer output.
Ook de documentatie geeft veel informatie!
Misschien ook handig om de Board Info uit te vragen.
Tenslotte: wat voor merk en type SM heb je?
Dag Willem,
Dank voor jouw bericht. Ik had al wel naar dde Telnet info gekeken. Hieronder de Board info:
Hieronder een paar telegrammen.
Mijn meter is van het merk Sagemcom uit de serie Siconia, type T211. Drie fasen meting.
Willem , Hierbij het resultaat dat ik heb verkregen :
telnet P = [ 14736] websocketEve( 49): [0] Got message: [tabActual]
Dit elke 10 seconden
telnet B = hierbij krijg ik de volledige board info zoals beschreven in handleiding.
ik heb hiervan een printscreen genomen . Ik zo deze kunnen bezorgen , maar gaat niet via deze weg.
Groetjes Bart
Of het een mooi kastje is geworden, mogen anderen beslissen.
Het resultaat werkt voor mij prima!
kan je voor mij ook zo`n kastje printen?
en zo ja wat wil je er dan voor hebben?
groetjes marco
Dag Willem ,
Ik heb het printje met display besteld en geïnstalleerd op een slimme meter in België.
Alles start op maar ik krijg geen telegrammen binnen op het printje. Nu heb ik wat opzoeking gedaan naar de meter en hier vermeld men het volgende:
4.3 Fysieke interface
De gebruikerspoort wordt ingericht volgens het Nederlandse concept, nl. DSMR 5.0.2 P15.
De fysieke en protocolimplementatie van de gebruikerspoort voldoet aan de specificaties beschreven in Hoofdstuk 5 en 6 van het document DSMR 5.0.2 P1 companion standard.
4.4 Software interface
De ter beschikking gestelde gegevens op de gebruikerspoort wijken licht af van die in Nederland (e.g. afsluitstatus). Dit komt door marktverschillen tussen Nederland en Vlaanderen. Hierdoor zijn de mogelijkheden van de digitale meter dus licht anders.
Omdat bepaalde data-objecten uit de minimale ter beschikking gestelde gegevens niet beschreven staan in sectie 6.12 van DSMR 5.0.2 P1, werd een uitbreiding aan deze sectie toegevoegd. Deze uitbreiding en een aantal andere nuances zijn beschreven in het specificatie document (eMUCS – H). Via de website van netbeheerder Eandis6 kun je dit document downloaden.
Kan ik de software aanpassen zodat dit werkt?
groetjes Bart
Bart,
Kun je inloggen met telnet en dan de letter “P” intoetsen?
De output die je dan krijgt (de ‘raw’ telegrammen’) zou ik graag van je ontvangen.
Ook de output die met de letter “B” krijgt ontvang ik graag ..
Maar natuurlijk kun je de dsmr library aanpassen conform de beschrijving.
Van mij moet je niet al te veel hulp verwachten want de bibliotheek is in C++11 geschreven en .. daar snap ik echt niets van.
Wellicht kan Matthijs je verder helpen (zie de arduino-dsmr library op github).
Dag Willem,
Vanmorgen heb ik deze print gesoldeerd en (met externe voeding) aan het werk gekregen. In de beschrijving (bij ‘vragen en antwoorden’) wordt daartoe isolatietape over de witte draad geplakt. Bij doormeten bleek dat ik juist de blauwe draad moest afplakken. Ik heb een Iskra AM550 meter, maar dat zou niet uit moeten maken, lijkt me. Het komt wel overeen met de beschrijving van DSMR5, waarin juist de blauwe draad pin 1 is. In ieder geval werkt het nu wel.
Ik zie in je documentatie een mooie 3D afbeelding van het complete bord. Ik heb een begin gemaakt met een ontwerp voor een nette behuizing. Is de 3D file beschikbaar om het ontwerp goed te kunnen afmaken?
Alvast bedankt,
Allart
Hallo Allart,
In de documentatie staat ook dat je een RJ11 (6p4c) of RJ10 ‘telefoonhoorn’ (4p4c) kabeltje kunt gebruiken. Het gaat inderdaad om het isoleren van pin1 (die is gestandaardiseerd ‘wit’).
Gerard is begonnen aan een 3D kastje (heeft hij ook voor de DSMR-logger V3 gemaakt) maar tijdgebrek heeft ervoor gezorgd dat die nog niet af is (ik zal morgen zijn ongeprinte, ongeteste versie op github zetten).
Er bestaat geen 3D model van de DSMR-logger. Mocht je toch een mooi kastje ontwerpen dan hoop ik dat je die met ons wilt delen.
Hi,
Allereerst mn complimenten ik vind dit een erg mooi project geworden. Gisteren het soldeer werk af gekregen. Het flashen ging goed, dat data upload ding ging wat minder soepel maar uiteindelijk is dat ook gelukt:)
Anyway, ik ben vooral geintresseerd in dit werkend te krijgen in Domoticz, maar ik ben geen (lua) scripting ninja. Ik blijf rond het IDX verhaal hangen. Moet zo’n var niet ook een type mee krijgen?
en dan lines
bvd,
jen
Beste Jen,
Je kunt het beste contact met Michel opnemen. Hij heeft de intergratie gemaakt.
@Jen,
Sorry ik zie dit nu pas en krijg geen melding als er een reactie is.
Mocht het nog niet niet werken dan komt dit waarschijnlijk om je in regel 37 en 38 het IDX hebt ingevuld op de verkeerde plek.
De namen kun je beter niet aanpassen want dan komen die niet meer overeen met de rest.
Timestamp_164 = moet zijn Timestamp_IDX = 164
Je verwijderd dus de — en achter het = teken vul je het IDX nummer in.
Dit herhaal je voor elke regel die je wilt opnemen in Domoticx en waar je een dummy voor hebt aangemaakt.
@michel en ik zie t nu pas;)
Dat had ik als eerste geprobeerd maar ik bleef vage errors houden. Assert faalt kennelijk niet erg gracieus. Lang verhaal kort ik had bovenin het script nog staan
21 Firmware = "DSMRlogger2HTTP"
en bij mij moet dat kennelijk Websockets zijn dus nu doet ie t een stuk beter. Super bedankt voor je script, ondertussen heb ik weer wat geleerd.
hoi,
ik heb hier exact hetzelfde en krijg geen dat binnen in domoticz.
met deze error in het log:
2019-09-13 22:44:00.778 Error: EventSystem: in P1 esp Module: [string “- …”]:1: unexpected symbol near ‘-‘
Hi Marco,
Dus het flashen van de firmware is uiteindelijk gelukt?
Wat heb je anders gedaan waardoor het nu wel ging?
Dag Willem
Ik heb de print met display in elkaar gezet de software gecompileerd en geflashed. Alles lijkt op het eerste gezicht te werken met de Belgische meter. Ik heb de logger nu een klein uurtje aan de meter hangen maar -Power en +Power op het display blijft nul Watt. Ook op de URL is de actuele data overal nul. Wel zie ik waardes bij Energie verbruikt, Energie teruggeleverd, Verbruik T1 en T2, Levering T1 en T2. Van de actuele gegevens is enkel de spanning ingevuld en stroom ingevuld (zonder cijfers achter de komma).
Kun je op basis van bovenstaande beoordelen of het P1 protocol compatible is?
Ik zou nu verder willen gaan met MQTT en Node-RED. Beschik je over een voorbeeld waarbij de totalen uit de logger eens per minuut als tele message gestuurd worden?
Beste Jos,
[ik heb je comment verplaatst]
Als de waardes die je bij Verbruik en Teruglevering ziet overeenkomen met wat je daadwerkelijk verbruikt (je kunt daarvoor het beste de meterstanden controleren met de meterstanden in de tabellen) dan werkt de Belgische meter met eenzelfde soort protocol. Blijkbaar geeft hij echter geen actueel verbruik door. Je kunt kijken hoe een binnenkomend telegram eruit ziet door met telnet op de logger in te loggen en dan het commando “P” te activeren. Je ziet dan de “raw” binnenkomende telegrammen voorbij komen.
Ik begrijp niet wat je met “Ook op de URL is de actuele data overal nul” bedoeld. Worden alle andere rubrieken wel gevuld? Worden de Charts gevuld?
Mocht jouw meter inderdaad het actuele verbruik niet doorgeven, dan kun je die berekenen aan de hand van de spanning en de stroom, maar dat is niet heel nauwkeurig.
MQTT zit binnenkort standaard in de firmware (waarschijnlijk in V0.4.6) .
Wat bedoel je met “tele message”? Gegevens uitlezen via de restAPI moet je van buiten de DSMR-logger initiëren.
Beste Jos,
In versie V0.4.5 zit een optie om de Power te berekenen als de SM deze niet geeft.
Dit is de code daarvoor:
Deze code moet je in de functie
processData(MyData DSMRdata)
opnemen na/*--update data set's--*/
en vóór de bepaling van demaxPower
velden.Hoi Willem,
Top project!
Gisteren avond V4 bouwpakket besteld plus display en vanmorgen geleverd.
Binnen een half uur in elkaar gezet en gekoppeld aan mijn Homey.
En alles werkt in 1 keer.
Nog wel een kleine uitdaging te gaan omdat ik mij P1 signaal heb gesplitst naar mijn laadpaal en nu met het data request even uit vogelen wie ik de master laat zijn. Mijn voorkeur gaat uit om het signaal continu hoog te laten staan.
Albert,
Dank voor het compliment!
Als je de Data Request line (vanuit de DSMRlogger) continue “hoog” wilt maken moet je deze aanroep:
P1Reader slimmeMeter(&Serial, DTR_ENABLE);
veranderen in:
P1Reader slimmeMeter(&Serial, 0);
en ergens aan het einde van
setup()
dit toevoegen:digitalWrite(DSR_ENABLE, HIGH);
Heb jij de Homey intergratie ontwikkeld? If so, wellicht goed om daar op deze site melding van te maken!
Willem,
Ik heb de Homey integratie niet ontwikkeld.
Alle eer is aan Tycho Schenkeveld.
Door zijn Homey app ben ik op jouw site gekomen.
Hallo Albert en Willem,
Ik heb al eerder een post hieraan gewijd maar ben nog niet verder gekomen. Wat ik wil is de slimme meter logger v4 samen met Toon (van Eneco) aan de p1 poort hangen. Recht-toe-recht-aan splitten werkt niet.
Ook heb ik geprobeerd de data-request pin2 voor een van de twee niet te verbinden met de p1. Werkt niet. Ook andersom niet. Heeft iemand hiervoor een oplossing?
Mvrgr, Bauke
Bauke,
Om te beginnen moet je controleren of je telegrammen binnen krijgt als je de DSMR-logger en Toon aangesloten hebt. Ga daarvoor met telnet naar de DSMR-logger en selecteer “Raw telegrammen” (de letter “p” intoetsen.
Als de telegrammen die je dan ziet er “goed” uitzien en Toon werkt ook nog, dan moet je de enable-pin in de
#define DTR_ENABLE 12
aan het begin van de Sketch weghalen (of even verderop “#undef DTR_ENABLE
zetten).De DSMR-logger zal dan geen gebruik meer van de DTR pin maken.
Niet getest, zo uit mijn hoofd.
Succes en laat weten of dit werkt..
Hoi Willem, bedankt voor je snelle antwoord.
De P1-split-met-Toon-situatie is als volgt:
Ik heb al de datalijnen 2,3,4 en 5 uit P1 exact gekopieerd naar beide apparaten (Toon en de logger). in dit geval blijft Toon het gewoon doen en geeft de logger een continu blauw led.
Met telnet (p) zie ik ook geen telegrammen langs komen.
Vervolgens heb ik pin2 niet gesplitst (dus bv wel verbonden met Toon maar niet met de logger) en ook andersom geprobeerd. In beide gevallen op de logger een continu blauw led en geen telegrammen in telnet.
Bauke,
Als ik dit zo lees lijkt het dat de Toon de datalijn zodanig belast dat de DSMR-logger geen data meer binnenkrijgt. Als dat zo is gaat het dus niet werken. Je zult een manier moeten bedenken om de data lijn (elektronisch) te scheiden in een datalijn voor Toon en één voor de DSMR-logger.
Hoi Willem,
By-the-way de splitsing is gewoon een ‘galvanische’ splitsing. Dus niet via opto-coupling.
Dag Willem,
Heb DSMR 4 gelezen en hele V4-pakket ontvangen.
De ondelenlijst bevat optinele onderdelen afhankelijk van welke voltages ik wens uit te lezen. Hoe en waarom zou ik dit willen c.q moeten weten? Heeft dit te maken met het type slimme meter? (landis + gyr E350)
Beste Gert,
De ADC interface is optioneel. De twee weerstanden (R12 en R13) hoef je niet op de PCB te solderen zodat je eventueel op een later tijdstip (als je de interface ergens voor wilt gebruiken) alsnog kunt bepalen wat voor spanningsdeler je nodig hebt.
Zie ook deze pagina.
OK, vanmiddag dan eindelijk de schakeling gebouwd, op gaatjesprint met een Wemos D1 mini.
Probleemloos werkend.
je hebt aardig wat in die ESP weten te stoppen 🙂
Hi Ed,
Fijn dat je het kunt waarderen.
Heb je gebruik gemaakt van zo’n 1of!-Wemos board met bijbehorende 1of!-Expirimenteer board?
Nee, standaard wemosD1 met run off the mill gaatjesboard
Jammer 😉
Hoi Willem,
Ik heb je printje gesoldeerd en webpagina etc laad correct.
echter ontvang ik geen telegrammen.
Mijn meter:
Kamstrup 162 1-fase kleinverbruik RJ-11, 4-pins DSMR 2.2 9600 7E1
Ik heb bij serial.begin aangepast naar 9600, SERIAL_7E1, de connectie van het kabeltje richting de meter heb ik aan moeten passen omdat volgens het www pin 1 van de meter links begint en niet rechts. Kun je mij helpen om het printje werkend te krijgen.
Jordy,
Ik heb géén ervaring met meters die niet aan DSMR 4.0 of hoger voldoen en de Kamstrup 162 is er daar helaas één van…
Blijkbaar heb je zelf al het nodige onderzoek gedaan. Je hebt zelf al ontdekt dat er een RJ10/RJ22 (4P4C) kabeltje nodig hebt. Omdat de vier aansluitingen overeenkomen met de binnenste vier aansluitingen van de door de DSMR-logger gebruikte RJ12 (6P6C) connector kun je een standaard telefoonkabeltje met aan beide uiteinden een RJ10/RJ22 stekker tussen de Slimme Meter en de DSMR-logger gebruiken.
Wat je bedoeld met “ik (heb de kabel) aan moeten passen omdat volgens het www pin 1 van de meter links begint en niet rechts” weet ik niet. Het is een “rechte” kabel dus of je van links-naar-rechts of andersom begint met tellen maakt voor de kabel weinig uit.
Anyway: Je hebt de regel
Serial.begin();
inSetup()
volgens mij correct aangepast.Wat je nu nog moet doen is een (USB) voeding (5Volt) aansluiten tussen GND (J8) en +5V(J7) op de DSMR-logger.
Volgens alle logica zou het dan moeten werken!
Wil je een reactie plaatsen met je bevindingen? Daar heeft iedereen dan weer wat aan!
Succes
Hey Willem,
Oké ik ben een stap dichterbij de oplossing.
Ik heb activiteit op de Data pin TX_SM tevens geïnverteerd op RX_SM dus dat werkt. maar nog geen gegevens op de webpagina.
heb de RX pin van de USB >> serial kabel op RX_SM aangesloten om de kijken of ik daadwerkelijk een telegram ontvang en jawel ik ontvang telegrammen. dus tot aan de ESP chip komt alles goed binnen. Dan moet het bijna in de software liggen.
Ik ga alles nog een keer programmeren zoals beschreven staat in de handleiding en kijken of het dan beter werkt.
Alles opnieuw geprogrammeerd, helaas blijft het blauwe ledje aan en knippert niet, nadat verbinding is gemaakt met de WiFi.
In mijn serial monitor programma kan ik duidelijk zien dat ik een telegram ontvang, echter de ESP lijkt niks te zien. Waar zou dit aan kunnen liggen.
En ja ik heb de serial goed ingesteld na het opnieuw programmeren 🙂
Heb je hier inmiddels een oplossing voor gevonden? Ik heb hetzelfde probleem, met twee bordjes en twee verschillende Iskra meters. (een oude type op 9600 baudtrate [Serial.begin(9600, SERIAL_7E1); ] en een nieuwe op 115200 / standaard instelling.) Het seriële signaal op de processor pin heb ik afgetapt en komt netjes binnen.
M’n P1 kabeltje van Ali geeft overigens op beide meters ook een goed resultaat.
Op het Oled blijft de melding staan”‘OK found, DSMRlogger.html, continue normal operation..”
Ook is de DTR pin direct actief vanaf opstarten.
De webserver doet het wél en geeft aan dat het free memory heap te laag is (na een paar minuten pas.). Verder geen meter informatie of iets zichtbaar met debug mode. Jammer we hadden ons erg verheugd op het loggen van onze Iskra meters , maar inmiddels weten we niet meer waar we moeten zoeken…
Ferdy,
Ik dénk dat firmware versie 0.4.5 al je problemen oplost.
Wel de documentatie lezen.
Jordy,
DSMRloggerWS v0.4.5 kan Slimme Meters van vóór DSMR 4.0 ‘lezen’!
Hi Willem,
Geweldig product heb je. Inmiddels heb ik mijn V3 werkend en heb ik je nieuwste firmware erop draaien.
Verder heb ik je nieuwe Firmware aangepast zodat het ook MQTT messages verstuurd om de X seconden (of mins). Alles werkt naar behoren en been zeer tevreden.
Echter heb ik een vraag, ik heb zelf niet zoveel verstand van JS en kan dus niet helemaal alles reverse lezen/begrijpen.
De data die ik heel graag wil staan in de files.
– Energy Delivery Gisteren
– Energy Delivery Afgelopen Maand
– Energy Delivery Afgelopen year
– Energy Delivery Vandaag
– Energy Delivery Huidige Maand
– Energy Delivery Huidig Jaar
Kan jij mij wellicht vertellen hoe ik de files goed kan uitlezen zodat ik de juiste data mee kan sturen in mijn MQTT messages?
Ik hoor graag van je,
Wytse
Beste Wytse,
Dank voor het compliment.
De gegevens die jij naar je MQTT broker wilt sturen zijn niet standaard voorhanden in de Slimme Meter.
Maar je kunt ze natuurlijk wel berekenen. Daarvoor moet je (voor het verbruik huidige jaar) het record in PRDmonths.csv van december 2018 lezen. De key is “1812”. In dat record staan de eindwaarden van einde 2018 als “EDT1” en “EDT2”. Vervolgens lees je in hetzelfde bestand record 1 (dat is altijd de actuele periode) en daarvan trek je de waarden die je per december hebt opgeslagen af om het jaarverbruik tot nu toe te bepalen.
In pseudo code:
Voor de gegevens per dag werkt het hetzelfde. Voor PRDdays.csv is de key YYMMDD (190528 is 28 mei 2019) en ook in dit bestand is record 1 (niet record 0!!) de actuele dag (vandaag dus). In het uren bestand (PRDhours.csv) is de opbouw van de key YYMMDDHH (woensdag 17 juli 2019 00:00/24:00) heeft als key "19071700".
Ik hoor graag of het lukt en wellicht kun je je MQTT aanpassingen delen.
Hi Willem,
Thanks voor je reply, ik ga hier zeker naar kijken en hopelijk dit weekend al.
Natuurlijk kan ik mijn MQTT aanpassing delen. Je kan mij het beste een email sturen waarop ik kan reageren met de txt file.
Groeten,
Wytse
Dag Wytse
Ik ben op zoek naar een MQTT koppeling tussen de logger en mijn Node-RED toepassingen. Ik begrijp dat jij dat al min of meer aan de praat hebt. Ben je genegen deze informatie met mij te delen?
Met vriendelijke groet
Jos
Beste Willem,
Wat een ontzettend gaaf project.
Kun je dit project ook gebouwd en geprogrammeerd kopen? bouwen lukt wel maar op het gebied van programmeren schiet mijn kennis echt te kort.
Verder wil ik weten hoe eenvoudig/lastig het is om met andere applicaties de logger uit te lezen. Ik wil hiervoor de applicatie DSRM-reader gebruiken, een project van Dennis Siemensma (https://github.com/dennissiemensma/dsmr-reader).
Verder kan ik niet 1,2,3 vinden hoe je de wifi module aan je eigen netwerk kan koppelen.
Moet je dit hardcoded inbrengen?
Andere vraag mbt veiligheid, plannen om telnet te vervangen door ssh?
Groet,
Wouter Iliohan
Wouter,
Ik stuur je een PM
Dag Willem, ik vind dit een geweldig project en ik wil graag zelf een DSMR-logger bouwen. Echter, ik woon in België en in Vlaanderen wordt een meter van Sagemcom toegepast. Deze meter beschikt over twee user poorten P1 en P2. Voor zover ik kan beoordelen komt de informatie sterk overeen met de meters zoals die in Nederland toegepast worden. Weet je of de logger met de Sagemcom meters werken zal?
In mijn huis gebruik ik een Raspberry Pi met Node-RED en MQTT. Kan ik de DSMR-Logger voor mijn MQTT broker configureren?
Beste Jos,
Ik heb geen ervaring met Slimme Meters in België. Wat ik over de Sagemcom meter gelezen heb is dat hij óók in Nederland gebruikt wordt en dán zou het, door de P1 poort, gebruikte protocol overeen moeten komen. Eventueel navraag doen bij de Energie/Slimme Meter leverancier over het gebruikte protocol en of de Slimme Meter 5Volt bij 250mA kan leveren.
Alleen door het echt te proberen kunnen we zekerheid krijgen 🙁
Integratie met MQTT is zeker mogelijk (op meer dan één manier). Lees bijvoorbeeld dit artikel.
Ik hoor graag van je wat je bevindingen zijn!
[29-07-2019]
MQTT is gepland voor firmware V0.4.6
Dank je wel Willem! Ik heb zojuist de kit besteld en ik zal je op de hoogte houden van mijn bevindingen.
Beste Willem,
Mooi project, zou het graag gaan proberen (en er 1 bestellen)
Heb eerst gekeken of mijn smart-meter het zou kunnen ondersteunen. Daar loop ik tegen een probleem aan. De rj12 connector is in gebruik, en verzegeld. Er hangt een M bus RF module aan.
Is er dan een andere manier om aan de gegevens te komen?
Alvast bedankt,
Bas
Bas,
Heeft er vóór jou iemand anders in je huis gewoond?
Het zou een RF module kunnen zijn die de telegrammen op de band van o.a. Klik Aan Klik Uit verstuurd. Daar heb je dan weer een ontvanger bij nodig die je op een computer kunt aansluiten en waarmee je vervolgens de gegevens naar een domotica systeem kunt sturen.
==============================================
Ik heb even wat DSMR documentatie doorgelezen en dénk dat die M bus RF unit in P2 of P3 zit.
==============================================
Er moet ook nog ergens, onder een kapje een P1 poort zijn…
Anders eerst even contact opnemen met je energie leverancier.
Dank voor je snelle reactie!
Jazeker – Maar weet niet of die dat daar heeft neergezet.
Weet wel dat het uitlezen van de meters remote gebeurd. Dus ging er eigenlijk vanuit dat het hiervoor is.
Zag ook de optie om een rj12 splitter te gebruiken. Dat zou alleen werken als het idd een P1 is. Ik ga nog eens goed kijken, en evt een fototje maken.
Bas,
Een RJ12 splitter kun je niet gebruiken!Ik wéét niet of dat kan …
Hallo Willem,
Een zeer gedegen stuk werk.
Tot mijn verbazing echter kreeg ik massas fouten in de compilatie, hoofdzakelijk van het type: “was not declared in this scope”, en het lijkt voornamelijk met de datum en tijd te maken te hebben.
Heb daarom de Time library opnieuw geinstalleer en ook maar, maar geen verschil.
Ik gebruik de 2.5.2 core voorde ESP
Enig idee waar ik de fout moet zoeken?
Hartelijk dank
IK hecht de foutmelding aan, sorry, het is best lang
==================================
Ed,
Het lijkt erop dat je niet de hele map met sources hebt over gezet.
Heb je dit helemaal gelezen en uitgevoerd?
Anders zou ik het zo snel niet weten.
Dank voor je snelle antwoord.
Dat heb ik inderdaad gedaan, de Zip gedownload van de link die jij aangaf en dat uitgepakt. Zelfs nog eens opnieuw geprobeerd, maar zelfde resultaat.
Ik zal het allemaal nog eens goed nalopen en kijken of ik inderdaad alle files heb, maar aan downloaden en uitpakken kan toch niet zoveel verkeerd gaan. Ik hou je op de hoogte
OK, goed nieuws. Doet het. Wat was er mis?? weet het niet:
Andere computer, verse installatie van Arduino IDE, opnieuw libraries en programma gedownload en geinstalleerd. Deze keer gecompileerd zonder de beeldscherm optie -> gaat goed.
Wat nu het probleem was, ik weet het niet. Misschien dat mijn ‘oude’ IDE omgeving toch een beetje in de war was (Miljoen programmas, miljard libraries)
Afijn, ik kan weer verder, en nogmaals complimenten over je gedegen werk
OK, feedback, ik denk dat ik het probleem gevonden heb: De IDE. Op mijn standaardcomputer gebruik ik versie 1.9.0, een ‘Nightly build’. De ‘maagdelijke’ computer waar het uiteindelijk wel op lukte had IDE 1.8.9
Terug naar mijn standaardcomputer en daar IDE 1.8.4 en IDE 1.8.9 geprobeerd -> succes.
Me dunkt dat de bouwers van de ‘nighly build’ toch een paar steken hebben laten vallen ‘s nachts.
Verklaart misschien ook wat compilatie problemen in andere programmas.
Nogmaals: fantastische software, echt uit de kunst, maar ik ga misschien nog een koppeling naar GoogleSheet toevoegen
Ed,
Als je zo’n koppeling naar GoogleSheets werkend heb ben ik geïnteresseerd hoe je dat gedaan hebt. Misschien kunnen we het standaard in de firmware integreren..
ik hou je op de hoogte
Hoi Willem,
Enig idee wat er hier fout gaat? Ik krijg de Schets niet geupload. Het lijkt eerst goed te gaan.
Dit zijn de laatste regels van de foutmeldingen:
Theo,
Werkt het uploaden van bijvoorbeeld ‘blink’ wel naar een ‘gewone’ Arduino (UNO)?
Kun je de blink sketch naar een ESP8266 uploaden?
Zou het kunnen dat je niet de laatste versie(s) van de esptool.py en upload.py gebruikt?
Heb je de goede versie van python geïnstalleerd (ik heb geen Windows en heb ook geen idee of je dat handmatig moet doen of dat python al standaard geïnstalleerd is).
Sorry voor mijn late reactie, maar de laatste tijd nog al druk gehad. Nu eindelijk weer wat tijd om met de logger te testen.
Heb het probleem kunnen oplossen. Zodra de arduino tool echt begint met wegschrijven opnieuw de flashmode activeren en dan gaat het wel goed!!
Hij heeft nu een weekje goed gedraaid, maar heb nu een ander probleem. Ik zie in de webinterface bij het tabblad ‘charts’ geen grafiek meer. En als ik in de webbrowser ‘http://ip-adres logger/getActual.json’ ingeef, krijg ik alleen maar een melding: FileNotFound
Enig idee wat dit kan zijn?
Mvg Theo.
Hi Theo,
Ik heb geen idee waarom je charts niet meer werkt. Je kunt proberen de data map opnieuw te flashen (esp8266 data upload tool) maar dan raak je wel je opgebouwde historie kwijt (behalve als je die eerst met de FSexplorer op je computer bewaard en later weer terug zet.
Je kunt ook met de FSexplorer de .js files opnieuw uit de data map naar de DSMR-logger uploaden. Let er dan op dat de grootte ongeveer gelijk is met die op je computer.
Als dat ook allemaal niet werkt dan de firmware opnieuw flashen maar dan eerst met de optie “erase all flash”. Daarna de data uploaden en bij het opstarten je WiFi credentials weer invoeren.
Ik weet niet zo goed wat ja wilt doen met dat json file.
Misschien moet je de documentatie van de restAPI even lezen.
Succes
Goedemiddag,
Na het uploaden van de nieuwste firmware (v1.0.3) zijn de grafieken weer terug!
En wat betreft de restAPI, hier had ik de verkeerde link gebruikt. Het moet natuurlijk ‘http://x.x.x.x/restAPI?get=Actueel’ zijn.
Bedankt voor de snelle reacties!!
Mvg. Theo
Hoi Willem,
Dank voor het vlotte antwoord. Jawel, de opwek van mijn zonnepanelen wordt doorgegeven aan mijn slimme meter, maar die trekt de opwek meteen af van het eigen gebruik en rapporteert alleen het netto resultaat. Om inzicht te krijgen in wat de zonnepanelen daadwerkelijk hebben opgewekt en wat daarvan meteen achter de meter is opgebruikt aan eigen verbruik heb ik een aparte kWh meter die alleen mijn zonnepanelen uitleest.
Dit is een B+G e-tech drs155dc meter met een puls uitgang (S0) die 1000 pulsen afgeeft per gemeten kWh, zie https://bg-etech.de/download/manual/DRS155DCV3.pdf
Volgens mij zijn die pulsen 5V en die lees ik nu in met mijn Arduino Mega. Omdat ik een nieuwe slimme meter heb gekregen (Sagemcom T210-D), kan mijn Arduino Mega die nu het programma Solarmeter van WijHebbenZon draait de baudrate van 115200 niet meer bijsloffen en moet ik dus naar een nieuwe oplossing zoeken.
Hallo Willem,
Wat een mooi ontwerp en wat een hoop functionaliteit op zo’n klein bordje. Ik overweeg er een te bestellen, maar ik heb toch nog een vraag. Ik heb een S0 (kWh puls)meter in mijn meterkast voor het opmeten van de opgewekte energie van mijn zonnepanelen. Dat doe ik dus niet met een AC Stroom Sensor zoals jij dat hierboven voorstelt. Is het toch mogelijk om de S0 pulsen ergens op jouw DSMR logger V4 in te lezen? En de pulsen van mijn watermeter?
Vriendelijke groeten,
Hans
Hoi Hans,
Ik denk wel dat dat mogelijk is. De ESP8266 heeft tijd (cycles) genoeg over om extra functionaliteit toe te voegen. Zo’n puls zou via een interrupt eenvoudig te realiseren zijn.
Begrijp ik goed dat jouw zonnepannelen niet via de Slimme Meter hun energie doorgeven?
Ik ben benieuwd naar hoe die SO pulsen “werken”.
Hallo Willem,
Ik heb al heel leuk de box 3d geprint(als beginnend printer al leuk gedaan).
Maar ik heb eigenlijk Versie2 bordje gekocht.
Mijn vraag is dan ook is daar ook een .stl bestandje van gemaakt?
En mag ik dat dan? graag
Met vriendelijke groet, Ruud
Hi Ruud,
Ik heb geen 3D boxje voor de DSMR-logger versie 2
Goedemorgen Willem,
Waar kan ik de v4 printplaat of het bouwpakket bestellen?
Mvg,
Mark
Mark,
Je kunt hier een complete kit bestellen!
Grtz.
Beste Willem,
Ik zag op Github dat er een updates zijn van bestanden. Moet ik nu voor de V3 hardware alles op dezelfde manier flashen zoals de eerste keer en mijn meterstand eerst veilig stellen of is het toch ook OTA mogelijk. Via de instelling is de knop namelijk grijs en niet klikbaar om de firmware bij te werken.
Dit stuk is mij niet echt duidelijk.
Hoi Michel,
Heb je de documentatie gelezen?
Je moet de nieuwe firmware inderdaad bedraad flashen en óók de data map moet je bedraad flashen (nadat je de aanwezige bestanden eerst handmatig veilig hebt gesteld).
Als je de DSMRloggerWS firmware op de V3 hardware wilt gebruiken zijn er een paar zaken waar je op moet letten.
1)
OTA flashen kan niet omdat de nieuwe firmware te groot is voor de overgebleven ruimte.
2)
Voor SPIFFS moet je meer ruimte reserveren dan bij de DSMRlogger2HTTP firmware nodig was omdat de bestanden groter worden en er meer bestanden op SPIFFS worden opgeslagen.
3)
De lay-out van de bestanden is helemaal anders geworden. Je kunt de oude bestanden dus niet gebruiken. Het is wél mogelijk om de gegevens uit de oude bestanden in de “nieuwe” te stoppen (handmatig) maar dat is best wel veel werk omdat voorheen de meterstanden voor tarief 1 en 2 bij elkaar opgeteld werden terwijl ze nu apart worden opgeslagen. Je kunt de gegevens die je nu al hebt natuurlijk allemaal als tarief 1 opslaan en dan de huidige meterstand voor tarief 2 overnemen in de hele historie. Je kunt ook met de ingebouwde editor de gegevens in de maanden tabel (handmatig) invoeren.
Eén van de bouwers (Pim) heeft intensief onderzoek gedaan naar de werking van de logger firmware in combinatie met een PUYA flash chip en de uitkomst daarvan is dat, hoewel de PUYA patch in combinatie met de DSMRlogger2HTTP firmware prima werkt, dit niet het geval is met de DSMRloggerWS firmware!
Als je eenmaal de DSMRloggerWS firmware op je DSMR-logger hebt geflashed en er komt een update van deze firmware, dan hoef je de data niet opnieuw te flashen (behalve als dat in de documentatie expliciet gemeld wordt).
Ik hoop dat je er met deze uitleg uitkomt!
Had ik inderdaad gelezen maar was mij toch niet helemaal duidelijk. Nu wel dank hiervoor
Willem,
Ik heb een script gemaakt voor Domoticz die zowel voor firmware V3 als V4 zou moeten werken.
Hi Michiel,
ik heb een vraagje: zie comment
wellicht is de gitpage hier ook een betere plek voor.
groet,
jen
Hallo Willem,
Dank voor de software. Ik ben erg tevreden met het resultaat van de V4 tot nu toe. Ik ben geen software man, dus blijf verdere ontwikkelingen gewoon volgen.
Aansturen van de DTR heb ik opgelost met 2 transistoren: BC550 (npn) en BC557 (pnp).
Helaas is hier geen plaatje mogelijk, maar BC550/b wordt aangestuurd uit Arduino middels 4k7/10k weerstands deling naar aarde. BC550/e ligt aan aarde. BC557/b wordt aangestuurd vanuit BC550/c via weerstandsdeling 4k7/10k naar +5V. BC557/e ligt aan +5V. BC557/c gaat naar pin2 van slimme meter.
Werkt perfect! Doe er je voordeel mee.
Verder heb ik twijfels of alles goed gaat werken met het voorgestelde circuit voor het meten van de stroom geleverd door panelen. Heb je daar al ervaringen mee?
Groetjes,
Tony Seesing
Tony,
Nog geen ervaring met de ADC, maar het is erg standaard. Met de goeie ring module moet het werken. Wel moet je zelf de firmware aanpassen zodat hij ook iets met de meting doet.
Hallo Willem,
Ik heb ondertussen een aantal stappen gemaakt. Ik wil dit graag aan je uitleggen maar ik heb het idee dat dat hier niet de juiste plek is. Kan je mij een mail sturen waar ik op kan reageren met mijn bevonden punten.
De logger start ondertussen op met de V4 software en de PUYA flash chip. alleen het schrijven naar de chip werkt nog niet goed.
Hoor het graag!
Pim
Pim,
Kijk hier in de documentatie m.b.t. de PUYA chip!
Sinds vandaag ook een slimme meter gekregen en jouw project al tijdje geleden gebouwd, versie V3. Aangesloten en vol spanning kijken of het werk en draait perfect.
Nu zag ik dat je bezig bent met alweer V4. Kan ik de nieuwe software ook gebruiken op een V3? Volgens ESP-DSMR info heb ik 1Mb flash chip.
Mij is dat niet geheel duidelijk welke ik dan kan gebruiken en kan dat ook OTA of moet ik hem daar weer voor verbinden en via Arduino flashen.
Tevens de vraag of er info is hoe ik deze kan koppelen aan Domoticz. Via HA is een mooi stappenplan maar voor Domoticz niet. Misschien heb je daar ook iets over.
Alvast dank voor je reactie en dank voor dit mooie project.
Michel,
Mooi dat de DSMR-logger meteen werkt!
De DSMRloggerWS firmware kan, met een paar beperkingen, ook op een Versie 3 bordje gebruikt worden. Wat niet kan is de RTS hardware, de I2C poort en Data/Firmware Over The Air uploaden. Het flashen zul je dus weer bedraad met de ArduinoIDE moeten doen!
Ik heb geen ervaring met Domoticz maar als je hebt uitgezocht hoe je de logger daaraan kunt koppelen dan hoor ik graag hoe je dat gedaan hebt zodat ik het in de documentatie kan opnemen!
Willem,
Dank voor je reactie. Kun je aangeven wat ik nodig heb om DSMRloggerWS erop te zetten. Ik raak een beetje de weg kwijt met alle bestanden.
Ik had via https://github.com/mrWheel/DSMRloggerWS deze proberen te compileren maar dat ging niet en dacht dan zet ik alleen de DATA bestanden over. Maar dit eindige in een totale puinhoop en toen werkte niets meer. Daarna kon ik nergens meer bij en ook opnieuw de oude DATA bestanden overzetten deed hij wel maar werkte niet meer.
Alles opnieuw geflasht en nu werkt hij weer als V3.
Misschien een kleine handleiding om van V3 naar V4 een upgrade te kunnen doen.
p.s met Domoticz ben ik een stapje verder en mocht dit een werkend script opleveren dan zal ik dit zeker delen met je zodat je ook dit op de site kunt plaatsen.
Dus
Als ik de nieuwe firmware ga compileren krijg ik foutmeldingen en waar kom ik helaas niet achter hoe deze op te lossen.
Michel,
Je gebruikt de esp8266 core versie 2.4.1. De firmware heeft 2.5.0 nodig.
Via boards manager kun je dit updaten.
Verder zijn de meeste meldingen zgn. “Note”s en dus onbelangrijk!
Michel,
Je kunt niet upgraden van DSMRlogger2HTTP naar DSMRloggerWS.
Je moet de hele instructie volgen.
Let er op dat SPIFFS 256kb moet zijn voor deze firmware.
Als je een PUYA flash chip hebt moet je dit lezen!
Willem,
Dat deed het hem. Upgraden naar 2.5.0.
Ik had dit ook gedaan maar omdat het niet lukte met V3 weer teruggegaan naar 2.4.1 en toen kon ik V3 weer flashen.
Nu ging alles in 1x soepel en draait het weer.
Ik mis nu alleen getActual.json en hierdoor kan ik de waardes niet meer uitlezen / testen in Domoticz.
Hi Michel,
Gegevens vraag je nu op met /restAPI
Zal hier in de documentatie!
Hallo Willem,
Ik ben echt razend enthousiast van de logger en heb hem zelf ook al een tijdje in gebruik. Ik gebruik de V3 hardware.
Eerst met de originele V3 software en nu met de nieuwe WebSocket software heb ik succes op mijn ESP01.
Echter heeft een collega een probleem met zijn ESP01. zodra we op zijn ESP01(geen ESP01S) de websocket binary installeren zoals ik die ook heb geïnstalleerd doet de logger het niet, instellingen in de IDE staan correct en het inloggen van de logger op het lokale wifi netwerk gaat ook goed. Echter daarna wil de logger niet meer goed werken. De logger heeft wel verbinding met de router en ik kan zien welk IP-adres de logger heeft gekregen maar hij weigert de verbinding als ik hem benader via een webbrowser. “de host heeft de verbinding geweigerd”. Als ik daarna weer de V3 software installeer doet alles het weer.
Library versies zijn gelijk aan de gespecificeerde.
Het enige verschil wat ik opmerk is dat mijn collega een PUYA flash chip heeft en de mijne niet.
Herken jij dit probleem ook met de websocket software in combinatie met een PUYA ESP01?
Pim,
Ik heb nog niet zoveel ervaring met de DSMRloggerWS firmware in combinatie met de ESP-01. Je schrijft “geen ESP01S”, maar is het er wel een met 1MB flash?
Heb je ook de Flash instelling goed staan [1MB (256KB SPIFFS)]???
Misschien toch een keer de firmware flashen met de optie “All Flash Content” en dan de data er opnieuw opzetten.
Ik raad je aan ook hier te kijken.
Hallo Willem,
Dank je wel voor je antwoorden.
Als ik de oude V3 software installeer dan krijg ik via de “device info” pagina te zien dat het een 1 Mb flash chip is. Ik ga ervan uit dat deze info uit de chip zelf wordt gelezen en dus klopt :).
Verder zijn de SIFFS instellingen zoals jij aangeeft op 256kb gezet(V3 weer terug naar 128kb).
Ik zal vanavond ook nog even de “clear all flash” optie proberen.
Ik zal jouw io pagina ook nog eens goed doornemen. Mocht ik de fout binnenkort vinden dan zal ik het je even melden zodat je hier rekening mee kunt houden.
Nog even het gedrag van mijn fout wat duidelijker in kaart gebracht:
-De blauwe led brand continu.
-De ESP01 heeft verbinding met wifi maar weigert http verbinding
-Ook browsen naar http://FSexplorer weigert de verbinding.
En nogmaals, een klasse stukje techniek wat je hebt gemaakt.
Groet,
Pim
Pim,
Wat een obscure probleem.
Test je beide loggers op dezelfde Slimme Meter? Met dezelfde kabel?
Knippert de blauwe led zoals beschreven vóórdat hij continue gaat branden (dan ontvangt hij geen telegrammen)?
Als je de “niet werkende” ESP-01 in het “wel werkende” bordje prikt, wat gebeurd er dan?
Kun je de logger via telnet benaderen? Als je één of twee keer op “v” drukt krijg je meer/minder “Verbose” output. Wellicht dat er dan meldingen verschijnen die je verder helpen.
Keep me Posted!
[Ondertussen de PUYA chip oplossing in de documentatie opgenomen]
Hi Willem,
> [Ondertussen de PUYA chip oplossing in de documentatie opgenomen]
Ik neem aan dat je bedoelt https://mrwheel.github.io/DSMRloggerWS/PUYA_patch/ ?
Ik zie de oplossing daar niet.
De oplossing is namelijk om in het “platform.txt” bestand ” -DPUYA_SUPPORT” toe te voegen aan de regel die begint met:
compiler.cpp.flags
En daarna alles opnieuw compileren.
“platform.txt” vind je normaliter in:
c:\Users\\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.2\platform.txt
Zie ook https://github.com/esp8266/Arduino/issues/4061 .
Mvg,
Erik,
Helaas werkt de door jou aangehaalde “oplossing” niet (betrouwbaar). Dit is waarschijnlijk een gevolg van het gebruik van “seek” bij het schrijven naar SPIFFS, hoewel ik dat niet zeker weet. In ieder geval lijkt of blijkt de DSMRloggerWS firmware niet goed op een ESP-01 met Puya chip te werken. Heb je toch zo’n Puya chip dan zou ik die vervangen door een 4MB flash chip. Dan kun je ook OTA updaten met een rev.3 bordje.
Ziet er erg goed uit
Thanks
Complimenten Willem, het ziet er allemaal perfect uit.
Wacht met spanning op de upgrade en dan solderen maar.
Groet
Sjors
Dank je.
Binnenkort als kitje bij opencircuit.nl te bestellen.
Beste Willem,
Complimenten het ziet er allemaal netjes uit.
Heb ook interesse in het artikel dus wacht toch maar even op versie 4.
Hoop dat die gauw te leveren.
Met vriendelijke groet
Sjors
Thanks!
Kitjes zijn één dezer dagen bij opencircuit.nl te bestellen!
Beste Willem,
Met veel interesse heb ik je artikel gelezen. Mijn complimenten hoe goed alles er uit zien.
Ik ben zelf ook bezig met het maken van een schema in KiCAD om mijn meter te koppelen via een ESP-12F aan domoticz. De ESP-12F wordt dan gebuikt als P1 Wifi Gateway.
Twee kleine opmerkingen:
1. Data Request Circuit
De weerstand R4 150 ohm, lijkt mij aan de lage kant. Een GPIO pin kan maximaal 12mA leveren. 3,3v – 0,6v = 2,7v -> 2,7v / 150 ohm = 18mA. Mijn tip is 270 ohm te gebruiken. Ik ga zelf deze optocoupler gebruiken: PC817.
R5 is strikt genomen niet nodig denk ik.
2. Level-Shift inverter
Helaas wordt de Data_GND gedeeld door de twee optocouplers in de meter. Anders was het helemaal simpel geweest.
Ik denk zelf dat R7 kan komen te vervallen en ik zou R6 verhogen naar 5K6.
Ik ben erg benieuwd naar je reactie! Mogelijk zie ik met mijn opmerkingen hierboven iets over het hoofd. Ik heb nog geen proef opstelling gemaakt.
Groet, Klaas
Hoi Klaas,
Dank voor het compliment!
In de uiteindelijke versie zijn R1 en R4 220R
R5 en R7 zijn een poging tot ‘current limiter’. R6 heb ik 4k7 gemaakt.
Aanpassingen aangebracht in het totaal schema, nog niet in de sub-plaatjes.
Bedenken doe ik dit allemaal niet, MAAR soldeer het graag in elkaar als er een officiële versie beschikbaar komt 🙂
Laat de upgrade van de huidige versie maar komen. Het ziet er veelbelovend uit!
Hoi Eric,
De upgrade van de Firmware komt eraan. Nog even geduld 😉
Vandaag ontvang ik de PCB’s en ga ik kijken of er geen fouten in zitten.
Kitjes komen ook, maar dat zal nog wel een maand to zes weken duren.
Pingback: Slimme Meter uitlezer | Willem's Website