Nach dem großen Erfolg der Sommer-Aktion 2023 des Rheinwerk Verlags ist in diesem Monat für einen begrenzten Zeitraum eine weitere große Marketing-Aktion geplant.
Die Bundles (Buch + E-Book) aller lieferbaren, deutschsprachigen Titel werden im Webshop ab kommendem Montag, den 11.03.2024, um 5 Euro im Preis reduziert.
Meshtastic® is an open-source project that uses low-cost LoRa modules to build a long-range, off-grid mesh network in areas without reliable communications infrastructure.
Meshtastic uses LoRa, a long-range radio protocol that is widely available in most regions without the need for additional licenses or certifications. The license-free ISM band is reserved for this type of communication.
The radios rebroadcast messages they receive, ensuring that every node, even those at the furthest distance, can receive messages. Depending on the settings, the Meshtastic mesh network can simultaneously support up to 100 nodes.
Meshtastic radios can be paired with a single phone to send messages directly to an addressed radio. Please note that each device can only support a connection from one user at a time.
The mesh algorithm implements the principle of „flooding.“ Each node sends each packet to its neighbor node, which forwards the packet accordingly. This hop is a chain of wireless links leading ultimately to the destination node. When the packet is forwarded, the hop limit (HL) is reduced by one. The default HL is 3, but it can be set to 7. A packet with a HL of 0 will not be forwarded.
For more information on setting up and operating a Meshtastic network, I must refer you to the extensive information on the Meshtastic website. A very good introduction in German can be found here.
Meshtastic® ist ein Open-Source-Projekt, das kostengünstige LoRa-Module verwendet, um ein netzunabhängiges Mesh-Netzwerk mit großer Reichweite in Gebieten ohne zuverlässige Kommunikationsinfrastruktur aufzubauen.
Meshtastic verwendet LoRa, ein Long-Range Funkprotokoll, das in den meisten Regionen verfügbar ist, ohne dass zusätzliche Lizenzen oder Zertifizierungen erforderlich sind. Das lizenzfreie ISM-Band ist für diese Art der Kommunikation reserviert.
Die LoRa-Module senden die empfangenen Nachrichten weiter, so dass jeder Knoten, auch der am weitesten entfernte, Nachrichten empfangen kann. Je nach Einstellung kann das Meshtastic Mesh-Netzwerk bis zu 100 Knoten gleichzeitig unterstützen.
Meshtastic-Knoten können mit einem Mobiltelefon gepaart werden, um Nachrichten direkt an einen adressierten Knoten zu senden. Jeder Knoten kann immer nur eine Verbindung von einem Benutzer gleichzeitig unterstützen.
Der Mesh-Algorithmus setzt das Prinzip des „Flooding“ um. Jeder Knoten sendet jedes Paket an seinen Nachbarknoten, der das Paket entsprechend weiterleitet. Dieser Hop ist eine Kette von Weiterleitungen, die schließlich zum Zielknoten führt. Bei der Weiterleitung des Pakets wird das Hop-Limit (HL) um eins verringert. Das Standard-HL ist 3, kann aber auch auf 7 gesetzt werden. Ein Paket mit einem HL von 0 wird nicht mehr weitergeleitet.
Für weitere Informationen zur Einrichtung und zum Betrieb eines Meshtastic-Netzwerks muss ich Sie auf die umfangreichen Informationen auf der Meshtastic-Website verweisen. Eine sehr gute Einführung in deutscher Sprache finden Sie hier.
For initial tests, I set up the Meshtastic network shown in the picture.
Für erste Tests habe ich das im Bild gezeigte Meshtastic Netzwerk aufgebaut.
Meshtastic Network
I’m going to show you the first results here, to whet your appetite for a more in-depth exploration of the world of Meshtastic.
The first image shows the router created with a Heltec Lora32 V3 connected to the mobile phone via WiFi (192.168.1.114). The second shows my own nodes and the third shows external nodes visible on the public primary channel. Depending on the configuration of each node, you can see battery voltage, GPS data, environmental data, and distances. The fourth screen shows the location data on a map of the area. Beam shows the location of my LilyGo T-Beam.
The last two screens show the tracking of a moving node. First, the connection is made via the LilyGo T-Beam, and then, after the position has changed, via the Heltec V3 H01 node. This rerouting shows very well the possibilities of a mesh network.
Ich zeige Ihnen hier erste Ergebnisse, um die Lust am tieferen Erkunden der Meshtastic Welt zu wecken.
Im ersten Bild ist der mit einem Heltec Lora32 V3 gebildete Router über WiFi (192.168.1.114) mit dem Mobilphone verbunden, während im zweiten meine eigenen Knoten und im dritten Bild externe, im öffentlichen Primary Channel sichtbare Knoten zu sehen sind. Je nach Ausstattung der jeweiligen Knoten werden Batteriespannung, GPS-Daten oder Umgebungsdaten und Entfernungen angezeigt. Im vierten Bild sind die Positionsdaten in einem Map angezeigt. Mit Beam sehen Sie die Standortdaten meines LilyGo T-Beam.
Die beiden letzten Bilder zeigen das Tracing eines bewegten Knotens. Zuerst erfolgt die Verbindung über den LilyGo T-Beam und nach der Veränderung der Position über den Knoten Heltec V3 H01. Dieses Re-Routing zeigt die Möglichkeiten eines Mesh Netzwerk sehr gut.
Router connected by WiFiOwn Nodes connectedFurther Nodes far awayPositions of the NodesTracing for moving RAK4631Tracing for changed Poistion
The router supports the organization of network participants and the sending of MQTT messages via its WiFi interface. By connecting to the Internet, it can bridge the boundaries of the mesh network.
For example, an MQTT message in JSON format contains the information shown in the following image
Der Router unterstützt nicht nur die Organisation der Teilnehmer des Netzwerks, sondern ermöglicht durch sein WiFi-Interface auch das Versenden von MQTT-Messages und kann dadurch die Grenzen des Mesh-Netzwerks durch Verbindung ins Internet überbrücken.
Eine MQTT-Message im JSON-Format enthält beispielsweise die im folgenden Bild gezeigten Informationen.
The information can be made readable by parsing the transmitted payload.
I use a separate ESP32 for this, which has subscribed to the messages with the topic msh/#, decodes their payload and displays it via the console. The display can of course also be made more convenient.
Durch Parsing der übermittelten Payload kann die Information lesbar gestaltet werden.
Ich nutze hierfür einen separaten ESP32, der die Messages mit dem Topic msh/# abonniert hat, deren Payload decodiert und über die Console zur Anzeige bringt. Die Anzeige kann natürlich auch komfortabler gestaltet werden.
Telemetry Message
Position Message
The Meshtastic logo trademark is the trademark of Meshtastic LLC.
I have been using Kachelmannwetter’s information and following their weather forecast on YouTube for a long time.
Kachelmannwetter provides extensive weather and environmental data, as well as webcam recordings. Interested parties can also contribute weather data to complete the range of data on offer.
I have taken up the invitation and, as a new Citizen Scientist, I am now also making my SensorHub data available on the Meteologix platform.
The images below display the professional and amateur weather stations in my area. Additionally, the graph depicts the ambient temperature measured at a height of 2 meters over a 72-hour period.
Schon lange nutze ich die Informationen von Kachelmannwetter und verfolge die Wettervorhersage auf Youtube.
Neben der Bereitstellung umfangreicher Wetter- und Umweltdaten sowie Webcam-Aufnahmen können Interessenten Wetterdaten beisteuern und so das Angebot an Daten komplettieren.
Ich habe die Aufforderung aufgegriffen und stelle als neuer Citizen Scientist nun meine SensorHub Daten auch auf der Meteologix Plattform bereit.
In den folgenden Bildern sind die Profi- und Amateur-Wetterstationen meiner Gegend gezeigt. Abschließend ist der 72 h Verlauf der Umgebungstemperatur gemessen in 2 m Höhe gezeigt.
Profi Weather StationsAmateur Weather StationsSensorHub 72 h Weather Data
The data collected by the SensorHub weather station is sent to the TTN LNS and forwarded to Datacake via a WebHook.
The data stored in the TTN is also available to other applications, and I use it to upload to the Weathercloud platform. Weathercloud is a global weather network with over 120,000 devices currently connected.
The density of weather stations in my area is already quite high, but I was able to fill a gap with my station (green point).
Die von der SensorHub Wetterstation ermittelten Daten werden an den TTN LNS gesendet und über einen WebHook an Datacake weitergeleitet.
Die im TTN gespeicherten Daten stehen aber auch anderen Anwendungen zur Verfügung und ich verwende sie für ein Upload auf die Wettercloud Plattform. Weathercloud ist ein globales Wetternetzwerk, an das derzeit mehr als 120.000 Geräte angeschlossen sind.
Die Dichte an Wetterstationen in meinem Gebiet ist bereits recht hoch, dennoch konnte ich mit meiner Station eine Lücke schließen (grüner Punkt).
TTN provides an MQTT server to handle streaming events. An MQTT client can subscribe to the LoRaWAN uplinks. Afterwards, the desired data can be extracted.
No extensive hardware is required for this data conversion. I use an ESP32-based Oxocard Connect here. Internet access is via WiFi, the TTN LNS is queried via MQTT, and the data is forwarded to the weather cloud via HTTP GET.
TTN stellt einen MQTT-Server für die Arbeit mit Streaming-Ereignissen zur Verfügung. Ein MQTT-Client kann die LoRaWAN-Uplinks abonnieren und die gewünschten Daten lassen sich anschliessend extrahieren.
Für diese Daten-Konversion bedarf es keiner umfangreichen Hardware. Ich benutze hier einen ESP32-basierenden Oxocard Connect. Der Internetzugriff erfolgt über WiFi, die Abfrage des TTN LNS über MQTT und die Weiterleitung der Daten an die Wettercloud über HTTP GET.
Oxocard Connect
The uploaded data is then presented in the Weathercloud according to the following images.
WisBlock is a modular system that easily implements a Low Power Wide Area Network (LPWAN) in your IoT solution. WisBlock accompanies your solution from rapid prototyping to mass production without the need to create new hardware modules for each step.
In the development phase, WisBlock modularity allows you to test different microcontrollers, sensors, communication technology, and IO options by changing modules with simple plug-in modules. WisBlock industrial-grade modules can be used in mass production without the need to redesign prototypes. Devices can be modified or repaired even once deployed with minimal waste and effort.
WisBlock ist ein modulares System, das auf einfache Weise ein Low Power Wide Area Network (LPWAN) in Ihre IoT-Lösung implementiert. WisBlock begleitet Ihre Lösung vom Rapid Prototyping bis zur Massenproduktion, ohne dass Sie für jeden Schritt neue Hardwaremodule erstellen müssen.
In der Entwicklungsphase können Sie dank der Modularität von WisBlock verschiedene Mikrocontroller, Sensoren, Kommunikationstechnologien und IO-Optionen testen, indem Sie Module gegen steckbare Module austauschen. WisBlock-Module in Industriequalität können in der Massenproduktion eingesetzt werden, ohne dass Prototypen neu entwickelt werden müssen. Die Geräte können auch nach dem Einsatz mit minimalem Aufwand modifiziert oder repariert werden.
The advantage of an eBook edition is that the author can make additions and updates available to the reader at short notice. This edition presents NB-IoT as an alternative communication option in the LPWAN. Furthermore, battery-powered IoT nodes do not have to do without a display. ePaper displays with very low power requirements are very well suited for this. Lastly, although prototyping boards rarely offer favorable conditions for low-power applications, I will discuss these aspects together with using ePaper displays.
Im Beitrag „WisBlock von RAKwireless – IoT-Anwendungen einfach umgesetzt“, veröffentlich in ELEKTRONIK 26/2023, S. 44-50 und im elektroniknet.de, wird gezeigt, wie mit WisBlock-Komponenten das Erstellen von IoT-Anwendungen vom Proof-of-Concept über das Prototyping bis hin zum Industrieprodukt unterstützt wird.
Der auf WisBlock aufbauende SensorHub stellt eine Ausprägung dieses Konzeptes dar und ermöglicht als Low-Code-System eine schnelle Umsetzung von IoT-Applikationen.
The WisBlock IAQ Solution Kit presented by RAKwireless is a measuring device for determining indoor air quality based on temperature, relative humidity, light, CO2, particulate matter, and VOCs.
It is also possible to record room occupancy.
An optional eInk display is a GUI and can present all measured values to the user.
An RGB LED on the front can be set up as a status display and used as a CO2 traffic light, for example.
Das von RAKwireless vorgestellte WisBlock IAQ Solution Kit ist Messgerät zur Bestimmung der Luftqualität im Innenraum anhand von Temperatur, relativer Feuchte, Licht, CO2, Feinstaub und VOC.
Die Erfassung der Raumbelegung ist ebenfalls möglich.
Ein optinales eInk-Display dient als GUI und kann alles erfassten Messwerte dem Anwender präsentieren.
Eine frontseitige RGB-LED kann als Statusanzeige eingerichtet werden und beispielsweise als CO2-Ampel dienen.
The mentioned features already make the RAK10702 device interesting, but I believe the implementation is more important.
RAK10702 is made up of WisBlock components and is, therefore, completely flexible in terms of both hardware and application software.
In addition, the specially developed housing ensures optimum airflow, which is a prerequisite for accurate measurements of the WisBlock air quality sensors.
All design files for the enclosure are Open Source. RAKwireless offers the 3D-printed housing directly. However, you can also use the design data for your own 3D printing.
The individual components of the RAK10702 kit are shown in the following picture.
Die genannten Eigenschaften machen das RAK10702 Device bereits interessant, doch wichtiger ist aus meiner Sicht die vorgenommene Umsetzung.
RAK10702 ist aus WisBlock Komponenten aufgebaut und ist damit sowohl in der Hardware als auch der Anwendungssoftware vollkommen flexibel.
Hinzu kommt, dass das speziell entwickelte Gehäuse einen optimalen Luftstrom sicherstellt, der Voraussetzung für genaue Messungen der WisBlock Luftqualitätssensoren ist.
Alle Designdateien für das Gehäuse sind Open Source. RAKwireless bietet das 3D-gedruckte Gehäuse direkt an. Sie können aber auch die Designdaten für einen eigenen 3D-Druck verwenden.
Die einzelnen Bestandteile des RAK10702 Kits zeigt das folgende Bild.
The WisBlock IAQ Solution Kit presented here is a very good example of how WisBlock components can be used to build complex industrial-grade IoT devices.
Internationally, you can find the WisBlock components from RAKwireless in their online store or at Aliexpress.
Das hier vorgestellte WisBlock IAQ Solution Kit ist in sehr gutes Beispiel dafür, wie mit WisBlock Komponenten komplexe industrietaugliche IoT-Devices aufgebaut werden können.
In meinem Blogbeitrag Vermittlung digitaler Inhalte in der Schule hatte ich die das Informatikinteresse an den Schulen fördernden Mikrocontroller BBC micro:bit, Calliope mini, und Oxocard betrachtet.
Dieser Bereich ist nach wie vor in Bewegung, stellt doch die Digitalisierung in allen Lebensbereichen eine grosse Herausforderung dar.
Mit der Oxocard Mini Serie stellt die Schweizer Oxon AG Computerboards zur Verfügung, die das Eintauchen in Computergrafik und ihre zugrunde liegenden Algorithmen oder Spiele und Animationen mit ihren Quelltexten ermöglichen.
OxoCard (Mini) Science ist eine programmierbare Multisensorplatine, die mit Hilfe von sieben Sensoren die folgenden physikalischen Grössen erfasst: Licht/IR, Temperatur, Geräusche, Feuchte, Druck und flüchtige Kohlenstoffverbindungen (VoC, eCO2 und Ethanol). Auch hier steht der dokumentierte Quelltext zur Verfügung und eigene Experimente können gestartet werden.
Oxocard Science, Oxocard Galaxy & Oxocard Artwork
Das jüngste Kind der Oxocard-Familie ist Oxocard Connect – ein ebenfalls auf dem ESP32 aufbauendes und damit netzwerktaugliches Computermodul mit grafischem TFT-Display und einem Joystick für die Benutzer-Eingaben, welches durch seitlich einsteckbare Cartridges mit peripheren Komponenten, wie Sensoren etc., erweitert werden kann.
Oxocard Connect mit Air Cartridge
Die Programmierung kann wieder über den komfortablen Nanopy-Editor erfolgen. Zahlreiche Programmbeispiele und ausführliche Erläuterungen dienen der Einarbeitung und Auseinandersetzung mit diesem System. Zum näheren Kennenlernen möchte ich Sie auf den Beitrag von David Lee verweisen.
Ich möchte Oxocard Connect nicht mit Python programmieren, sondern diesen sehr ansprechend gestaltetem Controller mit der Arduino-IDE programmieren. Die zahlreichen Libraries ermöglichen die Erweiterung mit Sensoren und die Vernetzung sehr komfortabel. Mit dem Veroboard lassen sich Prototypen sehr einfach erstellen, bevor man mglw. eine anwendungsspezifische Cartridge erstellt.
Oxocard Connect Arduino Test
Für die Hardware-Konstellation habe ich ein Testprogramm erstellt, welches die folgenden Funktionen testet:
Ausgabe auf dem farbigen TFT-LCD mit 240 x 240 Pixel LH133T-IG01 mit ST7789VW LCD-Controller
Abfrage Joystick
LEDs über digitale IO
EEPROM über I2C-Bus
Auf der Cartridge stehen neben digitaler und analoger IO und I2C-Bus auch noch SPI zur Verfügung. Ausserdem kann die gesamte Schaltung auch extern mit 5V (VEXT) versorgt werden.
Der Einsatz eines so ansprechend gestalteten Controllers lässt schnell das oft vorhandene Drahtverhau mit seinen unsicheren Verbindungen vergessen.
Oxocard Connect Openweather Station
Oxocard Connect besitzt mit der vorhandenen Hardware alle Möglichkeiten, über das Internet auf Daten zuzugreifen und diese auf dem Display darzustellen.
Ich habe hier durch Abfrage der Wetterdaten von Openweathermap.org eine kleine Wetterstation als Anwendungsbeispiel erstellt.
Openweathermap.org stellt maximal 1000 Aufrufe pro Tag gratis zur Verfügung, weshalb hier der Abfragezyklus auf zwei Minuten eingestellt wurde. Werden die 1000 Aufrufe überschritten, dann kann ein blockierter Account die Folge sein.
Simon Kemper beschreibt auf LinkedIn die Verbindung von Datacake und Slack zur Benachrichtigung bei kritischen Zuständen etc.
Unter Verwendung des TTN-internen MQTT-Servers bin ich einen anderen Weg gegangen.
Ich verwende Oxocard Connect als MQTT-Client und filtere nur die für das Monitoring erforderlichen Größen aus den Upload-Messages zur Anzeige auf dem Display.
Konkret überwache ich die Batteriekapazität eines solar-gepufferten SensorHubs von RAKwireless. Gerade jetzt in der dunklen Jahreszeit möchte ich den Ladezustand der Batterie überwachen, um die Nachladung tagsüber zu verifizieren.
Der SensorHub sendet die erfassten Umweltdaten zum TTS (CE) LNS, der diese an ein Datacake Dashboard zur Visualisierung weiterleitet. Sie finden dieses Dashboard über diesen Public Link.
Der Oxocard Connect MQTT-Client „subscribed“ die Upload-Messages des SensorHubs, filtert die Batteriekapazität aus der umfangreichen Upload-Message und bringt sie auf dem Display zur Anzeige. Die Aktualisierung des Displayinhalts erfolgt mit jeder neuen Upload-Message vom SensorHub.
Ein Screenshot des Consolen Outputs zeigt die empfangene Payload vor und nach der Filterung und die Extraktion der Daten. Auf dem Display wird aber nur die aktuelle Batteriekapazität angezeigt.
The power supply of the SensorHub by an RAK9154 solar battery enables the autonomous operation of the complete measuring station. I describe this in my eBook SensorHub IoT Applications.
I had to close the chapter describing this application as follows: On sunny days, recharging the battery will hardly be a problem. On cloudy days, this balance looks less favorable, and it remains to be seen whether the weather conditions in my area offer sufficiently good conditions. It is, therefore, essential that the anticipated variant of the SensorHub promises to reduce power requirements further.
I have good news today. I got a new version of SensorHub and replaced the existing one. As you can see in the screenshot of the WisToolBox app, the hardware version changed from VF zu VH and the firmware from V1.1.79 to V1.2.6.
Existing Version of SensorHub
New Version of SensorHub
The following screenshot shows the behavior of the solar battery before and after the SensorHub replacement. The weather conditions are worse over the whole period.
You can see that before the replacement of the SensorHub the current consumption was about 50 mA in the phase of discharge. After the replacement, it is reduced significantly. The same behavior can be seen in the battery capacity curve. Before the replacement, the battery capacity dropped between 10% and 20% per day without recharging.
After the replacement, the discharge remains quite small. The current consumption was about 10 mA in the phase of discharge, and the battery capacity dropped by about 1%. The weather conditions were very bad therefore, the recharging was limited to a short time.
Now, I’m waiting for a sunny day so that the solar cell can charge the battery sufficiently to survive a period of bad weather without losing the connection.
The sun came out for a few hours, and the battery was charged. During this time, the solar cell delivers a considerable charging current.
We are on the right way, as you can see, after two days with a bit of sun.