Hohe Ströme mit Hallsensor WCS1600, WCS1700 und WCS1800 überwachen

Wenn man eine Eigenbau-Solaranlage baut oder aber stromintensive Geräte mit einem Akku betreibt, dann kommt es immer wieder vor dass man hohe Ströme messen und vielleicht sogar mit einem Mikrocontroller oder einem Datenlogger überwachen muss. In diesem Beitrag möchte ich Einsteigern einige günstige Sensoren vorstellen, mit denen sich solche Aufgaben recht leicht und preiswert umsetzen lassen. 

Der Beitrag Hohe Ströme mit Hallsensor WCS1600, WCS1700 und WCS1800 überwachen erschien zuerst auf Mikrocontroller-Elektronik.de.

Zuerst erschienen bei Mikrocontroller-Elektronik.de

Komponenten, Sensoren, Akku, Shunt, Stromzange, Victron Smartshunt, WCS1600, WCS1700, WCS1800

Quelle: Read More

Wiliot: energy-harvesting-basierte Bluetooth LE-Beacons ab Sofort erwerbbar

Das Startup Wiliot geistert seit dem IoT SWC 2019 durch die Branche – das versprochene selbstversorgende Bluetooth LE-Tag war bisher nur für ausgewählte Großkunden erhältlich. Mit dem um 500 USD erhältlichen Starter Kit steht ein allgemeinverfügbares Produkt ante Portas.

Worum geht es hier

Energy Harvesting ist insbesondere im Logistikbereich attraktiv: muss man sich nicht um die Energieversorgung kümmern, so fallen weniger Personalkosten an. Aus der Logik folgt, dass das in der Abbildung gezeigte Versprechen der Wiliot Aufmerksamkeit erregte.

(Bildquelle: Tam Hanna via https://www.instagram.com/p/B4R-l2Ajkhj/, eigene Aufnahme mit BlackBerry PRIV)

Der Chip im Fokus

Zum als IOT Pixel bezeichneten Chip (Temperaturbereich -40 / +85 Grad Celsius) gibt es mittlerweile einiges an Informationen: der Arm Cortex M+-Rechenkern blieb erhalten, vom Versprechen eines “Dreikernprozessors” blieb anscheinend nur ein mit 1 MHz arbeitender Kern übrig. Er erfreut sich an “maximal 1KB” Speicher, und bietet einen GPIO-Pin und einen chipinternen Temperatursensor an.

(Bildquelle: https://www.wiliot.com/product/iot-pixel#03)

An anderer Stelle findet sich zum Speicherkomplement (https://support.wiliot.com/hc/en-us/articles/360059009614-Wiliot-Extended-Overview) folgende Aussage:

Memory: Flash /RAM (2 KB), ROM (64 KB)

Interessant ist, dass Wiliot unter https://support.wiliot.com/hc/en-us/community/posts/4412754996371-How-do-Wiliot-IoT-Pixels-compare-to-RFID-tags- – zwar etwas verklausuliert – die Verwendung “digitaler Sensoren” bzw I2C-Peripheriegeräte aus Gründen der Energieversorgung ausschließt.

(Bildquelle: https://support.wiliot.com/hc/en-us/community/posts/4412754996371-How-do-Wiliot-IoT-Pixels-compare-to-RFID-tags-)

Harvesting setzt gezielte Energieversorgung voraus

Von den auf dem IoT SWC durchgeführten Versprechen der “Energieversorgung aus dem Äther” blieb wenig – unter https://support.wiliot.com/hc/en-us/community/posts/4412734417171-Can-I-use-my-own-Bluetooth-device-with-my-Wiliot-IoT-Pixels- findet sich folgende vielsagende Passage:

Today, Wiliot IoT Pixels require an intentional energy source for harvesting. The higher the output power, the stronger the energy source is.

Langfristig plant Wiliot zwar (siehe https://support.wiliot.com/hc/en-us/community/posts/4412734358163-Can-I-use-a-phone-to-energize-my-Wiliot-IoT-Pixels-) das Anbieten eines per Telefon energetisierbaren Tags, dies ist derzeit allerdings nicht prioritär.

Interoperabilität mit hauseigenem Clouddienst

Die von Wiliot-Tags gesendeten Pakete sind nicht “direkt verkehrsfähig”, sondern benötigen im ersten Schritt Wrapping. Dies erfolgt normalerweise in Basisstationen, auf Wunsch lässt sich dies allerdings auch per Software erledigen.

(Bildquelle: https://support.wiliot.com/hc/en-us/community/posts/4412734417171-Can-I-use-my-own-Bluetooth-device-with-my-Wiliot-IoT-Pixels-)

Die bei der Cloud eingehenden Informationen sendet der Dienst danach per MQTT an Server des Kunden, die sich um die Weiterverarbeitung kümmern. Mit Automation Platform ist auch eine “vollwertige” Cloud geplant, die wohl an IFTT erinnernde Automatisierungsaufgaben anbieten wird.

Eigene Versuche wagen

Möchten Sie die Technologie ausprobieren, so steht das in der Abbildung gezeigte Starter Kit unter https://shop.wiliot.com/ zur Verfügung. Beachten Sie, dass der Erwerb des Starter Kits die Anmeldung eines Kontos beim Dienst voraussetzt – in Tests des Autors erfolgt diese allerdings sofort und ohne manuelle Verifikation von Seiten des Anbieters.

Neben je fünf auf 2.4GhZ beschränkten und fünf dual band-Tags findet sich in diesem Paket eine als “IoT Pixel-ready Coffee Cup” bezeichnete Kaffeetasse, die Temperaturinformationen unter Nutzung des im Chips enthaltenen Sensor nach außen trägt. Zur Ansteuerung bzw. Als Gegenstelle enthält das Paket ausserdem zwei sogenannte Bridges – auch hier eine Single Band- und eine Dual Band-Ausführung.

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More

Arduino: Open Source-Rechenschaftsbericht für 2021 erschienen

Massimo Banzi’s Mannen legen einmal pro Jahr in einem als Arduino Open Source Report bezeichneten Bericht Rechenschaft über ihre Aktivitäten ab. Hier einige Highlights, die Nutzer der Arduino-Plattform interessieren dürften.

Neuerungen in Sachen Tooling

Sowohl Arduino IDE 1.x als auch IDE 2.x erfuhren dieses Jahr Updates – so weit, so logisch. Mit Arduino Lint schickt das Entwicklerteam allerdings auch ein neuartiges Werkzeug ins Rennen, das sich um die Eliminierung von arduinospezifischen Fehlern in Code kümmert.

Besonders wichtig ist in diesem Zusammenhang die Flag –library-manager, die eine Überprüfung von Bibliotheken auf Kompatibilität mit dem Library Manager durchführt.

Automatisierte Entgegennahme von Bibliotheken

Die Arduino-Umgebung ist unter Anderem ob des reichen Bibliotheksschatzes populär, der die Inbetriebnahme von Hardware beschleunigt und erleichtert.
Bisher erforderte das Einpflegen neuer Bibliotheken einen manuellen Eingriff von Seiten des Arduino-Teams. Neu ist nun ein automatischer Hochladeprozess.

Neuigkeit Nummero zwei ist der unter https://www.arduino.cc/reference/en/libraries/ bereitstehende Bibliotheksmanager. Bibliotheken lassen sich dort – wie in der Abbildung gezeigt – auch ohne Umweg in die Arduino-IDE ansehen.

Community-Bibliothekswartung am Vormarsch

Bibliotheken kommen seit jeher nicht nur von Arduino selbst. Im aktuellen Rechenschaftsbericht finden sich die gezeigten Folien mit Informationen darüber, welche natürlichen Personen und/oder Unternehmen am Aktivsten neue Bibliotheken beitragen.

GitHub Actions-Integration

GitHub erlaubt mit Actions (allgemeine Beschreibung unter https://docs.github.com/en/actions) die Auslösung von cronjob-artigen Programmen beim Auftreten bestimmter Ereignisse im Repositorium.
Von Seiten der Arduino gibt es mit der Payload arduino/compile-sketches ein Werkzeug, das die von GitHub selbst bereitgestellten Handlungen um arduino-spezifische Aufgaben erweitert.
Die “einfachste” Einsatzmöglichkeit ist dabei nach folgendem Schema aufgebaut – sie kompiliert das hochgeladene Artefakt für einen Arduino Uno, was die häufigsten Fehler auszuschließen hilft:

1name: Compile Sketch
2 push
3 pull_request
4jobs:
5 compilesketch:
6 runson: ubuntulatest
7 steps:
8 name: Checkout repository
9 uses: actions/checkout@v2
10 name: Compile sketch
11 uses: arduino/compilesketches@v1
12 with:
13 sketchpaths: |
14 ./
15 libraries: |
16

Umbenennung der SPI-Pins

Zu guter Letzt benennt die Arduino-Gruppe die SPI-Pins um, um das im amerikanischen Sprachraum unpopulär gewordenen Begriffspaar Master/Slave zu vermeiden. Statt MISO/MOSI/SS schreibt man fortan CIPO/COPI/CS – CIPO bedeutet beispielsweise Controller In Peripheral Out. Aus technischer Sicht ergeben sich dadurch keine Änderungen.

Mehr erfahren

Das 32 Seiten umfassende PDF steht unter https://content.arduino.cc/assets/Arduino Open Source Report 2021.pdf zum Download bereit.

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More

Infineon AURIX TC4x – Neuerungen im Automobil-Mikrocontrollerbereich

Anlässlich des Verfügbar-Werdens erster Musterexemplare des TC4x hielt Infineon ein Webinar ab, in dem der neue Automobil-Mikrocontroller vorgestellt wurde. Hier eine Kurzbetrachtung der Neuerungen und Trends.

Worum geht es hier

TriCore ist eine im Automotivebereich seit 1999 weit verbreitete Mikrocontrollerarchitektur, die aus drei Modulen (darunter ein DSP) besteht.

Mit dem AURIX TC4 möchte Infineon den Aufbau des Mikrocontrollers an die neuen Anforderungen des Automotivemarkts – Stichwort künstliche Intelligenz im Automobil – optimieren. Spezifisch spricht Infineon dabei von fünf “Wachstumstrends”, die in einer Folie zusammengefasst wurden.

Erweiterungen der Hardware…

Neben Speichererweiterungen – nun gibt es bis zu 25 MB Flash am Chip, der Arbeitsspeicher kann nun mehr als 10 MB (Zitat) groß sein – stellt Infineon dem neuen AURIX auch Verbesserungen im Bereich der Peripheriegeräte zur Verfügung. So gibt es nun mehr Timer, die niederere Latenz und mehr Eigenintelligenz aufweisen (Stichwort engere Regelschleifen mit Frequenzen im Bereich einiger 100KHz).

Zur Kommunikation steht erstens Automotive Ethernet mit bis zu 5Gbps zur Verfügung, im Rahmen der Vorstellung erwähnte man auch das PCIe-Interface. Es ist nach Ansicht von Infineon für die Kommunikation mit “externen Prozessoren” vorgesehen.
Microservice-Architekturen scheinen im Automotivebereich ebenfals eine Rolle zu spielen (Zitat: contemporary software architecture) – der AURIX deckt diese durch einen Hardwarevirtualisierer ab, der das Hosten von bis zu acht VMs pro Kern erlaubt.
Zur Erledigung anspruchsvoller Rechenaufgaben steht mit AURIX eine Gruppe von AI-Beschleunigern zur Verfügung. Im Rahmen seiner Vorstellung sprach Thomas Boehm explizit davon, “den TriCore von Aufgaben zu befreien, die da nicht hingehören” – darunter die Vektorengine PPU und die im Vortrag nicht weiter besprochene Daten-Enpackengine (sic) DRE.

… und Bereitstellung virtueller Hardware

“Time to Market” – oder ein möglichst kurzer Entwicklungsprozess – wird laut Infineon im Automotivemarkt immer wichtiger. Im Zusammenarbeit mit Synopsis bot Infineon deshalb einen “PPU-Simulator” an, um die Einbindung der PPU in Software zu erlauben, bevor fertige Hardware zur Verfügung steht. Ähnlichkeiten zu ARMs virtueller Hardware sind auffällig.

Zu guter Letzt sprach Infineon auch davon, im MetaWare-SDK diverse Komfortfunktionen für das Ökosystem zur Verfügung zu stellen. Neben hoch optimierten Bibliotheken für diverse mathematische Operationen sprach man auch von einem Konverter, der Matlab-Modelle in effizienten Code für den AURIX umwandelt.

Von der Verfügbarkeit

Zum Zeitpunkt der Abfassung dieses Texts steht der TC4x nicht im freien Markt zur Verfügung – Infineon liefert Samples an als “lead customer” bezeichnete VIPs im Automotivebereich aus. Die Entwicklungskits stehen allerdings schon jetzt zum Download bereit, weitere Software erwartet Infineon im Laufe des Jahres 2022.

(Bildquelle: Alle Bilder aus der offiziellen Präsentation von Infineon, zur Verfügung gestellt durch Fabian Schiffer – Video unter https://livestream.com/infineontechnologies/aurix-tc4x/videos/228664984)

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More

Neuigkeiten-Übersicht: Espressif, TFTP-Bootloader für GigaDevice und neue Hardware

Selbst zwischen den Jahren schläft die Halbleiterindustrie nicht. Hier einige neue Produkte und Ankündigungen, die der Autor interessant empfand.

Worum geht es hier

Wer ein bestimmtes Fertigprodukt nicht kennt, muss es von Hand nachbauen – ineffizient und teuer. Hier einige interessante Kandidaten, die zwischen den Jahren aufgetaucht sind.

Stromfluss-limitierende Dioden von Central Semicon

Central Semicon bietet mit der CPL03-CMJD eine Serie von Dioden an, die den durch sie fließenden Strom konstant halten. Die Bauteile verhalten sich dabei wie ein “smarter Widerstand”, und werden einfach in Serie zur zu überwachenden Last geschaltet.
Die zu haltende Strommenge ist dabei vom Diodentyp abhängig – die Tabelle zeigt die derzeit angebotenen Produkte.

(BILDQUELLE: https://www.centralsemi.com/docs/CPB/PB_CPL03-CMJD_SER.PDF)

Beachten Sie bei der Nutzung der Bauteile allerdings den extrem hohen Preis: in Hundersterstückzahlen ruft Mouser derzeit 3.67 EUR pro Stück (!!!) auf.

SparkFun TOL-18627 – Salae-Klon “vom bekannten Hersteller”

Wer keinen Salae Logic- oder Klon sein Eigen nennt und Mikrocontroller programmiert, soll – jetzt sofort – das Lesen des Artikels einstellen und einkaufen gehen. Das Produkt erweist sich im Labor des Autors als unersetzliches Werkzeug zur Suche von Fehlern beim Bring-Up von über serielle Busse angeschlossener Hardware.

(BILDQUELLE: Mouser)

Wem der Einkauf auf AliExpress und Co zu “windig” erschien, kann nun um rund 20 EUR bei SparkFun eine “offizielle” Variante erwerben. SparkFuns Variante bietet 8 Kanäle, sampled mit bis zu 24MHz und hat einen USB-C-Stecker. Als Analysesoftware kommt das quelloffene SigRok zum Einsatz.

Arduino: Bausatz für “mikrofluidische” Pumpe zur Verteilung winziger Flüssigkeitsmengen

Arduini hebt derzeit einen von der Universität zu Singaput entwickelten Bausatz hervor, der eine preiswert aufbaubare mikrofluidische Pumpe realisiert. Dabei handelt es sich um ein Pumpensystem, das winzige Mengen von Flüssigkeiten verteilt.

this DIY pump system is capable of moving a mere 0.02 microliters up to 727.3 microliters per minute

(Bildquelle und mehr Informationen: https://blog.arduino.cc/2021/12/27/this-3d-printed-arduino-controlled-kit-makes-microfluidic-pumps-more-accessible/)

TFTP-Bootloader und OrangePi-freundliches Dev Board für GD32F107

Arjan van Vught setzt seine Experimente mit GigaDevice fort. Unter https://github.com/vanvught/GD32F107RC-Bootloader-TFTP steht nun ein Bootloader für den GD32F107 zur Verfügung, der die Auslieferung von Applikationen per TFTP erlaubt.

(Bildquelle: GitHub / Arjan van Vught)

Wer auf der Suche nach einem Evaluationsboard für den Controller ist, findet unter https://github.com/vanvught/GD32F103R-GD32F107R-GD32F207R-dev-board eine schlüsselfertige Platine. Ihr Erweiterungsport ist für die Verwendung mit dem OrangePi Zero vorbereitet.

KTU1121 – ESD-Schutz für USB-C-PD-Signale

USB-C und der dazugehörende Stecker ersetzen “klassische” Ladegeräte in immer mehr Applikationen (Stichwort Barrel Connector Replacement). Mit dem KTU1121 steht nun ein Bauteil zur Verfügung, das sich um die ESD-Absicherung der Datenleitungen kümmert.

(Bildquelle: Datenblatt)

AD9106-Evaluationsboard realisiert 12bit-AWG mit bis zu 180MSPS und 4kBit Wellenformspeicher

Die Erzeugung von beliebigen Wellenformen in hoher Geschwindigkeit ist eine Aufgabe, die man bei der täglichen Arbeit im Labor immer wieder benötigt. Der AD9106 realisiert dies in Chipform, und lässt sich per SPI ansprechen.

(Bildquelle: Datenblatt)

MikroE schickt mit dem “Mikroe Waveform 4 Click” nun ein in Einzelstückzahlen um 100EUR erhältliches Board auf Basis des Chips ins Rennen – insbesondere in ATE-Systemen kann dies ein preiswerter Ersatz für einen vollwertigen AWG darstellen.

Espressif: Unterstützung für Matter und hauseigenes Mesh-Protokoll forciert

Im allmonatlichen “News-Drop” von Espressif fanden sich diesmal keine neuen Hardwareankündigungen. Der Hersteller des universal verbreiteten WLAN-Kombinationscontrollers legt den Fokus diesmal stattdessen auf Kommunikationsprotokolle.

Kandidat Nummero eins ist das unter https://www.espressif.com/en/news/ESP-NOW?position=1 kurz vorgestellte Protokoll ESP-NOW:

Additionally, ESP-NOW occupies fewer CPU and flash resources than traditional connection protocols, while it co-exists with Wi-Fi and Bluetooth LE. ESP-NOW supports various series of Espressif chips, providing a flexible data transmission that is suitable for connecting “one-to-many” and “many-to-many” devices. Moreover, ESP-NOW can be used as an independent, auxiliary protocol that helps with device provisioning, debugging, and firmware upgrades.

Außerdem erinnert Espressif Entwickler an die unter https://www.espressif.com/en/news/Matter_Series_Blogposts bereitstehende Liste von Blogposts zum Matter-Protokoll: ein im Smart Home-Bereich weit verbreitetes Kommunikationsprotokoll.

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More

Antennensimulator EZNEC ab sofort kostenlos, aber ohne Support

Der in Amateurfunkkreisen weit verbreitete Antennensimulator EZNEC von Roy Lewallen ist ob der Pensionierung des Entwicklers ab sofort kostenlos verfügbar. Die Version auf Basis von NEC4 wird allerdings eingestellt, der Quellcode ist nicht freigegeben.

Worum geht es hier

Wer Antennen entwirft, profitiert von Simulation – der Simulator spart sowohl Kosten für die Erzeugung der physischen Antennenprototypen als auch für verschiedene Messgeräte. EZNEC ist ein Wrapper um den einst am Lawrence Livermore National Laboratory entwickelten Simulator Numerical Electromagnetics Code.

EZNEC?

Das selbst heute nur teilweise kostenlos verfügbare NEC ist eine Berechnungsengine, die erst durch ein (mehr oder weniger benutzerfreundliches) GUI für Normalentwickler nutzbar wird. EZNEC ist ein derartiges Produkt, das im Hintergrund sowohl mit NEC2 als auch mit dem seperat zu erwerbenden NEC4 zusammenarbeitet und verschiedene Antennenberechnungen durchführt.

Beachten Sie in diesem Zusammenhang die Aussprache – Ez wird im Englischen als Easy ausgesprochen, das Produkt als EasyNec bezeichnet. Der Autor lernte dies aus schmerzlicher Erfahrung, als er für einen Kunden beim Klemmenanbieter EZHook anrief, “Etz-Hook” verlangte und mehrfach abgewiesen wurde. Erst nach mehreren Anrufen und dem Buchstabieren des Namens E Z Hook klärte sich die Lage.

Wie geht es weiter

Eine kostenlose Vollversion von EZNEC Pro/2 steht unter https://www.eznec.com/ zur Verfügung, der Autor testete sie kurz auf seinem IBM ThinkPad T430 mit Windows 11 und stellte keine Probleme fest. Arbeiten an der neuen Version erfolgen derzeit, und sollen bald abgeschlossen sein:

1The introduction of EZNEC Pro/2+ v. 7.0 has been unavoidably delayed. The estimated time of introduction is Jan. 14, 2022, but Ill do my very best to have it ready before then. It is now undergoing extensive testing and updating of the manual.
2EZNEC Pro/2+ v. 7.0 will have all the features of EZNEC Pro/2 v. 6.0, plus extra features including wire loss for individual wires and the ability to run external NEC4.2 and NEC5 programs for calculation.

Aufgrund der weiter oben genannten Problematik mit NEC 4 wird die auf dieser Version der Engine basierende Variante des Programms eingestellt:

1Use of EZNEC Pro/4 and EZNEC Pro/4+ require a license from Lawrence Livermore National Laboratory (LLNL) because of their incorporation of NEC4.2 code for which LLNL retains the rights. Sale of EZNEC Pro/4 has required the purchaser to obtain a license before purchasing, and its use requires that a license be in force. As I will no longer be verifying the existence of a license, I can no longer distribute EZNEC Pro/4 except as upgrades to those whose licenses have previously been verified.

Wo ist der Quellcode?

Im Rahmen der vor einigen Monaten erfolgenden Ankündigung der Rückzugspläne versprach der Entwickler, den Quellcode freizugeben. Mittlerweile ist dies – siehe auch https://eznec.com/source_code.htm – allerdings nicht mehr geplant. Gründe dafür sind unter Anderem die Furcht vor Anfragen von Personen, die mit der Codebasis überfordert sind.

(Bildquelle: Ing. Tam HANNA, lokale Screenshots)

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More

OrangePi Zero – mehr Benchmarks

Nach der Vorstellung des OrangePi Zero ist es nun an der Zeit, einige Messungen zur Hardware nachzulegen. Neben der Ethernetschnittstelle des Zero sehen wir uns hier auch die GPIO-Performance und das Verhalten gegenüber dem Massenspeicher an.

Worum geht es hier.

Wer einen (am Markt frei verfügbaren) und in unbeschränkter Stückzahl verwertbaren Prozessrechner kaufen möchte, ist im Hause Shenzhen Xunlong seit jeher besser bedient: Das Unternehmen ist ideologiefrei und rein kommerziell.

Die physischen Aspekte und die Prozessor-Leistungsfähigkeit des Zero haben wir unter https://www.mikrocontroller.net/topic/orange-pi-zero-im-blick-raspberry-pi-zero-alternative-mit-freier- vorgestellt – nun ist es an der Zeit, die „kleinste“ und HDMI-lose Vertreterin des Orange Pi-Ökosystems einem anderen Test zu unterziehen.

Ethernet Rules Supreme!

Während der Raspberry Pi Zero 2W – Nomen est Omen – ausschließlich per WLAN kommuniziert, hat der Orange Pi Zero auch eine „klassische“ Ethernet-Schnittstelle.
Zur „Vermessung“ bietet sich die Nutzung des Universal-Benchmarks iperf an, den sie im ersten Schritt nach folgendem Schema installieren:

1root@orangepizero:~# sudo aptget install iperf

iperf-Testläufe setzen immer auch eine Gegenstelle voraus. Der Autor nutzt in den folgenden Schritten seine mit Ubuntu 20.04 laufende Workstation, die über einen NetGear ProSafe-Switch Verbindung zum Prozessrechner aufnimmt. Auf der Workstation ergreifen wir unser Terminalfenster, und starten nach folgendem Schema den Server:

1tamhan@TAMHAN18:~$ iperf s
2————————————————————
3Server listening on TCP port 5001
4TCP window size: 128 KByte (default)
5————————————————————

An dieser Stelle lässt sich die Ethernetschnittstelle vermessen, was zu folgendem Ergebnis führt:

1root@orangepizero:~# iperf c 192.168.1.68
2————————————————————
3Client connecting to 192.168.1.68, TCP port 5001
4TCP window size: 43.8 KByte (default)
5————————————————————
6[ 3] local 192.168.1.71 port 48688 connected with 192.168.1.68 port 5001
7[ ID] Interval Transfer Bandwidth
8[ 3] 0.000010.0005 sec 113 MBytes 94.5 Mbits/sec

Test mit USB-Stick

Als nächsten Test wollen wir uns die Leistungsfähigkeit der auf dem Board fix verlöteten USB-Schnittstelle ansehen. Interessant ist dabei, dass Armbian angeschlossene USB-Speichermedien von Haus aus nicht mountet    -im ersten Schritt müssen wir das Medium deshalb per FDISK lokalisieren:

1root@orangepizero:/media# fdisk l

Lohn der Mühen ist – idealerweise – die in der Abbildung gezeigte Partitionstabelle, die die vom Orange Pi gesichteten Partitionen am USB-Speicher auflistet. Sofern sie in Bezug auf die „Detektierung“ auf Nummer sicher gehen wollen, bietet sich vorher die Nutzung von LSUSB an.

Im nächsten Schritt müssen wir einen Mountpunkt erzeugen und den USB-Stick nach folgendem Schema mounten:

1root@orangepizero:/media# mkdir usbstick
2root@orangepizero:/media# mount /dev/sda /media/usbstick/
3root@orangepizero:/media# cd usbstick/
4root@orangepizero:/media/usbstick# ls

Im nächsten Schritt bietet sich auch schon die „Ausführung“ des eigentlichen Benchmarks an, die wir abermals unter Nutzung des aus dem letzten Artikel zum Thema bekannten Sysbench durchführen:

1root@orangepizero:/media/usbstick/workspace# sysbench test=fileio filetotalsize=3G filetestmode=rndrw maxtime=300 maxrequests=0 run

Lohn der Mühen ist die Abarbeitung der etwa 300 Sekunden in Anspruch nehmenden Testsuite, die am OrangePi Zero die folgenden Ergebnisse liefert:

1File operations:
2 reads/s: 47.14
3 writes/s: 31.42
4 fsyncs/s: 100.86
5
6Throughput:
7 read, MiB/s: 0.74
8 written, MiB/s: 0.49
9
10General statistics:
11 total time: 300.4029s

Der Zero 2W ist auch hier etwas schneller:

1Zero 2W:
2
3File operations:
4 reads/s: 57.13
5 writes/s: 38.09
6 fsyncs/s: 122.23
7
8Throughput:
9 read, MiB/s: 0.89
10 written, MiB/s: 0.60
11
12General statistics:
13 total time: 300.3538s

Angemerkt sei, dass das automatische Mounten von Speichermedien unter ARMbian eine immer interessante Frage ist – unter https://forum.armbian.com/topic/6341-fyi-auto-mount-usb-disk-with-usbmount/ findet sich ein Foren-Thread zur Diskussion.
Der einfachste Weg zur Überprüfung der Kollisions-Anfälligkeit besteht darin, zwei SSH-Verbindungen gleichzeitig aufzubauen. iperf lässt sich bei folgendem Aufruf dazu animieren, alle zwei Sekunden Statusinformationen auszugeben:

1root@orangepizero:~# iperf c 192.168.1.68 t 30 i 2
2————————————————————
3Client connecting to 192.168.1.68, TCP port 5001

Der Weg zum „erfolgreichen“ Benchmark ist dann die parallele Ausführung von sysbench und iperf, die zum in der Abbildung gezeigten Ergebnis führt. In Tests des Autors erwies sich der Raspberry Pi Zero W an dieser Stelle übrigens wesentlich anfälliger, er verlor unter iO-Belastung bis zu 30 % der Netzwerk-Bandbreite.

Kleiner IO-Test

Als letzten Versuch wollen wir uns das iO-Kompliment des Raspberry Pi Zero ansehen. Zur Erinnerung: Vergleichsmessungen gegen den Zero 2 finden Sie unter der URL https://www.mikrocontroller.net/topic/raspberry-pi-zero-2w-im-benchmarktest.
Für den eigentlichen Hardwarezugriff steht dabei eine „Forkung“ der WiringPi-Bibliothek zur Verfügung, die Shenzhen Xunlong    auf GitHub pflegt. Unsere erste Amtshandlung ist deshalb – logischerweise – das Herunterladen der fehlenden Dateien:

1root@orangepizero:~# git clone https://github.com/orangepi-xunlong/wiringOP.git
2Cloning into wiringOP
3remote: Enumerating objects: 607, done.
4remote: Counting objects: 100% (136/136), done.
5remote: Compressing objects: 100% (31/31), done.
6remote: Total 607 (delta 114), reused 113 (delta 105), packreused 471
7Receiving objects: 100% (607/607), 353.04 KiB | 2.71 MiB/s, done.
8Resolving deltas: 100% (394/394), done.

Im nächsten Schritt folgt die übliche, in zwei Schritten durchzuführende Kompilation:

1root@orangepizero:~/wiringOP# ./build clean
2wiringPi: [Clean]
3. . .
4
5root@orangepizero:~/wiringOP# ./build
6wiringPi Build script
7=====================

Interessant ist hier, dass ein Aufruf von Make Install nicht notwendig ist. Nach getaner Arbeit können sich stattdessen sofort gpio readall aufrufen, was zum in der Abbildung gezeigten Ergebnis führt:

1root@orangepizero:~/wiringOP# gpio readall

Im nächsten Schritt benötigen wir – wie immer – ein Testprogramm, das nach folgendem Schema aufgebaut ist:

1#include <wiringPi.h>
2
3int main (void)
4{
5 wiringPiSetup () ;
6 pinMode (14, OUTPUT) ;
7 for (;;)
8 {
9 digitalWrite (14, HIGH) ;
10 digitalWrite (14, LOW) ;
11 }
12 return 0 ;
13}

Beachten Sie, dass die Bibliothek die im „großen Vorbild“ angelegten Namen von Headerdateien und Co eins zu eins übernimmt; die „unterschiedlichen“ Pin-Nummern stammen aus Abbildung drei.
Eine gewöhnliche Kompilation nur unter übergeben des Parameters -lwiringPiu scheitert:

1root@orangepizero:~# gcc worker.c lwiringPi
2/usr/bin/ld: /usr/lib/gcc/armlinuxgnueabihf/10/../../../libwiringPi.so: undefined reference to `crypt
3/usr/bin/ld: /usr/lib/gcc/armlinuxgnueabihf/10/../../../libwiringPi.so: undefined reference to `rint
4/usr/bin/ld: /usr/lib/gcc/armlinuxgnueabihf/10/../../../libwiringPi.so: undefined reference to `pthread_join
5/usr/bin/ld: /usr/lib/gcc/armlinuxgnueabihf/10/../../../libwiringPi.so: undefined reference to `pthread_create
6/usr/bin/ld: /usr/lib/gcc/armlinuxgnueabihf/10/../../../libwiringPi.so: undefined reference to `pow
7/usr/bin/ld: /usr/lib/gcc/armlinuxgnueabihf/10/../../../libwiringPi.so: undefined reference to `shm_open
8/usr/bin/ld: /

Funktionsfähig ist das Kompilat nur bei folgender Parametrisierung:

1root@orangepizero:~# gcc pthread worker.c lwiringPi lcrypt lm lrt

Auf einem Modulationsdomänenanalysator (Detailbeschreibung des Meßgeräts unter https://www.youtube.com/watch?v=lBLEfVUVGyU) sehen wir dann das in der Abbildung gezeigte Ergebnis.

(Bildquelle alle: Ing. Tam HANNA / BSc, eigene Kamera)

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More

KiCad 6.0 ausgeliefert

Das quelloffene EDA-Programm KiCAD steht in Form eines neuen Major Release zur Verfügung. Das Entwicklerteam verspricht neben diversen Fehlerbehebungen auch Harmonisierung im Bereich der Benutzerschnittstelle.

Worum geht es hier

Das vom CERN vorangetriebene KiCAD ist das marktführende quelloffene und kostenlose EDA-System (Anmerkung: Teile von Bartels liegen im Quellcode vor, allerdings nur für zahlende Kunden). Mit dem Major Release 6.0 gibt es eine neue “vollwertige” Aktualisierung. Dieser Artikel möchte Neuerungen kurz vorstellen.

(Bildquelle: KiCad-Entwicklerteam)

Neues Dateiformat bindet Bibliotheken direkter ein

Eine Änderung am Format der Schaltplandateien führt dazu, dass Symbolinformmationen fortan Teil der Schaltplandatei sind – die Notwendigkeit zur Verwendung von Cache libraries soll laut dem Entwicklerteam ersatzlos entfallen.
Laut Mitgliedern der HP-Eigentümergilde führt dies nicht zu Problemen beim Laden vorhandener Projekte. Der dem Autor persönlich bekannte Szabolcs Szigeti berichtet beispielsweise folgendes:

I just checked my designs that were done with Kicad 5.12 and 6.0 can open and edit them without any problem. They will be converted to new version format however, when saved, so maybe it is a good idea to make a copy in case you want to open them with the older version. I haven’t yet explored how all the libraries work, but so far I don’t see any problem.

Vereinheitlichung des GUIs zwischen Schaltplan- und Platinenbearbeitujng

Schaltplaneingabe und Platinenlayout sind in KiCad zwei voneinander getrennte Programme, die bisher unterschiedliche Bedienparadigmata realisierten. KiCad 6.0 normalisiert dies insofern, als sich der Schaltplaneditor nun am Benutzerinterface an der anderen Komponente orientiert.
Im Rahmen dieser Erweiterungen bekommt das Werkzeug auch Unterstützung für Netzklassen: ein bequemer Weg, um für verschiedene Verbindungen geltende Regeln abstrakter verwaltbar zu machen.

(Bildquelle: KiCad-Entwicklerteam)

Altium-Importer inkludiert

Der amerikanische Branchnenewsdienst cnx bot seit einiger Zeit Anweisungen zur manuellen Kompilation von KiCad, um durch Nutzung der Nightlies Zugang zu einem durchaus brauchbaren Altium-Importer zu bekommmen (siehe auch https://www.cnx-software.com/2020/04/05/how-to-build-kicad-on-ubuntu-18-04-and-import-altium-pcb-files/?amp=1). KiCad 6.0 bringt diesen Importassistenten direkt mit.

DSL fuer DRC

Der praktische Nutzwert eines Design Rule Checkers ist von den Einstellungsmögichkeiten abhängig, die sein Designer dem Elektroniker zur Verfügung stellt. Mit KiCad 6.0 hält eine neue DSL Einzug, die die Modellierung komplexerer Beziehungen bzw Regeln für die DRC erlauben.

(Bildquelle: KiCad-Entwicklerteam)

Erweiterungen im PCB-Designmodul

Die eigentliche PCB-Layoutkomponente erfährt ebenfalls Erweiterungen, die das Entwicklerteam in der Abbildung zusammenfasst. Als herausragende Funktionen spricht man einerseits von Unterstützung für runde Traces und andererseits Verbesserungen in der 3D-Ansicht, die nun im Layout markierte Elemente farblich hervorhebt.

(Bildquelle: KiCad-Entwicklerteam)

Abkündigung bekannter Funktionen

Zu guter Letzt gibt es im Bereich der Skriptingengine Anpassungen. Einige in der Vorgängerversion beliebte Funktionen bzw Schnittstellen sind nun abgekündigt, und werden in der nächsten Revision entfernt:

XSLT BOM generation scripts will no longer be supported in the next major release of KiCad, and KiCad 6.0 no longer ships with example XSLT scripts. If you currently use XSLT scripts, please migrate to Python BOM scripts during the 6.x release cycle.
The SWIG Python API will be removed in a future release of KiCad and replaced with a new Python API. Users may continue to use the SWIG API and report bugs against it during the 6.x release cycle, but no new major features will be added to the SWIG API.

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More

Orange Pi Zero im Blick: Raspberry Pi Zero-Alternative mit freier Verfügbarkeit

Der Raspberry Pi Zero wird von der Raspberry Pi Foundation – im Allgemeinen – nur „rationiert“ verkauft. Shenzhen Xunlong   ist als voll kommerzielles Unternehmen – natürlich – daran interessiert, die maximale Menge an Prozessrechnern abzusetzen. Hier eine Kurzvorstellung des kleinsten Orange Pi-Modells.

Worum geht es hier?

Shenzhen Xunlong – das Unternehmen steht hinter der Orange Pi-Serie – ist die Antwort des AllWinner-Ökosystems auf den Erfolg von BroadCom und dem von ihnen produzierten Raspberry Pi. Shenzhen Xunlong bietet zum Zeitpunkt der Drucklegung dieses Artikels Dutzende von Prozessrechnern an, die sich sowohl im Bereich Rechenleistung als auch im Bereich Formfaktor unterscheiden.

Hier wollen wir ausschließlich über den Zero sprechen – eines der „preiswerteren“ Modelle, das auf AliExpress zum in der in der Abbildung gezeigten Preis erhältlich ist.

Unser Testkandidat ist dabei ein mit 256MB ausgestatteter Ur-Zero, der einen H2+-Prozessor aufweist: er ist eine im Bereich Grafik minimal abgespeckte Version des H3 (siehe https://linux-sunxi.org/H3#Variants).

Die Hardware im Überblick

Shenzhen Xunlong bietet den Orange Pi Zero in „mehreren Varianten“ an, die sich von der Pinout-Struktur her – wie in der Abbildung gezeigt – gleichen.
Der wichtigste Unterschied zwischen den verschiedenen LTS – und den non LTS-Versionen ist die Größe des Arbeitsspeichers.

Das Pinout zeigt im Allgemeinen Ähnlichkeiten zum Raspberry Pi Zero – der „wichtigste“ Unterschied ist, dass der OrangePi Zero zwar einerseits einen Ethernet-Port und einen „vollwertigen“ USB-Port mitbringt, andererseits aber ohne HDMI auskommen muss.
Für die Ausgabe von Video- bzw. Bild-Informationen bietet sich entweder die Nutzung des analogen Ausgangs oder aber eines SPI-Displays an.
Im Bereich von Größe und Gewicht geben sich die Systeme wenig: der OrangePi wiegt auf der Mettler P1210 des Autors 20.93 Gramm, der Raspberry Pi Zero 2W kam auf 13.20. Wichtig ist, dass sein Vorgänger mit 11.34 Gramm das leichteste Modell im Test ist.

Beachten Sie, dass die „Wiegung“ beider Zeros mit eingelötetem Header erfolgt. Analog zum Raspberry Pi Zero W gilt auch hier, dass die Auslieferung ohne Header erfolgt.
Hervorzuheben ist, dass der 1X13-Header ein „vollwertiges“ USB-Interface bereitstellt. Dies erleichtert das „Einlöten“ in Applikationsschaltungen.

Betriebssystem herbei

Die Bereitstellung des Betriebssystems erfolgt in der Welt des Orange Pi über das aus der tschechischen Republik vorangetriebene Armbian-Projekt. Suchen Sie unter https://www.armbian.com/orange-pi-zero/ nach den Betriebssystem-Images suchen. Das vom Autor in den folgenden Schritten verwendete File hört auf den Namen Armbian_21.08.1_Orangepizero_bullseye_current_5.10.60.img.xz – extrahieren Sie es wie gewohnt auf eine MicroSD-Karte.
Vom Raspberry Pi umsteigende Entwickler müssen außerdem darauf achten, dass der MicroSD-Slot des OrangePi mit einer Schiebemechanik ausgestattet ist, die das IS-Medium vor Vibrationen schützt.
Nach getaner Arbeit dürfen Sie die MicroSD-Karte in den Prozessrechner stecken, diesen mit einem Ethernet-Kabel verbinden und danach durch Anschließen von MicroUSB zum „Hochfahren“ animieren. Armbian-Images sind im Allgemeinen für „kleinere“ SD-Karten optimiert – wer wie der Autor seine 32 GB-Karte verwendet, muss einige Zeit einplanen, während die „Re-Partitionierung“ erfolgt.
Nach getaner Arbeit bietet sich die Lokalisierung unter Nutzung des Portscanners NMap an – das Fehlen des Monitors erweist sich als etwas lästig:

1tamhan@TAMHAN18:~$ ifconfig
2. . .
3
4enp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
5 inet 192.168.1.68
6
7
8tamhan@TAMHAN18:~$ sudo nmap sP 192.168.1.0/24

Ein gefundener Prozessrechner präsentiert sich folgendermaßen:

1Nmap scan report for orangepizero (192.168.1.67)
2Host is up (0.0039s latency).
3Not shown: 998 closed ports
4PORT STATE SERVICE
522/tcp open ssh
6111/tcp open rpcbind
7MAC Address: 02:42:AC:8E:09:32 (Unknown)

Im nächsten Schritt lässt sich die Anmeldung per SSH vornehmen – als Benutzername dient wie immer root, als Passwort die Zeichensequenz 1234.

Im Rahmen der erstmaligen Anmeldung fordert Sie Armbian außerdem dazu auf, ein Passwort festzulegen – beachten Sie, dass der Einstellungs-Assistent vergleichsweise umfangreiche Ansprüche an die Sicherheit stellt.
Nach dem erfolgreichen Abarbeiten des Set-up-Assistenten sollten Sie noch nach folgendem Schema eine Aktualisierung der Paketquellen befehligen:

1root@orangepizero:~# aptget update

Performanceanalyse mit Sysbench

Bei der Arbeit mit unixoiden Prozessrechnern hat sich die Nutzung von Sysbench als quasi-Standard zur Ermittlung der verfügbaren Rechenleistung etabliert.
Als auf Debian BullsEye basierendes Betriebssystem bietet die hier verwendete Version von Armbian – naturgemäß – eine Version von Sysbench an, die sich nach folgendem Schema installieren lässt:

1root@orangepizero:~# sudo aptget install sysbench
2Reading package lists Done

Zum Zeitpunkt der Drucklegung führt dies zum Herunterladen der folgenden Version:

1root@orangepizero:~# sysbench version
2sysbench 1.0.20 (using system LuaJIT 2.1.0beta3)

Im nächsten Schritt können wir auch schon zu unseren Performance-Tests übergehen. Als erstes ein Einkern-Benchmarklauf:

1root@orangepizero:~# sysbench test=cpu numthreads=1 run
2. . .
3
4CPU speed:
5 events per second: 39.29
6
7General statistics:
8 total time: 10.0181s
9 total number of events: 394

Der Zero 2W ist in diesem Bereich etwas schneller:

1CPU speed:
2 events per second: 47.89
3
4General statistics:
5 total time: 10.0114s
6 total number of events: 480

Bei Nutzung aller vier Kerne sieht die Situation folgendermaßen aus:

1root@orangepizero:~# sysbench test=cpu numthreads=4 run
2. . .
3
4CPU speed:
5 events per second: 156.39
6
7General statistics:
8 total time: 10.0169s
9 total number of events: 1568

Auch hier gilt, dass der Zero 2W minimale Vorteile mitnimmt:

1CPU speed:
2 events per second: 192.01
3
4General statistics:
5 total time: 10.0192s
6 total number of events: 1926

Fazit und Ausblick

Unsere hier durchgeführten ersten Experimente haben den OrangePi Zero „online“ gebracht. Im nächsten Schritt werden wir einen Netzwerk-, einen IO- und einen GPIO-Benchmark durchführen: Bleiben Sie bei uns, denn die Arbeit bleibt spannend.

(Bildquelle: Bilder 1 und 2 Tamoggemon Holding k.s., Bild 3 http://www.orangepi.org/orangepibbsen/forum.php?mod=viewthread&tid=2236)

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More

Raspberry Pi Zero 2W im Benchmarktest

Mit dem Raspberry Pi Zero 2W “aktualisieren” Ebenezer Upton’s Mannen ihren kleinsten vollwertigen Prozessrechner auf eine leistungsfähigere interne Architektur. Wir nutzen diese Gelegenheit für einen kleinen Benchmark, der auch auf die Unterschiede zwischen Raspberry Pi OS Buster und Bullseye eingeht.

Worum geht es hier

Der Raspberry Pi Zero W ist das “kompakteste” vollwertige Raspberry Pi-Modell – anders als der RP2040 ist es zur Abarbeitung von unixoiden Betriebssystemen befähigt. Die neue Variante ist von den Abmessungen her identisch, bringt aber einen wesentlich stärkeren Prozessor mit.

Header: von Hand einzulöten

Pick&Place-Maschinen haben mit Dupont-Headern traditionell ihre liebe Not. Der Zero 2W unterscheidet sich von seinem Vorgänger unter Anderem dadurch, dass das Einlöten des Headers nun Aufgabe des Käufers ist. Sonst sind die beiden Systeme identisch, auch die Gewichtsunterschiede sind minimal (13.28 Gramm beim Neuling, 11.34 Gramm beim Vorgänger, beide mit eingelötetem Header).

Mehr Rechenleistung

Der neue Chip hat vier Rechenkerne, was – logischerweise – zu einer massiven Steigerung der Rechenleistung führt. Im SysBench-Benchmark erreicht er folgendes Ergebnis:

EINKERN CPU speed:
events per second: 47.89
VIERKERN CPU speed:
events per second: 192.01

Zum Vergleich hier das Ergebnis des Vorgängers:

EINKERN CPU speed:
events per second: 16.15

WiringPi, ade

WiringPi ist seit einiger Zeit nicht mehr gewartet – trotzdem wollen wir mit dem folgenden Testprogramm experimentieren:

1#include <wiringPi.h>
2int main (void)
3{
4 wiringPiSetup () ;
5 pinMode (7, OUTPUT) ;
6 for (;;)
7 {
8 digitalWrite (7, HIGH) ;
9 digitalWrite (7, LOW) ;
10 }
11 return 0 ;
12}

Die Kompilation scheitert mit einem Verweis auf die nicht vorhandene Bibliothek – zur Lösung reicht es auf dem Zero 2W aus, nach folgendem Schema eine manuelle Kompilation zu befehligen:

1pi@raspberrypi:~ $ git clone https://github.com/WiringPi/WiringPi.git
2Klone nach WiringPi
3. . .
4Löse Unterschiede auf: 100% (945/945), fertig.
5pi@raspberrypi:~ $ cd WiringPi/
6pi@raspberrypi:~/WiringPi $ ./build

Danach ist das Programm wie erwartet ausführbar.

Vergleich des Systemverhaltens

Zur Analyse bietet sich der HP 53310A-Modulationsdomänenanalysator an. Unter Debian Bullseye zeigt sich – wie in den beiden Abbildungen gezeigt – eine Mehrkern-Dividende in Form wesentlich stabilerer Wellenformen am Zero 2W.

Interessant ist ein Vergleich gegen die Vorgängerversion Buster – in beiden Fällen sind die resultierenden Wellenformen wesentlich stabiler.

Fazit

Unterm Strich bietet der neue Raspberry Pi Zero 2W – unter Anderem auch Stichwort schnellerer WLAN-Transmitter – für’s im Allgemeinen gleiche Geld wesentlich mehr an Rechenleistung. Die neue Debian-Version erwies sich in Tests des Autors soweit als stabil; Anlass zur Kritik gibt es keinen.

(Bildquelle alle: Ing. Tam HANNA / BSc, eigene Kamera)

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More