LED-Stripe: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
(oopsie)
Zeile 28: Zeile 28:


Per UDP an ledbeere:2342 für 226 LEDs:
Per UDP an ledbeere:2342 für 226 LEDs:
* Byte 0: Priorität (0 für alles was andauernd läuft, höher für kurzzeitigere Sachen)
* Byte 0: Priorität (255 für etwas was andauernd läuft, niedriger für kurzzeitigere Sachen)
* Byte 1: Kommando (0: CMD_SET_PIXEL_COLORS)
* Byte 1: Kommando (0: CMD_SET_PIXEL_COLORS)
* Bytes 2 & 3: Länge der folgenden Daten in Network Byte Order; für 226 LEDs mit je 3 Byte: 678 = [0x02, 0xA6]
* Bytes 2 & 3: Länge der folgenden Daten in Network Byte Order; für 226 LEDs mit je 3 Byte: 678 = [0x02, 0xA6]

Version vom 8. Januar 2016, 22:04 Uhr

Installation der Hardware

Zwei LED-Streifen à 3 m (206 LEDs) hängen an labilen Böcken in den Vorhangaufhängenischen über den Fenstern im großen Raum im GCHQ.

Steuerung

Controller ist der Pi ledbeere.

Auf ledbeere kann sich per ssh verbunden werden.

Ein Verbinden soll nur innerhalb des Netzes des HQ möglich sein.
ssh pi@172.22.99.206
fe80::ba27:ebff:fe6d:b29b

Code

github:astro/pile

Bislang gibt es folgende Komponenten:

ustriped
Kleiner C-Server der Pixeldaten über UDP entgegennimmt und auf GPIO schreibt; kann Prioritäten
ustripe-simplex
Das gute alte Simplex-Plasma auf Priorität 0
piletop
Sollte das Serversystem in node.js werden, soll mal Konfiguration oder gar Code entgegennehmen und mehrere Ziele bespielen können.


Protokoll

Per UDP an ledbeere:2342 für 226 LEDs:

  • Byte 0: Priorität (255 für etwas was andauernd läuft, niedriger für kurzzeitigere Sachen)
  • Byte 1: Kommando (0: CMD_SET_PIXEL_COLORS)
  • Bytes 2 & 3: Länge der folgenden Daten in Network Byte Order; für 226 LEDs mit je 3 Byte: 678 = [0x02, 0xA6]
  • Dann: 8 bit blau, 8 bit grün, 8 bit rot für 226 LEDs