Archiv der Kategorie: RAKwireless

Solar-betriebener Meshtastic-Knoten

Der im Blogpost Meshtastic – Erfassen, Versand und Visualisierung von Messwerten beschriebene Meshtastic-Knoten wird hier bezüglich der Stromaufnahme unter verschiedenen Umgebungsbedingungen untersucht.

Da das externe Sensormodul hinsichtlich der Stromaufnahme (noch) nicht optimiert ist, starte ich den Solartest ohne diesem Modul.

Eine Überschlagsrechnung zeigt, dass mit einem 5 V/3 W-Solarpanel und einem Li-Ion-Akku 18650 der Strombedarf gedeckt sein könnte. Die theoretische Laufzeit von ca. 3 Tagen ist für die Überbrückung einer Dunkelflaute allerdings knapp bemessen.

Weiterlesen

Meshtastic – Erfassen, Versand und Visualisierung von Messwerten

Im Blogbeitrag „Meshtastic – Erfassung und Versand von Messwerten“ hatte ich die Erweiterung eines Meshtastic-Knotens mit Sensoren und den Versand der erfassten Messwerte betrachtet. Damit stehen die Messwerte im Meshtastic-Netzwerk zur Verfügung.

Sollen die erfassten Messwerte visualisiert oder anderweitig weiterverarbeitet werden, dann müssen sie außerhalb des Meshtastic-Netzwerks zur Verfügung gestellt werden. Ein mit einer MQTT-Schnittstelle ausgestatteter Meshtastic-Knoten kann die Verbindung ins Internet ermöglichen. Auf diese Weise lassen sich örtlich weit auseinanderliegende (lokale) Meshtastic-Netzwerke verbinden und/oder erfasste Daten zentral auswerten.

Der Off-Grid-Aspekt geht in diesem Fall allerdings verloren.

Bei den folgenden Betrachtungen gehe ich von dem in der Abbildung gezeigten Meshtastic-Netzwerk aus.

Meshtastic-Netzwerk

Mein Netzwerk besteht aus verbreiteten Meshtastic-Devices. Eine kommentierte Übersicht finden Sie unter Meshtastic Erfahrungen: Boards und Module.

Hervorzuheben sind hier der RAKwireless-Sensorknoten auf Basis eines Mikrocontrollers RAK4631 (nRF52840), der Messwerte über verschiedene Sensoren erfasst und diese im Meshtastic-Netzwerk zur Verfügung stellt, und der Heltec LoRa32 V3 Knoten auf Basis eines ESP32-S3, der eine WiFi-Schnittstelle zur Verbindung mit einem Router und über diesen mit dem Internet ermöglicht. Die anderen Meshtastic-Knoten (in der Abbildung nicht eingefärbt) empfangen die Nachrichten des Sensorknotens und dienen dem üblichen Nachrichtenaustausch.

Um den Meshtastic-Knoten autonom betreiben zu können, wird dieser über eine Solarzelle mit Batteriepufferung versorgt. Nachdem der ursprünglich vorgesehene Waveshare Solar Power Manager (B) nicht die erwarteten Ergebnisse gebracht hat, habe ich einen DFRobot Solar Power Manager 5 V eingesetzt (siehe Abbildung).

Speisung des Meshtastic-Knoten durch einen DFRobot Solar Power Manager 5 V

Der Ladezustand des eingesetzten NCR18650 Li-Ion-Akkus muss separat überwacht werden. Hierzu verwende ich einen INA219, der über den I2C-Bus mit dem Grove-Anschluss des RAK1920 Sensor Adapter Modul verbunden wird (siehe Abbildung).

Messung des Ladezustands des LiPo-Akkus mit einem INA219-Sensor

Der mit einem I2C-Interface ausgestattet SHTC3-Sensor zur Messung von Temperatur und relativer Feuchte kann über einen I2C-Hub (z.B. von M5Stack) mit dem Grove-Anschluss des RAK1920 Sensor Adapter Moduls verbunden werden.

Der Temperatursensor DS18B20 ist Bestandteil des im Blogbeitrag „Meshtastic – Erfassung und Versand von Messwerten“ beschriebenen externen Sensormoduls, welches über ein serielles Interface mit dem RAK1920 Sensor Adapter Modul verbunden wird.

Beide Mikrocontroller, der Meshtastic-Knoten und das externe Sensormodul, werden vom DFRobot Solar Power Manager 5 V über ein USB-A- zu 2x USB-C-Kabel mit Spannung versorgt.

Als MQTT-Broker verwende ich HiveMQ (https://broker.hivemq.com). Es ergibt sich damit die in der Abbildung gezeigte Zusammenstellung.

Vom Meshtastic-Gateway werden mit dem Token msh/2/json/LongFast verschiedene MQTT-Messages versendet (published). Ein MQTT-Client abonniert (subscribed) diese Tokens und kann damit die übermittelten Nachrichten weiterverarbeiten.

Ich habe auf dem PC den MQTT-Client MQTTX installiert und kann damit die empfangenen Messages anzeigen. Abgeleitet von den aktivierten Meshtastic-Modulen empfange ich vom Knoten 2692927950 (RAK1) die folgenden Messages:

Telemetry Message:

{
  "channel": 0,
  "from": 2692927950,
  "hop_start": 3,
  "hops_away": 0,
  "id": 587303572,
  "payload": {
    "barometric_pressure": 0,
    "current": -0.200000002980232,
    "gas_resistance": 0,
    "iaq": 0,
    "lux": 0,
    "radiation": 0,
    "relative_humidity": 29.2199993133545,
    "temperature": 24.4500007629395,
    "voltage": 4.19999980926514,
    "white_lux": 0,
    "wind_direction": 0,
    "wind_gust": 0,
    "wind_lull": 0,
    "wind_speed": 0
  },
  "rssi": -54,
  "sender": "!fa66367c",
  "snr": 6.75,
  "timestamp": 1740267577,
  "to": 4294967295,
  "type": "telemetry"
}

TextMessage:

{
  "channel": 0,
  "from": 2692927950,
  "hop_start": 3,
  "hops_away": 0,
  "id": 3687588499,
  "payload": {
    "text": "DS18B20 Temp =  24.8 °C\n"
  },
  "rssi": -54,
  "sender": "!fa66367c",
  "snr": 6.25,
  "timestamp": 1740267577,
  "to": 4294967295,
  "type": "text"
}

Position Message:

{
  "channel": 0,
  "from": 2692927950,
  "hop_start": 3,
  "hops_away": 0,
  "id": 1306258064,
  "payload": {
    "altitude": 423,
    "latitude_i": 471921490,
    "longitude_i": 88150580,
    "precision_bits": 32,
    "time": 1740266796
  },
  "rssi": -54,
  "sender": "!fa66367c",
  "snr": 5.75,
  "timestamp": 1740266796,
  "to": 4294967295,
  "type": "position"
}

In den drei Messages sind alle von den Sensoren erfassten Messwerte enthalten. Vom Sensor SHTC3 werden Temperatur (temperature) und rel. Luftfeuchtigkeit (relative_humidity) erfasst. Der Sensor INA219 erfasst den Ladezustand der Batterie mit Spannung (voltage) und Strom (current).

Der Temperaturmesswert des DS18B20 Sensors wird vom externen Sensormodul als Textstring übergeben und folglich auch als Textmessage (text) versendet.

Die Positionsdaten sind hier fest vorgegeben und werden in der Position Message (altitude, latitude_i, longitude_i) versendet.

Die MQTT-Messages enthalten weitere Daten, die bei Bedarf auch noch ausgewertet werden können.

Ich verwende zum Zugriff auf den MQTT-Broker und zur Visualisierung der erfassten Messwerte die IoT-Plattform Datacake. Datacake ist eine vielseitig einsetzbare Low-Code-IoT-Plattform, die keine Programmierkenntnisse und nur minimalen Zeitaufwand erfordert, um benutzerdefinierte IoT-Anwendungen für den Desktop oder Mobil Devices zu erstellen.

Die folgenden Abbildungen zeigen ein Dashboard für einen Desktop-PC und zwei Screenshots des Dashboards für ein Smartphone.

Dashboard für den Desktop
Dashboard für Smartphone-1
Dashboard für Smartphone-2

Die verwendete Software finden Sie unter https://github.com/ckuehnel/Meshtastic.

Über den öffentlichen Link können Sie
das Dashboard aufrufen.


Das Verhalten des Meshtastic-Knotens unter verschiedenen Umgebungsbedingungen beschreibe ich im Blogpost Solar-betriebener Meshtastic-Knoten.


2025-03-14/CK

Meshtastic – Erfassung und Versand von Messwerten

Ein Meshtastic-Netzwerk ist ein drahtloses Mesh-Netzwerk, das hauptsächlich zur Kommunikation in Gebieten ohne Mobilfunknetz oder Internet oder unabhängig von diesen verwendet wird (Off-Grid-Netzwerk).

Es können Textnachrichten und Standortinformationen zwischen Geräten (Meshtastic-Knoten) ausgetauscht werden. Neben der Übermittlung von Textnachrichten und Standortinformationen, wie GPS-Daten, können Meshtastic Knoten aber auch Messwerte erfassen und mit anderen Knoten austauschen.

In der folgenden Abbildung ist eine solche Anwendung gezeigt. Es steht das Übertragen der von einzelnen Knoten erhobenen Messwerte im Vordergrund.

Meshtastic-Netzwerk zum Erfassen und Übermitteln von Messdaten

Außerdem kann einer der Meshtastic-Knoten mit einer MQTT-Schnittstelle ausgestattet sein, die eine Verbindung ins Internet ermöglicht. Auf diese Weise lassen sich örtlich weit auseinanderliegende (lokale) Meshtastic-Netzwerke verbinden und deren Daten zentral auswerten. Der Off-Grid-Aspekt geht in diesem Fall allerdings verloren.

Zur Messwerterfassung steht eine breite Palette von Sensoren mit unterschiedlichen Interfaces zum Datenaustausch zur Verfügung.

Sensoren mit I2C-Interface

Von Meshtastic wird eine Reihe wichtiger Sensoren mit I2C-Interface direkt unterstützt. Unter der URL https://meshtastic.org/docs/configuration/module/telemetry/ sind die aktuell unterstützten Sensoren gelistet.

Messungen der Umgebungsbedingungen und einiger Gesundheitsaspekte sind damit direkt möglich. Wichtig zu beachten ist, dass der betreffende Meshtastic Knoten auch ein I2C-Interface zur Verfügung stellt.

Meshtastic-Knoten

Eine komfortable Lösung besteht bei Verwendung eines Meshtastic Starter Kits von RAKwireless bestehend aus den folgenden Komponenten:

  • WisMesh Base Board RAK19026 oder WisBlock Base Board RAK19007
  • WisBlock Core Module RAK4631
  • WisBlock Sensor Adapter Module RAK1920
  • OLED Display RAK1921 (optional)
  • GNSS GPS Location Module u-blox ZOE-M8Q RAK12500 (optional)

Selbst bei bestücktem OLED-Display ist das I2C-Interface über den Grove-Stecker des RAK1920 zugänglich, wie die folgende Abbildung des komplett ausgestatteten Meshtastic Knotens zeigt.

RAKwireless RAK4631 Meshtastic Knoten

Für experimentelle Arbeiten bietet sich ein RAKBox-B5 Transparent Acrylic Enclosure (https://store.rakwireless.com/products/rakbox-b5-transparent-acrylic-enclosure) von RAKwireless an, wie ich es beispielsweise bei Experimenten zu einem solargepufferten IoT-Knoten eingesetzt habe (https://ckarduino.blog/2023/12/21/solar-buffered-wisblock-node/).

Für das Meshtastic Starter Kit von RAKwireless gibt es aus der Gehäusereihe Unify Enclosure das für den Außeneinsatz spezifizierte Unify Enclosure IP67 150x100x45 mm mit einem Solarpanel im Gehäuseoberteil.

Mit diesen Möglichkeiten kann recht einfach von einem Prototyp, der nicht für den Außeneinsatz geeignet ist, auf ein finales, für den Außeneinsatz geeignetes Produkt übergegangen werden.

Auf dem Baseboard lassen sich WisBlock Sensoren direkt montieren. Mit dem RAK1901 WisBlock Temperature and Humidity Sensor können beispielsweise Umweltdaten (Temperatur, rel. Luftfeuchte) sehr einfach erfasst werden. Will man nicht die Messwerte im Inneren des Gehäuses erfassen, dann sollte der RAK1901 entweder durch ein Expansionskabel vom Baseboard abgesetzt oder gleich durch einen externen Sensor ersetzt werden. Sowohl für die Sensor- als auch IO-Slots der Baseboards bietet RAKwireless FPC Extension Cables an.

Wollen Sie gleich einen für den Outdoor-Einsatz geeigneten Sensor einsetzen, dann liefert eine Suche schnell verschiedene Angebote unterschiedlicher Bauform, die in der Regel auf Sensoren der Schweizer Fa. Sensirion aufbauen.

Bauformen von Sensoren für den Ausseneinsatz

Mit einem Grove-Stecker ausgerüstet, kann ein solcher Sensor direkt mit dem RAK1920 kontaktiert werden.

Beim Starten des Meshtastic-Knotens kann über die serielle Console des WebFlashers die Detektion der angeschlossenen I2C-Devices verfolgt werden. Der folgende Screenshot zeigt die Detektion des OLED-Displays und die Detektion eines externen SHTC3-Sensors.

Detektion der angeschlossenen I2C-Devices

Die Telemetriedaten beinhalten der erfassten Messdaten und zeigen sich beispielsweise im Programm MeshSense, wie im folgenden Screenshot gezeigt.

Telemetriedaten im Programm MeshSense

Mit der Anschlussmöglichkeit für externe I2C-Sensoren haben Sie bereits vielfältige Möglichkeiten der Messwerterfassung. Bedingung ist, dass der Sensor ein I2C-Interface aufweist und von der Meshtastic Firmware auch unterstützt wird.

Sensoren ohne I2C-Interface

Für die Erfassung von Umweltdaten gibt es auch eine Reihe von Sensoren, die zwar für den Außeneinsatz geeignet sind, aber kein I2C-Interface aufweisen. Zwei möchte ich hier beispielhaft nennen.

Waterproof DS18B20 Digital Temperature Sensor (IP68)

Der DS18B20 ist ein Temperatursensor im TO92-Gehäuse mit einem 1-Wire-Interface. Durch seine werkseitige Kalibrierung ist der Sensor sehr genau. Der DS18B20 wird nicht durch Meshtastic unterstützt. In der wasserdichten Version gemäss der folgenden Abbildung kann er sehr gut als echter externer Sensor dienen.

Ultrasonic Ranging Sensor for Water Level Detection (25-800 cm, IP67)

Dieser Ultraschallsensor misst Entfernungen zwischen 25 und 800 cm. Dank der integrierten Temperaturkompensation arbeitet er zuverlässig in einem Temperaturbereich von -15 °C bis 60 °C. Dieser Sensor weist ein serielles Interface (UART) auf und ist ideal für die Erkennung des Wasserstandes in Schächten, in Wassertanks und in Flussläufen. Auch dieser Sensor wird nicht durch Meshtastic unterstützt.

Das serielle Interface steuert über RX die Messung (T1>2,5 s, T2 = 0,9 ~ 2,5 s; RX Pulsbreite zwischen 10 us und 2 ms). Alle weiteren Informationen und Codebeispiele sind über den Link oben zu finden.

Timing Diagram

Externes Erfassungsmodul

In einem Meshtastic-Netzwerk können externe Erfassungsmodule Sensoren ergänzen, die bislang (noch) nicht durch Meshtastic unterstützt werden.
Die folgende Abbildung zeigt einen Ausschnitt aus einem Meshtastic-Netzwerk mit drei Meshtastic-Knoten (grün eingefärbt). Ein Meshtastic-Knoten weist eigene, von der Meshtastic-Firmware unterstützte Sensorik auf. Für weitere Sensoren kann ein externes Erfassungsmodul eine Schnittstellenfunktion übernehmen. Das externe Erfassungsmodul (blau eingefärbt) kontaktiert einen beliebigen Sensor über dessen Interface und wandelt die Messergebnisse in einen Textstring. Dieser Textstring wird dann seriell an einen Meshtastic-Knoten übertragen.

Meshtastic Netzwerk mit externem Erfassungsmodul

Der eingesetzten Mikrocontroller muss die erforderlichen Schnittstellen für den Anschluss des auszuwertenden Sensors aufweisen (I2C, SPI, 1-Wire etc.) sowie eine UART-Schnittstelle zur Übertragung der Messwerte an den zugeordneten Meshtastic-Client. Die Stromaufnahme für das gesamte Erfassungsmodul incl. Sensor sollte möglichst gering sein, damit Batteriebetrieb möglich ist. Ich verwende hier einen nRF52840 in Form eines XIAO nRF52840 von SeeedStudio. Grundsätzlich kann jeder Mikrocontroller aus der XIAO-Familie eingesetzt werden.

XIAO nRF52840

Wie die Abbildung oben zeigt, sind I2C, SPI, UART sowie analoge und digitale IO nach Außen geführt und die Voraussetzungen für eine flexible Sensoranbindung erfüllt. SeeedStudio bietet ergänzend zu den XIAO-Mikrocontrollern noch das XIAO Expansion Board an, wodurch ein kompaktes Erfassungsmodul mit optionaler Anzeige aufbaubar ist.

XIAO Expansion Board

Für die Kontaktierung des XIAO nRF52840 stehen Buchsenleisten zur Verfügung, über die jeder Anschluss auch nach außen hin verfügbar ist. Außerdem stehen die I2C- und UART-Anschlüsse als Grove-Ports (rot umrandet) zur Verfügung.

Der 1-Wire-Sensor DS18B20 wird über den digitalen Eingang D0, der an einem Grove-Anschluss zur Verfügung steht, angeschlossen. Bitte denken Sie an den erforderlichen PullUp-Widerstand. Auf dem OLED-Display wird der erfasste Temperaturmesswert angezeigt.

Das Programm XIAO_nRF52840_DS18B20.ino fragt den DS18B20 Sensor ab und bereitet die Daten zur Anzeige auf dem OLED auf. Der ermittelte Temperaturmesswert wird in einen String konvertiert, der über die UART an den Meshtastic-Knoten weitergeleitet wird. Dieses und weitere Programmbeispiele finden Sie auf GitHub unter https://github.com/ckuehnel/Meshtastic. Die folgende Abbildung zeigt die Ausgabe über die Console des XIAO nRF5240.

Die Übertragung der Daten vom externen Erfassungsmodul zum Meshtastic-Knoten zeigt die folgende Abbildung.

Das ursprünglich am Meshtastic Knoten installierte GPS-Modul RAK12500 musste ich entfernen, da das Modul das serielle Interface belegt, welches hier für die Verbindung zum Erfassungsmodul verwendet wird.

Die Details zur Konfiguration des Serial Module finden Sie unter https://meshtastic.org/docs/configuration/module/serial/. Der folgende Screenshot zeigt die erforderlichen Einstellungen. Die seriellen Pins gelten für ein RAK19007 Baseboard.

Serial Configuration für RAK19007

Der übertragene Textstring wird vom Serial Module der Meshtastic-Firmware als Textmessage in der Form RAK1: DS18B20 Temp = xx.x °C über den Primary Channel gesendet. Im Programm MeshSense zeigen sich die Textmessages gemäss folgendem Screenshot.

MeshSense Messages Output

In der Android-App zeigen sich die Telemetriedaten und die Textmessage mit dem DS18B20 Messwert, wie in den beiden Screenshots von einem Smartphone zu sehen ist.


Die gesplittete USB-Spannungsversorgung für die beiden den Meshtastic-Knoten bildenden Module war zwar sehr komfortabel, zeigte sich aber als sehr stromhungrig. Im Blogpost Solar-betriebener Meshtastic-Knoten ist der Strombedarf im realen Betrieb gezeigt. Mit den Erkenntnissen aus dem erwähnten Post ergibt sich die folgende Schaltungsänderung zur Reduzierung des Strombedarfs.


Sind Sie noch neu bei diesem interessanten Thema, dann finden Sie Grundlagen im nebenstehenden eBook, das im Rheinwerk-Verlag erschienen ist. Daniel Schlapa hat das Buch schon mal gelesen und rezensiert.


2025-03-17/CK

Meshtastic Knoten im Test: Solarzelle und IP67 Gehäuse

In meinem Beitrag Meshtastic Knoten auf Reise hatte ich unter anderen ein WisBlock Meshtastic Starter Kit in einem Gehäuse mit Solarzelle (Unify Enclosure IP67 150x100x45mm with pre-mounted M8 5 Pin and RP-SMA antenna IP Rated connectors) für den autonomen Einsatz getestet.

Wieder zu Hause angekommen folgte später eine Periode mit häufigem Regen und das im Freien platzierte Gehäuse wurde geflutet, worauf der Meshtastic Client ausfiel. Die IP67 Spezifikation wurde nicht eingehalten und RAKwireless versprach an diesem Problem zu arbeiten. Ich war nicht der einzige, dem das passiert war.

Nach dem Aufschrauben des Gehäuses konnte ich erstmal das Wasser entfernen und es zeigten sich versengte Kabel vom 18650-Batteriehalter zum Stecker auf dem Baseboard.

Nach einer längeren Trocknungszeit habe ich den Batteriehalter ersetzt und nach dem Bestücken der 18650-Batterie meldete sich der Client sofort wieder. Alle anderen Komponenten haben also den Crash überstanden!

Es ist nun also eine gute Zeit, die Nachladung durch die Solarzelle zu testen. Im Sommer hat die Nachladung erwartungsgemäß funktioniert. Wie sich das jetzt unter weniger optimalen Bedingungen gestaltet, werden die nächsten Wochen zeigen.

Die folgenden Grafiken zeigen den Verlauf der Batteriespannung. Der Test wurde am 7.03.2025 mit einer Batterie mittleren Ladezustands begonnen.

Nachladung im März

Im Mai habe ich den Test wiederholt. Bei durchaus gemischtem Wetter wurden kurzfristige Ausfälle beim Sonnenschein (2 bis 3 Tage) gut kompensiert. Für richtige Dunkelflauten dürfte es kaum reichen.

Nachladung im Mai

2025-05-11/CK

Solarbetriebener Meshtastic Client

Im Blockbeitrag Solarbetriebener LoRa-Knoten habe ich einen auf WisBlock-Komponenten (RAK4631) basierenden LoRaWAN-Knoten vorgestellt. Eine 5 W Solarzelle lädt bei genügend Sonnenlicht einen 18650-LiPo-Akku auf. Die Spannungsversorgung des LoRa-Knotens erfolgt durch die höhere der beiden Spannungen.

Der gleichen Hardware habe ich die Meshtastic Firmware aufgespielt und starte einen Versuch zum autonomen Betrieb dieser Konfiguration. Ein Meshtastic Client bietet insofern ungünstige Bedingungen, als er praktisch im Dauerbetrieb läuft und nicht einfach in einen Deep Sleep versetzt werden kann.

Der Test beginnt mit einem mittelmäßig aufgeladenen LiPo-Akku, dessen Entladung am ersten Tag durch reichlich zwei Stunden Sonnenschein wieder ausgeglichen wurde. Am zweiten Tag war die Sonnenscheindauer etwas länger, die Sonneneinstrahlung aber weniger intensiv, wodurch die Entladung nicht kompensiert wurde. Dieser Vorgang setzt sich bis zum Aussetzen der Kommunikation fort.

Die folgenden Screenshots des Ladezustands und die Tabelle zeigen die konkreten Werte.

Erste 48 h Testzyklus
Letzte 24 h Testzyklus
StatusDaumUhrzeitBatteriespannungLadezustand
Start Entladung15.12.202419:563.59 V36 %
Start Solarnachladung16.12.202411:163.40 V18 %
Ende Solarnachladung16.12.202413:563.63 V40 %
Start Solarnachladung17.12.202411:133.36 V14 %
Ende Solarnachladung 17.12.202415:203.54 V31 %
Start Solarnachladung18.12.202413:553.32 V11 %
Ende Solarnachladung18.12.202414:083.23 V6 %
Ende der Kommunikation18.12.202415:443.05 V0 %

Aus dem Verhalten der Batterienachladung an zwei eher sonnigen Tagen im Dezember 2024 und den darauf folgenden weniger sonnigen Tagen zeigt sich, dass ein zuverlässiger Dauerbetrieb bei normalen Bedingungen kaum möglich sein dürfte.

In meinem Meshtastic eBook befasst sich ein Abschnitt mit Batterietypen und ein anderer mit der Optimierung der Solar-Spannungsversorgung. Für einen autonom zu betreibenden Meshtastic-Knoten sind das durchaus komplexe Themen.

Ein MPPT-Laderegler sollte eine deutliche Verbesserung des Ladevorgangs bringen. Auch die eingesetzte Batterietechnologie spielt eine Rolle für das Gesamtverhalten.

Inwieweit ein MPPT-Laderegler mit dem gleichen Solarpanel und einem Li-Po Akku hier bessere Resultate zulässt, werde ich untersuchen. Eine Vergrößerung des Solarpanels bleibt dann immer noch als Option.

Einen Waveshare Solar Power Manager (B), der einen Li-Po-Akku mit 10’000 mAh und Solarpanels mit 6 V ~ 24 V unterstützt, habe ich bestellt.

Waveshare Solar Power Manager (B)

2024-12-19/CK

Solar-Powered LoRa Node

A Modular, Compact, and Versatile IoT Solution

https://www.elektormagazine.com/magazine/elektor-354/63204

This article in the newest Elektor Magazine will introduce you to a battery-powered Internet of Things (IoT) node, buffered by a solar cell, with LoRaWAN connectivity. We focus on the power supply and monitoring the different voltages remotely via Bluetooth and LoRa.

Meshtastic Knoten auf Reise

Schon geraume Zeit experimentiere ich mit unterschiedlichen Meshtastic Knoten. Bei meiner Ferienreise nach Norddeutschland wollte ich zwei dieser Knoten testen.

Kurz vor meinen Ferien bekam ich von RAKwireless ein WisBlock Meshtastic Starter Kit und ein Gehäuse mit Solarzelle (Unify Enclosure IP67 150x100x45mm with pre-mounted M8 5 Pin and RP-SMA antenna IP Rated connectors), welches ich für den autonomen Einsatz testen wollte.

Der Test sollte zeigen, ob die Solarzelle ausreichend Energie zum Nachladen des eingesetzten 18650-LiPo-Akkus aufbringen kann.

Bei den aktuellen Wetterbedingungen ist das sicher kein optimaler Ausgangspunkt, denn die Wahrheit zeigt sich erst bei weniger sonnigen Tagen. Irgendwann muss aber der Test beginnen.

Außerdem habe ich ein WisMesh Pocket, welches bedingt durch den 3200 mAh Akku, gelegentlich über USB nachgeladen werden muss.

Ich verwende diesen Knoten gern im Auto. Da ist das Nachladen über USB kein Problem und der Knoten steht am Ende der Fahrt mit geladenem Akku zur Verfügung.

Die Batteriespannung kann dann sicherheitshalber am Display oder einem über BLE angeschlossenen Mobiltelefon verfolgt werden.

Die folgenden Abbildungen zeigen meine Reiseroute und anhand eines Auszugs aus MeshMap.net die zu erwartenden Kontakte mit Knoten auf dieser Route. Da in diesem Mapping nicht alle über Funk erreichbare Knoten gezeigt werden, bestand Hoffnung auf Kontakte, wenn auch gedämpft.

Ich habe mit den Default-Einstellungen für LongFast gearbeitet, da ich nicht die lokalen Channel der durchfahrenen Gebiete vorgeben wollte. Möglicherweise wären dann weitere Knoten erreichbar.

Die folgenden Abbildungen zeigen Kontakte, die ich an verschiedenen Orten hatte. Zwischendurch gab es keinen Empfang.

Während der Fahrt lagen beide Meshtastic Knoten auf der vorderen Ablage (praktisch nahe der Windschutzscheibe) und während der Ferien hatte der Solarknoten einen bevorzugten Standort am Strand. Während unserer Strandaufenthalte war das Reload durch die Solarzelle überhaupt kein Problem. Ich werde das aber weiter verfolgen.

Angekommen an der Ostsee konnte ich vom Strand der Insel Hiddensee Meshtastic Knoten in DK und S sehen. Diese ca. 130 km sind sicher Überreichweiten zu verdanken, denn ich hatte solche Kontakte nur an zwei Tagen innerhalb von drei Wochen. Aus Mecklenburg-Vorpommern habe ich nichts empfangen.

Bei der Rückreise hatten wir einen Zwischenstopp in Jena und konnten einige Meshtastic Knoten empfangen.

Wie schon bei der Hinfahrt waren im unteren Rheintal einige Knoten zu sehen und später beim Eintritt ins Gebiet Zürichsee/Linth war dann wieder das gewohnte Bild mit einer dichten Belegung zu sehen.

Die Maps zeigen deutlich, dass ein Community-Projekt von der Community lebt.

Verstehen Sie das als Einladung, selbst Meshtastic Knoten zu installieren und auf diese Weise die Lücken im Mesh-Netzwerk zu schließen.


2024-08-12/CK

Modbus Sensors Connected to IoT

Modbus continues to be a widely used communication protocol in industrial automation and control systems. RS-485 provides a robust and reliable physical layer for long-distance communication, and Modbus RTU is a popular protocol for exchanging data between devices from different manufacturers in various industrial applications.

Despite the emergence of newer protocols and technologies, Modbus RTU over RS-485 will continue to be widely used in the industry due to its simplicity, compatibility with existing systems, and broad support.

Various bridges connect a Modbus network to the IoT for further data processing and visualization, which is essential today. Modbus LoRaWAN bridges, offered by various users, can be used to make this connection.

Modbus ist nach wie vor ein weit verbreitetes Kommunikationsprotokoll in industriellen Automatisierungs- und Steuerungssystemen. RS-485 bietet eine robuste und zuverlässige physikalische Schicht für die Kommunikation über große Entfernungen, und Modbus RTU ist ein beliebtes Protokoll für den Austausch von Daten zwischen Geräten verschiedener Hersteller in verschiedenen industriellen Anwendungen.

Trotz des Aufkommens neuerer Protokolle und Technologien wird Modbus RTU über RS-485 aufgrund seiner Einfachheit, der Kompatibilität mit bestehenden Systemen und der breiten Unterstützung weiterhin in der Industrie weit verbreitet sein.

Verschiedene Bridges verbinden ein Modbus-Netzwerk mit dem IoT zur weiteren Datenverarbeitung und -visualisierung, was heute unerlässlich ist. Modbus LoRaWAN-Bridges, die von verschiedenen Anwendern angeboten werden, können für diese Verbindung genutzt werden.

In my book IoT Projects for Makers, I introduced among others a solution for publishing measuring values of a Modbus sensor by Pushover to a mobile phone by use of WisBlock modules.

In meinem Buch IoT Projects for Makers habe ich unter anderem eine Lösung vorgestellt, um Messwerte eines Modbus-Sensors per Pushover mit Hilfe von WisBlock-Modulen auf ein Mobiltelefon zu veröffentlichen.

The same technology can be used to transfer messages to a LoRaWAN network server. The WisBlock ecosystem helps with rapid prototyping.

Mit der gleichen Technologie können Sie Nachrichten an einen LoRaWAN-Netzwerkserver übertragen. Das WisBlock-Ökosystem hilft bei der schnellen Entwicklung von Prototypen

RAK7431

RAKwireless offers an industrial solution with the WisNode Bridges and in particular the RAK7431 WisNode Bridge Serial, an RS485 to LoRaWAN converter for industrial applications. The device transmits data from Modbus sensors over LoRaWAN for wireless transmission to and from end devices.

Using the LoRaWAN 1.0.3 protocol stack, the device supports LoRaWAN Class A, B and C, enabling cloud management of ModBus/RS-485 devices.

Eine industrielle Lösung bietet RAKwireless mit den WisNode Bridges und hier vor allem mit der RAK7431 WisNode Bridge Serial, einem RS485 to LoRaWAN converter für industrielle Anwendungen. Das Gerät übermittelt Daten von Modbus-Sensoren über LoRaWAN zur drahtlosen Übertragung von und zu Endgeräten.

Mit dem LoRaWAN 1.0.3 Protokollstack unterstützt das Gerät LoRaWAN Class A, B und C und ermöglicht so ein Cloud-Management von ModBus/RS-485-Geräten.


2024-05-19/CK

RAKwireless Meshtastic Starterkit Enclosure

In the blog posts Meshtastic – Off-Grid Open-Source Mesh Network and Visualization of Meshtastic Data with Datacake, I presented a Meshtastic network and the visualization of measurement data.

The Meshtastic node is not only characterized by sensor technology and networking. Its enclosure is equally decisive for its intended use. Boards alone can be used for evaluation, but not in real use.

While visiting the RAKwireless booth at Embedded World 2024, I saw the enclosure for the RAKwireless starter kit shown here and have now tried it out.

You can download the data for the housing from the Printables website or order it from the QuantumShadow3D store.

As the following pictures show, this is a very successful enclosure design for this purpose.

In den Blog Posts Meshtastic – Off-Grid Open-Source Mesh Network und Visualization of Meshtastic Data with Datacake hatte ich ein Meshtastic Netzwerk und die Visualisierung von Messdaten vorgestellt.

Der Meshtastic Knoten selbst zeichnet sich nicht nur durch die Sensorik und die Vernetzung aus. Sein Gehäuse ist gleichermaßen bestimmend für den Einsatzzweck. Für die Evaluierung kann mit Boards gearbeitet werden, im realen Einsatz nicht.

Bei meinem Besuch am Stand von RAKwireless zur Embedded World 2024 konnte ich das hier gezeigte Gehäuse für das RAKwireless Starterkit sehen und habe es nun auch ausprobieren können.

Sie können die Daten für das Gehäuse von der Printables Website herunterladen oder im Shop von QuantumShadow3D bestellen.

Wie die folgenden Bilder zeigen, ist das eine sehr gelungene Gehäusekonstruktion für diesen Zweck.


2024-04-14/CK

QingPing Temperature & Humidity Monitor

Environmental sensors monitor the temperature and humidity levels in different rooms of a building and enable the system to intelligently adjust the HVAC settings. A dynamic control ensures a comfortable and healthy indoor environment

RAKwireless offers the QingPing Temperature & Humidity Pro S a professional-grade sensor specifically tailored for environmental and greenhouse applications.

The device supports configurable reporting and notification options, keeping users informed about critical changes in temperature and humidity levels.

Umgebungssensoren überwachen Temperatur- und Luftfeuchtigkeit in den verschiedenen Räumen eines Gebäudes und ermöglichen eine intelligente Anpassung der HLK-Einstellungen. Eine dynamische Steuerung sorgt für ein angenehmes und gesundes Raumklima.

RAKwireless bietet mit dem QingPing Temperature & Humidity Pro S einen professionellen Sensor, der speziell für Umwelt- und Gewächshausanwendungen entwickelt wurde.

Das Gerät unterstützt konfigurierbare Berichts- und Benachrichtigungs-optionen, die den Benutzer über kritische Änderungen der Temperatur- und Luftfeuchtigkeitswerte informieren.

Features

  • Temperature: ±0.2°C (within 0°C to 50°C range)
  • Humidity: ±2% (within the 10% to 90% range)
  • LoRaWAN bands: EU868 (default), EU433, RU864, CN470, KR920, IN865, AU915, US915, AS923
  • LoRaWAN Class: A
  • Bluetooth 5.0
  • Battery: Rechargeable lithium battery, 2600 mAh
  • Power supply: USB-C, 5 V – 1 A
  • Remotely configurable settings
  • Dimension: 77 x 77 x 28 mm

For Device Configuration and Data Description read the User Manual.

The sensor sends different messages like historical data, real-time data, events, etc.

At this time, QingPing does not offer a payload decoder; therefore, I wrote a simple one for decoding the real-time data message.

Zur Gerätekonfiguration und Datenbeschreibung lesen Sie bitte das Benutzerhandbuch.

Der Sensor sendet verschiedene Nachrichten wie historische Daten, Echtzeitdaten, Ereignisse usw.

Da QingPing derzeit keinen Payload-Decoder anbietet, habe ich einen einfachen Decoder für die Dekodierung der Echtzeitdaten geschrieben.

function decodeUplink(input) {
  var data = {};
  if (input.bytes[1] == 0x41 && input.bytes[3] == 0x01) {
    data.msg = "RTD";
    data.temp = ((((input.bytes[8] << 8) + input.bytes[9]) >> 4) - 500)/10;
    data.humi = ((((input.bytes[9] << 8) + input.bytes[10]) & 0x0FFF))/10;
    data.bat = input.bytes[13];
  } 
  
  return {
    data: data
  };
}

Using this payload decoder, the TTS console shows the following messages. As you can see, only the real-time data messages beginning with 01 41 xx 01 are decoded.

Bei Verwendung dieses Payload-Decoders zeigt die TTS-Konsole die folgenden Meldungen an. Wie Sie sehen können, werden nur die Echtzeitdatenmeldungen, die mit 01 41 xx 01 beginnen, dekodiert.


Thanks to RAKwireless for this LoRaWAN gift at Embedded World 2024 and the good conversations at the booth. It reminds me of my visit there.


2024-04-13/CK