Archiv des Autors: ckuehnel

Über ckuehnel

Mein aktuelles Profil ist unter https://www.linkedin.com/in/ckuehnel zu finden.

ESP32-C3 – RV32IMC von Espressif

Ende letzten Jahres kündigte Espressif bereits den ESP32-C3 an – einen kostengünstigen, RISC-V-basierten Mikrocontroller mit Wi-Fi- und Bluetooth 5 (LE)-Konnektivität für sichere IoT-Anwendungen.

Der ESP32-C3 ist eine 32-Bit-Single-Core-MCU auf RISC-V-Basis (RV32IMC) mit 400 KB SRAM, die mit bis zu 160 MHz getaktet werden kann. Neben integriertem 2,4-GHz-WiFi und Bluetooth 5 (LE) mit Long-Range-Unterstützung verfügt der ESP32-C3 über 22 GPIOs mit Unterstützung für ADC, SPI, UART, I2C, I2S, RMT, TWAI und PWM. Das ausführliche ESP32-C3-Datenblatt finden Sie hier.

Nun ist seit November reichlich Zeit vergangen und Module auf Basis des ESP32-C3 sind jetzt bestellbar.

Bei Schukat habe ich ein ESP32-C3-DEVKITM-1 und ein ESP32-C3-DEVKITC02 zu je € 9.65 bestellt. Andere Distributoren hatten wesentlich längere Lieferzeiten.

Beide DevKits unterscheiden sich nur durch das jeweils eingesetzte ESP32-C3-Modul und die resultierende Pinbelegung.

Das im ESP32-C3-DevKitM-1 eingesetzte ESP32-C3-MINI-1 ist ein universelles Wi-Fi- und Bluetooth LE-Kombimodul mit einer PCB-Antenne. Kern des Moduls ist ESP32-C3FN4 mit 4 MB embedded Flash Memory. Da das Flash Memory im ESP32-C3FN4-Chip verpackt ist hat das ESP32-C3-MINI-1 ein kompakteres Gehäuse.

ESP32-C3-DevKitM-1 Pin Mapping

Das im ESP32-C3-DevKitC-02 eingesetzte ESP32-C3-WROOM-02 ist ebenfalls ein universelles Wi-Fi- und Bluetooth LE-Kombimodul mit einer PCB-Antenne. Das Flash Memory ist ein externes 4 MB SPI-Flash.

ESP32-C3-DevKitC-02 Pin Mapping

Sollten Sie noch nicht mit RISC-V konfrontiert worden sein, dann hilft Ihnen vielleicht die in der Zeitschrift Design&Elektronik veröffentlichte Übersicht weiter:

Neustart mit RISC-V Design & Elektronik 1/2020, S. 29-35
https://www.elektroniknet.de/design-elektronik/halbleiter/neustart-mit-risc-v-173910.html

Wenn meiner Bestellung von Schukat eintrifft , werde ich erste Tests und Benchmarks in der mittlerweile ebenfalls vorhandenen Arduino-Umgebung vornehmen und darüber berichten.

In der Zwischenzeit kann ich Ihnen den folgenden Beitrag von Elliot Williams empfehlen: HANDS-ON: THE RISC-V ESP32-C3 WILL BE YOUR NEW ESP8266.

Den dort enthaltenen Benchmark habe ich in meine Benchmark-Übersicht mit aufgenommen.

Aus Sicht des Anwenders möchte ich seinem Schlussgedanken zustimmen:

„Aber es ist schön, RISC-V-Kerne in mehr Geräten zu sehen, nicht zuletzt, weil die standardisierte Befehlssatzarchitektur – die im Wesentlichen einem Standardsatz von maschinensprachlichen Befehlen gleichkommt – das Schreiben von optimierenden Compilern einfacher und schneller macht. Für den Endbenutzer ist das nicht so wichtig, aber wenn es Espressif durch das Einsparen von IP-Lizenzgebühren ermöglicht, ein moderneres Peripherieset zum ESP8266-Preis hinzuzufügen, dann sind wir alle dafür.“

An manchen Stellen wird der ESP32-C3 schon als ESP8266-Killer bezeichnet. Das bleibt abzuwarten, noch muss sich dieser neue Mikrocontroller erst behaupten.

Vermittlung digitaler Inhalte in der Schule

Schon heute setzen wir uns mit zunehmender Tendenz mit automatisierten Abläufen, Algorithmen und vernetzten Gegenständen im Alltag auseinander. Künstliche Intelligenz wird Prozesse unterstützen und möglicherweise auch irgendwann autonom übernehmen.

Auf diese Entwicklungen vorbereitet zu sein, um sie zu beherrschen, zu gestalten und weiter zu entwickeln bedarf es mehr als einen IT-Grundkurs im Gymnasium oder Studium. Wichtig ist es, die Chance zu haben, in diese Welt und das damit verbundene Denken hineinzuwachsen.

In einigen Ländern wurde das frühzeitig erkannt und durch entsprechende Initiativen gefördert. Die Idee ist, jedes Kind zu inspirieren, seine digitale Zukunft zu gestalten und die Maker-Bewegung in den Unterricht zu bringen.

Im Schweizer Lehrplan 21 wird der heutigen Lebenswelt von Kindern und Jugendlichen entsprochen, die „durchdrungen (ist) von traditionellen und digitalen Medien sowie von Werkzeugen und Geräten, die auf Informations- und Kommunikationstechnologien basieren und die durch ihre Omnipräsenz neue Handlungsmöglichkeiten und neue soziale Realitäten schaffen“ (https://v-fe.lehrplan.ch/index.php?code=e|10|2). Abgestimmt mit dem Lehrplan 21 steht mit der Oxocard ein mit WiFi ausgestatteter Computer zur Verfügung, der auch bereits über den Browser programmiert werden kann. Auch in Deutschland und Grossbritannien werden solche Aktivitäten durch Hard- und Software für den Einsatz in der Schule unterstützt.

„Unser Anspruch ist, dass jeder Schüler und jede Schülerin in der dritten Klasse in Deutschland so ein Ding in die Hände bekommt“, sagt Stephan Noller, einer der Gesellschafter von Calliope. „Es soll nicht irgendein Leuchtturmprojekt in Berlin-Wedding werden, sondern wir wollen in die Fläche – und zwar jedes Jahr von Neuem.“

Ob man mit dem Calliope mini die vielleicht größtmögliche Umwälzung des deutschen Schulsystems in der Hand hält, wie Patrick Beuth in der Zeit im Beitrag „Dieser Computer kann unser Schulsystem revolutionieren“(http://www.zeit.de/digital/internet/2016-10/calliope-mikrocontroller-grundschule-dritte-klasse) schreibt, kann ich nicht beurteilen.

So unterschiedlich die Angebote sind, eines haben sie gemeinsam: Sie werden von Menschen organisiert, die mit großer Begeisterung ihr Wissen rund um Programmierung und digitale Themen an Kinder und Jugendliche weitergeben. Bei den Machern um BBC micro:bit, Calliope mini und Oxocard ist diese Begeisterung zu spüren.

Dass solche Projekte, wie so oft, nicht widerstandsarm umsetzbar sind, zeigen Diskussionen wie sie im Interview „An Calliope scheiden sich die Geister“ (https://www.deutschlandfunk.de/minicomputer-im-klassenzimmer-an-calliope-scheiden-sich-die.680.de.html?dram:article_id=399302) aufgeworfen werden.

Ich möchte mich hier auf den technischen Bereich beschränken. Für ideologische Auseinandersetzungen sind andere besser geeignet.

Die folgende Tabelle zeigt eine Gegenüberstellung der technischen Merkmale der drei hier betrachteten Mikrocontrollerboards.

Mikrocontroller
Board
BBC micro:bitCalliope miniOxocard
HerkunftUKDCH
HauptmerkmaleNordic nRF52833, BLE, Radio
Motion Sensor (ST LSM303AGR)
5×5 LED Matrix Display (rot)
2 Taster
19 GPIO
Piezo-Lautsprecher
MEMS Mikrofon
USB Micro B Anschluss
(Programmierung und Stromversorgung)
JST Batterieanschluss (3.3V)
Temperatursensor (on-chip NRF52)
Nordic nRF51822, BLE, Radio
Motion Sensor (Bosch BMX055)
5×5 LED Matrix Display (rot)
DC Motortreiber (TI DRV8837)
Piezo-Lautsprecher
MEMS Mikrofon
Neopixel (WS2812b)
2 Taster
8-11 GPIOs, PWM, 4 x analog
UART + SPI + I2C
USB Micro B Anschluss
(Programmierung und Stromversorgung)
JST Batterieanschluss (3.3V)
2 Grove Stecker (I2C + Seriell/Analog)
Espressif ESP32, BLE, WiFi
Motion Sensor (ST LIS3DE)
8×8 Neopixel Matrix
Kopfhörerbuchse für 8bit-Audioausgabe (mono)
Mikrofon (PDM)
NeoPixel Data-Out
6 Taster
6 GPIOs
UART + SPI + I2C
USB Micro B Anschluss
(Programmierung und Stromversorgung)
LiPo-Akku
Anschluss für Grove I2C-Hub
Temperatursensor (on-chip LIS3DE)

Programmier-
umgebungen
MakeCode, MicroPython,
JavaScript
MakeCode, Swift,
abbozza! Calliope (basiert auf Blockly),
C/C++ (Segger), MicropPython
Blockly, Oxoscript,
Arduino (C/C++), MicroPython. 
BBC micro:bit, Calliope mini, Oxocard – im Vergleich

Wie aus den Hauptmerkmalen abzuleiten ist, stellen alle drei Boards eine vergleichbare Infrastruktur bereit. Auf markante Unterschiede will ich im Folgenden eingehen. Eine Betrachtung der Ausgangsversionen von BBC micro:bit und Calliope mini hatte ich in einer früheren Veröffentlichung (https://www.elektroniknet.de/embedded/hardware/mikrocontroller-nicht-nur-fuer-die-schule.150415.html) bereits vorgenommen.

Herausstechendes Merkmal beim BBC micro:bit ist seine an der Unterkante des Boards befindliche als Goldfinger bezeichnete Anschlussleiste. Hier können zahlreiche Erweiterungsboard direkt angeschlossen werden. Einen guten Überblick zu diesen Erweiterungen finden Sie unter https://shop.pimoroni.com/collections/micro-bit-uk.

BBC mirco:bit v2

Beim Calliope mini wollte man den Goldfinger nicht übernehmen, da wegen der viel zu eng liegenden Kontakte im Schuleinsatz mit ständigen Kurzschlüssen durch die Schüler gerechnet werden müsste. Es wurden auf dem Board Erweiterungen, wie RGB-LED (Neopixel) und Motortreiber (H-Brücke) u.a., vorgesehen. Zusätzlich stellen die beiden Grove-Connectoren einen I2C-Bus, einen UART-Anschluss sowie einen analogen Eingang zur Kontaktierung von Sensoren oder Aktoren des umfangreichen Grove-Systems zur Verfügung. Eine gute Übersicht zum Grove-System bietet ein Grove Wiki von Seeedstudio (https://wiki.seeedstudio.com/Grove_System/).

Calliope mini v2

Die Oxocard geht einen etwas anderen Weg. Die elektronischen Interna sind gut verpackt in einem Kartongehäuse. Durch den Einsatz eines ESP-32 steht neben BLE auch WiFi zur Verfügung, wodurch Internet-Konnektivität gegeben ist. Durch diese Option ist es möglich IoT-Projekte zu realisieren. Der LiPo-Akku sorgt dann für einen gewissen Zeitraum sogar für autonome Einsatzmöglichkeiten ohne externe Spannungsversorgung.

Nach aussen hin stehen die sechs Taster und die 8×8 Neopixel Matrix für Experimente zur Verfügung. Durch die Verwendung der internen Sensoren kommt der Anwender erstmal vollkommen ohne elektrische Verbindungen nach aussen aus.

Kommuniziere Meldungen zwischen Oxocards, hol dir Daten aus dem Internet oder stelle dein Karte als Sensor anderen zur Verfügung. All das ist ohne Erweiterungen möglich.

Oxocard mit Kartongehäuse

Für den Maker von Interesse sind natürlich die Erweiterungsmöglichkeiten. Ergänzend zum Lieferumfang der Oxocard ist der OXOCARD i2C-Hub-Erweiterungsport verfügbar.

Lieferumfang Oxocard

Der Oxocard I2C Hub ist ein kleiner Bausatz, um der Oxocard relativ einfach das Anschliessen von beliebigen I2C-Grove- Komponenten zu ermöglichen. Mit diesen I2C-Hub können Sie die Oxocard mit zusätzlichen GROVE-kompatiblen Sensoren und Aktoren erweitern. Ausserdem kann über eine Buchsenleiste der SPI-Port nach aussen geführt werden.

SPI- und I2C-Bus an der Oxocard

Mit diesen Erweiterungsmöglichkeiten ist die Oxocard ein für den Schulbetrieb geeigneter, komplett ausgestatteter und erweiterbarer Mikrocontroller, der als einziger Internet-Zugriff aufweist.

Allen drei vorgestellten Boards gemeinsam ist neben der grafischen Programmierung in MakeCode resp. Blockly die Programmierung in MicroPython.

In meinem MicroPython Blog https://ckmicropython.wordpress.com sind MicroPython Programmbeispiele für die Oxocard zu finden.


2021-04-05/ck

Open-Source-Prozessoren – Für wen RISC-V eine Alternative ist

In der fünften Generation sorgt RISC für Aufsehen – auf Grund des Open-Source-Ansatzes. In kurzer Zeit wuchs mit RISC-V eine Community, die auf Basis des neuen Befehlssatzes Prozessorkerne entwickelt hat.

Einen Blick auf RISC-V und die ersten RISC-V SoCs finden Sie in ELEKTRONIK 18/2020 auf den Seiten 40 bis 44.

2020-10-03: Nun auch zitiert @ https://riscv.org/2020/09/for-whom-risc-v-is-an-alternative-dr-claus-kuhnel-elektronik-german/

LPWAN im Vergleich zu SubGHz Meshnet

Für die Datenübertragung über Funknetze steht mit SubGHz Meshnet eine interessante Alternative zum verbreiteten LPWAN bereit.

Wo liegen Unterschiede und mögliche Vorteile? Harald Naumann nimmt im gleichnamigen Beitrag einen direkten Vergleich vor und hilft mit einem detaillierten Blick hinter die Funktionsweise Ihrem Fachwissen auf die Sprünge.

Link zum Beitrag:
https://www.industry-of-things.de/lpwan-im-vergleich-zu-subghz-meshnet-a-955306/

Mehr zum Thema LPWAN und SubGHz Meshnet können Sie zum Seminar mit dem Titel „LPWAN und energiearme Alternativen“ am 24.09.2020 in Reichwalde bei Berlin erfahren. Die Seminaragenda fin den sie hier.

Longan Nano ADC & DAC

Der Longan Nano von Sipeed baut auf dem 32-Bit-RISC-V-Mikrocontroller GD32VF103CBT6 von GigaDevice auf und weist dadurch ein 12-Bit-ADC & DAC-Subsystem auf (2 x ADC, 2 x DAC).

Die Angaben im Datenblatt des GD32VF103CBT6 beschränken sich auf Kennwerte der DACs, die als „(1) Based on characterization, not tested in production“ gekennzeichnet sind. Für den ADC fehlen diese Daten ganz.

SymbolParameterConditionsValue (max.)
DNL(1)Differential non-linearity errorDAC in 12-bit mode±3 LSB
INL(1)Integral non-linearityDAC in 12-bit mode±4 LSB
Offset(1)Offset errorDAC in 12-bit mode±12 LSB
GE(1)Gain errorDAC in 12-bit mode±0.5 %
DAC Charakteristik – Auszug GD32VF103 Datasheet

Grund genug die Charakterestik des ADC & DAC-Subsystem etwas genauer zu betrachten. Die Vorgehensweise ist vergleichbar zum Test beim ESP32 (https://ckblog2016.net/2018/03/03/esp32-adc-dac/).

Vom DAC0 (PA4) wird eine analoge Ausgangsspannung bereitgestellt, die dann vom ADC0 (PA3) gemessen und zur Anzeige gebracht wird. Es genügt also eine Verbindung der beiden Anschlüsse PA3 und PA4 am Longan Nano.

Longan Nano

Mit einfachen Messmittel gestaltet sich eine Aussage über die Genauigkeit des DAC nicht ganz einfach, wie das folgende Bild zeigt.

Longan Nano DAC-Charakteristik

Aufgetragen ist die Abweichung der gemessenen Ausgangsspannung von der Idealkennlinie. Bei einem Spannungswert von 0.8 mV für das LSB ist ein hochauflösendes Digitalvoltmeter erforderlich. Mit einem üblichen Multimeter sind alle Messwerte über 2.2 V wegen zu geringer Auflösung unbrauchbar. Im Bereich unterhalb diese Wertes zeigt die DAC-Charakteristik aber Werte der Ausgangsspannung die allesamt im Bereich von +/- 2 LSB liegen. Die Angaben im Datenblatt können damit (zumindest in diesem Bereich) als messtechnisch bestätigt betrachtet werden.

Durch die Verbindung der beiden Anschlüsse PA3 und PA4 am Longan Nano kann nun der ADC0 die Spannungen des DAC0 erfassen. Das Programm LonganNano_ADC_DAC dient dem Erzeugen der Daten, die die DAC-ADC-Charakterstik beschreiben.

Ausgabe des Programms LonganNano_ADC_DAC

Die Abweichungen vom erwarteten Idealverhalten liegen bei maximal 10 mV.

Das DAC-ADC-Subsystem des Longan Nano (GD32VF103) zeigt damit wesentlich bessere Eigenschaften, als das des ESP32, wodurch bei weniger kritischen Anwendungen auf den Einsatz eines externen ADCs verzichtet werden kann.

Sipeed Longan Nano

Longan Nano von Sipeed ist ein kleines Evaluationboard auf Basis eines 32-Bit-RISC-V-Mikrocontrollers GD32VF103CBT6 von GigaDevice. Für Studenten, Ingenieure, Geeks und Enthusiasten ist das eine Möglichkeit, um auf die neueste Generation von RISC-V-Prozessoren zuzugreifen.

Sipeed Longan Nano wird aktuell nicht durch die Arduino IDE, wohl aber durch PlatformIO unterstützt.

Auf die Installation selbst gehe ich an dieser Stelle nicht ein. Hierzu gibt es einen sehr guten Beitrag von Michel Deslierres.

Der Sipeed Longan Nano bietet zwei Möglichkeiten für den Programm-Upload. Auf der rechten Seite befindet sich ein USB-C-Anschluss über den kann mit dem Tool DFU-Util das compilierte Programm zum Controller geladen werden. Die andere Möglichkeit ist die an der linken Seite herausgeführte serielle Schnittstelle (UART0).

Ich habe diese Möglichkeit verwendet, da ich die seriellen Ausgaben über dieses Port vorgenommen habe. Wie im Bild unten gezeigt bedarf es eines USB-TTL-Konverters, der Tx und Rx sowie 3.3 V und GND zur Verfügung stellt.

Ich habe drei Programme ausprobiert, die unter https://github.com/ckuehnel/GD32 zum Download zur Verfügung stehen.

Das Programm LonganNano_HelloWorld dient dem Test der Inbetriebnahme von PlatformIO IDE und erstem Programm. LonganNano_LCD zeigt die Ausgaben auf dem Onboard-LCD und LonganNano_Dhrystone liefert die Ergebnisse des Dgrystone-Benchmarks.

Serielle Kommunikation & Programm-Upload
Anzeige des Sipeed-Logos
Serielle Ausgabe Programm LonganNano_HelloWorld

Serielle Ausgaben des Dhrystone Benchmarks

Mit einem VAX MIPS Rating von 91 liegt der hier eingesetzte RISC-V Controller deutlich oberhalb der Cortex-M3 von ARM. Vergleichen Sie die Benchmark-Resultate für verschiedene Mikrocontroller von 8-Bit bis 64-Bit unter https://ckarduino.wordpress.com/benchmarks/.

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/

M5Stack Atom Matrix & Atom Lite

ATOM Matrix und ATOM Lite sind ESP32-Entwicklungsboards mit einer Größe von nur 24 * 24 mm. Zum Einsatz kommt ein ESP32-PICO-Chip, der WiFi und Bluetooth für die Kommunikation bietet und über 4 MB integrierten SPI-Flash-Speicher verfügt. Für die IO-Erweiterung steht ein Grove-Port zur Verfügung. Über 6 GPIOs können beide Boards mit externen Sensoren und Aktoren verbunden werden. Die integrierte Typ-C-USB-Schnittstelle ermöglicht das schnelle Hochladen und Ausführen von Programmen

ATOM-Lite bietet eine Infrarot-LED, eine RGB-LED, Tasten und eine PH2.0-Schnittstelle.

ATOM-Matrix verfügt über einen integrierten IMU-Sensor (MPU6886) und eine 5 * 5 RGB-LED-Matrix, die sich sehr gut zu farbigen Signalisationszwecken eignet.

Signalisation über RGB-LED-Matrix

Eine Arduino Library ist unter https://github.com/m5stack/M5Atom zu finden.

Neustart mit RISC-V

Nach langer Wartezeit, aber doch noch vor der Embedded World 2020 ist mein Beitrag „Neustart mit RISC-V“ in der Zeitschrift Design & Elektronik 1/2020 S.29-35 erschienen.

Entwicklungsboard SiFive HiFive 1 Rev. B im Arduino Uno-Formfaktor

Damit sich eine neue Befehlssatzarchitektur für Controller oder Prozessoren durchsetzt, ist viel Aufwand erforderlich. Hardware-Hersteller müssen überzeugt, Entwicklungswerkzeuge angepasst und Entwickler eingearbeitet werden. Entsprechend selten kommt ein neuer Befehlssatz auf den Markt. Aber RISC-V hat die Anfangshürden genommen und ist auf dem Weg zum Erfolg.

RISC-V FOUNDATION

Die RISC-V FOUNDATION finden Sie auf der Embedded World 2020 in Halle 3A Stand 536.

Calista Redmond (CEO, RISC-V Foundation) spricht über Neuigkeiten bei RISC-V:

Das ist neu bei RISC-V Vortragssprache Deutsch
Datum: 26.02.2020 Uhrzeit: 16:10 – 16:30 Uhr
Ort: Markt&Technik VIP-Bühne, Halle 3A, 3A-502

Event merken
Termin merken
Event teilen