docs(light,e131): zwei Stellen benennen, die sonst wie Versehen aussehen
nl_engine_override_active() hat keinen Aufrufer im src/-Baum - die Firmware fragt nl_dmx_active(). Die Funktion bleibt, weil die Engine-Tests sonst keinen Blick auf den Override-Zustand haben; der Header sagt das jetzt, damit niemand nach dem Aufrufer sucht. Der E1.31-Parser ueberliest Synchronisationsadresse und das Bit "force synchronization". Fuer eine einzelne Lampe ist sofortige Ausgabe richtig - auf ein Sync-Paket zu warten hiesse, bei einem Sender mit gesetzter Adresse dunkel zu bleiben. Der Kommentar nennt es als bewusste Abweichung von E1.31-2018 Abschnitt 6.2.4.1.
This commit is contained in:
@@ -36,6 +36,9 @@ void nl_engine_override(const uint8_t ch[NL_CH_COUNT]);
|
||||
/* Beendet den Override. fade_ms > 0 blendet im Kanalraum auf das zurueck, was die
|
||||
* Fade-Engine gerade ausgeben wuerde; 0 schaltet sofort um. */
|
||||
void nl_engine_override_clear(uint32_t fade_ms);
|
||||
/* Nur fuer die Tests: sie haben sonst keinen Blick auf den Override-Zustand der Engine.
|
||||
* Die Firmware fragt stattdessen nl_dmx_active() - wer hier nach einem Aufrufer im
|
||||
* src/-Baum sucht, findet zu Recht keinen. */
|
||||
bool nl_engine_override_active(void);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -20,6 +20,12 @@ static bool pdu_len_ok(const uint8_t *p, size_t len, size_t from)
|
||||
return (size_t)(fl & 0x0fffu) == len - from;
|
||||
}
|
||||
|
||||
/* Bewusste Abweichung von E1.31-2018 Abschnitt 6.2.4.1: die Synchronisationsadresse
|
||||
* (Offset 109-110) und das Options-Bit "force synchronization" werden ueberlesen, das Paket
|
||||
* wird sofort ausgegeben. Eine einzelne Lampe hat nichts zu synchronisieren, und auf ein
|
||||
* Sync-Paket zu warten hiesse, bei einem Sender mit gesetzter Adresse dunkel zu bleiben.
|
||||
* Das ist kein Versehen - fuer mehrere gemeinsam getaktete Empfaenger muesste es nachgeruestet
|
||||
* werden. */
|
||||
bool nl_e131_parse(const uint8_t *buf, size_t len, nl_e131_packet_t *out)
|
||||
{
|
||||
static const uint8_t acn_pid[12] = { 'A', 'S', 'C', '-', 'E', '1', '.', '1', '7', 0, 0, 0 };
|
||||
|
||||
Reference in New Issue
Block a user