DigiSparkBlinkStick

vorhergehende Artikel in: Hardware Git(lab|hub)
16.07.2020

Ich habe hier - es ist bereits etwas länger her - bereits über Experimente mit dem Digistump geschrieben. Neulich stolperte ich über einige Artikel, die mein Interesse erneut anfachten...

Beim Stöbern während der Quarantäne las ich unter anderem neues über Raspi-Cluster und als ich einigen der Links folgte, wurde ich an meine früheren Versuche erinnert. Einer der Links führte mich zu einer Seite, wo jemand bechrieb, dass er genau dieses Projekt erfolgreich durchgeführt hatte.

Das gab den Ausschlag, mich noch einmal selber dahinter zu klemmen...

Ich dachte zunächst darüber nach, meiner ursprünglichen Idee zu folgen und die Realisierung über die ursprünglich von DigiSpark angebotene "dumme" RGB-Led anzustreben. Nachdem der Code dafür funktionierte und ich ein entsprechendes Repository eingerichtet hatte bemerkte ich, dass Digispark aufgerüstet hatte: Das Kit mit der dummen Led gab es gar nicht mehr - das RGB-Led-Kit hat sich inzwischen in eines mit einer "smarten" Led verwandelt.

Da ich inzwischen aus Experimentiergründen solche Leds angeschafft hatte, habe ich erfolgreich versucht, dieselbe Funktionalität auch mit einer solchen smarten Led umzusetzen - daraus entstand ein erster Branch des Projekts.

Als ich einige weitere Kommandos für unterschiedliche Modi einführen wollte stieß ich auf ein Hindernis, das durch den extrem begrenzten "Massenspeicherplatz" im AtTiny85 dargestellt wurde. Ich hatte bis dahin noch die Arduino-Bibliothek zur Ansteuerung von NeoPixels verwendet. Diese verbrauchte einen enormen Anteil der zur Verfügung stehenden reichlich 6000 Bytes.

Eine Recherche im Internet förderte schließlich eine sehr gute Anleitung zu Tage, wie man solche smarten Leds "von Hand" per Bit-Banging ansteuert. Da diese so nicht sofort mit dem AtTiny85 funktionierte, habe ich sie - unterstützt von weiteren Informationen aus dem Internet angepasst und konnte damit die Codegröße drastische reduzieren um Platz für weitere Ideen zu schaffen.

Als ich so weit war, dass erst einmal alle meine Ideen für unterschiedliche Betriebsmodi und die zugehörigen Kommandos umgesetzt waren, entschloss ich mich, einen ersten Prototypen mit einer smarten Led zusammenzulöten. Natürlich steckte ich zunächst einmal alles auf einem Steckbrett zusammen und stellte fest, dass die Äußerung "WS2812-kompatibel" bei besonders günstigen Angeboten nicht immer ernstzunehmen ist: die von mir beschafften PL9823-F8 vertauschten die Farben Rot und Grün im Protokoll - daher existiert jetzt ein weiterer Branch.

Das System beherrscht nunmehr folgende Modi:

  • freie Farbwahl im RGB-Farbraum
  • Leuchten in der gewählten Farbe
  • Blinken in der gewählten Farbe
  • Einstellen der Dauer für "Led an" und "Led aus"
  • Einstellen einer endlichen Anzahl von Blinks
  • Wiederholen der eingestellten Anzahl von Blinks nach einer konfigurierbaren Pause
  • Konfigurieren der Anzahl von Wiederholungen
Hier noch einige Links, die mir bei der Umsetzung geholfen haben:

Artikel, die hierher verlinken

Mosquitto MQTT Broker on Docker@Raspi

25.07.2020

Nachdem ich in letzter Zeit wieder verstärkt neue Dienste in meinen Docker-Zoo integriert habe, habe ich nach Fertigstellung der ersten Version meiner Interpretation des BlinkStick einen weiteren Dienst "containerisiert"

DigiSparkBlinkStick II

25.07.2020

Ich habe vor kurzem darüber berichtet, wie ich meinen eigenen BlinkStick realisiert habe

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • CI/CD mit shellcheck

    13.10.2019

    Ich habe mich entschlossen, in meinen diversen Shell-Projekten shellcheck als Mittel zur Qualitätssicherung einzusetzen.

    Weiterlesen...

Neueste Artikel

  • Linux-System SBOM visualisiert als Graph

    In meinem $dayjob kam neulich die Frage auf, ob es möglich wäre, die aktuelle Softwareinstallation eines Linux-Systems als Software Bill of Materials (SBOM) zu exportieren.

    Weiterlesen...
  • Visualisierung von Datenmodellen als gerichtete Graphen

    Ich habe - motiviert durch meine Experimente zur Visualisierung von Paketabhängigkeiten in Linux-Installationen als interaktive Graphen - versucht, relationale Datenmodelle in ähnlicher Form zu visualisieren und dazu zwei Plugins für die sQLshell geschrieben.

    Weiterlesen...
  • Carl Sagan - Christmas Lectures at the Royal Institution

    Die Royal Institution hat in ihren Schätzen gegraben und die Christmas Lectures von Carl Sagan auf Youtube nochmals veröffentlicht. Meiner Ansicht nach unbedingt lohnenswert für alle, die Englisch verstehen!

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.