FlySpark logo
FlySpark logoFlySparkBetaflight setup guidesUpdated

Betaflight LED strip layout

A Betaflight LED strip shows mode, arming, battery and signal on the craft itself. FlySpark's LED strip tab lays the LEDs out on a 16 by 16 grid. The order in the list is the order along the wire, so the first LED in the list is the first one the data pin drives.

Each used LED has a function, a facing, optional overlays and a colour from a 16-colour palette. The flight controller stops counting at the first empty LED. An empty slot in the middle ends the strip early, even if later slots still have a function.

The same tab edits an INAV strip, with a different function list. INAV's seventh function is a transmitter channel. Betaflight's later functions are a GPS bar, a battery bar and altitude. The GPS LED is satellite and fix status. It is not Betaflight GPS Rescue and it is not an INAV geozone.

Free. Hardware connections need Chrome or Edge on a computer; phones use the FlySpark app.

  • Free
  • Nothing to install
  • Demo without hardware

In short

A Betaflight LED strip is laid out on a 16 by 16 grid, in the order of the wire. FlySpark sets each LED's function, facing, overlays and one of 16 palette colours. Brightness runs from 5 to 100 percent, and the strip stops at the first empty LED.

Key facts

  • The layout grid is 16 by 16. An LED's place in the list is its place on the wire.
  • The flight controller counts LEDs up to the first empty entry.
  • The palette has 16 colours. Each LED stores an index into that palette.
  • Brightness is 5 to 100 percent, in steps of 5.
  • Rainbow spread is 0 to 359 degrees. Rainbow speed is 1 to 2000.
  • Facing is Front, Right, Back, Left, Up or Down.
  • INAV uses Channel where Betaflight uses GPS bar, battery bar and altitude.
  • Chrome or Edge uses USB or Bluetooth. iPhone has no USB host.
  • Betaflight logoBetaflight
  • INAV logoINAV
  • ArduPilot logoArduPilot
  • PX4 logoPX4
  • BLHeli_S
  • Bluejay logoBluejay
  • AM32 logoAM32
  • ExpressLRS logoExpressLRS
  • EdgeTX logoEdgeTX
  • DroneCAN logoDroneCAN
  • MAVLink logoMAVLink

Try it

Light the strip

Tap a lamp. The number is its place on the wire, and the picture is only the layout.

80%

FlySpark

Features

  • 01

    16 by 16 grid

    Place each LED on the grid. X and Y are stored in four bits each, so the grid is 16 cells on a side. The list order is the wire order.

  • 02

    Functions

    Colour, flight mode, arm state, battery, RSSI, GPS and thrust ring are on both. Betaflight adds GPS bar, battery bar and altitude. INAV adds Channel.

  • 03

    Overlays

    Betaflight overlays include throttle, rainbow, a Larson scanner, blink, video TX, turn indicators and warnings. INAV adds blink on landing and a strobe, and does not use the rainbow or video TX overlays.

  • 04

    16-colour palette

    Each LED stores a palette index, not a raw red-green-blue value. Edit the palette, and every LED that points at that index changes.

  • 05

    Brightness and rainbow

    Brightness is 5 to 100 percent in steps of 5. Rainbow spread is 0 to 359 degrees in steps of 5. Rainbow speed is 1 to 2000 in steps of 10.

  • 06

    Mode and special colours

    Flight-mode colours cover orientation, headfree, horizon, angle, mag and baro. Special colours cover disarmed, armed, animation, backgrounds and the three GPS states.

  • 07

    LED strip feature

    If the LED strip feature is off, the tab warns you. The layout is still editable. The craft will not light the strip until the feature is on.

Wire order and the 16 by 16 grid

The grid is a picture of the craft, not a picture of the wire. You drop an LED on a cell so you can see that the front-left of the quad is the LED you think it is. The flight controller does not read that picture as a coordinate of the airframe. It reads the list. The first used entry is the first LED on the data wire, the second entry is the next LED, and so on.

X and Y each use four bits, which is why the grid is 16 by 16 and not a free drawing. Two LEDs can share a story about facing even when they sit in different cells. Facing is a separate mask: Front, Right, Back, Left, Up and Down. Flight-mode colour uses that facing, so a front LED and a back LED can show different colours in the same mode.

The flight controller counts LEDs until it meets an all-zero entry. That empty entry is the end of the strip. If you clear an LED in the middle, everything after it drops off the count. Remove from the end when you want a shorter strip, or move the later LEDs up the list before you leave a hole.

Functions on Betaflight and on INAV

Colour holds one palette colour. Flight mode picks a colour from the mode and from the way the LED faces. Arm state switches between the disarmed and armed colours. Battery fades from green toward red as the pack drains. RSSI fades from green toward red as the link drops. GPS shows satellite and fix status. Thrust ring plays a spinning animation.

On Betaflight the next functions are a GPS bar, a battery bar and altitude. The bars are graphs along the strip, so they need several LEDs in wire order to mean anything. A single LED set to GPS bar has almost nothing to draw. Altitude colours that LED by height. None of these is a return-to-home setting.

On INAV the function in that slot is Channel: the colour follows a transmitter channel. INAV does not offer GPS bar, battery bar or altitude in this list. If you copy a Betaflight layout onto an INAV board, check each LED's function after the read. A slot that was a battery bar on Betaflight is not a battery bar on INAV.

Overlays sit on top of the function. Betaflight can add throttle hue, a rainbow, a Larson scanner, blink, the video channel, turn indicators and warning flashes. INAV can add throttle hue, a Larson scanner, blink, blink while landing, indicators, warnings and a strobe while armed. Rainbow and video TX are Betaflight overlays. Blink on landing and strobe are INAV overlays.

Palette, brightness and rainbow

The palette has 16 colours. An LED stores the index, from the first colour to the sixteenth. Change colour 3 and every LED that uses colour 3 changes with it. That is why a mode can share a colour with a fixed LED: they point at the same index. The firmware ships a default palette. You can replace any entry.

Brightness is one number for the strip, from 5 to 100 percent, in steps of 5. It is not per LED. A strip that is too bright at night is this slider, not a darker palette, unless you want the colours themselves to change. Rainbow spread is 0 to 359 degrees, in steps of 5. Rainbow speed is 1 to 2000, in steps of 10. Spread is how far around the colour wheel neighbouring LEDs sit. Speed is how fast that wheel turns. Both apply when a rainbow overlay is on.

Mode colours are a second table: orientation, headfree, horizon, angle, mag and baro, each with a colour and a channel. Special colours cover disarmed, armed, animation, background, blink background, GPS with no satellites, GPS with no fix, and GPS locked. The GPS rows are those three lock states. They do not configure a rescue or a return.

Turn the feature on and test it

If the LED strip feature is off, the tab shows a warning. You can still place LEDs. The board will not drive the strip until the feature is enabled and saved. Enable it, save, and power the strip the way that board expects. A layout that looks right and a strip that stays dark is often this feature, or a data wire on the wrong pad, not a wrong colour index.

INAV also has a pin card: whether to use the LED pin, a joystick switch, and duty percents for the joystick keys. Those fields are INAV settings. They are not on the Betaflight grid. Leave them alone on a Betaflight board, and set them when the connected firmware is INAV.

Check the wire order with one LED set to a fixed colour and the rest cleared, then add the next. If the wrong physical LED lights, the list order does not match the chain. Reorder the list. Do not keep repainting cells and hoping the wire follows the picture.

Chrome or Edge connects over USB or Bluetooth. The Android app adds Wi-Fi. iPhone uses Bluetooth or Wi-Fi and has no USB host. Modes that the LEDs react to are assigned on the Modes tab. Video channel overlays are not a substitute for the VTX table.

FlySpark

Lay out a Betaflight LED strip

  1. Enable the feature

    Open the LED strip tab. If it warns that the feature is off, turn the LED strip feature on and save before you expect the strip to light.

  2. Place LEDs in wire order

    Add LEDs on the 16 by 16 grid in the same order as the data wire. The first empty LED ends the strip, so do not leave a hole in the middle.

  3. Set function, facing and colour

    Pick colour, flight mode, arm, battery, RSSI, GPS or thrust ring. On Betaflight you can also use the bars and altitude. On INAV, channel replaces those three. Set facing if the function uses it.

  4. Set brightness and save

    Brightness is 5 to 100 percent in steps of 5. Save, then confirm the physical LEDs match the list order.

Troubleshooting

Common problems and fixes

  • Problem

    The strip stays dark

    Fix

    The LED strip feature is off, the data wire is on the wrong pad, or the first list entry is empty so the flight controller counts zero LEDs.

  • Problem

    Only the first few LEDs light

    Fix

    An empty entry in the list ends the count. Move the later LEDs up, or fill the hole.

  • Problem

    The wrong LED lights

    Fix

    The grid shows where you think it sits. The list is the wire. Reorder the list to match the chain.

  • Problem

    A Betaflight function is missing on INAV

    Fix

    GPS bar, battery bar and altitude are Betaflight. INAV's matching slot is Channel. Rainbow and video TX overlays are Betaflight too.

FAQ

Frequently asked questions

How do I set up a Betaflight LED strip?

Open the LED strip tab, turn the feature on, and place each LED on the 16 by 16 grid in wire order. Set a function and a palette colour, then save.

How many LEDs fit on the grid?

The grid is 16 by 16 cells. The flight controller counts LEDs up to the first empty entry in the list. That empty entry ends the strip.

What functions can a Betaflight LED show?

Colour, flight mode, arm state, battery, RSSI, GPS, thrust ring, GPS bar, battery bar and altitude. Overlays add throttle, rainbow, a Larson scanner, blink, video TX, indicators and warnings.

How is an INAV LED strip different?

INAV uses Channel instead of GPS bar, battery bar and altitude. Its overlays include blink on landing and a strobe, and not the Betaflight rainbow or video TX overlays.

How bright can the strip be?

Brightness is 5 to 100 percent, in steps of 5, for the whole strip. Rainbow spread is 0 to 359 degrees. Rainbow speed is 1 to 2000.

Does the GPS LED start a return home?

No. The GPS function and the GPS special colours show satellites and fix. Return home is a flight mode or a failsafe, not an LED function.

Why did the colours all change at once?

LEDs store a palette index. Editing that palette colour changes every LED that uses the same index.

What do the facing buttons do?

Front, Right, Back, Left, Up and Down. Flight-mode colour uses facing, so the nose can show a different colour from the tail in the same mode.

Can I edit the strip in Chrome?

Yes. Chrome or Edge connects over USB or Bluetooth. Android adds Wi-Fi. iPhone uses Bluetooth or Wi-Fi and has no USB host.

The tab warns that the feature is off. Can I still edit?

Yes. The layout can be edited. The board will not drive the strip until the LED strip feature is on and saved.

References

Sources

The official documentation behind the background facts on this page.

  1. Betaflight WikiBetaflight · betaflight.com
  2. Betaflight Setup GuideBetaflight · betaflight.com
  3. INAV WikiINAV on GitHub · github.com

Tools

See every FlySpark tool

Ready to try it?

Free. Hardware connections need Chrome or Edge on a computer; phones use the FlySpark app.