Archiv der Kategorie: Prototyping

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

IoT-Anwendungen einfach umgesetzt

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 Indus­trieprodukt 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.

Die Messwerte der Messstation sind bspw. über diesen Public Link abrufbar.

RAKwireless WisBlock IAQ Solution Kit

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.

I have described further applications in my eBook IoT projects for makers with WisBlock from RAKwireless. Just browse through the sample to get an impression.


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 eBook IoT-Projekte für Maker mit WisBlock von RAKwireless habe ich weiter Anwendungen beschrieben. Blättern Sie einfach durch die Leseprobe, um einen Eindruck zu bekommen.

Im DACH-Bereich (D, A, CH) werden Komponenten von RAKwireless mittlerweile von zahlreichen Distributoren angeboten. Das sind u.a.:

CH: https://www.bastelgarage.ch/rak-wireless
https://www.galaxus.ch/de/search?q=RAKwireless

D: https://shop.allnet.de/rak-wireless/
https://www.innet24.de/rak-wireless


2023-12-12/CK

RK900-09 Weather Station on SensorHub

The Sensor Hub equipped with a Sensor Probe containing Temperature and Humidity Sensor RAK1901 and Pressure Sensor RAK1902 was used to measure environmental data (Link).

RAKwireless offers the RK900-09 Weather Station more precise equipment for measuring weather conditions.

MEMS sensors measure temperature, humidity, barometric pressure, and ultrasonic sensors wind speed and direction. You will find the technical data on the manufacturer’s website.

The SensorProbeIO associated with the RK900-09 connects the RS-485 output of the RK900-09 to the SensorHub interface.

The payload decoder provided by RAKwireless needed minor adaptations and is available on GitHub.

For visualization, I use Datacake again and get the following data output of this Weather Station.

Datacake Dashboard

Use this QR code or public link to get the actual weather data measured by RK900-09 Weather Station connected to SensorHub.


2023-09-26/CK

ESP32Forth – eine alternative Programmierumgebung

Für den ESP32 steht mit MicroPython eine interaktive Programmiersprache zur Verfügung. Das ist aber nicht die einzige Möglichkeit der interaktiven Programmierung, denn mit ESP32Forth steht auch eine Portierung von eForth (Arduino and eForth) für den ESP32 zur Verfügung.

Wenn Ihnen Forth unbekannt sein sollte, dann erlätert ChatGPT Ihnen FORTH wie folgt:

Die Programmiersprache FORTH ist eine ungewöhnliche und spezielle Programmiersprache, die sich von C++ und MicroPython in vielerlei Hinsicht unterscheidet, insbesondere beim Einsatz auf Mikrocontrollern. Hier sind einige der wichtigsten Eigenschaften und Unterschiede:

Eigenschaften von FORTH:

  1. Stack-basierte Sprache: FORTH verwendet einen Stapelspeicher (Stack) als zentrales Konzept. Operationen und Daten werden auf den Stapel verschoben und von dort verarbeitet. Dies macht FORTH sehr leichtgewichtig und effizient.
  2. Interaktivität: FORTH ist eine interaktive Programmiersprache. Sie können Code direkt in die FORTH-Umgebung eingeben und ausführen, was sie ideal für den schnellen Prototypenbau und das Debugging macht.
  3. Minimalistische Syntax: Die Syntax von FORTH ist extrem einfach, bestehend aus Wörtern (FORTH-Befehlen), die von Leerzeichen getrennt sind. Dies führt zu sehr kompaktem Code.
  4. Keine strikte Typisierung: FORTH ist schwach typisiert und flexibel. Dies kann sowohl ein Vor- als auch ein Nachteil sein, je nach Anwendungsfall.
  5. Direkter Hardwarezugriff: FORTH ermöglicht einen sehr direkten Zugriff auf die Hardware, was in eingebetteten Systemen nützlich sein kann.

Unterschiede zu C++:

  1. Sprachparadigma: C++ ist eine objektorientierte Programmiersprache, während FORTH als stapelbasierte Programmiersprache betrachtet wird. Dies bedeutet, dass die Herangehensweise an die Programmierung grundlegend unterschiedlich ist.
  2. Komplexität: C++ ist eine umfangreiche und komplexe Sprache mit einer Vielzahl von Funktionen und Bibliotheken. FORTH hingegen ist extrem minimalistisch und erfordert oft mehr Zeilen Code, um ähnliche Aufgaben zu erledigen.
  3. Typisierung: C++ ist stark typisiert, was bedeutet, dass Datentypen streng überprüft werden. FORTH ist schwach typisiert und erlaubt mehr Flexibilität bei der Verwendung von Daten.

Unterschiede zu MicroPython:

  1. Syntax: MicroPython ist eine Python-Variante für Mikrocontroller und verwendet eine Python-ähnliche Syntax, während FORTH seine eigene einzigartige Syntax hat.
  2. Abstraktionsebene: MicroPython bietet eine höhere Abstraktionsebene und mehr Konventionalität im Vergleich zu FORTH. Das macht MicroPython oft einfacher zu erlernen und zu verwenden.
  3. Gemeinschaft und Bibliotheken: MicroPython hat eine aktive Gemeinschaft und eine breite Palette von Bibliotheken und Modulen, die speziell für Mikrocontroller entwickelt wurden. FORTH hat weniger Ressourcen und Unterstützung in dieser Hinsicht.
  4. Entwicklungsumgebungen: MicroPython wird oft mit modernen integrierten Entwicklungsumgebungen (IDEs) verwendet, die die Entwicklung und das Debugging erleichtern. FORTH erfordert häufig eine tiefere Einarbeitung in die Arbeitsweise des Stapels und der FORTH-Umgebung.

Insgesamt hängt die Wahl zwischen FORTH, C++ und MicroPython für Mikrocontroller-Anwendungen von den spezifischen Anforderungen Ihres Projekts, Ihrer Programmierpräferenz und Ihrer Erfahrung ab. FORTH ist eine leistungsfähige, aber unkonventionelle Option, die für bestimmte Anwendungen geeignet sein kann, während C++ und MicroPython aufgrund ihrer weitverbreiteten Akzeptanz und ihrer Entwicklungsunterstützung oft bevorzugt werden.

OpenAI. (2023). ChatGPT (August 3 Version) [Large language model]. https://chat.openai.com

Wenn Sie sich mit ESP32Forth auseinandersetzen wollen, dann finden Sie die notwendigen Informationen von Installation bis hin zur Anwendung unter https://esp32.forth2020.org/ oder https://www.facebook.com/groups/esp32forth/

Ich möchte Ihnen hier zwei Beispiele zur Arbeit mit ESP32Forth zeigen, die vielleicht helfen Neugier zu wecken.

Benchmarks sind eine beliebte Vergleichsmöglichkeit für Hard- und Software. Um einen Eindruck von der Performance von ESP32Forth auf einem ESP32 zu bekommen, habe ich den DDBench(mark) herangezogen (https://theultimatebenchmark.org/).

Das Resultat des Benchmarks sind eine Laufzeit von 5.5 Sekunden.

Vergleichen Sie das Resultat mit den unter https://theultimatebenchmark.org/ veröffentlichten Daten, dann können Sie sich ein Bild von der Leistungsfähigkeit dieser Hard- und Softwarekombination machen.

Im Blogpost ESP32 ADC & DAC hatte ich die Performance des DAC-ADC-Subsystems des ESP32 untersucht.

Wenige Zeilen ESP32Forth Code ermöglichen die Ansteuerung eines DACs und das Erfassen dessen Ausgangsspannung durch einen Kanal des ADC. GPIO25 und GPIO33 werden hierzu miteinander verbunden.

( Test ESP32-DAC-ADC-Subsystem w/ ESP32Forth )

25 CONSTANT DAC1 \ GPIO25
33 CONSTANT ADC1_CH5 \ GPIO33

: wait100ms 100 ms ;
: readADC1_CH5 ADC1_CH5 adc . ;
: readADC readADC1_CH5 ;
: writeDAC1 DAC1 swap dacWrite ; ( 0-255 -- )
: test dup writeDAC1 wait100ms readADC . cr ; ( 0-255 -- )
: testloop 255 for i test next ;

Die seriellen Ausgaben habe ich geloggt, um diese für die folgenden Grafiken aufzubereiten.

Das Verhalten des analogen Subsystems entspricht den Erwartungen und ist ohne Anpassungen nur bedingt einsatzfähig.

Der einfache Test mit dieser interaktiven Programmierumgebungen wird aber deutlich.


2023-09-14/CK

IoT Projects for Makers – Update

The title „IoT Projects for Makers“ was published at the end of June, and the first update follows.

Link: https://www.amazon.de/dp/B0C8VCF4DF

Via Aliexpress, I found a Modbus sensor (and many comparable devices) for temperature and humidity measurement at low prices. Modbus RTU via RS-485 is still a common interface in industrial applications. This sensor uses a Sensirion SHTC3 sensor, which allows precise results.

This industrial sensor for temperature and humidity with Modbus RTU via RS-485 has been added to the sensors considered so far.

WiFi is utilized to connect to a router that provides Internet access.

The message containing the measuring results is sent to the Pushover server, which forwards it to the corresponding end devices, an Android mobile phone here.

In the application here, a message with measured values is sent every 15 minutes. This is first an arbitrary assumption and can also be state-based.


2023-07-19/CK

IoT-Projekte für Maker mit WisBlock von RAKwireless

eBook deutsche Ausgabe
eBook englische Ausgabe

WisBlock ist eine modulare Open-Source-IoT-Entwicklungsplattform, die von RAKwireless entwickelt wurde.
Sie wurde entwickelt, um eine schnelle und einfache Möglichkeit zur Entwicklung von IoT-Produkten zu bieten, und kann zur Erstellung verschiedener Arten von IoT-Produkten wie Smart Home, Industrie- und medizinische Geräte verwendet werden.
WisBlock Core sind Mikrocontroller-Module mit integrierter WiFi-, BLE-, LoRaWAN- bzw. NFC-Konnektivität und bieten verschiedenen I/O-Optionen.
WisBlock Base ist das Basisboard für Block Core und die WisBlock Module.
Die Module können miteinander verbunden werden, um ein komplettes IoT-System zu erstellen.

WisBlock is a modular open-source IoT development platform developed by RAKwireless.
It is designed to provide a fast and easy way to develop IoT products and can be used to create various types of IoT products such as smart home, industrial and medical devices.
WisBlock Core are microcontroller modules with integrated WiFi, BLE, LoRaWAN, or NFC connectivity and offer various I/O options.
WisBlock Base is the baseboard for WisBlock Core and the WisBlock modules.
The modules can be connected together to create a complete IoT system.

IoT-Projekte für Maker ist ein eBook mit dem Sie Wisblock von RAKwireless an Hand praktischer Anwendungen kennenlernen können.

Das eBook ist so angelegt, dass es bei neuen Anforderungen oder neuen Komponenten im WisBlock System erweitert wird.

Haben Sie sich für den Kauf dieses eBook entschieden, dann erhalten Sie die Updates nach Registrierung kostenlos. Die in der Arduino IDE erstellten Anwendungsbeispiele finden Sie auf GitHub.

IoT Projects for Makers is an eBook with which you can learn Wisblock from RAKwireless using practical applications.

The eBook is designed to expand as new requirements or components are added to the WisBlock system.

If you have decided to purchase this eBook, you will receive free updates after registration. The application examples created in the Arduino IDE can be found on GitHub.

Überwachung der Luftqualität in Innenräumen über CO2, eTVOC, eCO2 und iAQ

In der Vergangenheit habe ich mich mehrfach mit der Überwachung der Luftqualität in Innenräumen befasst.

Die Informationen zur Bewertung der Luftqualität habe ich in einer Sammlung von Beiträgen zusammengestellt, die Ihnen gerade in einer Zeit erhöhter Belastung durch über Aerosole übertragene Infektionskrankheiten den Zusammenhang von CO2-Konzentration und Infektionsrisiko vor Augen führen soll.

Geeignete Sensorik stelle ich Ihnen vor und vergleiche deren Resultate. Praktische Anwendungsbeispiele runden den messtechnischen Teil ab.

Mit dem hier vermittelten Wissen und den zur Verfügung stehenden Elektronikkomponenten (Sensoren, Mikrocontroller) kann der Maker leicht
eigene Lösungen zur Überwachung der Luftqualität implementieren.

Wegen der starken Verbreitung in der Maker-Szene habe ich hier auf
Arduino oder Arduino-kompatible Mikrocontroller gesetzt.

Hier finden Sie den Text als Flipbook.


2022-03-10/ck

Seeeduino XIAO

Seeeduino XIAO ist das kleinste Arduino-kompatible Board in der Seeeduino-Familie. Basis des XIAO ist ein Microchip-SAMD21 (ARM Cortex-M0+ CPU (SAMD21G18)). Der Controller weist 256 KB Flash Memory und 32 KB RAM auf und wird mit 48 MHz getaktet.

Aus dem Pinout des Seeeduino XIAO ist die Ausstattung des kleinen Boards mit Schnittstellen ersichtlich. Durch den mit 48 MHz getakteten Cortex-M0+ weist das kleine Board eine gute Performance auf. Der Dhrystone Benchmark liefert einen Wert von 41589 Dhrystone/sec und das VAX MIPS Rating beträgt 23.67. Für raumsparende Aufbauten und Wearables ist das Board sehr geeignet, wenn auch die On-Board LEDs und die Stromaufnahme von ca. 350 uA im Sleep Mode weniger optimal sind.

Pinout Seeeduino XIAO
Dhrystone Benchmark Resultate Seeeduino XIAO

Weiterführende Informationen: http://wiki.seeedstudio.com/Seeeduino-XIAO/