Mem |
Config |
Beschreibung |
0 |
chan0 | Helligkeitswert des jeweiligen Kanal. Bit 0..6 : Helligkeit Bit 7: Ein/Aus (Bei Werten < 128 bleibt der Kanal komplett aus) |
1 |
chan1 | |
2 |
chan2 | |
3 |
chan3 | |
4 |
setup | Bit 0..3: Taster 0..3 steuert Kanal 0..3 Bit 4..7: Taster 0..3 darf Kanal NICHT dimmen |
5 |
fallback | Bei fehlerhafter Kommunikation wird die Fallback-Config anstatt setup verwendet. |
6 |
grundoffset | Offset im PWM Betrieb |
7 |
tastdown | Bit 0..3: Taster 0..3 gedrückt Bit 4..7: Taster 0..3 lang gedrückt |
8 |
dim_to0 | Helligkeitswert zu dem hingedimmt werden soll, oder der Pulswert |
9 |
dim_to1 | |
10 |
dim_to2 | |
11 |
dim_to3 | |
12 |
dim_time0 | Zeit in ms die vergehen muss zwischen 2 Helligkeitswerten beim hindimmen |
13 |
dim_time1 | |
14 |
dim_time2 | |
15 |
dim_time3 |
#define |
default |
Beschreibung |
CFG_TXHF | 16 |
Halbe Periodendauer in Takten der Sendefrequenz |
CFG_CHAN0 | 127 |
Inithelligkeit Kanal 0 |
CFG_CHAN1 | 127 |
Inithelligkeit Kanal 1 |
CFG_CHAN2 | 127 |
Inithelligkeit Kanal 2 |
CFG_CHAN3 | 127 |
Inithelligkeit Kanal 3 |
CFG_THRESHOLD | 20 |
Empfangsempfindlichkeit |
CFG_SETUP | 0x0F |
Init-Setup |
CFG_FALLBACK | 0x0F |
Init-Fallback |
CFG_PWM | 0 |
(0/2) Phasenannschnittsteuerung/PWM-Mode |
CFG_OFFSET | 75 |
Init-Grundoffset im PWM-Betrieb |
CFG_KEYXOR | 0 |
Tasten werden invertiert (und Pullups abgeschaltet!) |
NEG_HW | defined |
Die Ausgänge werden mit negativer Logik angesteuert |
INT1_TXCTL | undef |
Interrupt 1 zum Modulieren des Senders anstatt Nullspannungsdetektor |
DEV_ID | [0..127] |
Eindeutige Device ID |
# |
Byte |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Beschreibung |
Länge | CRC |
0 |
R |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
Sync-Byte | CRC=0 | |
1 |
C |
C |
C |
C |
L |
L |
L |
L |
Länge | L=Byte[1] & 0x0F | CRC=Byte[1] | |
Repeat-Counter | ||||||||||||
2 |
ACK |
ID |
ID |
ID |
ID |
ID |
ID |
ID |
Destination ID | L-- | ^CRC | |
Ack-Flag | ||||||||||||
3 |
0 |
ID |
ID |
ID |
ID |
ID |
ID |
ID |
Source ID | L-- | ^CRC | |
4 |
S |
S |
S |
S |
S |
S |
S |
S |
Sequenznummer | L-- | ||
Data |
Payload | L-=0..12 | ||||||||||
>=5 |
CRC |
CRC |
CRC |
CRC |
CRC |
CRC |
CRC |
CRC |
Checksumme | L == 0? | ^CRC, CRC == 0? |
Datenpaket | Antwortpaket (hat gesetztes Ack-Flag) | |||||
CMD |
Data1 |
Data2 |
Data3 |
Data4 |
Respond |
|
set | <mem> | <val> |
! |
|||
Setzt in die Speicherzelle mem [0..15] der Konfiguration
auf den Wert val [0..255] |
||||||
toggle | <chan> |
! |
||||
Toggled den Kanal chan [0..3], der letzte Dimwert bleibt erhalten |
||||||
high | <chan> |
! |
||||
Setzt den Kanal chan [0..3] auf high, der
letzte Dimwert bleibt erhalten |
||||||
low | <chan> |
! |
||||
Setzt den Kanal chan [0..3] auf low, der
letzte Dimwert bleibt erhalten |
||||||
dimto | <chan> | <val> | <delay> |
! |
||
Dimmt den Kanal chan [0..3] auf
die Helligkeit val [127..255] mit einem Schrittabstand von delay
[0..255] ms Wenn fertig wird das EVENT_DIMFINISH ausgelöst |
||||||
pulse | <chan> | <ms> |
! |
|||
Setzt den Kanal chan [0..3] für
die Dauer von 100 * ms [0..255] |
||||||
query | <mem> |
= |
<val> | |||
Fragt die Speicherstelle mem [0..15]
ab, awortet mit dem Wert val [0..255] |
||||||
burst | <ch0> | <ch1> | <ch2> | <ch3> |
! |
|
Setzt die Helligkeit der Kanäle 0..4
auf den jeweiligen Wert [0..255] gleichzeitig |
||||||
config |
: |
12* <Data> |
||||
Gibt die ersten 12 Bytes des Config-Array
zurück |
||||||
raw | <raw> | <raw> | ... |
! |
||
Raw-Commands zum Variieren der Sendefrequenz
und Empfangsempfindlichkeit (gefährlich, Modul evtl nicht mehr ansprechbar bis zum nächsten Reset) |
||||||
event | <event> |
! |
||||
Der Eventhandler (nur im Master) reagiert
auf die entsprechenden Events und führt die zugehörigen Skripte
aus Der Eventtyp steht im high-nibble [0..15], ein eventueller Parameter im low-nibble [0..15] |
||||||
sonstige |
? |
|||||
Auf ungültige Befehle wird mit "?" geantwortet |
Ein Event wird als Byte mit high-nibble <eventID> und low-nibble <param> übertragen
ID |
Event |
Beschreibung |
1 |
EVENT_DIMFINISH | Der Dimto-Befehl hat fertig gedimmt |
2 |
EVENT_PRESS | Es wurde die Taste param gedrückt |
3 |
EVENT_PRESSLONG | Es wurde die Taste param lange gedrückt |
4 |
EVENT_RELEASE | Es wurde die Taste param losgelassen |
5 |
EVENT_RELEASELONG | Es wurde die Taste param zuerst lange gedrückt und jetzt losgelassen |
6 |
EVENT_POWERON | Das Modul wurde neu gestartet |