Schlagwort-Archive: Arduino

BitBastelei #234 – WS2812B (Neopixel) Uhr

Die WS2812B, auch bekannt als Neopixel, sind RGB-LEDs mit internem Steuer-IC, welche sich über einen einzelnen Datenpin kaskadieren und separat ansteuern lassen. Als in meinem Feed ein Angebot für ¼-Kreise mit 15 dieser LEDs durchtickerte war der Plan schnell klar: 4 ¼-Kreise á 15 LEDs macht 60 LEDs. Passend für eine Uhr. Mal schauen, ob es auch funktioniert.
Zur Zeithaltung kommt ein DS3231 zum Einsatz – ein I²C-Chip, welcher speziell für Uhren gedacht ist und genauer funktioniert als die internen Taktgeber der üblichen µCs.

Inhalt:

  • 00:00 LED-Module & Aufbauplan
  • 08:22 LED-Test mit Adafruit-Library
  • 12:32 Warum RTC statt Systemtakt / millis()?
  • 17:05 Blick auf die Software
  • 34:13 Uhr in Aktion

Code:

Links:

BitBastelei #229 – ICStation.com RF24 Funkmodule

RF24-Module sin ein guter Kompromiss um günstig und einfach Daten mit einem Mikrocontroller wie dem Arduino per Funk zu übertragen. Das Modul übernimmt dabei viele Aufgaben zur Sicherstellung einer korrekten Übertragung, sodass der µC weniger Aufgaben erledigen muss.

Mit dem Rabattcode: bitics gibt es 15% Rabatt auf das Sortiment von ICStation

BitBasics: Funk-Datenübertragung per Mikrocontroller

Nicht immer kann ein ein Kabel legen um Daten eines Mikrocontrollers wie dem Arduino zu ihrem Ziel zu bringen. Hier zeige ich die bekanntesten Möglichkeiten um mit Mikrocontrollern Daten drahtlos zu übertragen.

Arch Linux / Arduino: libtinfo.so.5 fehlt

Bei der Nutzung der Arduino-IDE kommt es zur Zeit unter Arch Linux zu Problemen in Zusammenhang mit AVR-Boards. Ursache ist, dass Arduino seit einigen Versionen nicht mehr die Tools des System nutzt, sondern auf vorkompilierte Binärdateien setzt. Diese Alles-dabei-Conteiner versprechen auf den ersten Blick eine Vereinfachung, fliegt aktuell leider etwas auseinander: Die beigelegten Programme sind an vielen Stellen gegen überholte Bibliotheken gebaut. Dies verschafft zwar Kompatibilität mit trägen Systemen wie z.B. Debian, macht eine Nutzung mit aktuellen Systemen umständlich.

Schaut man sich die Fehlermeldung genauer an findet man schnell heraus, dass der beigelegte avrdude die Probleme auslöst:

Libtinfo wurde zwischenzeitlich wohl in Ncurses übernommen, zudem benötigt Arduino/avrdude eine ältere, normalerweise nicht mehr installierte API der ncurses-Library.

Wer die Libraries passend haben möchte muss zuerst ncurses5-compat-libs installieren um die alten API-Versionen nachzurüsten, im Anschluss sorgt das Dummy-Paket libtinfo dafür die alten Dateinamen auf ncurses umzubiegen.

BitBastelei #224 – USB Power Monitor – Software

In Folge #222 hatten wir einen USB Power-Monitor gebaut, welcher Spannung und Strom misst und somit auch mAh und mWh berechnen können soll. Diesmal geht es um die Softwareseite – alles kein Hexenwerk (und vermutlich mit unzähligen Bugs), aber ein gutes Beispiel wie man verschiedene, einfache Codefragmente zu einer nützlichen Software kombinieren kann.

(Der Quellcode-Download folgt später – Congress und so)

BitBastelei #222 – USB Power Monitor – Hardware-Überlegungen

Den USB Charger-Doctor und seine Gefährten dürften die meisten von euch kennen. Die kleinen Geräte können Spannung und Strom eines USB-Anschlusses messen und anzeigen. Leider fehlen mir ein paar Funktionen wie z.B. ein PC-Anschluss um die Daten aufzeichnen zu können. Also: Bauen wir uns selbst einen.

Ergänzungen:

Einem aktuellen Video von Hugatry’s HackVlog nach sollte sich auch Qualcomm Quick Charge erkennen lassen (EN):
https://www.youtube.com/watch?v=UYRZ0t5eyjE

Etwa zeitgleich hat auch Great Scott Labs ein ähnliches Gerät gebaut. Er nutzt statt einer PC-Anbindung eine SD-Karte zum aufzeichnen (EN):
https://www.youtube.com/watch?v=lrugreN2K4w

BitBasics OLED: Unterschiede & Ansteuerung mit Arduino

OLEDs werden in letzter Zeit auch bei vielen Bastlern immer beliebter. Statt einer Pixelmatrix mit Flüssigkristallen und externer Beleuchtung sorgen hier organische Komponenten für selbstleuchtende Bildpunkte. Durch die Technologie erreichen sie einen hohen Kontrast und sind auch draußen gut lesbar. Wer sich nicht durch die geringe Lebensdauer abschrecken lässt wird meist bei einem der zahlreichen 0.96″-Modulen mit 124×64 Pixeln und SSD1306-Controller landen. Mit diesen muss man sich nicht mit den zahlreichen Pins des Displays abmühen, sondern erhält einen fertigen Datenanschluss wie z.B. I²C.
Für die Ansteuerung unter Arduino muss man sich dabei nicht erst in das Datenblatt des OLED-Controllers einlesen, sondern kann auf eine der zahlreichen Libraries zurückgreifen. Die vermutlich bekannteste ist U8G2, Nachfolger der beliebten U8GLib. Mit diesen lassen sich Texte und Grafiken mit nur wenig Zeilen ausgeben.

BitBastelei #190 – ESP8266 & AMS2302 WLAN-Temperatur- und Feuchtesensor

Vor etwa einem Jahr hatte ich als Beispiel schon mal einen DHT22/AMS2302 Temperatur- und Feuchtesensor mit dem ESP8266 verbunden. Seinerzeit recht ineffizient mit fertiger Firmware. Da ich für einen Serverraum kurzfristig ein Monitoring brauche legen wir das Ganze nochmal neu auf – diesmal mit eigener Firmware, welche die Daten direkt an Volkszähler oder einen anderen Dienst sendet und zwischen den Messungen stromsparend in den Schlafmodus geht. Leider ist bei dem hier verwendeten ESP-01 eine Hardwaremodifikation nötig um Deep-Sleep zu ermöglichen.

Zeitmarken

  • 00:00 Aufbauplanung
  • 04:54 Deep-Sleep-Modifikation
  • 06:22 Software
  • 19:01 Flashen & ESP01-Stromverbrauch
  • 23:53 Vom Breadboard zum Streifenraster / 3.3-Regler
  • 29:15 Fazit

Links zum Thema

BitBastelei #190 — ESP8266 & AMS2302 WLAN-Temperatur- und Feuchtesensor weiterlesen

BitBastelei #177 – 7-Segment-„Cloud“-Anzeige (1/2)

Was macht man, wenn man ein paar 7-Segment-Anzeigen mit 7cm Höhe bekommt? Basteln natürlich!

Part 1:
– 7-Segment-Anzeigen: Typen, Aufbau, …
– Ansteuerung per Matrix

Ähnliche Projekte:
GreatScottLabs: https://www.youtube.com/watch?v=xpdpDo-gR3Q
SDGEE: https://www.youtube.com/watch?v=Ov27rac0tP0