restAPI’s zijn hip! (nieuwe firmware voor de DSMR-logger)

32,213 views

Je zult je ongetwijfeld afvragen “waarom weer een nieuw versie van de firmware?

De belangrijkste reden is dat steeds meer devices met internet zijn verbonden en dat steeds meer van deze devices gegevens met elkaar uitwisselen door middel van restAPI’s.

restAPI’s zijn hip!

En daar kan de DSMR-logger natuurlijk niet bij achterblijven.

Maar goed, wat is dan het voordeel van het gebruik van restAPI’s? Daarvoor is het misschien handig om eerst even vast te stellen wat de primaire taak van de DSMR-logger is en hoe de DSMR-logger met de DSMRloggerWS firmware ‘werkt’.

Primair is het de taak van de DSMR-logger om de Slimme Meter uit te lezen. 

Niet meer en niet minder.

Maar de DSMRloggerWS firmware voert niet alleen deze primaire taak uit, maar is ook heel druk met de besturing van de GUI en het reageren op invoer van de gebruiker. Dat maakt het lastig voor ‘makers’ om bijvoorbeeld een GUI te ontwikkelen die specifiek voor een bepaalde situatie geschikt is of die gewoon mooier is dan de GUI die standaard met de DSMRloggerWS firmware wordt meegeleverd (ik ben redelijk goed in het ontwikkelen van robuuste hard- en software, maar als het om grafische zaken gaat ben ik gewoon een onbenul).

Deze integratie tussen primaire taak en presentatie maakt ook dat de DSMR-logger soms drukker bezig is met het presenteren van mooie plaatjes dan met het goed verwerken van de telegrammen uit de Slimme Meter. Daarnaast blijkt dat steeds meer ‘makers’ specifieke wensen hebben om gegevens uit de DSMR-logger te halen. Het is onmogelijk om dit allemaal in de firmware in te bakken.

En dan komt de DSMRloggerAPI firmware als geroepen!

Het restAPI protocol is buitengewoon simpel. Het is gewoon een http request zoals je die ook gebruikt om een web pagina op te vragen. Het verschil is dat het antwoord op het http request geen web-pagina maar (meestal) een JSON string is.

Wil je de home pagina van deze website opvragen, dan toets je in de URL balk van je browser:

https://www.aandewiel.nl

.. waarna de browser de opgevraagde pagina op het scherm zet.

Het opvragen van gegevens uit de DSMR-logger gaat op dezelfde manier. Als URL toets je bijvoorbeeld in:

http://DSMR-API.local/api/v1/sm/actual

In de browser zie je vervolgens het antwoord dat er zo uit ziet:

Het antwoord komt terug als een JSON string die eenvoudig verder verwerkt kan worden.

De firmware kent een aantal restAPI call’s zoals bijvoorbeeld (er zijn er meer):

/api/v1/dev/infoGeeft systeem informatie over de DSMR-logger terug
/api/v1/dev/timeGeeft de systeem (Slimme Meter) tijd terug
/api/v1/dev/settingsGeeft de systeem settings van de DSMR-logger terug
/api/v1/sm/infoGeeft systeem informatie van de Slimme Meter terug (meter id, p1 versie, equipment id enz.)

Voor de andere restAPI’s verwijs ik je naar de officiële documentatie van de DSMRloggerAPI firmware. 

Behalve de gegevens die via de restAPI’s bij de DSMR-logger kunnen worden opgevraagd en in JSON formaat worden terug gegeven is het ook mogelijk om de telegrammen, exact zoals die door de Slimme Meter worden afgegeven op te vragen (dat gaat niet in de browser omdat deze het resultaat wil opslaan op je computer). De restAPI hiervoor is:

http://dsmr-api.local/api/v1/sm/telegram

De DSMR-logger geeft dan het volgende terug:

Dit is het volledige telegram zoals die door de Slimme Meter wordt verstuurd, inclusief “\r\n” line endings en CRC Checksum.

De DSMRloggerAPI firmware zorgt er dus voor dat de DSMR-logger zich alleen nog met zijn primaire taak hoeft bezig te houden en af-en-toe een restAPI request moet beantwoorden. Ook dit is simpeler gemaakt dan in de vorige firmware omdat alles terug wordt gegeven zoals de Slimme Meter het aanlevert (met de benaming zoals de  arduino-dsmr bibliotheek van Matthijs Kooijman ze afgeeft). 

De hiervoor beschreven situatie is de “ideale situatie”. In de uiteindelijke implementatie heeft de DSMRloggerAPI firmware nog een paar andere taken en wel:

  • hij maakt historische bestanden aan per uur, dag en maand
  • hij stuurt de actuele gegevens vanuit de Slimme Meter naar een MQTT broker (indien dat is ingesteld)
  • hij stuurt 1x per dag de gas-meter stand door naar Mindergas.nl (indien dat is ingesteld)

De historische gegevens worden in zogenaamde “RING files” opgeslagen. Deze manier van opslaan is aanzienlijk sneller en robuster dan de sequentiële opslag die in de DSMRloggerWS firmware wordt gebruikt. Hij is ook geoptimaliseerd om wear tegen te gaan. Tevens is het SPIFFS file systeem nu standaard 2MB wat de wear leveling ook ten goede komt. Grofweg duurt het gemiddeld zo’n 300 jaar voordat het filesystem fouten gaat maken.

Je zult je misschien afvragen: “kan ik de gegevens nog wel met mijn browser bekijken?

Natuurlijk kan dat! Daarvoor is een hele eenvoudige index.html pagina toegevoegd die, eenmaal in de browser ingeladen de uiteindelijke presentatie opbouwt en weergeeft. Standaard zullen de benodigde .js (Javascript) en .css bestanden door de browser uit mijn github repository worden opgehaald. Daar hoeft de DSMR-logger zich dus ook niet mee bezig te houden en een bijkomend voordeel is dat eventuele nieuwe versies van deze bestanden óók automatisch door jouw DSMR-logger gebruikt zullen worden!

De browser vraag periodiek via een restAPI call gegevens op uit de DSMR-logger en gaat daar vervolgens weer mee aan de slag zonder de DSMR-logger daarmee te belasten.

Omdat de presentatie via de GUI niets meer met de DSMR-logger zélf te maken heeft is het voor ‘anderen‘ vrij eenvoudig een mooiere GUI te ontwikkelen. Arjen de Jong heeft daar al een aanzet voor gegeven (hij is nog wel met de ontwikkeling bezig):

Ook Erik heeft, voor een specifieke toepassing (n.l. alleen het meten van trends in het verbruik), een GUI gemaakt:

Maar het grootste voordeel van de nieuwe DSMRloggerAPI firmware is dat andere systemen (bijvoorbeeld Home Assistant) en devices via een gestandaardiseerd protocol gegevens uit de DSMR-logger kunnen ophalen! Alles wat de Slimme Meter aan gegevens levert wordt zo, draadloos, ontsloten voor wat je er ook maar mee wilt doen!

17 april 2020
Release van v2.0.1 van de DSMRloggerAPI firmware
In deze firmware zijn een aantal bugs opgelost en er is, voor backwards compatibility, een API call voor de actuele data zoals deze ook in de DSMRloggerWS firmware zat.
Zie vooral ook de officiële documentatie!

Slimme Meter Info bij eerste comment!

Als je een comment of reply wilt achterlaten of als je een vraag hebt, geef dan áltijd op:

* Merk én Type Slimme Meter
* Gebruikte Compiler Opties
* Externe voeding gebruikt
* Energy Leverancier
* Functioneert de DSMR-logger

This entry was posted in Arduino, ESP8266, WiFi and tagged , , , , . Bookmark the permalink.

196 Responses to restAPI’s zijn hip! (nieuwe firmware voor de DSMR-logger)

  1. Pingback: Slimme Meter uitlezer | Willem's Website

  2. Vincent Nijhuis says:

    Mooi werk. Super om te lezen dat ik vrij snel de upgrade naar de DSMRloggerAPI kan doen. Ik vraag me af of de mooie interface van Arjan de Jong omarmt gaat worden of moeten we deze straks zelf toe gaan voegen als we dat willen?

    Nu zie ik daar niet zo heel veel toevoeging aangezien ik nu een week de DSMRloggerWS draai en 2 keer in de interface heb gekeken. De rest staat op onze smartscreen via Home Assistant en Grafana.

    Keep up te good work allemaal

    • Willem Aandewiel says:

      Hi Vincent,

      Bedankt voor het compliment.

      Waarschijnlijk hoef je voor de GUI van Arjen helemaal niets te doen, behalve in de settings (via FSexplorer -> Editor) bij index page “ADJindex.html” invoeren (dit file staat al op het SPIFFS).

      De hele opzet en de mogelijkheden van de nieuwe firmware is verbetert plus dat verdere ontwikkeling op deze versie verder gaat.

      Kun je een plaatje van je Home Assistant integratie uploaden?

      • Vincent Nijhuis says:

        Geen dank uiteraard.

        Ow dus de interface zit er al in ik zag dat dit allemaal via externe URL ingeladen wordt in je eigen browser super gedaan en over nagedacht.

        Upgraden naar de API versie is dus een pré als je nieuwe functies wilt gebruiken de oude ws versie is zeg maar end of life?

        Heb ik nog een vraag (ik ben een beetje bekend met ontwikkelen maar niet met dit soort dingen). Ik heb dus net de dsmr logger met ws versie 1.0.3c kan ik zonder nadenken upgraden naar de API versie 0.3.5 of mis ik dan de ESP core 2.6.x? Of zit dit mee gecompiled in de zip files?

        Als ik straks in de gelegenheid kom zal ik eens kijken of ik vanavond nog een screenshot kan posten👍.

        • Willem Aandewiel says:

          De GUI van Arjen staat op github. Het enige wat je nodig hebt is een héél simpele index.html (die heet in dit geval ADJindex.html) die niet veel meer doet dan een javascript van github op halen en uit voeren (welk index file gebruikt moet worden kun je bij settings opgeven).

          Upgraden van DSMRloggerWS naar deze nieuwe firmware is een beetje tricky. Doe je het verkeerd dan kun je alleen nog bedraad upgraden.

          Ik probeer steeds een up-to-date zip file van de firmware en van het spiffs op github te zetten (bij releases). Het upgrade process staat hier beschreven.

          De DSMRloggerWS is inderdaad “end of life” (alleen nog storende bug fixes).

    • Willem Aandewiel says:

      Vincent,

      Op wat voor merk/type Slimme Meter ga je de DSMR-logger gebruiken?

      • Vincent Nijhuis says:

        Hallo Willem,

        Ik ben weer boven water. Even spannend om ziek te worden in deze tijd. Maar gelukkig leek het een gewone griep.

        Zojuist heb ik het een en ander bij elkaar gepakt en tevens ‘vingers crossed’ de logger geupgrade naar de v1.1.0 API firmware (altijd eng de eerste keer). Het is goed te doen gelukkig thumbs up daarvoor.
        Om nog even op je vraag terug te komen. We hebben helaas de KAIFA MA105C Dus ik moet gebruik maken van een externe spanningsbron. Ik heb erg blij met de KPN router die voorzien is van USB die er naast hangt. Ik heb nu stroom van dichtbij.

        Tevens heb ik zojuist ook nog even gekeken naar de frontend van Arjan. Deze kan bij mij de grafieken niet laden ik krijg allemaal Javascript error’s over de value property die niet geladen lan worden zie ook toegevoegd plaatje. Kan te maken hebben met mDNS wat ik mijn netwerk geblocked wordt. Maar deze interface was ik niet van plan te gaan gebruiken. Ik moet nog werken aan wat mooie overzichten in Home Assitant nu heb ik de overzichtjes uit de documentatie ook gebruikt.

        Is het mogelijk om overal waar dsmr-api.local gebuikt wordt automatisch te vullen met het IP adres van de logger? Dan zijn volgens mij voor mij een aantal mDNS gerelateerde issue verholpen. Ik kan dit uiteraard ook zelf testen. Maar kan ik de software ook dynamisch op mijn computer testen zonder de logger aan te sluiten en of up te daten met software die ervoor zorgt dat ik iets stuk maak 😉 ?

        • Willem Aandewiel says:

          Hi Vincent,

          Mooi dat de upgrade gelukt is.

          Als je in je browser het IP adres van de DSMR-logger gebruikt, in plaats van DSMR-API.local wordt er geen gebruik gemaakt van mDNS. Je hoeft er niets voor te doen of te veranderen.

          Als je problemen met de GUI van Arjan hebt kun je op zijn github repo een “issue” aanmaken!

          • Vincent Nijhuis says:

            Ik heb alleen toegang via het ip adres lokaal en als ik dan op API Docs klik in het menu en dan een optie kies kom ik uit op DSMR-API.local/API/V1/******.
            Hierbij moet ik dan telkens switchen in de adresbalk ik heb de code van Arjan nog niet bekeken maar ik heb het idee dat deze ook gebruikt maakt van de urls op de docs pagina. Maar dat ga ik nog eens bekijken en uitzoeken. Aan waar ik vragen heb Arjan eens lastig proberen te vallen ;).

            Dank nogmaals voor dit super product. Ik ga elders deze week eens proberen een mooi home assistant scherm te knutselen.

        • Willem Aandewiel says:

          Ik denk dat als je bij de settings als hostname het IP adres invult alles werkt zoals in jouw situatie gewenst is.
          Never mind that! Ik zal morgen een aanpassing in DSMRindex.js maken waardoor het wel goed zal gaan (hoop ik).

          • Vincent Nijhuis says:

            Ik heb een ander probleem met de firmware dan dat ik last heb van mDNS denk ik. Ik zit nu voor het eerst weer achter mijn goede laptop te debuggen en vindt in de log van de frontend van Arjan dat ik alleen maar l1 gevuld heb.

            Dit heb ik eerder in de interface van de logger ook gezien maar wist niet dat dit een probleem kon zijn. Zie ook mijn afbeelding.
            Is daar een oplossing voor?

            Of zit ik hier volledig verkeerd?

      • Vincent Nijhuis says:

        Tevens heb ik de downloads van de gitrepo gepakt. Ik heb een versie 4.5 van de logger met een schermpje aangeschaft. Dus dit was voor mij voldoende.

        • Willem Aandewiel says:

          Wat bedoel je met “Tevens heb ik de downloads van de gitrepo gepakt“?
          Heb je de binaries van de releases pagina gebruikt?

          • Vincent Nijhuis says:

            Inderdaad ik kon met mijn setup de binaries van de releases pagina pakken. Voor nu is dat bij mij volgens mij voldoende.

  3. Dick says:

    Hallo Willem, Mijn indruk was dat DSMRloggerWS 1.0.5 de de nieuwe API versie was, ook omdat daar ook al met API’s wordt gewerkt.
    Nu dus de DSMRloggerAPI firmware geïnstalleerd en daarin loopt de MQTT dus ook in de test modus. Die dubbele naam haal ik er in nodered wel uit.
    Ziet er weer prima uit en keurig gestuctureerd opgebouwd. Een van mijn wensen, de gas grafieken zit er nu ook in. Grafieken zien er ook goed uit, ook die van Arjen.
    Mijn test systeem loopt op een WEMOS D1 en die geeft nog een fout bij compileren. Zit in het niet bekend zijn van het board. Welke naam de compiler voor mijn boardje genereerd kon ik niet vinden, daarom in restAPI.ino bij ca regelnr 357 een #else ingevoerd met mijn board naam.
    Nu kan ik mij weer met andere zaken gaan bezig houden.
    Bedankt,
    Groet Dick

    • Willem Aandewiel says:

      Dick,

      Je kunt de Wemos gewoon als ESP8266 compileren. Het is gewoon een Generic ESP8266.

      Wat voor merk/type Slimme Meter heb je?

      • Dick Spork says:

        Hi Willem,
        De Wemos is nu inderdaad gewoon als ESP8266 te compileren, in het verleden was dat niet zo(oudere IDE?) en moest ik het steeds om zetten.

        Mijn Slimme meter is een Iskra AM550. Deze leverd genoeg stroom om ook een display mogelijk te maken. Wel heb ik C3 moeten vervangen voor een 100muF exemplaar.

        Gr Dick Spork

  4. D. Wismeijer says:

    Hi Wim,
    1) het navolgende is een terugkerende foutmelding met de Home Assistant 0.106.6 en Mosquitto broker v5.1 (Add-On) waarbij de volgende additionele gegevens zijn opgenomen in de broker config file: client_id: HassIO, keepalive: 60. Dit is nog een overblijfsel van de aanbevelingen in de DSMRLoggerWS HA instructies.

    1584259230: New connection from 192.168.2.180 on port 1883.
    1584259230: New client connected from 192.168.2.180 as DSMR-APIA4:CF:12:C2:FD:76 (p2, c1, k15, u'mqtt').
    1584259253: Client DSMR-APIA4:CF:12:C2:FD:76 has exceeded timeout, disconnecting.
    

    Enig idee wat de reden hiervan is.
    2) Heb ik het juist dat het OLED scherm alleen werkt met externe voeding en niet gevoed kan worden vanuit de slimme meter (PWR Source jumper staat op SM, OLED is dead)

    Indien dit blog tevens al gebruikers forum dient dan nodig ik graag andere succesvolle gebruikers hun ervaringen te delen mbt de juiste value templates nodig om de variabelen uit te lezen.
    Grtjs
    Dick

    • Willem Aandewiel says:

      Dick,

      Ik denk dat je de hassio vragen beter op een Home Assistant forum kunt stellen.

      Het OLED scherm kan gewoon vanuit de Slimme Meter gevoed worden (mits goed aangesloten).
      Ik heb geen idee wat voor merk/type Slimme Meter je hebt dus ik kan je vraag ook niet met zekerheid beantwoorden.

      • D. Wismeijer says:

        Hi Wim,
        V.w.b de opmerking aangaande de HASSIO vragen betwijfel ik of de vraag betrekking hebbende op Client DSMR-APIA4:CF:12:C2:FD:76 has exceeded timeout, disconnecting, op het HASSIO forum thuis horen. Dit is duidelijk een interface probleem tussen DSMR en HA waarvoor je claimed dat deze met elkaar moeten werken. Zoals eerder gezegd, de logger werkt NIET met de laatste HASSIO versies, de API versie evenmin. Als de support en verdere analyse hier stopt dan is het einde verhaal en in tegenspraak met je documentatie, die, je eigen woorden, gebaseerd zijn op oudere (dus depricated) HASSIO versies.
        De Slimme Meter is een KAIFA E0026. Het OLED scherm is dead en de rode LED flikkert dus heb een stout vermoeden dat het board meer vereist dan gegeven kan worden. Enfin, het werkt niet.
        Geen probleem, het was leuk geprobeerd te hebben als alternatief voor een directe verbinding met HA.
        Grtjs
        Dick
        Grtjs Dick

        • Willem Aandewiel says:

          Beste Dick,

          Ik denk dat je gebrek aan kennis over de producten die je gebruikt niet op dit project moet afschuiven. De DSMRloggerWS en DSMRloggerAPI firmware werken prima samen met verschillende MQTTbrokers (de meest gebruikte is Mosquitto). Je moet je realiseren dat er letterlijk honderden van deze loggers in gebruik zijn. Als er dan daadwerkelijk iets niet (goed) zou werken dan zou je dat in de reacties op deze post en de DSMRloggerWS post terug moeten vinden.

          Verder moet je je ook realiseren dat dit “open source” en “open hardware” projecten zijn. Key is toch wel dat je zelf ook tijd investeert in het oplossen van (kleine) problemen.

    • Maarten says:

      Beste Willem, Dick,

      Het probleem met betrekking tot het disconnecten en reconnecten in MQTT heb ik ook. Precies dezelfde 3 regels (m.u.v. het IP en MAC adres) krijg ik ook in mijn Mosquitto broker log te zien. Ik weet niet of het ermee te maken kan hebben dat de DSMRloggerAPI geen terugkoppeling geeft naar de Mosquitto broker als hij om bevestiging vraagt of dat deze zich heeft aangemeld. Data wordt wel trouwens afgegeven en kan ik ook uitlezen in mijn Home Assistant. Ik twijfel wel of de HASSIO logging met de DSMRlogger te maken heeft maar deze meldingen kwamen pas in de loggings tevoorschijn toen ik de DSMRlogger in mijn MQTT pool ben gaan laten meedraaien. Van mijn andere devices heb ik deze meldingen verder niet. Mijn home assistant versie is 0.107.4 en HASSIO versie 3.12. Mosquitto broker versie is 5.1. De versie van de DSMRloggerAPI is v1.0.1 en draait op een Wemos D1 Mini V3.00. Misschien dat je ons hiermee verder kunt helpen?

      Verder vind ik dat je top werk met deze oplossing hebt geleverd. Deze oplossing is een ultieme uitkomst voor mijn smart home setup. Keep up the good work!!!

      Met vriendelijke groeten,
      Maarten

      Ps. ik heb een log van de Mosquitto broker toegevoegd en wat ik in de HASSIO log zie gebeuren.

      Logging Mosquitto:

      1584788632: New connection from 192.168.102.7 on port 1883.
      1584788632: New client connected from 192.168.102.7 as DSMR-APICC:50:E3:5D:D2:3A (p2, c1, k15, u'MQTT').
      1584788655: Client DSMR-APICC:50:E3:5D:D2:3A has exceeded timeout, disconnecting.
      1584788692: New connection from 192.168.102.7 on port 1883.
      1584788692: New client connected from 192.168.102.7 as DSMR-APICC:50:E3:5D:D2:3A (p2, c1, k15, u'MQTT').
      1584788715: Client DSMR-APICC:50:E3:5D:D2:3A has exceeded timeout, disconnecting.
      1584788752: New connection from 192.168.102.7 on port 1883.
      1584788752: New client connected from 192.168.102.7 as DSMR-APICC:50:E3:5D:D2:3A (p2, c1, k15, u'MQTT').
      1584788775: Client DSMR-APICC:50:E3:5D:D2:3A has exceeded timeout, disconnecting.
      

      Logging HASSIO:

      20-03-21 10:49:52 INFO (MainThread) [supervisor.auth] Auth request from core_mosquitto for MQTT
      20-03-21 10:49:53 INFO (MainThread) [supervisor.auth] Success login from MQTT
      20-03-21 10:55:52 INFO (MainThread) [supervisor.auth] Auth request from core_mosquitto for MQTT
      20-03-21 10:55:53 INFO (MainThread) [supervisor.auth] Success login from MQTT
      20-03-21 11:01:52 INFO (MainThread) [supervisor.auth] Auth request from core_mosquitto for MQTT
      20-03-21 11:01:53 INFO (MainThread) [supervisor.auth] Success login from MQTT
      

      • Willem Aandewiel says:

        Maarten,

        Bedankt voor de informatie. Ik heb even geGoogled op “Client DSMR-APICC:50:E3:5D:D2:3A has exceeded timeout, disconnecting” en vind dan toch wel een hoop hits. Ik gebruik op mijn hassio RPi mosquitto version 1.4.10 en ondervind geen problemen. Suggesties in de hits van Google zijn o.a. het aanpassen van het config file van mosquitto.

        Omdat ik een nogal gedateerde versie van hassio gebruik (als ik een keer echt tijd heb zal ik een nieuwe versie installeren) is het voor mij ook moeilijk jullie hier verder mee te helpen.

        • Maarten says:

          Hoi Willem,

          Als je inderdaad ook graag eens zou willen proberen met een van de laatste versie van Hassio en Home Assistant als je tijd hebt zou dat fijn zijn. Dan ben ik benieuwd of je hetzelfde ziet gebeuren.

          Mvg,
          Maarten

          • Willem Aandewiel says:

            Maarten,

            Ondertussen heb ik de laatste versie van Home Assistant op een RPi gezet.

            Integratie heb ik beschreven in de documentatie.

            Configuratie zowel om gegevens met MQTT alsook met restAPI’s In te lezen. Alles redelijk “recht toe recht aan”.

  5. Rob says:

    hallo Willem,

    volgens mij zitten en nog een paar schoonheidsfoutjes in DSMRloggerAPI.ino
    ik kom een paar keer “#ifndef” tegen, dat is volgens mij niet juist.

    met vriendelijke groeten
    Rob

  6. Manuël says:

    Hoi Willem,

    Leuk project, ben zelf ook geïnteresseerd om de meter uit te lezen en kwam aldoende hierop uit. Maar goed, eerst even een aantal vragen. Ik wil dan sowieso de nieuwe DSMRloggerAPI variant gebruiken.

    – Ik zou graag DSMR reader willen gebruiken. Ik heb al een losse Raspberry Pi hiervoor. Is dit compatible met elkaar? Kan ik dus je apparaatje hier rechtstreeks voor inzetten?
    – Ik heb ‘s nachts het modem uit staan, en dus geen Wi-Fi. Verbind de logger dan weer automatisch? En net zo belangrijk, stuurt ie dan de ontbrekende data ook nog door? Voor zover ik op je screenshots kan zien slaat het apparaat wel e.e.a. zelf op dus dat zou mogelijk moeten zijn?

    • Willem Aandewiel says:

      Manuël,

      Ik heb geen kennis van of ervaring met DSMR reader dus daar kan ik je niet over adviseren. Misschien leest iemand anders, die er wel verstand van heeft, je vraag.

      Waarom je een RPi wilt gebruiken voor iets dat de DSMR-logger in zijn eentje kan is mij overigens een raadsel.
      Of hij zichzelf weer aanmeld op je WiFi netwerk zou ik niet weten.
      De DSMRloggerAPI firmware slaat de meterstanden over de afgelopen 24 uur, 14 dagen en 24 maanden op. Die kun je met een restAPI draadloos weer uitlezen.

      • Manuël says:

        Ik wil graag DSMR reader gebruiken omdat ik het een duidelijk overzicht vind en je daar ook kosten en energiecontracten e.d. in kwijt kan.
        Ik bedoel of de logger zelf weer opnieuw verbind met WiFi als deze uitstaat, niet de RPi (die doet dat keurig).

        • Willem Aandewiel says:

          Manuël,

          Ik weet niet of de DSMR-logger weer connect met je WiFi AP nadat deze uit is geweest. Waarschijnlijk zul je de DSMR-logger opnieuw moeten opstarten.

          20-03-2020: vanaf v1.1.0 probeert de DSMRloggerAPI firmware bij een verloren WiFi verbinding om het kwartier opnieuw een verbinding met het laatst bekende AP te maken. In de tussentijd blijft de logger gewoon telegrammen processen en worden de historische bestanden bijgewerkt.

          • Manuël says:

            OK, dat is niet praktisch. En andersom dan: blijft de access point van de DSMR-logger constant aan? Zolang ik er zelf maar mee kan verbinden dan is dat ook geen probleem.

        • Willem Aandewiel says:

          Manuël,

          Ik heb geen ervaring met de situatie waarbij het WiFi AP regelmatig “uit” staat.
          Je zult het dus zelf moeten ervaren. Zolang het AP hetzelfde IP adres aan de DSMR-logger geeft (dat zou hij kunnen doen op basis van het MAC adres en waarschijnlijk kun je dat op je modem instellen) dan kun je zeer waarschijnlijk opnieuw verbinding met de DSMR-logger maken.
          Het AP van de DSMR-logger staat tijdens normaal gebruik “uit”.
          Overigens zal de DSMR-logger wel gewoon de Slimme Meter blijven uitlezen en de gegevens in de historische bestanden opslaan.

          • Manuël says:

            Maar kan de AP van de DSMR-logger wel op één of andere manier permanent aangezet worden? Desnoods iets aanpassen aan de code, al heb ik geen ervaring met Arduino. Dat lijkt mij in mijn situatie veel handiger namelijk, dan kan ik de data gewoon van de DSMR-logger afhalen.

    • Willem Aandewiel says:

      Ja, je kunt WiFi op de esp8266 permanent als Access Point configureren

      • Manuël says:

        Zit die mogelijkheid standaard in je firmware of moet ik dat dan aanpassen? Bedankt voor al je antwoorden!

        • Willem Aandewiel says:

          Manuël, misschien is het toch wel handig als je de uitvoerige en diepgaande documentatie gaat lezen. Alles wat over de hardware en firmware te weten valt staat daar in beschreven (soms moet je een beetje zoeken). Ook alles wat de firmware doet. Als je bepaalde zaken anders wilt dan staat het je vrij om dat aan te passen (Open Source!) maar je zult dan toch wel zelf die aanpassingen moeten bedenken en aanbrengen.

          Overigens is de enige vraag die ik gesteld heb: “informatie over je Slimme Meter” maar daar heb ík nog geen antwoord op gehad…

          • Manuël says:

            Volgens mij werkt je link niet helemaal goed, ik ga terug het begin van deze pagina. Ik zie zo ook even geen vraag van je, maar misschien heb ik het gemist. Ik heb de documentatie al gelezen (de ‘beta’ variant van de API versie) en kon het daarin niet vinden, maar als ik de code bekijk dan lijkt mij dat het er niet standaard inzit. Dit aanpassen lijkt het mij wel te doen.

            Wat voor wifi bereik kan ik van de logger verwachten? Heb mijn Raspberry op een meter of 10 afstand staan met twee muurtjes er tussen (niet van beton).

          • Willem Aandewiel says:

            Volgens mij werkt de link prima!
            Een groot blauw blok waarin staat: “bij vragen altijd het merk en type van je Slimme Meter opgeven

            Het idee is dat we dan een database kunnen opbouwen van Slimme Meters waar de DSMR-logger mee werkt (of niet).

  7. Manuël says:

    Aah, daar keek ik helemaal overheen. Ik heb een Landis+Gyr E360 geleverd gekregen.

  8. Wesley says:

    Hoi Willem,

    Ik gebruik al een tijdje de meter.
    Ik heb een oude slimme meter met dsmr 2.2 en daardoor de aangepaste software.
    Ik draai nu v1.0.2 nog.
    Als ik de update doe zoals op jouw pagina, ben ik dan alle settings kwijt om de oude meter uit te lezen?

    • Willem Aandewiel says:

      Wesley,

      Ik begrijp niet goed welke settings je bedoelt. Bedoel je de compile opties?
      Wat je in ieder geval kunt doen is het DSMRsettings.ini file naar je computer uploaden. Met een text editor kun je zien wat daarin staat en de relevante gegevens kun je dan vervolgens in de nieuwe settings overnemen.
      Hou er wel rekening mee dat bepaalde zaken drastisch zijn veranderd (MQTT berichten en de restAPI call’s).

      Wil je zo vriendelijk zijn het merk en type van je Slimme Meter, de compileer opties, of je een externe voeding gebruikt enz. met ons te delen? Dat is voor veel andere (potentiele) makers/gebruikers zinvolle informatie.

      • Wesley says:

        Ik heb een Landis meter, type ZCF120ABd. Dsmr 2.2+
        Gebruik de voeding van de meter

        Ik bedoel de settings die het mogelijk maken om de dsmr 2.2 meter uit te kunnen lezen. Daar was toen een aparte upload voor gemaakt. (sorry ben niet zo goed in de juiste term denk ik)
        Ik vraag me dus af als ik een firmware update doe, dit dan nog werkt.

        • Willem Aandewiel says:

          Wesley,
          Bedankt voor de info over je meter.

          Ik dénk dat je kun volstaan met de compiler optie USE_PRE40_PROTOCOL Daarmee wordt de dsmr30 library gebruikt.

          Wat voor DSMR-logger (welke versie) gebruik je? De nieuwe firmware is alleen nog getest met versie 4 en 4.5.

          • Wesley says:

            Ik gebruik versie 4.
            Ik ga er eens mee aan de slag, kijken of ik er uit kom. Is alweer even geleden (ik kwam toen bij je langs en je ontdekte een soldeer probleem)

  9. robby says:

    Ter aanvulling op de documentatie

    Landis E360, opties=1,2,3,9, externe voeding=JA, SMR 5.0, Werkt=OK!

    • Willem Aandewiel says:

      Thanks!

    • robby says:

      Er lijkt iets niet helemaal goed te gaan met het bijhouden van het verbruik in de RINGhours. Zie afbeelding.
      Je ziet dat er op (24) [11:00 – 11:59] de waarde 0 staat, dat klopt niet. Ook de 39 op (24) [08:00 – 08:59] is niet juist en de 2349 op (23) [18:00 – 18:59] is niet correct, er had veel meer bij een uur eerder moeten staan (inductie koken).
      De data die ik via MQTT ontvang klopt wel, daarom denk ik dat er in de RINGhours iets niet OK is.

      • Willem Aandewiel says:

        Robby,

        Kan het zijn dat je DSMR-logger “uit” heeft gestaan tussen 10:59 en 12:00? Dat is n.l. de enige manier waarop er geen data in de RING bestanden wordt geschreven. In de Systeem Info pagina kun je zien hoe vaak de DSMR-logger gereboot is (daarmee kun je dus ook in de gaten houden of dat vaak gebeurd, wat niet hoort!) en wat de reden van de laatste reboot is geweest.

        • robby says:

          Nee, die heeft niet uitgestaan, de uptime is nu 2(d):22(h):19.
          4 reboots, Software/System restart, maar dat klopt wel, ik heb oa de PRD files omgezet en daarna gereboot.
          Ik heb wel MQTT messages binnen gekregen in die periode. Grafiekjes in Home Assistant en Grafana zien er prima uit.

          • Willem Aandewiel says:

            Heb je in die periode de PRD files geconverteerd? Want dan komt de informatie dus uit een “verouderd” PRD-hours bestand. Als er over 24 uur nog steeds verkeerde waarden worden uitgelezen moet je maar weer aan de bel trekken.

  10. robby says:

    Nee die conversie is voor de laatste downtime, dus drie dagen geleden, geweest. Daarna heb ik netjes gereboot, ook binnen het uur zoals in de instructie staat. Sindsdien niets meer veranderd.
    Alle data uit de oude files kan ik gewoon inzien, de dagen en maanden bestanden zien er goed uit.
    Ik zal kijken of ik er een patroon in kan ontdekken, dan hoor je meer.

    • dennis says:

      Hallo Willem,

      Ik zie ook af en toe vreemde waarden in de logger. Zie sreenshot.
      Zojuist upgrade gedaan van DSMRloggerAPI 1.1.0 naar 1.2.1
      —-
      DSMRloggerAPI-BE.ino.bin werkt met Fluvius in Vlaanderen meter T211 van merk Seconia. Geen externe voeding.

  11. Willem Aandewiel says:

    Ik heb in de documentatie twee nieuwe pagina’s opgenomen.
    De eerste laat zien hoe je de data uit de DSMRloggerAPI firmware met Home Assistant kunt gebruiken, de twee over het bedraad flashen van de firmware met het Flash Download Tool van Espressif.

  12. Harrie Bouwens says:

    Willem,
    Overstappen DSMRloggerWS naar de DSMRloggerAPI firmware versie is gelukt,
    Ziet er allemaal gelikt uit, bewondering !!

  13. Harrie Bouwens says:

    Willem, omdat bij mij de logger aan de wand bevestigd is, en het dan beter is dat de kabel aan de onderkant eruit komt, heb ik een regel aan de oled_init toegevoegd:
    oled.displayRemap(true);
    waardoor het display 180graden gedraaid is, zie foto

    • Willem Aandewiel says:

      Harrie,
      Goeie aanpassing!
      Wáár heb je die regel toegevoegd? Ik ga daar een #define van maken of misschien beter: een setting! Kun je het naar wens instellen!

      v1.1.2 (29-03-2020) via DSMR-editor in te stellen of je het display “normaal” of “geFlipt” wilt hebben.

      Thanks!

  14. Harrie Bouwens says:

    willem zie foto:

  15. Jurgen Imbrechts says:

    Beste Willem,

    Ik heb deze week de 4.5 versie aangekocht via Opencircuit en deze middag aangesloten. Ik krijg echter geen berichten binnen van de meter op de P1 poort. Ik heb reeds een nieuwe kabel gemaakt, RJ11 connectoren, 4 draadjes 1-1 doorverbonden. Ik maak gebruik van een externe 5V voeding. Het is een Belgische meter “Siconia T211” met 3fasen. Ik heb reeds een upgrade gedaan naar de nieuwe API versie van de firmware, dat is allemaal goed gelukt, maar het lijkt er op dat er toch nog iets mis is met de verbinding. Heb je toevallig nog een suggestie waar ik het probleem zou kunnen vinden?

    • Willem Aandewiel says:

      Jurgen,
      Hm.. ik heb zo gouw even geen idee ….
      Wat doen de ledjes (blauwe en rode). Heb je een oled schermpje aangesloten? Wat laat die zien?

      Kun je laten zien wat voor meldingen je met telnet voorbij ziet komen (opvangen als tekst file en hier copy-pasten)?

      • Jurgen Imbrechts says:

        Rode LED is permanent aan.
        Blauwe LED: 11s aan; 11s uit; 11s aan; 11s uit; enzovoort.

        Geen OLED scherm gekocht.

        Ik vermoed dat hij gewoon helemaal niets ontvangt. Ik heb ook op de site van de netbeheerder de “poort P1” opengezet. Zou dus moeten werken..

        Telnet sessie, verbose aangezet alsook “no parsing”.

        next: processAPI(/api/v1/dev/time)
        [01:04:52][  18528| 18048] processAPI  (  48): incomming URI is [/api/v1/dev/time] method[GET]
        [01:04:53][  20120| 19344] doTaskTelegr( 504): doTaskTelegram
        [01:04:53][  18776| 18048] processSlimm(  34): handleSlimmerMeter RawCount=[   0]
        [01:05:03][  19152| 18496] processSlimm(  64): RawMode: Timerout - no telegram received within 5 seconds
        next: processAPI(/api/v1/dev/time)
        [01:05:03][  18216| 17200] processAPI  (  48): incomming URI is [/api/v1/dev/time] method[GET]
        [01:05:03][  16872| 16552] doTaskTelegr( 504): doTaskTelegram
        [01:05:03][  16872| 16552] processSlimm(  34): handleSlimmerMeter RawCount=[   1]
        [01:05:13][  17920| 16360] processSlimm(  64): RawMode: Timerout - no telegram received within 5 seconds
        [01:05:13][  16632| 15712] doTaskTelegr( 504): doTaskTelegram
        [01:05:13][  16632| 15712] processSlimm(  34): handleSlimmerMeter RawCount=[   2]
        [01:05:23][  17344| 16360] processSlimm(  64): RawMode: Timerout - no telegram received within 5 seconds
        next: processAPI(/api/v1/dev/time)
        [01:05:23][  16408| 15064] processAPI  (  48): incomming URI is [/api/v1/dev/time] method[GET]
        [01:05:23][  15064| 13768] doTaskTelegr( 504): doTaskTelegram
        [01:05:23][  15064| 13768] processSlimm(  34): handleSlimmerMeter RawCount=[   3]
        /api/v1/sm/telegram[01:05:33][  15816| 15472] processSlimm(  64): RawMode: Timerout - no telegram received within 5 seconds
        [01:05:33][  14528| 14176] doTaskTelegr( 504): doTaskTelegram
        [01:05:33][  14528| 14176] processSlimm(  34): handleSlimmerMeter RawCount=[   4]
        
        • Willem Aandewiel says:

          Jurgen,
          We kunnen wel concluderen dat je geen telegrammen ontvangt.
          Ik heb alleen geen idee waarom niet. Meest voor de hand liggend is toch de kabel of de aansluiting van de kabel. Weet je zéker dat de stekkertjes diep genoeg in de connector zit (bij de meter en bij de logger).
          Is het ook zeker dat je Slimme Meter telegrammen verstuurt?

    • Willem Aandewiel says:

      Jurgen,

      Deed de DSMR-logger het wel met de originele firmware (zoals geleverd door opencircuit)?

      Waarom gebruik je een externe voeding? Volgens informatie die ik van andere T211 gebruikers heb gekregen kun je de DSMR-logger gewoon vanuit de Slimme Meter voeden..

      • Jurgen Imbrechts says:

        Hi Willem, het probleem lag dus bij mij.
        Op de website van de netbeheerder moet je dus de poorten activeren. Dit had ik dus gedaan. Er stond een groen bolletje bij. Echter moest ik blijkbaar nog eens op het groene bolletje tikken en daar specifiek zeggen dat de poort open moet. Het lag dus aan mij. Ondertussen komen de gegevens vlotjes binnen.

        Wel opmerkelijk, zie screenshot. “Voltage l2” staat op “0” en “Current l1” staat ook op 0. Toevallig een idee waar dit aan kan liggen? (er komen 3 fases binnen)

        Ik heb er misschien ergens over gelezen maar kan ik de waardes ergens aanpassen? Bij de opstart heeft hij gigantisch hoge waardes binnen gekregen. (huidige meterstand vermoed ik) en daardoor is mijn grafiek wel wat onduidelijk.

        Ik gebruik momenteel een externe voeding omdat ik dacht dat ik nog RJ12 kabel genoeg had. Achteraf gezien bleek dat allemaal RJ11 te zijn. Dus ik heb even een externe voeding gebruikt. Dat ga ik ook nog oplossen.

        Allesinds bedankt voor dit mooie project, zowel de hardware als de software!

        • Willem Aandewiel says:

          Jurgen,

          De waardes bij voltage en current verbazen mij … volgens de informatie van Fluvius worden deze via de S1 poort doorgegeven ..
          Omdat je nu geen vermogen per fase hebt is de actuele grafiek niet compleet. Daarvoor zou je met de optie SM_HAS_NO_FASE_INFO moeten compileren (in de volgende release is dit in de settings in te stellen. Misschien daar even op wachten.
          De hoge waardes zijn inderdaad de meterstanden bij de eerste meting. Dat loopt na verloop van tijd uit de bestanden weg. Geduld 😉

  16. Vandenbosch Patrick says:

    Hallo Willem,

    Uw slimme meter 0.4.5 (1.0.3c) is zaterdag geleverd. Ik had het zonder problemen direct aan de praat gekregen op de Belgische meters S211 & G4SRTv zonder extra 5V voeding . Gas stand was niet te zien op webserver, wel via Telnet.
    De update naar naar DSMRLoggerAPI v1.1.0 (DSMRloggerAPI-BE.ino.bin.zip) is ook tamelijk vlotjes verlopen.
    Na de file conversie bleken er paar kleine data’s niet 100% te kloppen, maar dit ik zelf in die ring files kunnen corrigeren.
    De gas stand komt nu wel vlotjes door.
    Mijn volgende stap is de data proberen binnen te lezen via openHAB (dewelke ik nog aan het leren ben).
    Enfin, een héél dikke proficiat met je DSMR project. Het geeft mij met beperkte IT/programeer kennis toch de mogelijk om met zulke toffe zakens bezig te zijn.

    Groeten,
    Patrick

    • Willem Aandewiel says:

      Patrick,
      Dank voor het compliment en de informatie over je Slimme Meters. Neem ik op in het overzicht.

      Heel veel plezier met de DSMR-logger!

  17. Jurgen Imbrechts says:

    Hi Willem, bedankt voor je antwoord. Ik ga toch even wachten op de volgende release. Ik verkies toch pre-compiled ipv zelf te moeten builden. Bedankt voor al je hulp.

    Ik heb de DSMR-logger ondertussen gelinked met de loxone installatie (van mijn broer). En dat werkt nu ook perfect. Omdat er heel wat mensen zijn met Loxone installaties die hetzelfde willen bereiken heb ik er ook even een handleiding voor geschreven. (En gepost in de Loxone BE/NL groep op facebook).
    Misschien kan jij er ook even door lopen, ik overloop ook even kort hoe ze alles moeten aansluiten en opzetten.
    Zie hier.

    Je mag me altijd mailen als er opmerkingen zijn.

    Bedankt voor je hulp! Ik kijk uit naar de volgende versie.

  18. G. van Meeuwen says:

    Beste Willem, TOP project met de ESP12E.
    Meter Iskra Am550. Lolin printjes van ALiexpress. Heb de Arduino versie gecompileerd en geladen. Met de info uit diverse reply’s en wat soldeer werk functioneert het goed.Wat ik nog mis is een modbus koppeling. Waar zou ik deze het beste kunnen verwerken in de software? Ben op zoek naar dezelfde waarden als de MQTT wegschrijft(actuele waarden vermogen, spanning, stroom, gas m3 etc) alleen dan niet in string maar de waarden in integers of float. De update frequentie hoeft niet hoog te zijn (1 x per 30sec). Modbus-esp8266 functioneert goed genoeg, heb er al wat ervaring mee met weersvoorspelling ESP8266 projectjes.
    Wellicht kun je me helpen of weet je iemand, alvast dank.

  19. Mathieu says:

    Hallo,
    Zou u eventueel ook een gecompileerde versie van de recenste firmware willen op je git of website plaatsen?
    Ik zie het niet zitten om alles nodige tools en dergelijke te installen om gewoon een over the air firmware update uit te voeren. Graag gewoon de juiste file.
    Is dit mogelijk?

  20. Remco says:

    * Merk én Type Slimme Meter – Kaifa MA340c
    * Gebruikte Compiler Opties – Request_pin; Update_server; Mqtt; Mindergas
    * Externe voeding gebruikt – Ja, helaas wel.
    * Energy Leverancier – Stedin / Welkom Energie
    * Functioneert de DSMR-logger – JA! 🙂 DSMR-API v1.2.2 (01-04-2020)

    Willem, You’re the man!
    wat een leuk project, en het werkt prima. Heb alleen een vraag mbt de “eerste metingen”: Natuurlijk leest de SM de tellerstand, en bij een volgende meting weer, het verschil is het ge/verbruik. nu zal de “piek na een paar maanden wel uit beeld verdwenen zijn, maar kan je aangeven wat “na verloop van tijd” inhoudt? Mogelijk een optie om de startgetallen van de meetgetallen af te trekken. (zeg maar, je dagteller in de auto op nul zetten) Verder ga ik een poging wagen om dit te koppelen met Domoticz, veel werkende info heb ik hiervan nog niet gezien. Eentje, maar die heeft “PI” in de scripttekst staan, en mijn Domoticz staat op een Synology NAS. maar goed dat gaat niet over de data van jouw DSMR-logger. Top project, ik ben er erg blij mee, en ga verder puzzelen.
    groet, Remco

    • Willem Aandewiel says:

      Remco,

      Bedankt voor het compliment!
      Je bent één van de (zo niet de) eerste(n) die de gegevens van zijn opstelling doorgeeft bij een eerste comment! Wordt (door mij in ieder geval) gewaardeerd!

      Voor de maanden kun je via de editor (rechtsboven in het scherm) de meterstanden van de voorgaande 24 maanden invoeren. Is een beetje een gedoe, maar gewoon vaak op [Opslaan] klikken (het beste kun je eerst de gasmeterstanden invoeren). De dagen en uren trekken resp. binnen 14 dagen en twee dagen recht.

      17 april 2020
      Versie 2.0.1 van de DSMRloggerAPI firmware kan de actuele data exact zo opsturen als de DSMRloggerWS firmware dat deed! Alleen de aanroep is iets anders (zie de documentatie)!

      • Remco says:

        Hoi Willem,
        dat was een K-klusje, ben ongeduldig met opslaan, dus vaak “pakte” hij het niet, en kon weer een regel overnieuw doen. Maar goed, alle maanden zitten erin, met dank aan de history van Slimmemeter.nl. Heb steeds meer vragen… Kan ik de kleuren van de stroomlevering wijzigen/ meer contrastrijk maken? Ik heb 3 fases, en het verschil is best klein. Dan het API – systeem en Domoticz, als ik bij een andere ESP8266 lees (Wemos D1) kan kan je in de interface Domoticz aangeven.
        Ik ben geen programmeur, maar is zoiets ook mogelijk bij DSMR-logger(API) ?

    • Willem Aandewiel says:

      Remco,

      Toch mooi dat het kán 😉

      Je kunt de kleuren zoveel aanpassen als je wilt. Dit wordt helemaal in de gui geregeld en je kunt dus deze aanpassen of zelf een gui maken.

      Het lijkt dat de Domoticx code waar je naar verwijst zaken autonoom ópstuurt naar Domoticx. De DSMRloggerAPI firmware gaat ervan uit dat de gegevens opgevráágd worden. Dat is wezenlijk anders. Toch ben ik comments tegen gekomen van mensen die de DSMR-logger gebruiken in combinatie met Domoticx. Het kan dus vast wel, maar ik weet niet hoe.

      • Remco says:

        top, dan moet ik daar nog even verder naar zoeken… maar: HOE kan ik de kleuren aanpassen in de Gui? waar staat de code?

        • Willem Aandewiel says:

          Remco,

          De gui bestaat uit de DSMRindex.html, DSMRindex.css, DSMRindex.js, DSMRindex.html.inc en DSMRgrapics.js bestanden.
          De grafieken worden met DSMRgrapics.js opgebouwd en daar kun je de kleuren aanpassen.

  21. RJ says:

    Hoi Willem,

    Wat een leuk project! Ik heb kant-en-klaar dsmr logger gekocht bij opencircuit en daarna OTA geflashed met DSMRLoggerAPI. Werkte al een tierelier.
    Maar toen.. Na een eerste exploratie van de code gedaan te hebben, heb ik een stukje aangepast (mqtt user en pass settings wat groter gemaakt omdat ik wil proberen de telegrams naar Azure IOT Hub te sturen), gecompileerd en OTA geflashed. Alleen nu werkt de logger niet meer. De blauwe LED knippert 1x kort en direct erna 1x lang. Kan ik hier nu nog iets aan doen? Of betekent dit ik opnieuw moet flashen (ik heb nog geen programmer.. ik zal deze bestellen); ben daar nog niet in thuis maar gaat vast lukken..
    Alvast bedankt voor je reactie!

    • Willem Aandewiel says:

      RJ,

      Ik weet niet waar je de aanpassing(en) hebt gemaakt en ook niet waarom. De MQTTusername is 40 posities groot en het wachtwoord 30. Heb je echt nog grotere velden nodig?

      Kun je de DSMR-logger helemaal niet meer benaderen? Ook niet via telnet? Het zou kunnen dat de logger crashed en dan steeds opnieuw opstart, maar dan zou ik verwachten dat de ledjes steeds weer opnieuw knipperen..

      Als je de DSMR-logger kunt benaderen met “http://<ipadres-logger>/update” kun je gewoon nieuwe firmware flashen, anders moet je het bedraad doen. Zelf vind ik deze het prettigst werken. Wel opletten dat je de 5volt draad met de 5volt test pin van de logger verbindt.

      • RJ says:

        Hoi Willem,

        Bedankt voor je reactie!
        De Azure IOT hub verwacht dat je username in bepaald formaat opstuurt; wachtwoord is standaard een base64 encoded gegenereerde passphrase die langer is dan 30 posities. Zie https://docs.microsoft.com/nl-nl/azure/iot-hub/iot-hub-mqtt-support#using-the-mqtt-protocol-directly-as-a-device
        Vandaar mijn aanpassing.

        Ik krijg inderdaad helemaal geen verbinding meer. Ping en telnet werken niet meer. Http geeft ook geen respons.

        Hij lijkt inderdaad in een loop te zitten: blauwe led heel kort dan, lang (1s) en dan 5 niets. En dat weer telkens opnieuw.

        Had ik misschien voor het flashen weer de settings file moeten verwijderen?

        Ik ga een programmer bestellen; ik houd je op de hoogte. bedankt!

  22. Bergerie says:

    Op het ogenblik heb ik de slimme meter aangesloten op mijn Vera Smart Home Controller middels de SmartMeter Reader plugin. Het betreft hier een KFM5KAIFA-METER met DSMR version: 42. Deze plug in geeft mij naast de gegevens omtrent electrische verbruik tevens het gas verbruik weer in l/h en m3.
    Ik probeer de overgang te maken naar de DSMRLoggerAPI en merk op dat:
    1) de electrische metingen kloppen;
    2) van het gas verbruik slechts het totaal m3 is vermeld echter onder “water_delivered” en dat het verbruik in l/h niet is terug te vinden;
    3) het “(gas_)equipment_id” niet overeenkomt met de respectievelijk electrische/gas meter ID.
    Voor mijn vergelijk gebruik ik de uitlezingen verkregen middels http://localIP/api/v1/sm/fields.
    Heb ik een instelling over het hoofd gezien om dit recht te trekken?

    • Willem Aandewiel says:

      Bergerie,

      Het lijkt erop dat jouw gasmeter niet op Mbus 1 maar op Mbus 2 is aangesloten.

      Door deze link te lezen kun je dit waarschijnlijk oplossen.

      De gasmeter geeft alleen de meterstand door. Het gebruik per periode moet je dus zelf uitrekenen. Afhankelijk van je installatie en gasmeter vindt een update om de tien minuten, om het uur of zelfs slechts 1x per dag plaats.

  23. Juno says:

    Prettige k/woningsdag!

    [comment verplaatst naar restAPI’s zijn hip!]

    Ik heb gisteren een update uitgevoerd van 1.0.3 naar 2.0.1. Ik hoopte dat hiermee de spontane reboots zouden zijn opgelost.
    Ik zie nog steeds reboots: de uptime blijft in minuten, laaste reset: External System. Alleen het aantal reboots blijft staan op 18.
    Ik heb een Landis Gyr+ E360 SMR 5.0.
    Kan de meter niet genoeg stroom leveren?
    Heeft het afkoppelen van de Oled display nog zin? Mijn test met de v1.0.3 liet zien dat hier ook nog reboots bij optraden.
    Aangezien de DSRM logger het doet geeft mijn meter (meestal) genoeg stroom.
    Wat is het verbruik van de DSRMlogger met display? Ik weet dat als er WiFi communicatie is het verbuik van de ESP12 omhoog gaat.
    Volgens de specificatie mag er max 250 mA worden verbruikt via de P1 poort
    [https://www.netbeheernederland.nl/_upload/Files/Slimme_meter_15_a727fce1f1.pdf]

    Het toevoegen van een (grotere) condensator of supercap zou een stroom piek van de ESP moeten kunnen opvangen.
    Heeft iemand hierover al nagedacht?
    Of heeft iemand ervaring met het gebruik van een supercap en een stroom limiter?

    Paralel ben ik een projectje gestart om met een 3.3V arduino Hall sensor en een losse magneet, mijn water meter te meten. Dit zou ik willen aansluiten op esp12 met een software uitbreiding om de pulsen (liters) te tellen en om te zetten naar kubieke meter.
    Het arduino bordje verbruikt ongeveer 7.7mA.

    Wie kan meedenken naar een oplossing zonder externe voeding, of is dit toch de enigste oplossing?

    Met vriendelijke groeten,
    Juno.
    Graag

    • Willem Aandewiel says:

      Juno,

      Je plaatst je vraag bij de post over de DSMRloggerWS firmware, maar je schrijft ook dat je een “update” van v1.0.3 naar v2.0.1 hebt gedaan… alleen, van de DSMRloggerWS firmware is nooit een versie 2.0.1 gereleased.
      Ik ga er vanuit dat je een upgrade hebt uitgevoerd van de DSMRloggerWS naar de DSMRloggerAPI firmware.

      Ik heb één melding van een gebruiker met een Landys E360 Slimme Meter en die geeft inderdaad aan dat je een externe voeding nodig hebt. Volgens mijn metingen gebruikt de ESP-12 tijdens het verbinden met het WiFi netwerk de meeste stroom (zo’n 250mA) maar tijdens normale werking niet meer dan 80mA. Het OLED scherm voegt daar een paar mA aan toe.

      Het toevoegen van een grotere elco kán werken, maar ook tégen werken. Iemand heeft daar een comment over geschreven (moet je even opzoeken). Punt is dat éénmaal opgestart de grotere elco als buffer werkt maar bij het opstarten juist éxtra stroom trekt waardoor de Slimme Meter de voeding juist uitschakelt. Your milage may vary.

      Zéker als je ook nog een hall sensor schakeling wilt voeden lijkt een externe voeding verstandig.

      • robby says:

        Die E360 melding is van mij. Dat ik met een externe voeding werk heeft ermee te maken dat ik een RJ11 (4 aderige) kabel, die had ik nog liggen, gebruik. Deze kabel geeft de 5 volt uit de SM niet door.

        Ik heb niet getest of de voeding van de SM voldoende is voor de DSMR-logger.

        • robby says:

          Ja, de SM geeft voldoende prik voor de E360 via een RJ12 kabel. Externe voeding is nu niet meer in gebruik.

  24. Bergerie says:

    Het ziet er naar uit dat m’n PCB “gone burst” is. Rode LED brandt, Flash-Reset button sequence levert geen enkele “blue” flash op, LED “dead”, geen flash communicatie. FTDI separaat getest en werkt perfect. Een “recovery” methode, if any, voor handen?

    • Bergerie says:

      LED moet zijn OLED!

    • Willem Aandewiel says:

      Bergerie,

      Wat vervelend. Heeft het OLED scherm eerder wel gewerkt? Heb je “iets” gedaan tussen het moment dat de DSMR-logger werkte en het moment waarop hij niet meer werkt?
      Wat bedoel je met “flash-reset button sequence”? Bedoel je het “in flash mode zetten” van de DSMR-logger? Wat verwacht je dat er gebeurd als je hem in flash-mode zet?
      Heb je de Tx en Rx lijnen van de FTDI goed (gekruist) aangesloten? Is het een 3v3 FTDI bordje (ze zijn vaak 5volt en/of via een jumper omschakelbaar).

  25. Bergerie says:

    Dank voor snelle reactie.
    1) OLED heeft eerder gewerkt;
    2)”iets” alleen geprobeerd OTA te flashen voor Mbus 2/1 swap;
    3) “FLASH-RESET-Release RESET, Release FLASH” gaf voorheen een flash blauwe led
    4) Tx(FTDI) naar Rx DSMR, Rx(FTDI) naar Tx DSMR
    5) FTDI stond op 5v heb jumper nu op 3.3V gezet
    6) Na USB connector verbonden aan PC (OM4), alleen RED LED (FTDI) en DSMR branden.
    7) procedure 3) levert geen blauwe flash nog een OLED display op
    8) Tools/ESP8266 Sketch upload resulteert in: esptool.py v2.8, Serial port COM4,
    Connecting…….._____….._____….._____., the selected serial port _ does not exist or your board is not connected
    9) Reverse (tijdelijke puls connectie) Tx/Rx connection, i.e. Tx – Tx en Rx-Rx, resets het bordje en OLED screen is terug, Blue LED is intermittend ON, System komt niet verder dan “Verbinden met WiFi” en start-up sequence herhaalt zich.
    10) Herhaal 3) en blauwe LED flashes en gaat uit. OLED holds, blijft staan op “verbinden met WiFi”
    11) reconnect volgens 4) resulteerd in gelijke error 8)
    12) Disconnect power, sluit power weer aan resulteert in 6) hierboven.

    Ik vrees “ter zielle”

    • Willem Aandewiel says:

      1) OLED heeft eerder gewerkt;
      -> Ok, dat is goed om te weten

      2)”iets” alleen geprobeerd OTA te flashen voor Mbus 2/1 swap;
      -> Waar heb je die swap gemaakt (welk bestand). Ik meen mij te herinneren dat je een pré 4.0 draait, dan moet je de aanpassing ook in de dsmr30 library aanbrengen. Heb je dat gedaan?

      3) “FLASH-RESET-Release RESET, Release FLASH” gaf voorheen een flash blauwe led
      -> Ok, zo zet je hem in flash-mode

      4) Tx(FTDI) naar Rx DSMR, Rx(FTDI) naar Tx DSMR
      -> Dat is ook goed!

      5) FTDI stond op 5v heb jumper nu op 3.3V gezet
      -> Hm.. dat is niet goed. Er bestaat een kans dat je daarmee de esp-12 hebt kapot gemaakt….

      6) Na USB connector verbonden aan PC (COM4), alleen RED LED (FTDI) en DSMR branden.
      -> Hm…

      7) procedure 3) levert geen blauwe flash nog een OLED display op
      -> Hm…

      8) Tools/ESP8266 Sketch upload resulteert in: esptool.py v2.8, Serial port COM4,
      Connecting…….._____….._____….._____., the selected serial port _ does not exist or your board is not connected
      -> Goed, soms moet je, zodra de melding “Connecting…” verschijnt nóg een keer de esp-12 in flash-mode zetten. Daar is voldoende tijd voor.

      9) Reverse (tijdelijke puls connectie) Tx/Rx connection, i.e. Tx – Tx en Rx-Rx, resets het bordje en OLED screen is terug, Blue LED is intermittend ON, System komt niet verder dan “Verbinden met WiFi” en start-up sequence herhaalt zich.
      10) Herhaal 3) en blauwe LED flashes en gaat uit. OLED holds, blijft staan op “verbinden met WiFi”
      -> Deze hele cycles ontgaat mij. Na flashen of om de esp-12 uit flash-mode te halen is het voldoende om 1x op de [reset] knop te drukken..
      -> Maar .. het lijkt toch wel dat de esp-12 nog steeds werkt, anders zou er niets op het OLED scherm staan!

      11) reconnect volgens 4) resulteerd in gelijke error 8)
      -> Nogmaals in flash-mode zetten!

      12) Disconnect power, sluit power weer aan resulteert in 6) hierboven.

      Ik vrees “ter zielle”

      Kort door de bocht: misschien niet!
      Wat voor meldingen krijg je als je FTDI aangesloten laat en de serial monitor opent? Kun je de meldingen als tekst in een reply zetten (liever geen plaatje want daar is de resolutie vaak te slecht van)?

      • Bergerie says:

        Slechts alleen de tijd melding: 14:49:26.156 ->
        Ik wil met alle plezier het boardje naar je toesturen. Ik heb het afgeschreven maar misschien kan jij er nog iets van leren voor later.

  26. Henk W. says:

    [reply verplaatst]

    Dank voor al het fraais Willem. Sedert nov 2019 volop genieten van mijn meter/logger.
    Nu de upgrade naar API gedaan, vlekkeloos verlopen. Nu wil ik de PRD bestandjes terug zetten maar…. Upload vervolgens een bestand met de exacte naam !PRDconvert
    Die is er dus niet, hele schijf doorzocht. Zal ik ergens op moeten halen maar waar? Heeft u een aanwijzing?
    Dank hoor

    • admin says:

      Henk,

      Je moet zélf een bestandje met die naam maken op je computer. Mag een leeg bestand zijn als de naam maar klopt.

  27. Leo says:

    Willem,
    DSMRloggerWS v1.0.3c aangeschaft bij OC incl Kabel en display.

    Alles geïnstalleerd en het display gemonteerd en alles werkt prima.
    Kan er prima bij via de WiFi.
    Echter hij ontvangt geen telegrammen.
    Mijn meter is een Isra AM550-TD2 CDMA 3F SW ESMR 5.0
    Ik gebruik de voeding uit de meter
    Heb jij tips waar ik dit moet zoeken?

    • Willem Aandewiel says:

      Leo,

      Dat is vreemd. Aan de Slimme Meter zal het niet liggen (zie hier).

      De meest voor de hand liggende oorzaak is het kabeltje of hoe hij in de meter zit. Heb je hem echt goed in de meter aangedrukt? Blijkt toch dat het daar nogal eens mis gaat. Heb je de mogelijkheid de kabel door te meten? De buitenste pinnen zijn goed, anders zou je geen tekst op het display krijgen maar één van de vier binnenste contacten zou slecht kunnen zijn.

  28. leo says:

    Willem,

    Ik ga op onderzoek uit en de kabel doormeten.
    ook wil ik de update van WS naar API uitvoeren.
    Als ik meer weet dan meld ik mij weer.

    Bedankt vast.

  29. Leo says:

    Hoi Willem,

    Nou heel wat geprobeerd en zelfs ge-update naar de API versie.
    Bijgeleverde kabel doorgemeten en deze lijkt in orde. de blauwe led knippert keurig om de 10s maar de telegrammen bijven op 0/0 staan.
    Ook nog een externe voeding geprobeerd en een RJ 11 kabel maar helaas geen berichten.
    Het display geeft geen fouten aan.

    Nog suggesties wat verder te doen?

    Groet,
    Leo

    • Willem Aandewiel says:

      Leo,

      Het “om de tien seconden knipperen” van de blauwe led is een teken dat hij op een telegram wacht (dat blijkbaar niet binnen komt).

      Kun je mij een telnet log toesturen (bijvoorbeeld met putty)?
      Dan graag even op “b” (board info) klikken op “s” (settings) en ook op “r” (raw telegram) klikken.
      Ik stuur je zo een PM met mijn eMail adres.

      Mocht daar niets zinnigs uitkomen dan kunnen We twee dingen doen:

      – je kunt de DSMR-logger naar mij toesturen, dan kan ik hem na meten en proberen te repareren (als dat nodig is)

      – bij opencircuit.nl het probleem aankaarten en om een vervangende unit vragen

  30. A.P. Schniedewind says:

    Beste Willem,

    Weet niet of ik hier op de goede plek ben maar na het upgraden van WS versie naar API versie (ging zonder problemen) heb ik een probleem met de GUI, deze laat maar 1 waarde zien in de uur en dag presentatie. De Actuele waardes komen wel goed op het scherm. en de tabellen bevatten wel waardes.

    Dag presentatie bevat nog geen 2e dag maar toch.

    kan jij me een hint geven waar ik de oorzaak kan vinden ?

    mvg
    Tom

    gebruik mozilla
    DSMR-API v2.0.1 (17-04-2020)

    • Willem Aandewiel says:

      Tom,

      Je comment staat bij de goede post!

      Ik snap niet helemaal wat je bedoeld. Kun je tekst-copy van het tabel-scherm over de foutieve periode geven?

      • A.P. Schniedewind says:

        Willem bedankt voor je response.
        hierbij de text copy’s

        hier de Uren tabel

        Afgelopen Uren

        (07) [12:00 - 12:59]	0	946	0.000
        (07) [11:00 - 11:59]	15	1003	0.000
        (07) [10:00 - 10:59]	13	253	0.788
        (07) [09:00 - 09:59]	267	0	0.129
        (07) [08:00 - 08:59]	89	25	0.387
        (07) [07:00 - 07:59]	48	4	0.242
        (07) [06:00 - 06:59]	141	0	0.000
        (07) [05:00 - 05:59]	124	0	0.000
        (07) [04:00 - 04:59]	126	0	0.000
        (07) [03:00 - 03:59]	227	0	0.000
        (07) [02:00 - 02:59]	210	0	0.000
        (07) [01:00 - 01:59]	125	0	0.000
        (07) [00:00 - 00:59]	908	0	0.000
        (06) [23:00 - 23:59]	827	0	0.000
        (06) [22:00 - 22:59]	374	0	0.139
        (06) [21:00 - 21:59]	302	0	0.389
        (06) [20:00 - 20:59]	114	83	0.097
        (06) [19:00 - 19:59]	0	1000	0.015
        (06) [18:00 - 18:59]	34	928	0.000
        (06) [17:00 - 17:59]	145	1896	0.003
        (06) [16:00 - 16:59]	0	2329	0.007
        (06) [15:00 - 15:59]	0	2074	0.072
        (06) [14:00 - 14:59]	0	1509	0.012
        (06) [13:00 - 13:59]	3	1842	0.065
        (06) [12:00 - 12:59]	0	1783	0.008
        (06) [11:00 - 11:59]	2	1156	0.003
        (06) [10:00 - 10:59]	20	194	0.000
        (06) [09:00 - 09:59]	206	0	0.278
        (06) [08:00 - 08:59]	75	23	0.479
        (06) [07:00 - 07:59]	43	5	0.000
        (06) [06:00 - 06:59]	97	0	0.000
        (06) [05:00 - 05:59]	169	0	0.000
        (06) [04:00 - 04:59]	125	0	0.000
        (06) [03:00 - 03:59]	186	0	0.000
        (06) [02:00 - 02:59]	256	0	0.000
        (06) [01:00 - 01:59]	123	0	0.000
        (06) [00:00 - 00:59]	145	0	0.000
        (05) [23:00 - 23:59]	229	0	0.000
        (05) [22:00 - 22:59]	290	0	0.197
        (05) [21:00 - 21:59]	315	0	0.220
        (05) [20:00 - 20:59]	116	72	0.162
        (05) [19:00 - 19:59]	0	1008	0.041
        (05) [18:00 - 18:59]	0	1728	0.000
        (05) [17:00 - 17:59]	4	2029	0.004
        (05) [16:00 - 16:59]	11	1798	0.004
        (05) [15:00 - 15:59]	1	2105	0.000
        (05) [14:00 - 14:59]	6493255	316933	2965.889
        (00) [00:00 - 00:59]	0	0	0.000
        

        en de dag tabel

        donderdag 07-05-2020	2293	2260	1.546	1.55
        woensdag 06-05-2020	3246	14822	1.567	-0.75
        dinsdag 05-05-2020	6494221	325673	2966.517	4200.23
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        dinsdag 00-00-2000	0	0	0.000	0.00
        

        is dit wat je bedoeld ?

        • A.P. Schniedewind says:

          scherm ziet er zo uit

          Uren scherm

        • Willem Aandewiel says:

          Dat is wat ik bedoel.

          Wat is nu precies je vraag?

          De uren tabel is bijna helemaal gevuld (alleen de laatste waarde (nog) niet). en dat ziet er goed uit.
          Echter, in de grafiek neemt (05)[14:00-14:59] zoveel ruimte in dat het LIJKT alsof de eerdere uren nul zijn. Dat zijn ze niet (hoover erover met je muis).

          De dagen tabel zitten drie dagen in. 05-05-2020 geeft de meterstand van dat moment aan. Als je dit in een grafiek zet, dan vallen de twee andere dagen in het niet en lijkt het alsof er geen waarden zijn.
          Over twee weken zijn is de dag grafiek netjes leesbaar en informatief!

          Alles ziet er volgens mij goed uit.

          • A.P. Schniedewind says:

            Willem ik weet niet wat er gebeurt is maar NU zie ik wel alle uren in de grafiek. Het spijt me dat ik je lastig heb gevallen. Ieder geval hartelijk bedankt voor de reactie’s

            mvg Tom

  31. Melvin says:

    Hi Willem,

    Mooi product heb je gemaakt!
    Ik heb echter een stomme fout gemaakt bij het upgraden.

    Heb per ongeluk bij het uploaden van het Ino.bin bestand een versie met een andere naam geüpload (had hem 2x gedownload 🙁 dus er stond een 2 achter de naam). Nu krijg ik geen verbinding meer. Kun je mij hierbij helpen? Valt er überhaupt nog mee te verbinden via WiFi?

    Met vriendelijke groet,
    Melvin

    • Willem Aandewiel says:

      Melvin,

      Was het een kopie van de DSMRloggerAPI firmware? Het maakt n.l. niet uit hoe dat bestand heet dus daar zou geen probleem door moeten ontstaan.
      Als het een geheel ander binary is zonder updateserver dan kun je hem alleen nog bedraad flashen.

      Hou je er rekening mee dat de hostname veranderd met de upgrade? DSMR-WS.local werkt dus niet meer. Is nu “DSMR-API.local”. Heb je geprobeerd hem via het IP-adres te benaderen?

      • Melvin says:

        Goedemorgen Willem,

        Ik heb via DSMR-API.local weer verbinding 🙂 Thanks!
        Heb nu v2.0.1 (17-04-2020) erop staan. Wel is telegram en de rest nog leeg. Mogelijk gaat hier nog wat tijd over?!

        [Willem: omdat dit comment over de DSMRloggerAPI firmware gaat heb ik hem naar deze post verplaatst]

        • Willem Aandewiel says:

          Melvin,

          Mooi dat je weer verbinding hebt!

          Hm.. kun je een text-copy (een plaatje is niet goed te lezen) van de [Systeem Info] tab posten?

          Anders ook output van telnet kopieëren als je “b”, “s” en “l” intoetst.

  32. Jan says:

    Dag Willem,

    Ik heb net een dsmrlogger V4 aangeschaft en met de laatste API firmware geladen. Na 2 uur loopt het systeem vast en zie ik bij de telegram een heap error staan…. Ik heb alles uitgeschakeld en gebruik alleen mqtt en de update server. Heb je nog tips ?

    Dank voor je geweldig project!!

    Groetjes,

    Jan

    • Willem Aandewiel says:

      Jan,

      Dat is vreemd.
      Kun je een text-copy (plaatjes zijn niet goed leesbaar) van de [Systeem Info] tab posten?

      • Jan van Keulen says:

        Dag Willem,

        Dank voor je snelle reactie 🙂 Het is inderdaad vreemd dat het geheugen volloopt, zeker omdat er niemand anders last van heeft 😉 Misschien iets aan de HW kant, zou dat kunnen?

        Hier de Device Tab in tekst format:

        Device Info /api/v1/dev/info

        Name	Value	Unit
        Auteur	Willem Aandewiel (www.aandewiel.nl)	
        Firmware Versie	v2.0.1 (17-04-2020)	
        Gecompileerd	May 12 2020 18:49:57	
        HostName	DSMR-API	
        IP adres	192.168.2.226	
        MAC adres	DC:4F:22:60:A1:D8	
        Te Gebruiken index.html Pagina	DSMRindex.html	
        Free Heap Space	12192	bytes
        Max. Free Heap Blok	11960	bytes
        Chip ID	60a1d8	
        ESP8266 Core Versie	2_7_1	
        SDK versie	2.2.2-dev(38a443e)	
        CPU Frequency	80	MHz
        Sketch Size	504.891	kB
        Free Sketch Space	1540	kB
        Flash Chip ID	0016400E	
        Flash Chip Size	4	MB
        Flash Chip Real Size	4	MB
        SPIFFS Size	2	MB
        Flash Chip Speed	40	MHz
        Flash Chip Mode	DOUT	
        Board Type	ESP8266_GENERIC	
        Compiler Opties	[USE_DUTCH_PROTOCOL][USE_UPDATE_SERVER][USE_MQTT]	
        WiFi SSID	JaKe-2.4-Linksys	
        WiFi RSSI	-72	
        Up Time [dagen] - [hh:mm]	0(d)-00:12(H:m)	
        OLED type (0=None, 1=SDD1306, 2=SH1106)	0	
        Flip OLED scherm (0=No, 1=Yes)	0	
        SM Has Fase Info (0=No, 1=Yes)	1	
        Telegram Lees Interval (Sec.)	10	
        Telegrammen verwerkt	59	
        Telegrammen met fouten	0	
        MQTT Broker IP/URL	192.168.2.12:1883	
        Verzend MQTT Berichten (Sec.)	10	
        MQTT broker connected	yes	
        Aantal keer opnieuw opgestart	50	
        Laatste Reset reden	External System	
        Data uit de DSMR-logger
        
      • Jan van Keulen says:

        Willem,

        Dit is de melding die ik krijg:

        raw Telegram /api/v1/sm/telegram
        500: internal server error (low heap)

        • Willem Aandewiel says:

          Jan,

          Is er een reden waarom je niet gewoon een pré-compiled binary van github gebruikt?

          Je hebt in ieder geval de USE_REQUEST_PIN niet geactiveerd. Dat moet wel (maar ik betwijfel of daar jouw probleem door ontstaat).

  33. Melvin says:

    Hi Willem,

    Bijgaand een kopie van de system info pagina:

    Name	Value	Unit
    Auteur	Willem Aandewiel (www.aandewiel.nl)	
    Firmware Versie	v2.0.1 (17-04-2020)	
    Gecompileerd	Apr 17 2020 11:48:16	
    HostName	DSMR-API	
    IP adres	192.168.68.113	
    MAC adres	A4:CF:12:C2:FD:20	
    Te Gebruiken index.html Pagina	DSMRindex.html	
    Free Heap Space	17144	bytes
    Max. Free Heap Blok	10616	bytes
    Chip ID	c2fd20	
    ESP8266 Core Versie	2_6_3	
    SDK versie	2.2.2-dev(38a443e)	
    CPU Frequency	80	MHz
    Sketch Size	542.703	kB
    Free Sketch Space	1504	kB
    Flash Chip ID	001640EF	
    Flash Chip Size	4	MB
    Flash Chip Real Size	4	MB
    SPIFFS Size	2	MB
    Flash Chip Speed	40	MHz
    Flash Chip Mode	DOUT	
    Board Type	ESP8266_GENERIC	
    Compiler Opties	[USE_REQUEST_PIN][USE_DUTCH_PROTOCOL][USE_UPDATE_S
    ERVER][USE_MQTT][USE_MINDERGAS]	
    WiFi SSID	B&M	
    WiFi RSSI	-47	
    Up Time [dagen] - [hh:mm]	0(d)-01:45(H:m)	
    OLED type (0=None, 1=SDD1306, 2=SH1106)	1	
    Flip OLED scherm (0=No, 1=Yes)	0	
    SM Has Fase Info (0=No, 1=Yes)	1	
    Telegram Lees Interval (Sec.)	10	
    Telegrammen verwerkt	0	
    Telegrammen met fouten	0	
    MQTT Broker IP/URL	:1883	
    Verzend MQTT Berichten (Sec.)	0	
    MQTT broker connected	no	
    Mindergas Terugkoppeling	NO_AUTHTOKEN	
    Mindergas Status (@dag | tijd)	@01|01:01 -> :0	
    Aantal keer opnieuw opgestart	4	
    Laatste Reset reden	Software/System restart	
    Data uit de DSMR-logger
    
    • Willem Aandewiel says:

      Melvin,

      Ik zie hier niets vreemds aan. Lijkt allemaal zoals het moet zijn!

      Blijft over:

      • De kabel zit niet goed (diep genoeg) in de DSMR-logger en/of Slimme Meter
      • De kabel is niet goed
      • Je Slimme Meter is geen DSMR 4+ meter

      Kun je de kabel doormeten (blijkbaar zijn de buitenste twee draadjes goed anders zou de DSMR-logger geen spanning krijgen – ik neem tenminste aan dat je geen externe voeding gebruikt)?

      Wat voor SM heb je (merk/type)?

      • Melvin says:

        Hi Willem,

        Vandaag een nieuwe kabel erin gedaan RJ-12. Ik twijfelde aan de oude dus een nieuwe besteld.
        Ik heb een Stedin SM: Landis Gyr E350
        DSMR 2.2+ Heb ik nu gewoon niet op zitten letten…

  34. Bergerie says:

    Is there a way I can get the:
    WiFi.SSID();
    WiFi.localIP() &
    WiFi.gatewayIP
    across via MQTT?

    • Willem Aandewiel says:

      Hi Bergerie,

      Ja dat kan (natuurlijk).

      Ik zou dat in void sendMQTTData() nå het statement DSMRdata.applyEach(buildJsonMQTT()); doen.

      Iets van:

      createMQTTjsonMessage(mqttBuff, "SSID", WiFi.SSID());
      if (!MQTTclient.publish(topicId, mqttBuff) )
      {
        DebugTf("Error publish(%s) [%s] [%d bytes]\r\n", topicId, mqttBuff, (strlen(topicId) + strlen(mqttBuff)));
      }
      

      Hou me op dehoogte of het lukt!

      • Bergerie says:

        Excuses voor late response. Helaas is het niet gelukt. De navolgende error message is van toepassing op het if statement:

           if (!MQTTclient.publish(topicId, mqttBuff) )
                                                    ^
        MQTTstuff:262:44: error: no matching function for call to 'PubSubClient::publish(String&, char [100])'
        
        • Willem Aandewiel says:
          createMQTTjsonMessage(mqttBuff, "SSID", WiFi.SSID());
          if (!MQTTclient.publish("SSID", mqttBuff) )
          {
            DebugTf("Error publish(SSID) [%s] [%d bytes]\r\n", mqttBuff, (strlen("SSID") + strlen(mqttBuff)));
          }
          

          Zo iets?

          • Bergerie says:

            Helaas, dit geeft dezelfde error message:
            DebugTf(“Error publish(%s) [%s] [%d bytes]\r\n”, topicId, mqttBuff, (strlen(topicId) + strlen(mqttBuff)));

            ^

            exit status 1
            no matching function for call to ‘PubSubClient::publish(String&, char [100])’
            In eerste instantie kreeg ik een error message stray \342. Ik heb derhalve eerst de have Unicode quotation marks veranderd naar ASCII quotation marks.
            Met dezelfde correctie heb ik je eerste code nog een keer gebruikt en die geeft nu een totaal andere error:
            In Debug.h regel 21-22:
            #define Debugf(…) ({ Serial.printf(__VA_ARGS__); \
            TelnetStream.printf(__VA_ARGS__); \
            stopt het compileren en geeft aan:
            DebugTf(“Error publish(%s) [%s] [%d bytes]\r\n”, topicId, mqttBuff, (strlen(“SSID”) + strlen(mqttBuff)));

            ^

            exit status 1
            cannot pass objects of non-trivially-copyable type ‘class String’ through ‘…’

  35. Willem Aandewiel says:

    Bergerie,
    Je hebt de DebugTf() niet correct overgenomen.

    • Bergerie says:

      Whaaauw, compiled goed nu met code:
      createMQTTjsonMessage(mqttBuff, “SSID”, WiFi.SSID());
      if (!MQTTclient.publish(“SSID”, mqttBuff) )
      {
      DebugTf(“Error publish(SSID) [%s] [%d bytes]\r\n”, mqttBuff, (strlen(“SSID”) + strlen(mqttBuff)));
      }
      Probleem ontstaan met copy/paste, sorry!
      Voordat ik verder ga met een OTA update, kan ik voorgaande code simpelweg herhalen voor o.a. WiFi.localIP() maar dan met:
      createMQTTjsonMessage(mqttBuff, “SSID”, WiFi.SSID());

      • Bergerie says:

        sorry:
        createMQTTjsonMessage(mqttBuff, “LocalIP”, WiFi.localIP());

        • Willem Aandewiel says:

          Yip!!

          • Bergerie says:

            SSID en LocalIP komen goed door via MQTT. Om de error:

            call of overloaded 'createMQTTjsonMessage(char [100], const char [8], IPAddress)' is ambiguous
            

            in:

            createMQTTjsonMessage(mqttBuff, “LocalIP”, WiFi.localIP()); 
            

            op te lossen heb ik deze gewijzigd in:

            WiFi.localIP().toString().c_str() 
            

            waarna het zonder errors compileerde. Ik wil alleen graag weten of dit de juiste correctie is of toevalligheid.
            Ondertussen, dank voor de guidance, maakt het wat makkelijker voor diagnostics om te weten op welk localIP het device zit.

          • Willem Aandewiel says:

            Ja, dat is de correcte manier!

  36. Erik says:

    Slimme Meter: Landis Gry+
    P1 version: DSMR 42
    DSMR Firmware Version: v1.0.3c (22-11-2019)

    Helaas levert mijn slimme meter geen genoeg stroom over de P1 poort en heb ik hem via de USB aansluiting van mijn kabel modem moeten aansluiten om de slimme meter van genoeg stroom te voorzien.

    Eigenlijk werkt ‘t gewoon plug&play, dank daarvoor!

  37. Kevin says:

    Beste Willem, aller eerst, wat een geweldig apparaatje voor gebruik in een smart home. Ik zou dit dus graag willen implementeren. Echter loop ik tegen een probleem aan.

    Na de eerste keer opstarten heb ik verbinding kunnen maken met de access point op de ESP8266, waardoor ik dus de pagina kon bereiken om hem te verbinden aan een wifi netwerk. Na de juiste credentials ingevoerd te hebben verbindt de ESP niet met mijn wifi netwerk, dit blijkt uit de verbonden apparaten van het betreffende wifi netwerk. Ook zie ik de acces point van de ESP dus ook niet meer.

    * Gebruikte Compiler Opties
    Zoals beschreven in de documentatie

    * Externe voeding gebruikt
    Arduino als tijdelijke voeding, jumperwires op 5V en GND, zou dit het probleem zijn, heb ik een andere voeding nodig?

    * Energy Leverancier
    Enexis

    * Functioneert de DSMR-logger
    Na instellen AP niet meer

    • Willem Aandewiel says:

      Hi Kevin,

      Wat een vreemd probleem. Met de gegeven informatie kan ik alleen niet zo veel.

      Wil je doorgeven:

      – Merk en Type Slimme Meter
      – Heb je een OLED scherm aangesloten -> wat voor meldingen krijg je hierop?
      – Wat doen de twee ledjes op de DSMR-logger? Is de Rode LED constant “Aan”, hoe knippert de Blauwe LED?
      – Waarom heb je compiler opties gebruikt? De kant-en-klaar, door opencircuit.nl, geleverde DSMR-logger hoef je niet te flashen!
      – Hoe probeer je de DSMR-logger te benaderen (met welke URL?)?
      – Ik weet niet of de Arduino voldoende stroom kan leveren voor de DSMR-logger. Je hebt tijdelijk max. 250 mA nodig.

      Als ik deze informatie heb kan ik verder nadenken over dit probleem..

  38. Kevin says:

    Na een OLED schermpje besteld en aangesloten te hebben, bleek dat de module gewoon zijn werk deed en weldegelijk verbinding maakt met het wifi netwerk. Nu blijft er alleen constant ‘Startup complete Wait for first’ op het schermpje staan, zie foto.

    Gevraagde informatie:

    – Merk en Type Slimme Meter
    Sagemcom T210-D ESMR5 van Enexis

    – Heb je een OLED scherm aangesloten -> wat voor meldingen krijg je hierop?
    Na een OLED schermpje besteld en aangesloten te hebben kreeg ik een IP-adres te zien. Op de modem is hij nog steeds niet zichtbaar. Op de foto is te zien wat het schermpje aangeeft.

    – Wat doen de twee ledjes op de DSMR-logger? Is de Rode LED constant “Aan”, hoe knippert de Blauwe LED?
    De rode led is constant aan en de blauwe led knippert 1x, ongeveer om de 10 seconden

    – Waarom heb je compiler opties gebruikt? De kant-en-klaar, door opencircuit.nl, geleverde DSMR-logger hoef je niet te flashen!
    Het was inderdaad niet nodig de module opnieuw te flashen.

    – Hoe probeer je de DSMR-logger te benaderen (met welke URL?)?
    Nu het IP-adres bekend is benader ik de module met zijn IP-adres.

    • Kevin says:

      Nu ik een andere slimme meter tot mijn beschikking heb dan die bekend zijn volgens de documentatie wil ik graag het volgende doorgeven op basis van mijn ervaring:

      Merk: Sagemcom
      Type: T210-D
      Compiler Opties:
      Externe Voeding: P1 poort levert voldoende voeding
      DSMR: ESMR5 -> dus DSMR 5?
      Opmerking: ESMR5
      Werkt: tot op heden nog niet bekend

    • Willem Aandewiel says:

      Het lijkt erop dat de DSMR-logger geen telegrammen ontvangt. Dáárom blijft de melding “Wait for first telegram” op het display staan.
      Omdat de rest lijkt te werken is de RJ12 kabel mogelijk een probleem. Zit de kabel ver genoeg in de SM? Zit hij ver genoeg in de DSMR-logger (je moet een duidelijke “klik” horen)?
      Of … woon je in België en heb je een Belgische SM?

      Uit je antwoord “het was inderdaad niet nodig opnieuw te flashen” kan ik niet opmaken of je het ook niet gedaan hebt … anders raad ik je aan de update procedure te volgen en de originele firmware opnieuw te flashen via de Update Server (SPIFFS hoef je niet opnieuw te flashen).

      Het lijkt erop dat je het grote Oled scherm gebruikt. Dit moet je in de webinterface nog even goed configureren (bij de settings).

      • Kevin says:

        Hoi Willem,

        Bedankt voor je reactie. De RJ12 connector ging makkelijk in de P1 poort en je hoorde inderdaad een duidelijke klik. Bij de SM echter niet, deze ging er wat stroever in, maar uiteindelijk hoorde je wel een klik. Ik heb de kabel omgedraaid en nu lijkt alles feilloos te werken.

        In eerste instantie dacht ik dat ik zelf de software moest aanpassen om de juiste WiFi credentials te gebruiken. Na de documentatie te lezen kwam ik erachter dat dit op een andere manier moest. Pogingen om de software te uploaden mislukten, dus er was eigenlijk ook niks veranderd op de SM.

        Als OLED scherm gebruik ik de opencircuit versie met SH1106 chip.

        Ik heb eigenlijk nog een vraag omtrent de data die wordt weergegeven in de tabellen van de SM logger. De SM neemt nu in de tabellen en grafieken het totale verbruik mee (dus vanaf het moment dat de slimme meter gemonteerd is in de meterkast). Is het mogelijk om deze tabellen en grafieken te vullen met data vanaf het moment dat de SM aan de energiemeter gekoppeld is, dus dat hij vanaf dan begint met tellen van het energieverbruik?

        • Willem Aandewiel says:

          Kevin,

          Fijn dat alles nu gewoon werkt. Dat probleem met de RJ12 kabel is al meerdere keren als oplossing op dit probleem gemeld (en opgelost).

          In alle bestanden worden de meterstanden opgeslagen. Na verloop van tijd zie je alleen nog het verschil tussen de meterstand en die van de meterstand ervoor.

          Voor het maanden bestand kun je de meterstand van het moment waarop je de SM op de DSMR-logger aansluit met behulp van de ingebouwde editor invoeren.

  39. Arjan says:

    Hallo Willem,

    Dank voor je de DSMRloggerAPI, de software werkt wederom als een trein.
    Ik gebruik Domoticz als platform waar ik de lua file van Michel Groen gebruik om de data te importeren. Omdat het bericht vanuit de DSMR nu anders is zijn heb ik een aantal wijzigingen gemaakt de lua file ‘script_time_esp-dsmr-logger.lua’ de data te kunnen gebruiken in Domoticz.

    De waarden voor Energy_Delivered, Voltage_l en Current_l staan niet meer in bericht en heb ik dus uit sectie na local jsonCPM = json:decode(jsondevices) gehaald.
    De parameter namen zijn nu volledig in kleine letters dus daar heb ik het script ook voor aangepast; bv jsonCPM.Gas_Delivered vervangen door jsonCPM.gas_delivered.
    Puntje van aandacht is dat de waarde voor totaal verbruik (Power_Delivered) is nu in kW waar het voorheen in Watts was. Dit is een cosmetische wijziging in Debug sectie maar is wel van belang als je de gegevens aan de ontvangende kant gebruikt in berekeningen.

    • Willem Aandewiel says:

      Arjan,
      Het gaat mij boven de pet maar voor gebruikers van Dometicz zal het een welkome aanvulling zijn.

    • Casper says:

      Hoi Arjan,

      Zou jij deze lua kunnen delen, en een kleine howtoo kunnen geven.
      Kan weinig vinden van de nieuwe API ism Domoticz.

      Ben ook niet echt een programmeur om dit even snel te maken

  40. Kevin says:

    Dus zoals ik het goed begrijp kan ik onderstaande waardes allemaal op 0,000 zetten voor alle 3 de categorieën (energie geleverd/teruggekeerd en gas geleverd)?

    • Willem Aandewiel says:

      Nee, je moet de correcte jaar/maand en meterstanden invullen. Voor maanden waarvan je het niet weet steeds dezelfde meterstand invullen. Iedere vorige maand moet kleiner of gelijk zijn.

  41. Patrick says:

    Hallo Willem,

    Hier een blije bezitter van de DSMR logger V4.5. Nou zou ik graag willen weten wat de beste weerstands verhouding is voor de ADC aansluiting met gebruik van een SCT-013-030. 4k7-4K7 of 12K-3K verhouding.

    Alvast bedankt.

    • Willem Aandewiel says:

      Patric,

      De SCT-013-030 geeft een spanning af van 0-1 volt bij 0-30 ampère. 0-1 volt is ook het bereik van de analoge poort van de esp8266.

      ADC circuit

      In deze situatie kun je voor R12 een weerstand van 0 of 1 ohm gebruiken en voor R13 een paar mega ohm. Eventueel kun je in plaats van R13 ter beveiliging van de analoge poort een zenerdiode van 1 volt gebruiken (ik weet zo snel niet of zeners met zo’n lage spanning bestaan).

      Denk je er wel aan dat je zelf code moet schrijven om de waarde van de stroom sensor uit te lezen en te vertalen van de gelezen spanning naar de bijbehorende stroom. Dat kun je bijvoorbeeld ergens na het lezen van een telegram doen.

      Succes en laat ons weten wat je bevindingen zijn.

  42. Gerrit says:

    Hallo Willem,

    Ik krijg de conversie van de PRD bestanden naar de Ring bestanden niet voor elkaar.

    Ik heb het geprobeerd met !PRDconvert.txt en een hernoemd ini bestand.

    Wat doe ik verkeerd

    • Willem Aandewiel says:

      Gerrit,

      Je hebt de documentatie niet (goed) gelezen!

      Er staat niet dat je een “!PRDconvert.txt” bestand moet aanmaken!!! De naam van het sleutelbestand moet zijn: “!PRDconvert

  43. John van Hoof says:

    [dit comment is verplaatst van ‘Recent Projects’]

    Drie weken geleden is bij ons een Sagecom meter geinstalleerd. En dan wil je natuurlijk ook bij de data. Aangezien ik erg onder de indruk was van je DSMR-logger heb ik gisteren een geassembleerde versie ontvangen. Vanmorgen geleverd en meteen de opstart procedure doorlopen. Contact gezocht met het AP, wifi netwerk geselecteerd en password opgegeven. En nu….blijft de blauwe LED branden en knippert om de 10 seconden. Ik zie de logger niet op het netwerk. Ook zie ik het AP niet meer. Heb al op de reset knop gedrukt maar dat helpt ook niet. Enig idee?

    • Willem Aandewiel says:

      John,

      Ik wil je graag helpen maar een beetje onderzoek van jouw kant is ook wel prettig.
      In de comments hier en bij deze post wordt dit probleem meermalen beschreven (en opgelost).
      Een kwestie van de comments lezen die er natuurlijk ook niet voor niets zijn.

      Mocht het je dan nóg niet lukken dan wil ik je graag verder helpen als jij de nodige informatie doorgeeft (in verschillende comments vraag ik daar om, diezelfde informatie heb ik bijna altijd nodig!).

  44. Staf Van Gestel says:

    Heb de Belgische API versie geïnstalleerd, de poort actief laten maken (via Fluvius portaal) en de data komt binnen! Top!!
    Ik heb dus de recenste versie van de DSMR-logger aangekocht en die werkt zonder probleem. Zelfs de gaswaarde wordt getoond.
    Geweldig is dit!
    Wel vraag ik me af, en ik heb al heel wat uren in de documentatie en op deze pagina aan het zoeken geweest, kan het zijn dat het ‘Grafisch’ gedeelte van de Actuele waardes niet werkt?
    Ik zie het gasverbruik in lijnvorm verschijnen maar de daarboven verschijnen er geen waardes in grafisch vorm (Gebruikt L1-Gebruikt L2- Gebruikt L3…..).
    Ik zag ergens in de documentatie, een mooie grafiek van de actuele waardes, dus lijkt me dat dit zou moeten werken, maar moet ik daar dan toch ergens een extra bewerking voor doen?
    Alvast dank voor enig antwoord.

    • Willem Aandewiel says:

      Hi Staf,

      Fijn dat alles uiteindelijk toch werkt.

      Dat de actuele grafiek soms niet werkt heb ik ook wel eens gemerkt.
      De pagina “refreshen” helpt bij mij dan altijd…

      Niet echt een “oplossing” maar meer een “work around”.

  45. Staf Van Gestel says:

    Dag Willem,
    Dank voor uw snelle respons!
    Op dit moment heb ik dan toch ook de actuele info grafisch zichtbaar.
    Ik heb hiervoor instelling ‘SM Has Fase Info’ op 0 gezet. Ik had de indruk dat je dan zegt dat de SM geen fase info verstuurd. Maar wat er dan gebeurt is dat net de fase info wel zichtbaar wordt en dan ook het verbruik van L1 zichtbaar wordt.
    Of interpreteer ik die ‘fase info’ verkeerd?
    Want je staart je in begin blind aan die info maar bij nader inzicht zag ik dat in de tabel met data dan toch geen fase info zichtbaar was.

    • Willem Aandewiel says:

      Staf,

      Als je SM geen fase-info afgeeft ontbreken de rubrieken “power-delivered-l1/l2/l3”. Door de optie “has-no-fase-info” op “0” te zetten wordt in plaats van de bovenstaande rubrieken de rubriek “power-delivered” gebruikt.

      Zie de code:

            if (!settingSmHasFaseInfo)
            {
              if (DSMRdata.power_delivered_present && !DSMRdata.power_delivered_l1_present)
              {
                DSMRdata.power_delivered_l1 = DSMRdata.power_delivered;
                DSMRdata.power_delivered_l1_present = true;
                DSMRdata.power_delivered_l2_present = true;
                DSMRdata.power_delivered_l3_present = true;
              }
              if (DSMRdata.power_returned_present && !DSMRdata.power_returned_l1_present)
              {
                DSMRdata.power_returned_l1 = DSMRdata.power_returned;
                DSMRdata.power_returned_l1_present = true;
                DSMRdata.power_returned_l2_present = true;
                DSMRdata.power_returned_l3_present = true;
              }
            } // No Fase Info
      
      • Staf Van Gestel says:

        OK,
        Hartelijk dank!!

      • Staf Van Gestel says:

        [Comment is verplaatst van “DSMR-logger V4 (Slimme Meter uitlezer)” naar “restAPI’s zijn hip!”]

        Willem,
        het is hier al meer gezegd geweest maar ik wil dit toch nog eens herhalen, jullie (ook dus die anderen die de software mee hebben ontwikkeld) hebben een prachtig ontwerp gemaakt! Ik ben al een tijdje met een brede glimlach naar de cijfers van de SM aan het kijken.
        Is die slimme meter toch nog voor iets nuttig!

  46. Bert Diepeveen says:

    Beste Willem,
    Ik heb al een half jaar de DSMR-logger in gebruik. Nu heb ik 3 warmtepompboilers en ook een warmtepomp voor de verwarming.
    Momenteel heb ik voor de warmtepompboilers een uitbreiding gemaakt waarbij ik de boilers in wil schakelen zodra er energie van de zonnepanelen ‘over’ is. Ik maak gebruik van een arduino-mega met een ethernet shield waarmee ik de DSMR-logger wil uitlezen. Nu lukt het mij niet om het Json bericht uit te lezen. Heeft u dit al eens opgelost en kunt u mij ermee verder helpen?
    Alvast bedankt, Bert

    [Comment verplaatst van “DSMR-logger V4 (Slimme Meter uitlezer)” naar “restAPI’s zijn hip! (nieuwe firmware voor de DSMR-logger)”]

    • Willem Aandewiel says:

      Hi Bert,

      Dit voert te ver om hier te behandelen, vooral ook omdat ik niet genoeg informatie heb.

      Ik stuur je een PM

      [Comment is verplaatst van “Recent Projects” naar “restAPI’s zijn hip! (nieuwe firmware voor de DSMR-logger)”]

  47. Bert Groothuis says:

    Dank Willem,
    In de andere post ‘DSMR-logger V4 (Slimme Meter uitlezer)’ kan niet meer antwoorden. Vandaar hier.

    Helaas kan ik hem niet benaderen via WIFI. Op ‘https://mrwheel.github.io/DSMRloggerWS/Opstarten/’ volg ik de handleiding maar zoals genoemd komt er geen AP in beeld.
    Op 192.168.2.2 waar hij normaal ook zat word hij niet herkend. Met de WIFI guard zie ik hem ook niet. Ook niet op mijn smartphone.
    Als het blauwe ledje knippert is dat toch dat het in principe werkt, toch? Op het OLED scherm verschijnt ook niets. Ik heb hem gekocht via opencircuit.nl
    Als hem helemaal opnieuw bekabeld wil installeren heb ik een adapter nodig. De ‘USB to TTL Serial adaptor kabel’ is niet leverbaar op het moment bij opencircuit.nl. Het alternatief op opencircuit.nl is deze: https://opencircuit.nl/Product/ESP-01-USB-Adapter. Ook zie ik alternatieven met een schakelaartje, wat heeft de voorkeur?
    ArduinoIDE heb ik al eerder geïnstalleerd voor wat proefjes.

    Graag wat hulp.

  48. Bert Diepeveen says:

    Hallo Willem,
    Bedankt voor jouw inspanning de afgelopen week.
    Op jouw suggestie heb ik de firmware van de DSMR-logger geupdate van DSMRloggerWS naar DSMRloggerAPI en hebben we samen het uitlezen van de JSON berichten met een Arduino MEGA opgelost. Ik ben met deze oplossing erg geholpen om mijn energieverbruik beter af te gaan stemmen op de energiebeschikbaarheid van mijn zonnepanelen.
    Erg bedankt voor jouw hulp en ik ben erg onder de indruk van het geleverde resultaat.

    Documentatie van deze oplossing is hier te vinden.

    Op github vind je een programma voor een Arduino MEGA (met Ethernet Shield), ESP8266 of ESP32 waarmee je de DSMR-logger kunt uitlezen.

  49. PPee says:

    Hoi Willem,
    DSMR-Logger ziet er mooi uit. Complimenten.
    Ik heb alleen een probleem. Het lijkt alsof ik geen contact heb met de slimme meter (Landis en GYr E350). Ik ontvang geen data en de tijd staat bijv. gewoon nog op 2001. Ik heb de uitlezer 4.5 aangeschaft bij opencircuit, een externe voeding aangesloten, alles ingeplugd, wifi geinstalleerd… allemaal goed tot zover. Als ik de webpage open, krijg ik het API scherm zonder data. Op de uitlezer brandt het blauwe lampje om de plm 10 seconden; het rode lampje brandt permanent. Heb kabeltje verwisseld, gereset, stekker eruit gehad, maar geen resultaat. Is dit een hardware probleem, of een instelling? Any ideas?
    Gr PPee

    • Willem Aandewiel says:

      Hi PPee,

      De Landys GYr E350 bestaat uit minimaal 3 varianten. Eén die aan de DSMR 5 standaard voldoet. Deze moet je zonder meer kunnen aansluiten op de DSMR-logger (works out-of-the-box).
      Dan is er een versie die aan de DSMR 4.0+ standaard voldoet. Ook met deze Slimme Meter moet de DSMR-logger zonder meer werken, maar misschien heb je een externe voeding nodig (nog geen feedback over gehad van makers/gebruikers).
      Tenslotte bestaat er ook nog een versie die aan de DSMR2.0+ standaard voldoet. Deze Slimme meter valt buiten de specs van de DSMR-logger maar hier voor kun je de PRE40 versie van de firmware flashen. Heb je zo’n Slimme Meter dan heb je zéér waarschijnlijk ook een externe (USB) voeding nodig.

      Omdat het instellen van de WiFi Credentials gelukt is en de blauwe led om de tien seconden even knippert (ten teken dat hij op een telegram wacht) lijkt de DSMR-logger gewoon te werken.

      Welke slimme meters geschikt zijn en hoe je andere firmware moet flashen kun je in de documentatie lezen.

      Succes

  50. PPee says:

    Hoi Willem,
    Dank voor de snelle reactie.
    Denk dat ik de oude 2.0 variant heb.
    Krijg ik met de PRE40 versie wel dezelfde functionaliteit.
    GrPPee

    • Willem@Aandewiel.nl says:

      PPee,

      Je krijgt nooit meer functionaliteit dan de Slimme Meter door geeft.

      Maar via instellingen kun je wel het één en ander instellen als je Slimme Meter bijvoorbeeld geen Fase Informatie levert of geen Timestamp met het telegram meegeeft.

      Dit staat allemaal uitvoerig in de documentatie beschreven (je moet er even voor gaan zitten, maar dan heb je ook wat)!

  51. Pieter says:

    Beste Willem,

    Ik heb vanmiddag de firmaware geupdate van ws 1.0.3b naar api 2.0.1 volgens je handleiding.
    Alles lijkt gewoon goed te werken (er wordt gewoon gelogd om de 10 sec) echter het blauwe ledje brand continu. Ook via telnet zie ik geen errorcounts.
    Wat kan er aan de hand zijn?

    Groet, Pieter

    • Willem Aandewiel says:

      Pieter,

      Wat deed de blauwe led met de DSMRloggerWS firmware? Brandde hij toen ook constant?
      Als dat het geval is zou ik me geen zorgen maken. Op de één of andere manier zit je blauwe led niet op een standaard GPIO-02..

      Heb je de upgrade naar de DSMRloggerAPI firmware uitgevoerd door deze zelf te compileren of heb je een binary van github gebruikt?
      Dan moet je de instellingen van het board aanpassen (in de source staat precies welke instellingen je moet gebruiken).

      Anyway: als hij het goed doet zou ik me geen zorgen over het ledje maken.

      • Pieter says:

        Met de DSMRloggerWS firmware lichtte het blauwe ledje eenmaal in de 10 seconden op.

        Ik heb de upgrade gedaan met de binaries van github, zoals beschreven in je handleiding en video.

        Het betreft overigens een DSML-logger v4.5 die ik begin dit jaar heb gekocht via opencircuit (geassembleerd en voorgeprogrameerd).

  52. Roel says:

    Hoi Willem,

    ook ik ben een Belgische koper van je projectje. De module plug and play aangesloten aan mijn Siconia T211 en op het Fluvius-portaal (netbeheerder) de communicatie poorten geopend. De module start op, gevoed vanuit de Siconia, maar er komen geen telegrammen binnen.

    Enige tip(s)?

    Alvast bedankt

  53. Tony says:

    Ik gebruik al een tijdje je schitterende DSMR software. Ik heb echter een vraagje. Is het mogelijk om een onderscheid te maken tussen verbruik en levering ? Vandaag (dacht ik toch) is het zo dat (zie bijlage)

    Actueel verbruik : 254 W in het voorbeeld hierboven is eigenlijk niet het actuele verbruik maar eerder het verschil tussen levering door zonnepanelen – verbruik toch ? (Wat natuurlijk ook het resulterende echte verbruik is)

    Ik wil het desnoods zelf aanpassen in de code maar zou liever jouw originele code laten ivm toekomstige updates ..

    [comment verplaatst van “Recent Projects” naar “restAPI’s zijn hip!“]

    • Willem Aandewiel says:

      Tony,

      Helaas. De Slimme Meter saldeert verbruik en levering en geeft het saldo (óf verbruik, óf levering) terug.
      Alleen als je drie fasen hebt en de mogelijkheid hebt om één fase alléén voor de zonnepanelen te gebruiken, kun je beide scheiden (maar dan kun je nooit je opgewekte energie zelf gebruiken). Verstandig is dat trouwens niet want als straks de regels veranderen (en dat gaat gebeuren) waardoor je minder terug krijgt voor wat je levert dan dat je moet betalen voor wat je gebruikt word je dief van je eigen portemonnee.

      Moderne zonnepanelen hebben een mogelijkheid om de daadwerkelijke opgewekte energie uit te lezen. Ik heb daar geen ervaring mee, maar dan zou je er een “soort DSMR-logger” voor kunnen maken en de gegevens combineren. Leuk idee voor een volgend project.

  54. Tony says:

    – Ik wil de DSMR enkel gebruiken om mijn verbruik te meten, de data van de opgewekte stroom van mijn zonnepanelen betrek ik rechtstreeks uit de SMA.(MODBUS integratie) Beiden gaan in Home Assistant.
    – Dus herhaal ik even, kan ik uit de DSMR het reele actuele verbruik halen ?

    Alvast bedankt !

    • Willem Aandewiel says:

      Tony,

      De Slimme Meter saldeert de opgewekte en verbruikte energie.
      De DSMR-logger kan dat niet re-engeneren omdat de gegevens gewoon niet beschikbaar zijn.
      Dus zoals hiervoor al gemeld: Nee, het kan niet.

  55. Hennie says:

    Hallo Willem,

    Ik heb zo’n usb adapter gemodificeerd en daarmee de DSMR firmware geupload naar een ESP-01.
    Tot en met het openen van de wifi manager gaat alles goed, maar er wordt geen verbinding gemaakt met mijn wifi netwerk.
    Ik heb geprobeerd e.e.a. uitvoerig te beschrijven, maar kan het pdf bestandje hier niet bijvoegen. Daarom heb een screenshot van de laatste pagina bijgevoegd.
    Ik hoop dat jij me kunt (en wilt… 😉 vertellen wat ik fout doe.

    Bij voorbaat dank!

    Met vriendelijke groet,

    Hennie

    [comment gekopieerd van “Eenvoudige Programmer voor de ESP-01 (ESP8266)”]

    • Hennie says:

      Ondertussen ben ik zelf ook wat verder gekomen.
      Ik heb jouw DSMRlogger2HTTP geupload.
      Uit de tekst had ik begrepen dat er iets fout was als de LED continu bleef branden.
      Al zoekend kwam ik //#define HAS_NO_METER tegen.
      Omdat ik nog geen meter heb aangesloten, heb ik nu de commentaar slashes verwijderd.
      Na uploaden, netwerk kiezen en wachtwoord invoeren, blijft nu de LED knipperen ( 1s ritme).
      De verbinding met mijn wifi netwerk is nu ook ok!
      Maar als ik http://www.esp01-dsmr.local/ in mijn browser invoer krijg ik als melding: ‘Server niet gevonden’.
      En als ik het IP adres van TEST-DSMR (192.168.0.168) invul, dan is de melding: ‘FileNotFound’.
      Ik had hier iets van een dummy pagina verwacht:
      afbeelding.png
      Maar waarschijnlijk is dat niet zo.
      Kortom, tot zover lijkt het te werken en hoef ik alleen nog maar de meter aan te sluiten?
      Of heb ik toch nog iets over het hoofd gezien?

      • Willem Aandewiel says:

        Hennie,

        Ik denk dat je vergeten bent SPIFFS te flashen. Daarin komt dan een “index.html” file met de presentatie pagina. Nu zoekt de firmware hiernaar maar kan hem niet vinden …

        Je kunt de DSMR-logger daarna benaderen door “http://esp01-dsmr.local/“ in je browser in te toetsen.

        Overigens gebruik je nu wel een hele oude versie van de firmware … kijk hier eens naar.

        • Hennie says:

          Dank je, Willem.

          Dat was ik dus inderdaad vergeten.
          Ik heb bewust voor deze oude versie gekozen.
          Ik zocht n.l. een uitlezer met zo weinig mogelijk externe componenten.

          Nogmaals dank voor je hulp!

  56. Hans van Ulden says:

    Slimme meter met uitlezer V3-bouwpakket met ESP-01 in elkaar gezet.
    Aangesloten op slimme meter
    Blauwe led knippert 1 x
    Geen verbinding met WiFi
    Geen techneut (nog)
    graag advies hoe nu verder

    [comment verplaatst naar deze post]

    • Willem Aandewiel says:

      Hans,
      Ik heb geen idee!
      Hoe heb je de firmware gecompileerd?
      Heb je SPIFFS ook geflashed?
      Wat voor Slimme Meter heb je?

  57. Remco says:

    Hi Willem, je DSM draait nog steeds prima!
    vraagje,
    als ik een 2e P1 poort voor mn raspberry/domoitcz nodig heb, zitten er op de DSM logger aansluitingen die ik kan aftakken? ik heb een externe voeding.?

    ik hoor weer graag van je
    gr. Remco

    • Willem Aandewiel says:

      Remco,

      Ik weet niet of het kan. Het “bare P1 signaal” staat op de print tussen R6 en R7. Je kunt proberen of het storing geeft op de DSMR-logger als je daar het signaal aftapt. Het zelfde kun je waarschijnlijk bereiken met Ethernet Splitter (gewoon zo’n plugje met één ingang en twee uitgangen).
      Als dat niet betrouwbaar werkt zou je het signaal uit de P1 poort naar twee optocouplers kunnen sturen en dan op de éne de DSMR-logger en op de andere je andere device zetten…

      Denk eraan dat als beide devices de DTR pin hoog en laag maken dat niet lekker gaat werken. Waarschijnlijk maak je de meeste kans op succes door de DTR-pin niet te gebruiken (gewoon laten zweven).

      Maar ik heb dit niet getest en geef geen enkele garantie..

  58. Remco says:

    geen garantie, of course.. 🙂 Ik vroeg me af of je na het omhoog trekken van het kale signaal een IC induikt, waar meerdere outputs op zitten, zodat het tappen wat eenvoudiger wordt. Wat ik her en der lees is dat de P1 last kan hebben van een splitter, en dat men de request pin van de 2e los moet halen… (?)

    • Willem Aandewiel says:

      Remco,

      Ik denk dat je DTR van beide devices niet moet gebruiken. De Slimme Meter stuurt dan zo-vaak-als-hij-kan een telegram en als één van de devices dat telegram wil verwerken dan kan dat zonder dat het andere device halverwege “zegt” ik ben klaar, stop maar met zenden.

      Ik ken geen IC’s met één ingang die gelijktijdig meerdere uitgangen aan stuurt.
      Maar zoals gezegd: een optocoupler belast de Slimme Meter zoals hij dat verwacht en aan de uitgang kun je waarschijnlijk wel twee devices “plakken”. Kijk voor een voorbeeld naar het DTR-circuit. In plaats van GPIO12 zet je de data lijn van de Slimme Meter. Tussen DSR_SM en de 10 ohm weerstand zet je een 10k weerstand naar GND. Tussen de 10R en 10k weerstanden heb je een sterk P1 signaal… (denk ik).

      Ik hoor graag hoe je het oplost (daar zullen meer gebruikers iets aan hebben)!

  59. Bert Groothuis says:

    Ik wilde mijn logger zelf vernieuwen met de nieuwe firmware. Dat ging helemaal mis en na communicatie met Willem heb ik de logger naar hem opgestuurd. Paar dagen later kwam hij weer up to date terug. Het installeren ging ook niet lekker en na telefonisch contact is het supersnel opgelost.
    Chapeau! Willem.

  60. Jal says:

    Hallo Willem

    Ik probeer met een ESP-01 (ESP8266) de slimme meter uit te lezen.
    Is dit nu wel mogelijk of ben ik een WEMOS D mini pro nodig

    [dit comment is verplaatst van “Eenvoudige Programmer voor de ESP-01”]

    • Willem Aandewiel says:

      Jal,

      Ja dat kan, maar ik denk dat je meer succes hebt met een complete unit. Eventueel heb ik nog wel een printje over.

Leave a Reply

Your email address will not be published. Required fields are marked *


The maximum upload file size: 4 MB.
You can upload: image, other.
Links to YouTube, Facebook, Twitter and other services inserted in the comment text will be automatically embedded.

This site uses Akismet to reduce spam. Learn how your comment data is processed.