Sensoren via Wifi koppelen aan Domoticz – Deel 3

Na de vorige blog uit deze reeks is het hopelijk gelukt om een ESP8266 aan te praat te krijgen via wifi. Mijn ervaring is dat het grote voldoening geeft als het ‘eindelijk’ is gelukt. Toen ik zelf mijn eerste ESP8266 in mijn netwerk zag verschijnen was dat echt even een *YES* momentje…

In deze blog gaan we de ESP8266, die ik voor het gemak weer D1 zal noemen, koppelen aan Domoticz en we gaan er een temperatuursensor aan hangen.

Koppelen aan Domoticz

Nadat de D1 draait in het wifi netwerk is het tijd om hem te gaan koppelen aan Domoticz. Je dient daarvoor te weten op welk IP-adres Domoticz draait en op welke poort. Dat is heel gemakkelijk af te leiden uit het adres dat je opgeeft bij het starten van Domoticz.
Ik geef op http://192.168.178.5:8085, waarmee direct duidelijk is dat het adres 192.168.178.5 moet zijn en de poort 8085. Geef je geen poort op, dan is het 8080.
Druk op het tabblad Controllers in de web-interface van de D1.
Kies bij Protocol voor Domoticz HTTP. Vul daarna je IP-adres en poort in, kruis Enabled aan en druk op Submit.Je hebt nu de D1 aan Domoticz gekoppeld.
Alleen weet Domoticz dat zelf nog niet. Ga daarom naar de web-interface van Domoticz en kies rechtsboven in het menu Setup voor Hardware. Voeg nu hardware toe van het type Dummy en geef het een logische naam. Ik gebruik daarvoor altijd dezelfde naam als die ik de D1 heb gegeven:Vergeet niet Enabled aan te kruisen en voeg de hardware toe met de knop Add.
Het enige wat we nu nog moeten doen is het creëren van een virtuele sensor, maar dat komt zo.

Een temperatuur sensor

Eén van de makkelijkste sensoren  die je op deze manier kunt koppelen is een temperatuursensor. Er zijn een aantal verschillende typen in omloop die naast temperatuur vaak ook nog luchtdruk of luchtvochtigheid meten.

Een handige sensor is de DHT22. Deze meet temperatuur en luchtvochtigheid en is voor rond de 2 Euro te koop bij aliexpress.com.

Behalve de sensor hebben we nog een weerstand van 4,7 K Ohm nodig en 3 draden om de sensor met de D1 te verbinden.
Het schema dat aangeeft hoe te verbinden ziet er als volgt uit:

Een virtuele sensor in Domoticz

Om Domoticz daadwerkelijk aan deze sensor te koppelen moeten we een (virtuele) sensor toevoegen aan de hierboven gemaakte hardware. Druk daartoe op de knop Create Virtual Sensors achter de D1 in de hardwarelijst van Domoticz:

Kies voor sensortype Temp+Hum en geef hem een logische naam.Het enige dat nu nog moet gebeuren is het opzoeken van het indexnummer van onze nieuwe virtuele sensor in Domoticz. Ga hiertoe in het menu Setup naar Devices. Ergens in die lijst (waarschijnlijk bijna bovenaan) bevindt zich onze nieuwe virtuele sensor. Schrijf het nummer op dat zich in de kolom Idx bevindt (hier dus 268):

Het activeren van de sensor

Ga nu in de webinterface van de D1 naar het tabblad Devices:Druk op de bovenste Edit knop om een nieuw Device toe te voegen:

Kies in de lijst van Devices voor Environment DHT11/12/22.
Daarna kunnen de gegevens worden ingevuld:Voer een naam in en zet een vinkje bij Enabled.
Onder Sensor moet de waarde van 1st GPIO corresponderen met de gekozen poort (D3, standaard). Bij DHT Type wordt gekozen voor een DHT 22.
Onder Data Acquisition wordt een vinkje gezet bij Send to Controller 1 en bij IDX wordt de eerder opgeschreven index uit Domoticz ingevuld (hier 268).
Tenslotte wordt bij Delay ingevuld om de hoeveel tijd een waarde naar Domoticz moet worden gestuurd. Ik kies bij temperatuur altijd voor 60 seconden.

Druk daarna op Submit. Als je nu opnieuw op de tab Devices klikt is je sensor toegevoegd. Na een tijdje zullen de waarden voor temperatuur en vochtigheid achteraan in de kolom verschijnen. Vernieuw hiervoor wel steeds de pagina in de webinterface! Gebeurt dat na enkele minuten nog niet, dan is de sensor waarschijnlijk verkeerd aangesloten.

Sensorwaarden in Domoticz

Als we nu naar Domoticz gaan en op de pagina Temperature kijken, dan is onze nieuwe sensor daar te zien, inclusief doorgegeven waarden:

Tot zover de serie blogs over het aansluiten van een sensor aan Domoticz via wifi.
Op dezelfde manier kunnen ook andere sensors worden toegevoegd. De D1 heeft nog veel meer poorten. Misschien schrijf ik daar nog wel eens over in een toekomstige blog.

Save

Save

Save

Save

Save

Save

(6135)

37 gedachten over “Sensoren via Wifi koppelen aan Domoticz – Deel 3”

  1. Prachtig dit.. !

    Erg goed omschreven, zo goed, dat ik direct de componenten heb besteld bij AliExpress

    Ik ben sinds kort bezig met de Raspberry en Domoticz.
    Hierop heb ik ondertussen de Z-Wave , RFXcom en de slimme meter uitlezen met P1 werkend. Maar het einde is er nog lang niet..

    Ik ga deze blog zeker volgen, en hoop dat er meer van deze voorbeelden komen…

    1. Dank je Johan, leuk dat je zo enthousiast bent.
      Z-Wave, RFX-com en P1 uitlezen zijn inderdaad zeer interessante toepassingen en door dat uit te beiden naar de Wifi-sensors wprdt het alleen maar mooier. Domoticz is een fantastisch platform, waarop bijna alles mogelijk is op Domotica-gebied.
      Ik ben zeker van plan nog meer blogs aan de esp8266 te wijden, maar ik moet nog even kijken wat de meest interessante onderwerpen zijn.

  2. Ronald,

    Ik wil een ESP-201 flashen die ik net gekregen heb, verbinding loopt goed, maar halverwege het flashen geeft hij error aan..
    Welke firmware zou ik moeten hebben, of doe ik wat verkeerd.?

    Je mag je ook persoonlijk mailen hoor..

    Groet Johan

    1. Johan, de ESP-201 valt in de categorie ‘moeilijke’ ESP’s. Deze moet volgens andere artikelen worden geflasht met een TTL UART en een Arduino. Ik vermoed dat er ook ‘gewoon’ ESP-Easy op kan draaien, maar ik heb er zelf geen ervaring mee. Ik heb me bij deze blogs bewust beperkt tot de makkelijkere ESP’s die rechtstreeks op de computer kunnen worden aangesloten. Ik kan je hier verder helaas niet mee helpen.

  3. Met heel veel plezier deze blog gevolgd en het project nagebouwd! Uiteindelijk is 1 esp8266 na een steekvlam in de prullenbak beland. Bij de 2e liep ik toch tegen een probleem aan dat de wifi steeds wegviel na het aansluiten van de DTH22. Uiteindelijk bleek het aansluitschema van de DTH22 niet te kloppen. PIN 3 is de vrije PIN (en niet PIN 2 zoals in het voorbeeld van deze Blog), zie https://www.jonkermedia.nl/iot/deel-6-dht22-sensor-aansluiten-op-raspberry-pi-zero/ . Na het verwisselen van de aansluitingen werkt alles perfect!

    1. Hallo Dick,
      Bedankt voor je reactie! Je hebt helemaal gelijk, de DHT22 was niet goed aangesloten volgens dit schema. Stom foutje, maar goed gelukkig is het je gelukt het zelf te vinden.
      Ik heb het artikel inmiddels aangepast. Veel plezier nog met de esp8266!

  4. Dag Ronald,

    Bedankt voor je fijn artikel. ik heb het volledig nagebouwd en in eerste instantie werkt alles.
    Alleen loop ik tegen een probleem als ik de stroom onderbreek en terug insteek. De led blijft dan branden en ik kan geen verbinding meer maken met de ESP (ook pingen werkt niet). Heb je enig idee waaraan dit kan liggen?
    Groetjes,
    Hans

    1. Hans, heb je al eens geprobeerd om zonder gekoppelde sensors te starten? Er zijn enkele poorten die niet altijd beschikbaar zijn. Als hij daarna wel werkt kan je de sensor aan een andere poort koppelen.
      Werkt dat niet dan zou je kunnen proberen de esp8266 opnieuw van firmware te voorzien.
      Hopelijk heb je hier wat aan.

      Groeten, Ronald

      1. Dag Ronald,

        bedankt voor het snelle antwoord.
        Het probleem is heel raar. Juist werkte alles (3 sensoren gekoppeld in domoticz) terwijl hij gekoppeld was met mijn laptop.
        ik heb hem via zijn eigen IP/site gereboot en ook dit blijft volledig werken.

        Het probleem begint pas als ik de usb kabel uit de PC trek en bv in een gewone usb adaptor steek. Nadien kan ik niet meer verbinden met de module. Momenteel heb ik hem terug in de pc gestoken en ook dit werkt niet meer.
        het enige wat ik nu kan doen is proberen om terug te flashen en hopen dat dit nog lukt.
        Ik mag de module toch gewoon uit trekken veronderstel ik? het lijkt alsof hij corrupt raakt als ik dit doe.
        Enige suggestie?

        1. Hallo Hans,

          Het kan zijn dat de USB-kabel niet goed genoeg is, of dat de adapter niet genoeg stroom levert. Of niet constant. Als verwisselen niet helpt, dan lijkt opnieuw flashen me de enige oplossing. Wat ook nog kan – en dat hoop ik niet – is dat de esp8266 niet stabiel is. Er zitten weleens mindere exemplaren tussen helaas.

          Succes, groeten Ronald

  5. Dag Ronald,

    Ziet er goed uit! Duidelijke uitleg, ik ga hier zeker gebruik van maken. Ben mij al een tijdje aan het inlezen en krijg morgen de rfxcom binnen, dan kan het echte werk beginnen.
    Denk maar dat ik bij je eerst bericht begin.

    1. Hallo Rik,
      Lijkt me inderdaad de beste strategie.
      Er staan nog wel meer interessante experimenten met Domoticz op deze site. Vooral die over het installeren van een gratis weerkanaal (https://achtenveertig.nl/?p=217) wordt erg veel bekeken en daar heb je je RFXcom niet eens voor nodig!
      Veel succes,

      Ronald

  6. wat een fijne duidelijke uit leg top
    maar ik heb nog wat problemen met mijn flow sensor (YF-S201)
    ik wil heel graag mijn water verbruik uit lezen in domoticz maar mijn water meter heeft geen magnetisch punt en ook geen optisch oog ik wil daar door een (YF-S201) gebruiken maar ik krijg geen puls van de flow sensor wat doe ik fout
    ik hoop dat iemand me op weg kan helpen
    ik heb een D1 en domoticz

  7. Hoi,
    Allereerst bedankt voor de leerzame blogs!
    We zijn hier ook aan het experimenteren met domotica/iot/sensoren/etc.
    We zijn nu op zoek naar een simpele/goedkope oplossing om op een aantal plekken wat metingen te doen. Deze blog serie heeft een hoop duidelijk gemaakt.

    Naast de standaard temperatuur en luchtvochtigheid, zouden we ook graag de luchtdruk en lichtsterkte meten. echter deze sensoren zijn volgens mij alleen in een analoge variant of I2C te krijgen. en de D1 Mini heeft alleen digitale inputs zo te zien. De NodeMCU heeft naast digitaal ook I2C geloof ik.
    klopt het dat we dan beter de NodeMCU kunnen gebruiken?

    1. Hoi Martin,

      Bedankt voor het compliment.
      Je kunt gewoon de D1 mini gebruiken. De I2C poort is aanwezig op standaard aansluitingen D1 en D2, zoals ook standaard gedefinieerd in ESPEasy. Ik gebruik hem zelf ook.
      Zie ook hier.

      Groeten, Ronald

  8. Dank je wel Ronald! Je hebt me echt op weg geholpen. En, belangrijker, inspiratie gegeven om hiermee verder te experimenteren.

  9. hallo Ronald,

    Ik wil graag twee sensoren op mijn ingaande en uitgaande cv leidingen plakken. weet jij ook zo welkesensoren ik hiervoor kan gebruiken?
    alvast bedankt

  10. Hallo,
    Het in elkaar zetten van de esp enz. is geen probleem dankzij de heldere uiteenzetting
    De volgende dag geen response meer. Alles nagekeken–> resultaat 0,0. Ik probeer het op een andere W10 machine en zowaar het werkt. Maar HELAAS maar één keer.
    de temp.hum van de dht 22 geeft waarden aan bij devices (trouwens ook in het log)
    tools/log zegt http connection failed
    Oplossing?
    Wie helpt?
    Dick

        1. Ronald,
          een nieuwe wemos en installeren van espeasy viawww.esp8266.nu / en een andere installatie op een nodemcu met http://www.letscontorl it. –espeasy
          beide systemen werken, maar het euvel is gelijk. Ze komen één keer op in domoticz en dan is over. Hardware fout geloof ik niet meer in. Ik kan ze wel oproepen in een server en het log (in het espmenu) geeft geen foutmeldingen.
          Ik doe iets fout , – ik volg je sensorverhaal deel 3. fout ja, maar welke?
          Ik zoek verder.
          Dick

          1. Dick,
            Wat me niet helemaal duidelijk is: werkt de esp8266 op zich wel? Dus kan je hem zonder sensors via de Wifi vinden? Na die ene keer?
            Als dat het geval is, dan ligt het dus aan de sensor. Heb je de pull-upweerstand aangebracht? Heb je het goede pootje gepakt uit de twee middelsten?
            Je zou ook kunnen beginnen om een schakelaar te koppelen aan de esp8266. Zie daarvoor bijvoorbeeld deze pagina van Let’s control it.

  11. Hallo ik ben bezig met een D1 mini v3 heb alles aangesloten krijg in het config van de D1 wel de temperatuur te zien maar niet in Domoticz te zien het is DHT22 sensor wat doe ik niet goed.

    Groet wim

    1. Hallo Wim,

      Heb je aangegeven (bij Devices, Data Acquisition) dat het naar de controller moet worden gestuurd? En heb je de juiste IDX ingevuld?

      1. Hallo Ronald,
        Ja dat heb ik gedaan maar nu schakeld de wifi uit en krijg ik geen verbinding meer,wat ik ook probeer geen reactie van de
        mini d1

        1. Die dingen hebben niets met elkaar te maken. Het beste kan je hem opnieuw flashen en dus opnieuw beginnen. Lukt het dan nog niet om verbinding te krijgen dan is hij wellicht overleden.

  12. Hallo Ronald,
    Krijg het niet voor elkaar om via de browser naar 192.168.4.1 te gaan en verbinding te maken. Wel lukt het om het via een TELNET App verbinding te maken maar weet niet of dit het zelfde gewenste resultaat geeft en het ook veilig is op die manier.

    vr gr
    Edwin

    1. Een paar keer opnieuw aan de stroom hangen wil nog wel eens helpen. En anders opnieuw flashen. Dit blijft de vervelendste stap in het proces.En er zitten regelmatig minder goede exemplaren bij die goedkope klonen uit China, die er voor zorgen dat het gewoon niet wil werken. Maar houd vol, vaak lukt het de tweede keer wel.

  13. Leuk Ronald! Heel duidelijke uitleg, ik heb de onderdelen ook alvast besteld en ga als ze binnen zijn aan de slag. Ik heb tot nu toe altijd gewerkt met de RFX transceiver met wat ontvangers van de Blokker en Action, en met enkele One-Wire sensors, maar dit is ook erg leuk. Ooit wil ik nog eens de watermeter uitlezen, ik heb wel een proximity sensor die het doet, maar die werkt op 12V. En de tip over OpenWeathermap was ook al zo handig en werkt goed. Ga zo door!

  14. Ronald,
    Enkele pogingen later. Het is nog niet opgelost.
    Alleen merk ik , dat ik iets verkeerd meld.
    Es p is bij mij vers v2.0.0-dex 13 ipv 11 in je blog.
    ESP met dht werkt . ik krijg temp meldingen enz.
    In Domoticz is de virtuele sensor te zien (ik dacht dat die door de esp wordt aangestuurd) Er komt niets binnen
    Volgens mij tussen de esp en domoticz krijg ik geen verbinding.
    printscreens van mijn instellingen komen overeen met de afb in jouw blog.
    Ik weet het niet meer.
    gr
    Dick

    1. Dick,
      Ik snap dat je gefrustreerd bent, maar het moet op te lossen zijn. Het feit dat je in de esp zelf meldingen krijgt is stap 1. De device werkt dan.
      Stap 2: Voeg de dummy-hardware toe aan Domoticz.
      Stap 3: Maak een device aan bij de Dummy Hardware.
      Stap 4: Zoek het IDX nummer van de zojuist aangemaakte device op in de kolom ‘IDX’ in de lijst met Devices.
      Stap 5: In ESP-Easy stel je op de pagina Controllers de gegevens van Domoticz in. Bij mij is dat http://192.168.178.5:8085. Vergeet niet dat ook aan te zetten met de optie ‘Enabled’.
      Stap 6: In ESP-Easy bij de Device (pagina Devices. Device aanklikken) vink je de optie ‘Send to Controller’ aan en vul je bij IDX de waarde in die je zojuist hebt aangemaakt.
      Daarna moet het werken. Kijk in de lijst met Devices van Domoticz of er na een paar minuten gegevens zijn binnengekomen.
      Werkt het daarna nog niet dan kan ik alleen nog bedenken dat er geen verbinding mogelijk is tussen de ESP en Domoticz. Dat zou een firewall-probleem kunnen zijn o.i.d.

      Hopelijk werkt het nu.

  15. Super omschreven, ook ik ga deze onderdelen bestellen om met een projectje te starten.

    Wel heb ik nog een vraag, is het weerstandje noodzakelijk of kan die ook achterwege gelaten worden?

  16. Ronald bedankt voor de heldere uitleg. Heb met hulp van jou blogs inmiddels een set DS18b20 draaien op een NodeMcu ESP8266 CR340 voor Ta en Tr van de CV en een DHT22 voor temperatuur en vochtigheid in de Woonkamer. Volgende stap: Alle convectoren voorzien van Ta en Tr sensoren om makkelijk waterzijdig te kunnen inregelen. Alles via HTTP naar Domoticz.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *