Articles tagged with pyduin

  • 🔗Pyduin 0.6.4 Release

    Neue Version von pyduin verfügbar.

    Hauptsächlich Qualitätssicherung durch pytest, yamllint und pylint. Unter der Haube wurden Pinfiles zu Boardfiles. Das Wording emanzipiert sich zunehmend von der Arduino-Umgebung. Es macht mehr Sinn, von Devices zu sprechen.

    Bei den Tests setze ich erstmalig auf pytest und das funktioniert nach einigen Startschwierigkeiten sehr gut und spart tatsächlich eine Menge Code. Die coverage liegt derzeit bei 78% und deckt die neuralgischen Punkte ab.

    Es gibt jetzt eine Github-Pipeline. Alle Tests können nach wie vor lokal mit tests.sh lokal getestet werden.

    Mit dem sparkfun_promicro16 wird ein neues Gerät unterstützt. Kleine Firmwarebugs wurden beseitigt. Das Abrufen der gesetzten Modi bei einem Pin funktioniert nun korrekt. Das Protokoll zwischen Code und Mikrocontroller ist nun etwas weniger komplex und intuitiver.

    Im Boardfile können nun Zusatzfunktionen für Pins abgelegt werden.

    pins:
        [...]
        - physical_id: 12
          extra:
            - led1
            - mosi
            - miso
    

    Die erste Funktionalität, die damit arbeitet, erlaubt das Ansprechen der definierten LEDs über ihre Namen. Z.B.:

    pyduin -B buddy led1 on
    
  • 🔗Pyduin 0.6.3 Release

    Neue Version von pyduin verfügbar.

    Die neue default_buddy-Option erlaubt das definieren eines Buddies aus der Buddylist. Damit werden Kommandozeileneingaben noch kürzer, wenn nur ein Gerät im Einsatz ist. Beispiel:

    pyduin p 13 h
    

    Es ist nun auch möglich Aliasnamen für Pins zu vergeben. Da viele Nutzer an Pinnamen wie A0 oder auch D1 gewöhnt sind, halte ich das für ein sinnvolles Feature. Last, but not least: Arbeiten an Unittests, Pinfiles refaktorieren, Pylint Action auf Github aktivieren, Badges ins Readme, Readme aktualisieren, Code aufräumen.

    Die Implementation von analogRead ist auch durch. Damit machen auch die Pinaliasnamen dann voll Sinn, wenn man in Arduino-Terminologie denkt.

    pyduin p A0 read
    
  • 🔗Pyduin 0.6.1 Release

    Nach mehrjähriger Pause habe ich pyduin nach Python3 portiert und einige wesentliche Verbesserungen vorgenommen.

    Das Kommandozeileninterface ist nun aus meiner Sicht deutlich einfacher strukturiert und effizienter zu bedienen.

    Zum flashen der Zielgeräte kommt nun platformio zum Einsatz. Eine enorme Komplexitätsreduktion. Gleichzeitig wird die Anzahl der potentiellen Zielgeräte massiv gesteigert.

    Das Packagaing wird nun nicht mehr über setup.py, sondern über pyproject.toml abgewickelt, was die Entwicklung deutlich vereinfacht.

    Im nächsten Release wird es wieder mehr um Features gehen. Es sind noch nicht alle Funktionalitäten für die Pins implementiert. PWM, OneWire und die DHT Sensoren sind die nächste Zielmarke.