Schlagwort-Archive: BLE

Smart Environmental Monitoring

Aufbau eines BLE-Netzwerks für diverse Umwelt-Sensoren

Ziel des Projekts ist der Aufbau eines skalierbaren, extrem stromsparenden Sensor-Netzwerks zur Überwachung von Umgebungsdaten. Der NanoBeacon IN100 SoC von InPlay Inc. kommt im SparkFun NanoBeacon Board – IN100 und im DFRobot Fermion BLE Sensor Beacon zum Einsatz.

Das SparkFun NanoBeacon Board – IN100 kann durch Sensoren mit einem QWIIC-Interface erweitert werden. Beim Einsatz der Fermion-Baureihe von DFRobot können verschiedene Sensoren (u.a. LM35, SHT40, SGP40) direkt mit dem Fermion BLE Sensor Beacon kontaktiert werden.

In beiden Fällen ist eine drahtlose Vernetzung der so gestalteten BLE-Sensoren möglich. Die übermittelten Daten können von einem zentralen ESP32-Gateway ausgewertet und zur Langzeitanalyse an eine IoT-Plattform übermittelt werden.

Ich verwende MicroPython für die Programmierung des ESP32-Gateways. Auf der Sensor-Seite kommt der Fermion BLE Sensor Beacon zum Einsatz. Datacake dient in bewährter Weise als IoT-Plattform.

Systemarchitektur & Datenfluss

Das System nutzt eine dreistufige Architektur, um maximale Effizienz und Reichweite zu erzielen:

  • Sensor-Knoten (Edge): Mehrere Fermion BLE-Module fungieren als eigenständige Sender (Beacons). Sie erfassen analoge Signale (z-B. LM35) sowie digitale I²C-Daten (z.B. SHT40 für Feuchte/Temp, SGP40 für Luftqualität). Die Daten werden ohne festes Pairing direkt in die BLE Manufacturer Data (Advertising-Pakete) eingebettet.
  • Zentral-Gateway (Processing): Ein ESP32 scannt unter MicroPython kontinuierlich das BLE-Spektrum. Er identifiziert die Fermion-Knoten anhand ihrer IDs, extrahiert die Rohdaten aus den Manufacturer-Bytes und berechnet die physikalischen Einheiten. Die aktuellen Messwerte werden unmittelbar auf einem OLED-Display (SSD1306) am ESP32 angezeigt.
  • Visualisierung der aufbereiteten Daten und via MQTT an das Datacake-Dashboard versendeten Daten, wo sie für Monitoring, Alarme und Historien-Analysen zur Verfügung stehen.

Besondere Merkmale

  • Ultra-Low Power: Durch den Verzicht auf eine dauerhafte BLE-Verbindung (Broadcasting) erreichen die Sensor-Knoten Batterielaufzeiten im Bereich von Monaten bis hin zu Jahren.
  • Skalierbarkeit: Das System kann problemlos um weitere Knoten ergänzt werden, da der ESP32 als passiver Empfänger eine Vielzahl von Sendern gleichzeitig verarbeiten kann.
  • Robustheit: Die Trennung von Erfassung (Fermion) und Verarbeitung (ESP32/Cloud) ermöglicht einen stabilen Betrieb auch in komplexen Umgebungen.

Aufbau eines Sensor-Knotens

Der Fermion BLE Sensor Beacon ist ein drahtloser Beacon, der Sensordaten über Bluetooth sendet. Ein integrierter 11-Bit-ADC kann zur Erfassung analoger Messwerte eingesetzt werden und über das I2C-Interface können Sensoren mit I²C-Interface ausgelesen werden. Auf die vom Beacon gesendeten Sensordaten kann innerhalb der Sendereichweite des Beacons mit Mobiltelefonen, Mikrocontrollern und anderen Geräten, die den BLE-Empfang unterstützen, zugegriffen werden.

Fermion BLE-Sensor-Beacons integrieren stromsparende Bluetooth 5.3-Technologie mit selbstkonfigurierbaren Datenformaten wie iBeacon, Eddystone, benutzerdefiniert und mehr.
Die BLE-Sensor-Beacons können mit einer CR2032-Knopfzellenbatterie betrieben werden. Es stehen bis zu sechs konfigurierbare GPIOs zur Verfügung, die alternativ auch zu zwei unabhängigen I²C-Schnittstellen konfiguriert werden können.

Fermion BLE-Sensor-Beacon

Das Datenformat der Beacon-Übertragung, der Inhalt der Übertragung, das Übertragungsintervall usw. können über die grafische Benutzeroberfläche NanoBeacon Config Tool konfiguriert werden, ohne dass für die Fertigstellung eines Bluetooth-Beacons die Programmierung von Code erforderlich ist.

NanoBeacon Config Tool

Für einen ersten Versuch wurde der Beacon so konfiguriert, dass die interne Temperatur (Chiptemperatur) mit zwei Byte in den Manufacturer-Daten verankert wurde. Im NanoBeacon Config Tool ist das mit den Bytes 13 und 14 zu sehen,

Für die Visualisierung der empfangenen Daten verwende ich das nRF-Tool. Im folgenden Screenshot sind die Manufacturer-Daten markiert. Nach dem Hersteller-Code 0x0505 stehen die Bytes 0x0A3F = 2623D = 26.23°C. Von einem BLE-Scanner bzw. BLE-Gateway sind die übermittelten Daten nur noch zu parsen und jegliches Geheimnis ist gelüftet.

Manufacturer Data

Zu Beginn habe ich der Einfachheit halber einen XIAO-ESP32-C3 auf einem XIAO-Erweiterungsboard als BLE-Scanner eingesetzt. Installiert ist die aktuelle MicroPython-Firmware v1.27.

Die MicroPython-Anwendung scannt die Umgebung nach Bluetooth-Signalen, die von Geräten wie Smartwatches, Fitness-Trackern, Sensoren oder Beacons ausgesendet werden, und identifiziert alle BLE-Geräte in Reichweite, die im Advertising-Modus Signale aussenden. Sie misst die Signalstärke (RSSI) und ruft Metadaten, darunter auch die Manufacturer-Daten, ab. In den Manufacturer-Daten ist hier der Temperaturmesswert verankert. Auf dem OLED-Display des XIAO-Erweiterungsboards werden diese Daten schließlich zur Anzeige gebracht.

BLE-Gateway mit ESP32-C3

Für den Einsatz in Innenräumen eignet sich das RAKBox-B3-Gehäuse, da es für die Sensorik gut belüftet ist und ausreichend Schutz der Komponenten sichert.

RAKBox-B3 Indoor Enclosure

In der nächsten Projektphase wird das System um Fermion-Sensoren sowie kommerzielle BLE-Geräte ergänzt. Dabei entwickeln wir den BLE-Scanner zu einem BLE-MQTT-Gateway weiter, um die erfassten Daten zur Visualisierung an die Datacake-Plattform zu übertragen.

Parallel dazu arbeite ich an einem Fachbuch über MicroPython im IoT-Umfeld. Darin finden Sie – neben einer fundierten Einführung in MicroPython für gängige Mikrocontroller – praxisnahe Anwendungen auf Basis von WiFi, Ethernet, ESP-Now und BLE.


2026-02-22/CK

Proyectos IoT para Makers

La edición española ya está disponible en Amazon.es


2023-10-26/CK

RAKwireless IoT Applications

IoT applications usually require interdisciplinary collaboration between different disciplines during development and implementation.

With WisBlock, RAKwireless created a system accompanying the entire development path to the finished device using industrial-grade yet cost-effective components. Additionally, it offers the possibility to integrate components of prototyping systems from third-party providers into WisBlock.

With these systems, you can solve various tasks. Still, many steps are necessary to get a finished device, e.g., autonomy usable as a sensor node in harsh environments, which can be tedious.

True to the philosophy „IoT Made Easy,“ RAKwireless has ensured with WisBlock that this new solution is as simple as Click – Code – Connect!

I described the WisBlock ecosystem in an eBook titled „IoT-Projects for Makers: with WisBlock from RAKwireless • just Click, Code & Connect • to the finished device.“  

You can order this eBook at Amazon https://www.amazon.com/dp/B0C8VCF4DF.

Continuing this design philosophy, based on WisBlock, RAKwireless developed the RAK2560 WisNode SensorHub.

RAKwireless SensorHub is a modular ecosystem consisting of the main body and multiple pre-configured sensor probes. With pluggable, interchangeable probes and the option to add third-party sensors to the system, the Sensor Hub is a suitable and versatile solution platform for various IoT applications where environmental monitoring is needed outdoors.

The SensorHub can work battery-powered by non-rechargeable or solar-powered batteries or with an external power supply, depending on the application and deployment location.

For data transmission into Low-Power Wide-Area Network (LPWAN), LoRaWAN is available. Alternatively, NB-IoT can be used.

As a typical low-code system, it essentially requires configuration with the WisToolBox app from a cell phone.

I am currently working on applications of SensorHub in IoT using the example of measuring environmental data.

An eBook titled
„SensorHub IoT Applications:
• with WisNode SensorHub from RAKwireless
• just configure & connect
• to the finished application.“
is in preparation.

The planned release date is 11/15/2023, and pre-orders are available on Amazon.

You can order this eBook at Amazon https://www.amazon.com/dp/B0CKFNQX4D.


2023-10-05/CK

ESP32 – Erweiterung der Arduino Familie

Nachdem der verbreitete ESP8266 in die Arduino Umgebung integriert wurde und Ledunia als High-End-ESP8266-Modul (http://ledunia.de/) verfügbar ist, steht mit dem ESP32 der chinesischen Firma Espressif ein weiteres Upgrade der Arduino Familie bereit.

Ich hatte die Benchmarks aus dem Beitrag  „Arduino32: Die jungen Wilden“ [1] mit denen des ESP8266/Ledunia ergänzt [2] und will den deutlich mehr Performance versprechenden ESP32 ebenfalls diesen Tests unterziehen.

Sowohl der ESP8266 als auch der ESP32 Mikrocontroller von Espressif sind in zahlreiche Mikrocontroller-Module eingegangen und heute gerade wegen ihrer WiFi-Eigenschaften oft Bestandteil von Entwicklungen in der Maker-Szene. Beim ESP32 kommt nun auch noch die Bluetooth LE-Konnektivität (BLE) hinzu.

In der Zeitschrift Design & Elektronik Heft 11/2018 ist ein Artikel mit dem gleichnamigen Titel erschienen, der den ESP32 als Erweiterung der Arduino und dessen Features betrachtet.

[1]        Arduino32: Die jungen Wilden (Teil 2).  DESIGN & ELEKTRONIK 06/2016 S.14-17

http://www.elektroniknet.de/embedded/arduino32-die-jungen-wilden-131502.html

[2]        Ledunia – ESP8266 High-End-Modul. DESIGN & ELEKTRONIK  3/2018 S. 16-21

http://www.elektroniknet.de/design-elektronik/embedded/einer-der-hoechstintegrierten-wifi-chips-der-branche-152310.html

 

Mit phyWave-Modulen ins IoT

Daten von Sensoren im Netz oder zu Aktoren aus dem Netz verfügbar zu machen ist die Aufgabe von peripherienahen, meist drahtlos kommunizierenden IoT Devices.

Mit den phyWAVE© Modulen stellt Phytec mehrere solcher IoT Module her, die in eigene Anwendungen integriert werden können. Das phyWAVE-CC2650 ist eins der insgesamt drei von Phytec angebotenen phyWAVE Module. Kern ist das TI CC2650 SoC.

csm_phyWAVE-CC2650_95013e94a2

Das TI CC2650 SoC enthält einen 32-Bit-ARM Cortex-M3-Prozessor, der als Hauptprozessor mit 48 MHz betrieben wird. Der Sensor-Controller ist ideal für die Anbindung externer Sensoren und für die autonome Erfassung von analogen und digitalen Daten, während sich der Rest des Systems im Schlafmodus befinden kann.

Der BLE-Controller und der IEEE 802.15.4 MAC sind in ROM eingebettet und laufen teilweise auf einem separaten ARM Cortex-M0-Prozessor. Diese Architektur verbessert die Gesamtsystemleistung und den Stromverbrauch und stellt den Flash-Speicher für die Anwendung frei. Bluetooth- und ZigBee-Stacks sind kostenlos von TI erhältlich.

phyWAVE-CC26xx-block-diagram

Das phyNODE Sensor-Board stellt die Peripherie für den Betrieb des phyWAVE-CC2650 bereit. Am Rande des Boards sind eine Reihe von Sensoren angeordnet.

BLE hat die Möglichkeit, Daten in zwei verschiedenen Modes auszutauschen. Es werden der Advertising Mode und der Connected Mode unterschieden.

Nach einem Reset des phyWAVE Sensor-Boards befindet sich dieses im Advertising Mode und gibt seine MAC-Adresse aus. BLE Devices weisen eine einzigartige 6-Byte BLE- oder MAC-Adresse auf, die mit Hilfe des Kommandos sudo hcitool lescan vom als BLE Client dienenden Raspberry Pi abgefragt werden kann.

KommunikationNach dem Verbindungsaufbau werden alle Farben der RGB-LED nacheinander aktiviert bis schließlich am Ende die weiße LED eingeschaltet bleibt. Daran anschließend folgen Abfragen der einzelnen Sensoren bis hin zum Farbsensor und die Ausgabe der ermittelten Werte. Die Abfrage der Sensoren erfolgt in einer Endlosschleife.

Mit Hilfe eines Python-Scripts werden die übermittelten Sensordaten ausgewertet und einem Shell-Script zur Übermittlung an einen Server zur Visualisierung gesendet.

Der komplette Beitrag ist in der Design&Elektronik 10/2018 veröffentlicht. Der OnLine-Beitrag ist unter https://www.elektroniknet.de/design-elektronik/embedded/mit-phywave-modulen-ins-iot-158755.html zu finden. Die Software steht auf Github zum Download bereit.

 

Beacons im Physical Web

Allgemeine Übersicht

Im Physical Web werden Objekten diese Objekte kennzeichnende URLs (= Uniform Resource Locator) zugeordnet. Das bedeutet nichts anderes, als das unter der betreffenden URL im Allgemeinen eine Website zu finden ist, die objektrelevante Daten zur Verfügung stellt.

Die zu erkennenden URLs werden von Objekten in der Umgebung gesendet, so dass dadurch die Objektbezogenheit sichergestellt ist. Jedes Objekt kann mit einem Bluetooth Low Energy (BLE) Beacon, einem leistungsstarken, batteriebetriebenen Gerät, versehen werden, das die betreffenden Inhalte über Bluetooth sendet.

Beacons, die die Eddystone-Protokollspezifikation unterstützen, können URLs und weitere Formate übertragen. Dienste auf dem Mobilgerät des Nutzers, wie Google Chrome oder Nearby Messages, können nach der Übergabe dieser URLs nach diesen suchen und diese anzeigen.

Das Physical Web sorgt unter anderem dafür, dass Nutzer nicht ständig neue Apps auf ihren Mobilgeräten installieren müssen, sondern die Nachrichten auf einer einheitlichen Oberfläche betrachten können. Es lässt sich in nahezu allen Fällen einsetzen, in denen Nutzer an Informationen über ihre Umgebung interessiert sind oder in denen eine Interaktion zwischen ihnen und smarten Objekten nötig ist.

Ausgangspunkt für die Entwicklung der Beacon-Technologie war im Jahr 2013 die Fa. Estimote mit dem ersten BLE Beacon, gefolgt von Apple, die ihre Implementierung iBeacon benannt haben. Diese Beacons senden eine BLE Advertising Message aus, deren Inhalt von einer Empfänger-App dekodiert werden und davon abgeleitet Aktionen auslösen kann

Google ist im Jahr 2015 mit seinem Physical Web Projekt in diese Thematik eingestiegen und erweitert die von den Beacons gesendeten Informationen, so dass zur Aufbereitung der gesendeten Informationen nicht zwangsläufig eine zugeordnete App erforderlich ist.

Im Alltag begegnen uns oft Situationen in denen der Einsatz von Beacons sehr von Vorteil ist.

Nicht jeder Nutzer des öffentlichen Personen-Nahverkehrs kann Informationen zur aktuellen Situation seiner gewünschten Verbindung über dynamische Fahrgastinformations-Anzeiger beziehen. In den Innenstädten werden diese zunehmend eingesetzt.

1024px-Dresden_Hauptbahnhof_-_Haltestelle_der_Straßenbahn_(7033568319)

Autor: IngolfBLN

Auf dem Land werden wohl noch weitere Zeit die traditionellen Haltestellenschilder zu sehen sein.

Haltestellenschild_Jungfernstieg_retouched

Autor: MissyWegner

Bein einem solchen Haltestellenschild, was auch im innerstädtischen Bereich durchaus noch gesehen wird, kann ein installierter Beacon die gewünschten Informationen beispielsweise über eine dynamisch aktualisierte Website mit Fahrplaninformationen bieten.

Neben diesen Anwendungen haben die Marketing-Strategen die Mächtigkeit dieser Beacon-Lösungen schon lange erkannt. So kann beispielsweise beim Betreten eines Supermarktes gezielt auf Sonderangebote hingewiesen und das Kaufverhalten beeinflusst werden.

Nach diesen eher anwendungsorientierten Bemerkungen kann sich jeder selbst Gedanken über den Einsatz von Beacons machen.

Kommerzielle Beacons

In den kommerziellen Angeboten findet man zahlreiche Beacons, bei denen leider nicht immer klar hervorgeht, ob sie auch das Eddystone Profile unterstützen. Ich habe mit zwei Beacons der chinesischen Fa. AprilBrother experimentiert.

CardBeacon

Kern des CardBeacons ist ein DA14580 SoC der Fa. Dialog – ein Cortex-M0 mit einem BLE Core. Es wird die zumindest doppelte Batterielebensdauer gegenüber den als Standard geltenden Nordic nrf51822 Chips versprochen und soll mit den Default-Einstellungen drei Jahre betragen. Eine Batterie CR3032 (500mAh) ist im CardBeacon integriert.

CardBeacon ist iBeacon-zertifiziert und unterstützt damit alle iBeacon-Funktionen. UUID, Major, Minor und das Advertising Intervall sind konfigurierbar.

cardbeacon1

CardBeacon im Scheckkartenformat

Dieser CardBeacon hat die Grundfläche einer Kreditkarte. Die Dicke der Karte beträgt allerdings 5.8 mm. Hier sind die technischen Daten des CardBeacons nachzulesen.

AprilBeacon 202

Der AprilBeacon 202 kann wie bereits der CardBeacon im iBeacon-, Eddystone-UID- oder Eddystone-URL-Mode betrieben werden.

AprilBeacon

AprilBeacon mit dem Abmessungen 40 mm x 40 mm x 15 mm

AprilBeacon App

Die AprilBeacon App ist ein herstellerspezifisches Tool zur Konfiguration der von diesem Hersteller angebotenen Beacons. Auf der Website des Herstellers findet man die Links zu Apples App Store und zu Googles Playstore.

Beacon Tools

Zur Inbetriebnahme bzw. zur Konfiguration von Beacons bedarf es in der Regel spezieller Tools, die meist herstellerspezifisch sind. Die AprilBaecon App war ein solches Tool.

Ansonsten ist es hilfreich mindestens einen BLE Scanner und die Physical Web App auf seinem Smartphone zu installieren, die für Android in Google’s Playstore zu finden sind.

In Googles Playstore findet man ausserdem zahlreiche BLE Scanner. Ich habe die Tools von Bluepixel Technology und Nordic Semiconductor ausgesucht und verwendet. Mit der Physical Web App kann man schließlich die übertragenen URL einfach sichtbar machen.

BLE Implementierungen

Es gibt derzeit ein recht breites Spektrum an Hardware, bei der bereits ein BLE Modul installiert ist. Das Spektrum reicht dabei von einfachen Mikrocontrollern bis hin zu leistungsfähigen Linux-Devices. Zu nennen sind u.a. BBC micro:bit & Calliope mini, pycom WiPy und Linux Devices , wie Raspberry Pi 3, Raspberry Pi Zero W und C.H.I.P.

Dieser Abschnitt zeigt für BBC micro:bit & Calliope mini die erforderliche Software-Installation, um einen Eddystone-URL Beacon zu erstellen. Das Ergebnis ist für alle Implementierungen identisch – eine über BLE übertragene URL, die von einem Smartphone, Tablet oder anderem BLE-tauglichen Equipment empfangen und ausgewertet werden kann.

Seit einem Jahr ist der BBC micro:bit genannte Mikrocontroller der BBC verfügbar und unter Schülern und Lehrer in Großbritannien recht verbreitet. In Deutschland hat sich die gemeinnützigen Calliope GmbH das Ziel gesteckt, mit dem Calliope mini einen für die Anforderungen der Grundschule geeigneten Mikrocontroller bereit zu stellen, wobei sich dieser am BBC micro:bit orientiert.

Beide Mikrocontroller-Boards sind technisch vergleichbar ausgestattet und weisen als Kern einen nRF51822 Mikrocontroller von Nordic Semiconductors auf.

Preise und Bezugsmöglichkeiten sind in der nachfolgenden Tabelle gelistet.

Mikrocontroller BBC micro:bit Calliope mini
Preis EUR 16,85 EUR 35,00
Lieferant http://www.exp-tech.de

Zur Programmierung der beiden Mikrocontroller-Boards stehen ein JavaScript Blocks Editor und MicroPython zur Verfügung. Will man BLE nutzen, dann steht MicroPython leider nicht zur Verfügung da der BLE-Stack zu viel RAM benötigt.

Unser micro:bit (oder Calliope mini) Beacon soll nun eine URL aussenden, die auf die verwendete Programmierumgebung, den Java Script Blocks Editor, verweist. Die URL lautet im Original https://makecode.microbit.org/ und verkürzt https://goo.gl/8Hcntr.

Die folgende Abbildung zeigt die vom Java Script Blocks Editor verwendeten Blöcke.

microbit - Eddystone URL senden

Um BLE zur Verfügung zu haben, muss über Add Package zu Beginn noch das BLE Paket nachinstalliert werden.

Da hier mit einer sicheren Webseite gearbeitet wurde, ist die versendete URL auch als (weitere) Nearby Message sichtbar und kann vom Smartphone direkt aufgerufen werden.

Nearby4

 

#Calliope mini als #BLE #Beacon

Das Physical Web ist ein offener Ansatz, der von Google entwickelt wurde, um schnelle und nahtlose webbasierte Interaktionen mit physischen Objekten und Orten zu ermöglichen. Das Physical Web nutzt Bluetooth Low Energy (BLE) wegen seiner Verfügbarkeit auf mobilen Geräten und basiert auf dem Eddystone-URL-Format.

Dienste auf Ihrem Mobilgerät wie Google Chrome oder Nearby Messages können nach Übergabe der URL nach diesen suchen und diese anzeigen. Jedes Objekt kann mit einem Bluetooth Low Energy (BLE) Beacon, einem leistungsstarken, batteriebetriebenen Gerät, verknüpft werden.

Calliope mini kann sehr einfach als Eddystone Beacon eingesetzt werden. Zur Programmierung musste allerdings der JavaScript Blocks Editor des BBC micro:bit verwendet werden, da der betreffende Calliope Editor diese BLE Features (noch) nicht aufweist.

Im BBC micro:bit JavaScript Blocks Editor (https://makecode.microbit.org/) ist das Bluetooth Paket nach zu installieren. Es ersetzt dann das Radio Paket. Der folgende Code muss eingegeben und dann auf dem Calliope mini installiert werden..

Eddystone URL

Beim Programmstart wird das Bluetooth Advertisement mit der gewünschten URL gestartet. In der Endlosschleife wird die mittlere LED der 5×5-LED-Matrix periodisch kurz eingeschaltet, um von der laufenden Applikation ein Lebenszeichen zu erhalten.

Die folgenden beiden Bilder zeigen den detektierten Beacon mit der übergebenen URL http://calliope.cc im BLE Scanner sowie die sich nach einem Klick auf den Link OPEN URL öffnende Website.

Screenshot_20170811-162559

Screenshot_20170811-161602

Da das Programmbeispiel mit dem JavaScript Blocks Editor des BBC micro:bit erstellt wurde, ist es sicher kaum verwunderlich, dass das Programm auf dem BBC micro:bit gleiches Verhalten zeigt.

Mit den Tools Show.io und locly gibt es komfortable Tools, die die Anwendung von Beacons sehr komfortabel gestalten.

 

 

Abgesetzter Temperatursensor mit micro:bit radio

Micro:bit ist zwar BLE tauglich, doch unter Python reichen die Ressorcen für den BLE-Stack nicht aus und es bleibt die micro:bit radio Verbindung.

Zur abgesetzten Temperaturmessung kann ein micro:bit als Sensorknoten und eine weiterer als Empfängerknoten genutzt werden. Die Message des Sensors wird hier als Broadcast versendet.

Das Python-Programm des Sensors ist:

# Measuring chip temperature on micro:bit & output to radio
from microbit import *
import radio

# The radio won't work unless it's switched on.
radio.on()

while True:
 temp = temperature() - 3 # offset to ambient temperature
 display.scroll(str(temp)+" C")
 radio.send(str(temp))
 sleep(5000)

Das Python-Programm des Empfängers ist:

# Receiving chip temperature from a micro:bit sensor node & output to console
from microbit import *
import os
import radio

uart.init()
uart.write(os.uname().machine +" get chip temperature by radio connection\r\n")

# The radio won't work unless it's switched on.
radio.on()

while True:
 # Read any incoming messages.
 temp = radio.receive()
 display.scroll(str(temp)+" C")
 uart.write("micro:bit chip temperature = "+str(temp)+" C\r\n")
 sleep(1000)

 

 

BBC Micro:bit

Micro:bit ist ein für Ausbildungszwecke entwickelter Mikrocontroller mit Features, die diesen Controller auch für Prototypen-Entwicklungen u.a. interessant machen. Hier sind die Retails zu diesem Controller zu finden.

Die technischen Spezifikationen sind:

  • Nordic Semiconductor nRF51822 Bluetooth Low Energy & 2.4GHz Wireless SoC (32-bit ARM® Cortex™ M0 CPU mit 256kB Flash und 16kB RAM)
  • Bluetooth Smart Antenne
  • microUSB Anschluss (Programmdownload, Console)
  • LiPo-Anschluss
  • 25 LEDs, 2 Taster
  • 20 Pin Edge Connector
  • Accelerometer, Compass

Programmierbar in

  • JavaScript-Blocks-Editor (PXT)
  • microPython

MicroPython Programmbeispiel

# Measuring chip temperature on micro:bit & output to console
from microbit import *
import os

uart.init()
uart.write(os.uname().machine +" measuring chip temperature\r\n")

while True:
 temp = temperature()
 display.scroll(str(temp)+" C")
 uart.write("micro:bit chip temperature = "+str(temp)+" C\r\n")
 sleep(5000)