Geräte unter eigenem Namen: udev rules

Geräte unter eigenem Namen: udev rules
Das Problem Unter Linux wird jedem verbundenen Gerät ein Pfad zugeordnet. So erscheint z.B. ein verbundener Esp8266 Microcontroller als (serielle) Schnittstelle /dev/ttyUSB0. Sind noch mehr Geräte verbunden, so erscheinen diese als /dev/ttyUSB1, /dev/ttyUSB2 usw. Welches Gerät ist aber nun welche Schnittstelle? Und sind diese nach dem Reboot noch gleich? Die Lösung: udev rules Um dies sicher zu stellen erstellt man eine Regel mit udev: Zunächst identifizieren wir, welches Gerät wir haben wollen.
Read more →

Dateien finden mit fd

Dateien finden mit fd
Das Tool find ist ein praktisches Programm und Dateien und Ordner zu finden. Find kann aber auch komplexere Aktionen wie z.B. mehrere Dateien konvertieren. Leider ist es jedoch nicht allzu einsteigerfreundlich. Hier kommt fd ins Spiel: Das Open-Source Programm erledigt nahezu alle Aufgaben von find, ist aber einfacher zu bedienen. Beispiel1 Finde alle Dateien mit der Zeichenfolge schuh im Namen: find: find . -iname '*schuh*' fd: fd schuh Beispiel 2 Finde alle .
Read more →

Skripte schöner abbrechen

Skripte schöner abbrechen
Statt jede Zeile eines Shell-Skripts auf korrekte Ausführung zu überprüfen und gegebenenfalls abzubrechen, hilft folgendes: #!/usr/bin/env bash set -Eeuo pipefail Diese Zeile führt beim Fehlerfall einer Zeile zum Abbruch des gesamten Skripts. Praktisch!
Read more →

Docker services via docker-compose und systemd template

Docker services via docker-compose und systemd template
Docker ist das derzeit omnipresente Werkzeug um Dienste in Containern auszuführen. Wie kann man jedoch einen logischen Verbund an Diensten mit dem System zusammen starten? Mit der Hilfe von Docker können Anforderungen eines Dienstes (z.B. Gitlab) an die Distribution innerhalb eines Containers befriedigt werden. Das ausführende System aussenherum bleibt davon unberührt und kann auch eine inkompatible Distribution sein. In der Praxis werden jedoch oft mehrere Dienste in einem Verbund benötigt. Diese können mit dem Tool docker-compose beschrieben und gestartet werden.
Read more →

Python auf dem ESP8266

Python auf dem ESP8266

Der ESP8266 ist ein kleiner Mikrocontroller, den es für kleines Geld in verschiedenen Ausführungen und von verschiedensten Herstellern gibt. Das kleine 32-Bit Board besticht neben einfacher Zugänglichkeit, niedrigem Preis und einem on-board WLAN Modul.

Für viele Zwecke lohnt sich ein Blick auf Micropython als Alternative zu “klassischer” Arduino C++ Entwicklung für das kleine Wunderwerk.

Diese auf Python 3 basierende, spezialisierte Version von Python bringt vieles mit, was man sich auf einer Entwicklungsplattform wünscht:

  • Interaktive Programmierung/Nutzung des Geräts mit REPL
  • Bibliotheken für Netzwerkkonfiguration
  • Bibliotheken für Schnittstellen (Pins, I2C, SPI, …)
Read more →