Die RS232-Dimmerpacks können über ein sehr einfaches, binäres Datenprotokoll angesteuert werden. Im Folgenden soll dieses Protokoll etwas näher beschrieben werden, um eigene Nachbauten zu ermöglichen.

Das Datenpaket (Frame) wird seriell mit insgesamt 6 Bytes übertragen. An einen RS232-Bus können maximal 16 unterschiedliche Module angeschlossen werden. Weiterhin können jedoch auch Module mit gleicher Adresse angeschlossen werden, wobei dann natürlich beide Module gleichzeitig angesprochen werden.

 

Ein Frame sieht wie folgt aus:

        7 6 5 4 3 2 1 0
Byte 0: 1 A A A A C C C (Adresse)
Byte 1: 0 B B A V I S S
(AUX-PD6, AUX-PD5, neue Adresse/Kanalwertabfrage/Informationen/Fadezeit)
Byte 2: 0 F F F F F F F
(Fadezeit)
Byte 3: 0 F F F F F F F
(Fadezeit)

Byte 4: 0 F F F F F F F
(Fadezeit)

Byte 5: 0 E E E E E E E
(Endwert bzw. neue Adresse)

 

Bit 0 eines jeden Bytes gilt als Startbit. Ist es high, also "1", dann wird der Beginn eines neuen Frames markiert.

 

Byte 0 enthält

  • Bit 7: 1 Startbit
  • Bit 6-3: 4 Bit für die Geräteadresse (ID)
  • Bit 2-0: 3 Bit für die Kanalwahl. So stellt sich Kanal 8 in binärer Schreibweise als "0000111" dar, der Kanal 128 als "1111111" (intern wird ab Kanal 0 gerechnet, also ist Kanal 8 eigentlich Kanal 7). So kann jeder Kanal von 1 bis 128 konkret angesprochen werden.

 

Byte 1 enthält

  • Bit 6: Möglichkeit PD6 per RS232 zu setzen
  • Bit 5: sofern PD5 nicht für LED genutzt wird (siehe Compilerschalter) kann man PD5 per RS232 setzen
  • Bit 4: wenn gesetzt, dann wird Byte 5 als neue SoftID in EEPROM geschrieben
  • Bit 3: wenn gesetzt, werden aktuelle Kanalwerte per UART gesendet
  • Bit 2: wenn gesetzt, werden Informationen über die aktuelle Firmware per UART gesendet
  • Bit 1-0: 2 Bit große Schrittweite ("S"), die beim Faden benötigt wird

 

Byte 2-4 definieren die Fadezeit, mit der eine Kanalwertänderung durchgeführt werden soll. Dieser Wert wird durch eine eigene Routine des Senders aus Werten in Millisekunden berechnet. Diese Routine kann aus dem jeweiligen Sourcecode entnommen werden (siehe Downloadseite). Das Faden wird dabei in 255 Schritten durchgeführt.

 

Byte 5 setzt letztendlich den Wert, auf den der jeweilige Kanal gesetzt werden soll, bzw. bei gesetzem Bit 4 von Byte 1 auch die neue SoftID. (Werte von 0-127)

Möchte man selbst ein Programm entwerfen, so muss lediglich obiges Datenpaket verschickt werden. Die Übertragungsgeschwindigkeit liegt je nach Einstellung und verwendetem Quarz zwischen 9600 und 115200 Baud.

 

 

Bei weiteren Fragen bitte im Forum eine Frage zu diesem Thema stellen.