HiGrow-Sensor: Daten erfassen und versenden

Im Post HiGrow-Sensor sorgt für das Wohl der Pflanzen hatte ich auf den HiGrow-Sensor hingewiesen, der zur Überwachung der Umweltbedingungen in Pflanzennähe eingesetzt werden kann.

Im Programm HiGrowESP32MQTT.ino werden die Sensordaten des dort eingesetzten DHT11-Sensors zur Messung von Lufttemperatur und Luftfeuchte, sowie die kapazitiv gemessene Bodenfeuchte und die Helligkeit erfasst und entsprechenden Topics von MQTT-Messages zugeordnet. Zu Kontrollzwecken werden diese Daten auch seriell ausgegeben und können durch den internen Monitor der Arduino IDE verfolgt werden. Das Programm  HiGrowESP32MQTT.ino steht auf Github zum Download zur Verfügung.

HiGrow Data

Mit einem MQTT Client können die abonnierten Mitteilungen visualisiert werden.

Screenshot_20180319-140609.png

Bei meinen Test ist mir aufgefallen, dass recht häufig nach dem Programmstart der Brownout Detector getriggert wurde und einen entsprechenden Reset ausgelöst hat.

HiGrow Brounout

Verfolgt man die Diskussion (z.B. hier https://github.com/nkolban/esp32-snippets/issues/168) dann scheint ein hoher Strombedarf während der Initialisierungsphase ein (der?) Grund für das Verhalten zu sein.

Der HiGrow-Sensor weist einen Batteriehalter für eine 18650-LiPo-Batterie auf. Bei meinen Tests war die Batterie nicht bestückt. Möglicherweise puffert eine bestückte Batterie dann diesen kurzzeitigen Strombedarf hinreichend.

 

Advertisements

9 Gedanken zu „HiGrow-Sensor: Daten erfassen und versenden

  1. Orhan

    Hallo hab den Sketch auf dem HiGrow hochgeladen. Allerdings funktioniert es bei mir nich der HiGrow startet immer wieder neu. Anscheinend ein Bootloop.

    Gefällt mir

    Antwort
      1. Orhan

        Hallo


        rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
        configsip: 0, SPIWP:0xee
        clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
        mode:DIO, clock div:1
        load:0x3fff0018,len:4
        load:0x3fff001c,len:956
        load:0x40078000,len:0
        load:0x40078000,len:13256
        entry 0x40078a90
        DeviceId: 207537695927856
        Connecting to
        …………….ets Jun 8 2016 00:22:57

        rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
        configsip: 0, SPIWP:0xee
        clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
        mode:DIO, clock div:1
        load:0x3fff0018,len:4
        load:0x3fff001c,len:956
        load:0x40078000,len:0
        load:0x40078000,len:13256
        entry 0x40078a90
        DeviceId: 207537695927856
        Connecting to
        …………….ets Jun 8 2016 00:22:57

        rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
        configsip: 0, SPIWP:0xee
        clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
        mode:DIO, clock div:1
        load:0x3fff0018,len:4
        load:0x3fff001c,len:956
        load:0x40078000,len:0
        load:0x40078000,len:13256
        entry 0x40078a90
        DeviceId: 207537695927856
        Connecting to
        ……..

        So geht es immer weiter.
        Normalerweise leuchtet die Blaue LED nicht nach dem flashen. Bei mir schon.

        Gefällt mir

  2. DDino

    Hallo ckuehnel,
    ,
    erstmal besten Dank für MQTT. Das Senden von Daten in irgendeine Cloud, auch wenn sich sich primär nur um Erdfeuchte handelt, ist nicht akzeptabel für mich.
    Der MQTT Server im Heimnetz ist viel besser geeignet und FHEM kann die Daten gut weiterverarbeiten

    Die reboot Probleme, welche Orhan beschrieben hat, treten sporadisch auch bei mir auf.
    Nach dem Hochladen des Programms besonders häufig, auch mit Akku in der Halterung.
    Verschiedene Netzteile haben keine Veränderung des Verhaltens gebracht.

    Nun möchte ich das Ding im Akku-Betrieb laufen lassen und wollte fragen, ob die Akku-Spannung irgendwo direkt auslesbar ist.

    Beste Grüsse

    Gefällt mir

    Antwort
  3. Raipat

    Die Brownout-Probleme kann ich nachvollziehen, sie treten bei mir aber nur auf, wenn Batterie UND USB-Gerät angesteckt sind. Meine 3 higrow funktionieren einwandfrei, wenn sie entweder nur am USB-Port eines PC stecken (Batterie raus), oder nur die Batterie gesteckt ist. Sobald ich das Gerät im eingeschaltetem Zustand mit Batterie nutzen möchte, passieren bootloops. Nicht immer, aber oft und bei allen drei higrows, die ich habe.

    Vielen Dank für die Informationen und den Code. Wir haben ihn erweitert (json statt Einzelwerte in MQTT, device Characteristika in nvram statt hart im Code, BLE Gehversuche) und für einen proof-of-concept beim blockchain4.business Hackathon eingesetzt. Beizeiten werde ich den aufhübschen und im Weatherblocks-Projektrepo publishen.

    Was hat es eigentlich mit dem Lichtsensor auf sich? Ist der bei der v1 überhaupt verbaut? Ich bekomme da eher „Zufallswerte“ und finde auch keinen passenden Sensor auf der Platine.

    Gefällt mir

    Antwort
    1. ckuehnel Autor

      Beim Lichtsensor habe ich die gleichen Erfahrungen machen müssen. Die angekündigte v2 sollte einiges n Verbesserungen bringen. U.a. auch eine Spannungsteiler, um die Batteriespannung messen zu können.

      Gefällt mir

      Antwort

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s