Fensterbogenbeleuchtung: Unterschied zwischen den Versionen
Marenz (Diskussion | Beiträge) Die Seite wurde neu angelegt: „Die LEDs sind oben auf den Fensterrahmen geklebt. Damit wird der Fensterbogen beleuchtet. Datei:fensterbogenbeleuchtung_1.jpg|200px|thumb|right|Momentan ist…“ |
Marenz (Diskussion | Beiträge) |
||
Zeile 9: | Zeile 9: | ||
Ansprechbar ist die Belechtung mittels ein Protokoll basierend auf ''UDP'' mit den Port ''49152''. | Ansprechbar ist die Belechtung mittels ein Protokoll basierend auf ''UDP'' mit den Port ''49152''. | ||
== Protokoll == | |||
C ≙ Client | |||
S ≙ Server (Fensterbogenbeleuchtung) | |||
LEN ≙ Länge von nachfolgenden Bytes (2 Bytes) | |||
ERROR ≙ spezifischer Fehler(code) | |||
=== INFORMATION === | |||
C: "i" + 0x00 | |||
S: "i" + LEN + JSON-Beschreibung || "e" + LEN + ERROR | |||
JSON-Beschreibung := | |||
{ | |||
"leds": # leds, | |||
"max_protolen": # | |||
} | |||
=== SET === | |||
C: "s" + LEN + [ledid (2 Byte) + GRB (3 Byte)] ... | |||
S: "s" + 0x00 || "e" + LEN + ERROR | |||
=== RANGESET === | |||
C: "r" + LEN + offset (2 Byte) + GRB (3 Byte) ... | |||
S: "r" + 0x00 || "e" + LEN + ERROR | |||
=== ALLSET === | |||
C: "a" + LEN + GRB | |||
S: "a" + 0x00 || "e" + LEN + ERROR |
Version vom 10. Oktober 2016, 20:20 Uhr
Die LEDs sind oben auf den Fensterrahmen geklebt. Damit wird der Fensterbogen beleuchtet.
Funktionsweise
Gesteuert werden die LEDs (WS2812) durch einen Microcontroller (ATMega328P) welcher mittels Netzwerk (ENC28J60) angebunden ist.
Dieser ist im Choasnetz unter der IP 172.23.92.247 erreichbar.
Ansprechbar ist die Belechtung mittels ein Protokoll basierend auf UDP mit den Port 49152.
Protokoll
C ≙ Client
S ≙ Server (Fensterbogenbeleuchtung)
LEN ≙ Länge von nachfolgenden Bytes (2 Bytes)
ERROR ≙ spezifischer Fehler(code)
INFORMATION
C: "i" + 0x00
S: "i" + LEN + JSON-Beschreibung || "e" + LEN + ERROR
JSON-Beschreibung := {
"leds": # leds, "max_protolen": #
}
SET
C: "s" + LEN + [ledid (2 Byte) + GRB (3 Byte)] ...
S: "s" + 0x00 || "e" + LEN + ERROR
RANGESET
C: "r" + LEN + offset (2 Byte) + GRB (3 Byte) ...
S: "r" + 0x00 || "e" + LEN + ERROR
ALLSET
C: "a" + LEN + GRB
S: "a" + 0x00 || "e" + LEN + ERROR