Lighting on the UL8 — what already lights up, what’s later

Field visibility. Now: status LEDs on the hardware. Later: real nav/strobe lights once we fly safely.
I was at the bench thinking: “we already have lights, right?” True. Pixhawk blinks. GPS blinks. CAN Hub has a power LED. Handy to see the stack is alive.
Handy to spot the drone at dusk at 80 metres? No. Different problem.
We’re building an AOS UL8 V5 with a Pixhawk 6X Mini. Lighting helps. It is not required for first flights. First: frame, power, radio, GPS, sensors. Then: be easier to see in the field. This page is documentation — what’s already there, what we want, and how ArduPilot can drive LEDs — without ordering a light kit now.
What already lights up (no extra kit)
| Where | What | For us |
|---|---|---|
| Pixhawk / PM | Status LEDs on the FC stack | Boot / armed / faults (also via GCS) |
| Micro M9N | GPS LED (no buzzer on Micro) | Fix / status |
| F9P Helical | Tri-color LED on the module | DroneCAN / GNSS status |
| CAN Hub | Power LED | Check: external 5 V via XT30 works |
| H-Flow | IR LED on the board | Optical flow in low light only — not for human eyes |
Short: enough for bench checks. Not enough for “where’s that UL8?” in the field.
What we want later
The later backlog already lists LED / buzzer upgrades for field work. Think:
- Nav-style LEDs — red/green or bright strobes so we see orientation.
- Arm / status strip — e.g. NeoPixel (WS2812): armed = red, disarm = green, failsafe = blink.
- Discrete buzzer — sound next to light (Micro M9N has no buzzer). I already miss that on the bench.
We do not order that before first flight. Fly reliably first. Then pick one path — and write params into ArduPilot settings.
How ArduPilot drives LEDs (when we get there)
ArduPilot supports external LEDs and NeoPixel. Wiki:
Typical params (later, once we pick a strip):
NTF_LED_TYPES— bit for NeoPixelNTF_LED_LEN— LED countSERVOx_FUNCTION= NeoPixel1…4 (120–123)
On the Pixhawk 6X Mini: MAIN OUT is busy with DShot to the Pacer. Plan LEDs on a free AUX / PWM group — not the motor group. Exact pin when we buy the kit. One of those things I don’t know “from memory” yet — and leave open on purpose.
Options at a glance
| Option | Plus | Watch out |
|---|---|---|
| NeoPixel / WS2812 on PWM out | ArduPilot supports it; same patterns as GPS LEDs | Own 5 V supply; free PWM group |
| Simple 5 V LED + relay/GPIO | Cheap | Fewer smart patterns |
| Standalone strobe (12 V / 6S) | Very visible | Extra wiring, EMI, weight |
Power & mounting
- LED strips: separate 5 V (BEC or hub), don’t drain FC 5 V.
- Short cables; common GND.
- No strip against the F9P helical or the LD-06 scan plane.
- Props off for first tests.
What we do now
- No light kit before first flight.
- Use GPS / CAN Hub status LEDs in bench checks.
- After stable flights: pick NeoPixel or strobe → set params → new
.parambackup.
Read next
Choice log
Now: existing status LEDs. Later: NeoPixel or strobe (+ optional buzzer), after first flight. Visibility matters — but not before radio, failsafe, and power check out.
Photos
