+ if (dmx_state == DMX_STATE_IDLE) {
+ if (dmx_next_len) {
+ // We have a new packet to send
+ debug_printf("Sending new packet: %d bytes\n", dmx_next_len);
+ memcpy(dmx_packet, dmx_next_packet, dmx_next_len);
+ dmx_len = dmx_next_len;
+ dmx_next_len = 0;
+ dmx_send();
+ last_send = ms_ticks;
+ } else if (ms_ticks - last_send >= 100) {
+ // Re-send every 100 ms
+ // debug_printf("Re-send: %d bytes\n", dmx_len);
+ dmx_send();
+ last_send = ms_ticks;
+ }
+ }
+