FastLED 3.10.6
Loading...
Searching...
No Matches

◆ buildWave10Lut()

Wave10Lut fl::buildWave10Lut ( const ChipsetTimingConfig & timing)

Build a Wave10 LUT from chipset timing parameters.

Computes UART byte patterns that produce correct LED waveforms when transmitted with TX inversion at the derived baud rate.

The 10-bit UART frame is modeled as two 5-pulse LED bit slots:

  • Bit A: [START=H] [D0..D3] – START provides leading HIGH edge
  • Bit B: [D4..D7] [STOP=L] – STOP provides trailing LOW

For each LED bit value (0 or 1), the HIGH pulse count within its 5-pulse slot is computed from the chipset's T0H/T1H timing.

Parameters
timingChipset timing configuration
Returns
Populated Wave10Lut, or all-zero LUT if timing is infeasible

Definition at line 217 of file uart_wave_encoder.cpp.hpp.

217 {
219}
constexpr u32 kMaxUartBaudRate
Maximum UART baud rate supported by ESP32 variants.
Wave10Lut buildWave10LutForMaxBaud(const ChipsetTimingConfig &timing, u32 max_baud_rate) FL_NO_EXCEPT
Build a UART waveform LUT with a backend-specific baud ceiling.

References buildWave10LutForMaxBaud(), FL_NO_EXCEPT, and kMaxUartBaudRate.

+ Here is the call graph for this function: