The short version
Stock WLED provides control and connectivity. The custom fork adds calibrated multi-primary conversion.
This project tests whether WLED, a platform normally associated with decorative LED strips, can control a high-quality indoor architectural luminaire. Producing five PWM outputs is straightforward. The real challenge is combining them accurately and repeatably.
WLED provides networking, presets, effects, a mature user interface and a practical route to an ESP32-based prototype. It already supports analogue RGB, RGBW and five-channel RGBCCT outputs, as well as addressable RGBW and selected addressable RGBCCT chipsets.1 The electrical control needed for a five-output prototype is therefore already in place.
The missing part is the colour model. Stock WLED stores RGB, one white value and a separate CCT blend. It has no native model for mixing red, green, blue, amber and lime as five independent primaries. Stock WLED can drive a basic RGBAL prototype, but it cannot calculate how five measured spectra should be combined to produce a specific white, pastel or saturated colour.
The sdgelectronics/WLED_RGBAL fork adds that capability through four- and five-primary PWM buses, a spectrometer-derived lookup table, 16-bit internal channel data and a calibration API. The software and simulation work are complete. Closed-loop measurements on the finished hardware are the next major stage.13
Stock WLED supports initial commissioning
The PWM RGBCCT bus can be repurposed by mapping its two nominal white outputs to amber and lime while the optics, thermal design and driver stage are being developed.
The fork adds the missing layer
A measured 17³ lookup table converts ordinary RGB requests into calibrated four- or five-channel drive values after WLED's perceptual processing.
The model is promising, not proven
The simulations explain the design choices, but the fixture's spectra, dimming curves, thermal drift and final ΔE still need to be measured on the bench.
Terminology and channel definitions
RGBW, RGBWW, RGBCCT, RGBA, RGBL and RGBAL are related, but they address different lighting requirements.
Each extra letter usually represents another independently driven emitter colour. LED naming is not consistent across strips, fixtures and marketplaces, so the part number, pinout and channel diagram are more reliable than the acronym in a product listing.
| System | Physical channels | What the extra channel is for | Typical strengths | Typical applications | Stock WLED fit |
|---|---|---|---|---|---|
| RGB | 3 | None: white is made by mixing red, green and blue. | Saturated colour, low cost, effects and pixel work. | Decorative strips, signage, gaming, pixels and displays. | Native |
| RGBW | 4 | A dedicated white emitter. It may be warm, neutral or cool. “W” alone does not tell us which. | More efficient and usually more convincing white than RGB alone. | Cove lighting, smart lamps, hospitality and general accent light. | Native |
| RGBWW | 4 or 5 | An ambiguous label. “WW” can mean one warm-white channel, or it can be retail shorthand for two white channels. | Potentially warm white or tunable white. The data sheet must be checked. | Stage fixtures, smart lamps and constant-voltage strip. | Depends on the actual channel count |
| RGBCCT | 5 | Separate warm-white and cool-white channels, blended to change correlated colour temperature. | Useful colour plus efficient, adjustable white for daily illumination. | Architectural strip, smart bulbs, task lighting and circadian-style scenes. | Native as PWM. Selected addressable chipsets are also supported. |
| RGBA | 4 | Amber supplies a direct warm primary instead of synthesising every orange from red and green. | Rich ambers, warmer pastels, tungsten-like looks and useful skin-tone control. | Theatre, event wash, scenery, décor and entertainment lighting. | Not a native colour model |
| RGBL | 4 | Lime is commonly a phosphor-converted, relatively broad green-yellow source. | Bright pastels and whites, useful mid-spectrum energy and improved rendering potential. | Theatre, studio, broadcast, architectural and high-output colour mixing. | Not a native colour model |
| RGBAL | 5 | Amber and lime add two alternative spectral routes through the warm and middle parts of the spectrum. | A flexible experimental engine for saturated colour, nuanced pastels and adjustable white recipes. | Custom architectural luminaires, theatre, studio experiments and research fixtures. | Five outputs can be repurposed. True RGBAL mixing needs custom logic. |
RGBW One white
RGB can produce a visual white point, but three narrow peaks often render coloured objects poorly. A dedicated white LED usually contributes a phosphor-generated band of wavelengths, improves luminous efficiency and makes the system more suitable for general illumination.
The trade-off is a fixed white character. A 2700 K white channel will always be warm, and a 6500 K channel will always be cool. RGB can tint either one, but that is not the same as having two measured white endpoints.
RGBCCT Two whites
This is a practical general-purpose configuration for interior lighting. Warm-white and cool-white channels are cross-faded for working, relaxation and camera presets, while RGB provides decorative colour. WLED has explicit support for this model and exposes a CCT control.2
It is usually the easiest route to high-quality white because the white LEDs themselves can be specified for CRI, R9, CCT and Duv.
RGBA Warm primary
Amber is common in stage and event fixtures because it gives the designer a direct route to warm oranges, firelight and low-CCT looks. Commercial RGBA fixtures are used for stages, dance floors, scenery and performers. Current examples quote broad CCT adjustment and CRI above 90.7
An amber channel does not, by itself, guarantee high-quality white. Its dominant wavelength, bandwidth and balance against the other emitters remain important.
RGBL Middle spectrum
Lime provides a broad, efficient contribution through the green-yellow region where human vision is very sensitive. ETC uses RGBL in compact theatrical fixtures to produce bright colour and high-quality white, while Luminus positions RGBL packages specifically for stage and architectural lighting.89
This broad mid-spectrum output can make pastels brighter and provide a smoother route to white than narrow RGB peaks alone.
So why combine amber and lime?
RGBAL gives the mixer more ways to reach the same target colour. Amber can produce warm oranges directly instead of relying on an inefficient red-and-green mix. Lime supplies efficient mid-spectrum energy for whites and pastels, while amber adds warmth to skin and other materials. Those extra choices can be used to improve brightness, colour rendition, electrical load or thermal headroom.
RGBAL does not automatically enlarge the outer colour gamut. Amber and lime often sit inside the triangle formed by the RGB primaries on a chromaticity diagram. Their main value is better spectral quality and efficiency within that gamut.
Where it is used
Additional primaries are most valuable when a fixture must illuminate real materials, rather than simply produce coloured light.
Architectural interiors
Coves, niches, feature walls, reception areas and hospitality spaces need attractive colour but spend much of their life producing believable white.
Theatre and events
Designers want saturated colours, gel-like pastels, flattering skin and smooth transitions without swapping filters or fixtures.
Film, broadcast and video
Colour rendition, tint control, silent cooling and flicker behaviour matter as much as what the light looks like to the eye.
Retail and display
Food, timber, fabric, paint and skin all expose holes in a light’s spectrum. A matching CCT alone cannot guarantee they look right.
Multi-primary lighting matters because two sources can have nearly identical chromaticity and CCT while producing very different spectral power distributions. Materials reflect those spectra differently, so timber, red paint or skin may look natural under one source and flat under the other.
CRI is still a familiar shorthand, but it compresses a complicated subject into one average. TM-30 adds fidelity (Rf), gamut (Rg) and hue-specific information. The US Department of Energy’s review found that TM-30-based criteria captured preference better than the older single-number approaches in the studies it analysed.10
What WLED actually understands
Five pins do not equal five independent colour primaries.
WLED’s documented light capabilities are RGB, white and CCT. Its JSON colour array contains three or four bytes for RGB or RGBW, while each segment stores CCT separately.3 This suits RGBCCT because the fourth colour value sets the white level and CCT divides it between the warm-white and cool-white emitters.
The official compatibility page dates analogue single-colour, CCT, RGB, RGBW and RGBCCT support to WLED 0.13.1. It also lists addressable WS2805 and FW1906 RGBCCT support from 0.15.0-b2.1 Those are genuine five-channel lighting modes, but they still use the RGB-plus-white-and-temperature model rather than a general five-primary colour vector.
The current PWM bus code makes this explicit. The five-channel type is labelled PWM RGBCCT. It writes RGB directly, calculates the warm-white and cold-white values, then sends them to channels four and five.4
What happens if WW and CW become amber and lime?
The mapping works electrically. The nominal warm-white output drives amber and the cold-white output drives lime. WLED's white slider controls their combined level, while the CCT slider shifts the balance from amber to lime.
For a prototype, this is useful, but it is still an approximation. WLED continues to treat the two channels as a white-temperature pair. Auto-white can add them whenever it extracts white from RGB. Effects also tend to generate RGB values, so they may not use the extra pair in the way a five-primary mixer would. The CCT additive-blending setting changes how strongly both channels can be driven near the centre. WLED notes that high additive blending can increase heat and reduce LED life.2
Repurpose the RGBCCT bus
Configure one five-channel PWM output, wire WW → amber and CW → lime, set auto-white to None while characterising the hardware, and use solid presets. This is the fastest route to a coherent five-emitter demo.
Expose channels as separate buses
Separate one-channel PWM buses or segments are useful for commissioning each emitter and measuring its output. This arrangement becomes cumbersome in normal use and does not create a unified colour engine.
Add a calibrated RGBAL mixer
Keep WLED for network control and presets, but translate its requested RGB/white scene into five linear drive values using measured data. This can live in a custom bus/core patch or in a companion controller.
Example JSON for the preliminary RGBCCT-to-RGBAL mapping
These examples assume a solid effect, amber connected to the warm-white PWM output, lime connected to the cold-white output, and WLED auto-white set to None. The actual amber/lime split also depends on the configured CCT blending mode.
Amber end, RGB off:
{"on":true,"bri":160,"seg":[{"id":0,"fx":0,"col":[[0,0,0,255]],"cct":0}]}Mixed RGB plus an amber-biased amber/lime contribution:
{"on":true,"bri":160,"seg":[{"id":0,"fx":0,"col":[[180,35,8,140]],"cct":96}]}These are control examples, not calibrated colour recipes. Save measured looks as WLED presets once the hardware is stable.
The useful bit of maths
Five primaries provide several ways to produce the same colour. The mixer determines which one to use.
At a fixed temperature and current, additive light is conveniently linear. Measure the CIE XYZ contribution of each emitter and place those measurements into a matrix. A requested target can then be expressed as a weighted mix of the five channels:
Three tristimulus targets and five controls mean that several valid mixtures can produce the same chromaticity and brightness. That freedom is why the extra channels are useful. The solver can favour a mixture that uses less power, stays within channel limits, reduces spectral discontinuities, balances junction temperatures or more closely matches a reference illuminant.
A practical solver uses non-negative channel values and respects current limits. It also needs measured dimming curves because PWM duty, optical output and the human impression of brightness are three different things.
Chromaticity matching is not spectral matching
The XYZ matrix can place the beam at a specified white point, but CRI and TM-30 depend on the complete spectral power distribution. Two mathematically matching white points can render objects differently. A calibrated mixer therefore needs a second objective based on measured spectra. The alternative is to use carefully measured recipes rather than claim universal colourimetric accuracy.
Direct mode versus calibrated mode
Direct control remains useful for bench measurements and selecting individual emitters, but it does not provide fixture-to-fixture matching. Professional manufacturers measure and calibrate individual luminaires because LED wavelength and output vary by bin and temperature. Even nominally identical emitters differ slightly.11
What the modelling shows so far
Amber and lime do not extend the RGB chromaticity triangle, but they can substantially improve output within it.
The model shows that amber and phosphor-converted lime sit inside the triangle formed by red, green and blue on a CIE chromaticity diagram. They do not add a new boundary colour, but they provide brighter and spectrally fuller ways to produce colours that RGB can already match.
The initial model uses the Cree XNPAPL package, with red around 625 nm, green around 528 nm, blue around 458 nm and a modelled PC-lime peak around 558 nm. Adding lime leaves the chromaticity hull area unchanged to four decimal places, but substantially changes the predicted brightness and colour-rendering performance.13
| Modelled target | RGB only | With amber + lime | Change | What it means |
|---|---|---|---|---|
| Amber chromaticity | 7,488 | 39,797 | 5.31× | A direct amber route avoids an inefficient red-green mixture. |
| Lime chromaticity | 15,245 | 91,100 | 5.98× | PC lime puts broad output close to the eye's peak sensitivity. |
| D65 white | 15,485 | 26,118 | 1.69× | The same white point can be reached with substantially more light. |
| CRI Ra at D65 | 38.6 | 68.7 | +30.1 | Broad emitters fill some of the spectral holes between narrow RGB peaks. |
The emitter choices are deliberately different
The first hardware build uses RGBL rather than the final five-colour arrangement. The four-die Cree package places every source within one optical footprint, simplifying colour mixing on the first board. The later RGBAL version will use discrete emitters, which adds flexibility but makes mechanical alignment and beam mixing more difficult.
| Candidate | Channels | Selection rationale | Main compromise |
|---|---|---|---|
| Cree XNPAPL | RGB + PC Lime | First hardware build. Four dies share one package and one optical centre. | It proves RGBL, not a complete RGBAL engine. |
| Cree XNPAPA | RGB + PC Amber | A direct warm channel and a potentially stronger route to some warm whites. | The current model predicts much lower efficacy and weak R9. |
| LUXEON C, discrete | R/G/B or royal blue/A/L | A genuine five-channel RGBAL arrangement with freedom to choose every primary. | Several source positions make beam homogenisation much harder. |
Why the working white point became 3000 K
A sweep of the Planckian locus from 2200 K to 6500 K found that 3000 K gave the best overall balance of CRI Ra, TM-30 Rf and saturated-red rendering R9. Moving to 2700 K improved Ra by only 0.1 point but reduced R9 by almost 12 points, which is a poor trade for skin, timber and other warm materials.
| White point | CRI Ra | TM-30 Rf | R9 | Model efficacy |
|---|---|---|---|---|
| 2200 K | 85.2 | 87.7 | 70.5 | 97.6 lm/W |
| 2700 K | 91.0 | 88.2 | 85.3 | 104.1 lm/W |
| 3000 K (selected) | 90.9 | 88.0 | 97.1 | 106.8 lm/W |
| 3500 K | 90.2 | 87.4 | 94.4 | 109.7 lm/W |
| 4000 K | 89.7 | 86.7 | 94.2 | 111.3 lm/W |
| 5000 K | 89.4 | 85.6 | 91.3 | 112.4 lm/W |
| 6500 K | 88.8 | 84.2 | 88.8 | 111.4 lm/W |
Two findings to demonstrate in the video
Royal blue can extend the gamut. Unlike amber and lime, replacing blue with a shorter-wavelength royal blue moves an outer vertex of the RGB triangle. The current model predicts about 4.8% more chromaticity area, together with better TM-30 Rf and efficacy. Standard blue retains a small Ra advantage, showing that Ra and TM-30 measure different aspects of colour quality.
An optimised warm-white recipe may exclude the green die. At and below 3000 K, the model's best white switches the narrow green emitter off. Broad lime peaks in a similar region and supplies the required luminance more efficiently. Green remains important for saturated greens and cyans, but it is not the preferred contributor to this white recipe.
Where the conversion goes
WLED creates the scene. A measured lookup table converts it into emitter currents.
The fork avoids teaching hundreds of effects about amber and lime. In the WLED 0.16-dev codebase used for this project, WLED applies its perceptual processing before the PWM bus sees the colour. The multi-primary bus then receives a linear-light RGB request, interpolates the calibrated table and produces four or five physical channel values.13
| Part of the project | What has been implemented | Why it matters | Current project status |
|---|---|---|---|
| Multi-primary buses | Four-pin RGB+X and five-pin RGBAL PWM types, 16-bit internal channel data and a raw-drive override. | Supports normal rendering and direct per-die bench measurements through the same firmware. | Built and CI-tested |
| Calibration profile | A 17³ binary LUT on LittleFS, CRC validation, tetrahedral interpolation and hot-loading without a reboot. | Keeps fixture-specific measurements out of firmware while preserving a safe pass-through mode. | Built and simulated |
| Host toolchain | Spectral ingest, CIE integration, emitter models, convex optimisation, gamut mapping, smoothing and profile generation. | The heavy colour science runs offline instead of inside every ESP32 frame. | Built and test-covered |
| Closed-loop verification | Command known colours, measure the finished beam and compare output against intent using ΔE 2000. | This is the step that turns an internally consistent model into a calibrated luminaire. | Waiting for hardware |
+4.3 kB flash
The fork adds eight bytes of RAM on the classic ESP32 build.
29 build targets
All 29 CI targets pass, including ESP8266 and the ESP32 S3, C3, C5 and P4 variants.
33,000 points
The firmware and Python reference interpolators agree with zero least-significant-bit difference.
Why the fork uses this particular architecture
- A lookup table, not a runtime optimiser. Five primaries and three colour constraints leave a family of possible mixtures. Choosing among them can be expensive. Interpolating a pre-solved 17³ grid is inexpensive.
- Tetrahedral, not trilinear, interpolation. Tests show far less neutral-axis drift with tetrahedra, where even a small cast is easy to see.
- The profile lives on LittleFS. The roughly 48 kB table is fixture-specific data and should not consume compile-time flash headroom or require a firmware rebuild.
- The table is indexed in linear light. This makes the mapping easier to approximate and prevents a user-adjusted display gamma from silently invalidating the calibration.
- Internal channel values are 16-bit. Low-level five-primary mixtures often rely on small differences between channels. Keeping more precision avoids throwing away timer resolution before the PWM stage.
- New bus identifiers come from a reserved block. The fork uses types 96 and 97 so ordinary upstream PWM numbering remains untouched.
What the simulation says so far
For the modelled Cree RGBL fixture at 3000 K, the current 17³ profile produces CRI 89.1, TM-30 Rf 87.8 and a 3005 K white. Of 4,913 grid points, 327, or 6.7%, need gamut mapping. Across 2,898 in-gamut test colours passed through the quantised LUT, the mean ΔE 2000 is 0.02 and the maximum is 1.40.13
These low interpolation errors show that the lookup table adds little error to the underlying model. They do not validate the emitter model itself. An inaccurate spectral model can still produce inaccurate output even when the lookup table reproduces it precisely.
Planned build architecture
The design treats it as a luminaire first and a WLED project second.
Controller
The design will use an ESP32 because it provides the processing headroom and LittleFS capacity needed for the calibration profile, together with a much more camera-friendly default PWM frequency than the ESP8266.
Output stage
WLED’s GPIOs are control signals, not LED power outputs. A constant-voltage strip needs a suitable switching device per channel, while high-power emitters need regulated constant-current drivers. The output stage will include defined off-state bias, gate or input resistors, hardware current limits, fusing and a safe power-up state. WLED’s analogue-strip guidance also calls for external MOSFET circuitry and protection against overload and over-temperature.1
Thermal design
Thermal testing will use the worst credible channel mixture rather than a single emitter at full output. A centre blend can activate amber and lime together, while a custom RGBAL recipe may run several channels at high current. A temperature sensor near the LED substrate will control thermal derating, and measurements will be taken after the heatsink reaches equilibrium. Stable temperature is essential for stable colour.
Optics
Several visible source colours need enough mixing distance or a suitable reflector or homogenising optic. The four-die Cree package gives the first RGBL build a shared optical footprint, while the discrete RGBAL version will be less forgiving. A diffuser may hide the individual emitters when viewed head-on but still cast coloured shadows onto nearby objects. Beam uniformity will therefore be tested at the intended installation distance, across the edge of the field and at low dim levels.
PWM and the camera
A light can look perfectly steady to us and still produce rolling bands on YouTube.
WLED’s documentation lists a default analogue PWM frequency of 19,531 Hz on ESP32, compared with 880 Hz on ESP8266.1 This is one reason for choosing the ESP32. The higher frequency should avoid many common camera artefacts, but it is not a guarantee. Shutter time, frame rate, rolling-shutter readout, PWM depth, driver behaviour and low-duty operation can still interact.
Higher PWM frequency also reduces the available PWM resolution and increases switching loss. WLED’s current bus code derives bit depth from the PWM frequency and clock, so the highest possible frequency is not necessarily the best setting.4
Frequency is only one part of flicker performance. Modulation depth, duty cycle and waveform also matter, particularly on camera. The US Department of Energy recommends testing across the dimming range and measuring the actual output rather than assuming a driver is flicker-free.12
Planned calibration workflow
Warm it up, measure it, build recipes, then try very hard to break them.
- Stabilise the mechanics, currents and temperature. Finalise the heatsink, optic, drive current and permitted simultaneous-channel load. Record cold-start drift and wait for thermal equilibrium before building the profile.
- Drive one emitter at a known duty. The fork's raw override bypasses the LUT, auto-white handling and WLED's perceptual brightness curve. That bypass matters: without it, a nominal 50% request can be closer to 12% duty and the calibration would learn the wrong transfer function.
- Capture every spectrum at several levels. An Avantes AvaSpec 2048-2 will measure each die across a sweep of duty levels. Multiple levels are needed because driver droop, LED heating and supply sag can distort the flux-versus-duty curve.
- Build the real channel model. Integrate each spectrum against the CIE colour-matching functions to obtain its XYZ contribution. Stack those results into the 3×N matrix and replace the provisional emitter model with the finished fixture's data.
- Choose white point and headroom. Sweep the available luminance ceiling and choose the knee where more brightness starts costing a disproportionate amount of colour quality.
- Solve the colour cube. The current toolchain solves 4,913 small convex problems for the 17³ grid. In-gamut points balance colour, rendering and efficiency. Out-of-gamut requests are reduced in chroma while hue and lightness are held as steady as possible.
- Upload safely. The device checks the profile signature, version, geometry and CRC, then hot-loads it. A bad file is rejected and the previous calibration remains active.
- Close the loop. Command known colours, re-measure the beam and calculate ΔE 2000 against intent. Repeat at low output, after thermal soak and across the expected ambient range.
- Turn measurements into presets. Put the proven architectural and camera looks into WLED so the YouTube demo and final installation recall exactly the same states.
Why an 85% luminance ceiling can improve overall performance
At the absolute luminance ceiling, the three colour constraints can completely determine the channel mix, leaving the optimiser no freedom to improve the spectrum. Reducing the target luminance creates room to choose a better mixture.
| Headroom setting | Relative luminance | CRI Ra | TM-30 Rf | R9 | Model efficacy |
|---|---|---|---|---|---|
| 1.00 | 100% | 80.2 | 86.9 | 35.7 | 98.2 lm/W |
| 0.90 | 90% | 86.5 | 88.0 | 60.1 | 101.5 lm/W |
| 0.85 (selected knee) | 85% | 89.1 | 87.8 | 73.5 | 103.3 lm/W |
| 0.80 | 80% | 89.1 | 87.8 | 73.5 | 103.3 lm/W |
In the model, reducing peak luminance by 15% improves CRI by 8.9 points, R9 by nearly 38 points and efficacy by about 5%. WLED's master brightness then scales all channels together, preserving that spectral mix at lower brightness levels.13
What if there is no spectrometer?
A tristimulus colour meter can provide useful xy/uv and luminance data for the basic mixing matrix. It cannot reveal spectral discontinuities or calculate reliable rendering metrics without spectral information. A camera or phone is useful for demonstrating the result, but it is not suitable as the only calibration instrument. For one comprehensive calibration session, borrowing or hiring a spectrometer is likely to provide more value than another iteration of unmeasured firmware.
Resolved errors and remaining risks
Four development mistakes produced results that initially looked plausible.
The fidelity objective was incorrectly specified Fixed
Minimising raw spectral distance from a 3000 K blackbody placed too much weight on red and infrared energy that the LEDs could not produce. The optimiser compensated by driving amber at a high level. The original fidelity solution scored CRI 82.9, while a power-minimised mix scored 87.2.
The revised objective compares how the candidate spectrum renders 99 real reflectance samples. This keeps the optimisation convex while evaluating the appearance of objects instead of an unhelpful wavelength-by-wavelength match.
The colour-space API was misread Fixed
The colour-science CIELAB conversion expected the reference illuminant as xy chromaticity, not XYZ. Passing the wrong form produced a white with b* around 1805 and impossible chroma values around 1351.
After the correction, out-of-gamut hue error fell to 0.0° in the tests and the maximum LUT error fell from a meaningless 6.67 to 1.40.
The verifier measured its own mismatch Fixed
The accuracy check generated its reference by trilinear interpolation while the firmware read the LUT tetrahedrally. The reported error was therefore the difference between the two interpolation methods, not the colour error of the firmware.
Smoothing damaged the white it protected Fixed
Independent solutions can change abruptly when a constraint becomes active, so smoothing initially appeared appropriate. Applied globally, however, it moved the selected white point towards neighbouring compromises and reduced CRI by about seven points.
The revised method applies stronger smoothing where the solution is arbitrary and minimal smoothing on the neutral axis, where the mixture is deliberate.
What can still go wrong on the real fixture
- Ambiguous naming: RGBWW does not tell us whether there are four or five controllable channels.
- Common-anode versus common-cathode hardware: the driver topology and polarity setting must match the LEDs. Software cannot correct a hardware mismatch.
- Auto-white surprises: WLED can derive white from RGB. In the repurposed RGBAL mapping, that means it may add amber or lime unexpectedly. Use manual white during characterisation.
- CCT blend heat: additive centre blending can drive both secondary channels hard. Test that case against the electrical current limits and the thermal design.
- Power estimation: WLED’s brightness limiter is useful, but a custom high-power analogue engine still needs hardware limits and a supply sized from measured loads.
- Thermal colour drift: flux and wavelength move with temperature. A temperature-stable fixture is easier to calibrate and easier to match.
- Optical separation: a diffuser that appears uniform at ten centimetres can still cast separated colour shadows at the wall.
- Low-level dimming: the bottom few per cent expose PWM resolution, driver turn-on thresholds, channel mismatch and camera banding.
- Calibration by eye: our visual system adapts quickly. Side-by-side references and instruments prevent “looks about right” from becoming a permanent coefficient table.
- Network exposure: WLED is a convenient local controller. Do not expose a luminaire’s web interface directly to the public internet.
What the project has established so far
RGBAL is valuable because it provides more efficient and spectrally effective routes to a required colour.
RGB supplies the edges. Amber gives warmth without a red-green compromise. Lime fills a useful, efficient part of the middle spectrum. Together they create a flexible platform for an architectural light that can do bold colour and far more nuanced pale light than a basic RGB engine.
WLED is a suitable foundation because it already provides Wi-Fi provisioning, a mature interface, presets, APIs and effects. Stock WLED's RGBCCT path supports initial hardware commissioning, while the custom fork adds fixture-specific conversion from ordinary colour requests to measured RGBL or RGBAL drive values.
The results so far make a strong engineering case, but they are still model results. Measurements from the first Cree XNPAPL RGBL board, including its lime spectrum, PWM waveforms, optical mixing and closed-loop ΔE, will determine whether the model is accurate.
The YouTube video will begin with the familiar WLED control system before explaining why five physical outputs are not the same as five-primary colour management. The key demonstrations will be the unchanged gamut triangle, the green channel switching off in warm white and the colour-quality improvement gained by reducing peak luminance by 15%.
The next stage is to turn these model results into measured hardware results and develop the experimental colour fixture into a repeatable architectural luminaire.
Primary, official and project references
Technical and project sources
- WLED Project: Compatible LED strips. Lists supported addressable and analogue types, RGBCCT support, MOSFET guidance and default PWM frequencies.
- WLED Project: White handling. Documents auto-white modes, CCT control and additive-blending thermal cautions.
- WLED Project: JSON API. Defines RGB(W) colour arrays, light capabilities and the separate per-segment CCT value.
- WLED source:
bus_manager.cpp. Current PWM RGBCCT implementation and CCT channel calculation. - WLED source: project README. Current overview of supported hardware, RGBW/RGB+CCT and control interfaces.
- PROLIGHTS: EclPar IPLFC, and WLED issue #3608: WS2805 RGBW+WW support. Two examples showing why “WW” must be checked against the actual channel definition.
- ADJ: Par Z300 RGBA. Commercial red, green, blue and amber stage fixture, use cases and published colour-rendering data.
- ETC: ColorSource PAR jr. A commercial RGBL fixture used for stage and on-camera work.
- Luminus Devices: RGBL colour-mix LED technology. Manufacturer information on lime-channel packages for stage and architectural fixtures.
- US Department of Energy / PNNL: Analysis of Color Rendition Specification Criteria. Review of CRI, TM-30 and colour-preference criteria.
- ETC: LED fixture colour calibration and matching. LED binning, calibration, gamut and direct-mode limitations.
- US Department of Energy / PNNL: Flicker: How to Avoid It, Test for It, and Fix It. PWM, temporal modulation, imaging concerns and practical testing.
- SDG Electronics: RGBAL: Multi-Primary LED Control in WLED, project repository and development notes, updated 12 August 2026. Source for the fork architecture, emitter models, simulated photometric and colour-quality results, current test status and hardware caveats.
External technical pages were checked on 12 August 2026. Product examples illustrate how the channel systems are used and are not endorsements. All figures identified as modelled or simulated are outputs from the current project and remain provisional until repeated on finished hardware. Component limits and WLED behaviour will be rechecked against the exact firmware revision, LED data sheets and final hardware before construction.