Skip to content

DroneCAN Lights ​

PX4 can control external LEDs on a connected DroneCAN peripheral using the standard DroneCAN LightsCommand message.

Up to 2 lights are supported. These can show system status colours, a fixed colour (used for indicating aircraft orientation), or switch between both depending on arm state.

Пристрої, що підтримуються ​

Any DroneCAN peripheral implementing the standard LightsCommand message type should work.

The following have been tested:

  • Vertiq ESC LED add-ons: Each ESC exposes two light IDs — one RGB (for status) and one white. The light_id for each is calculated as esc_index × 3 + BASE_ID, where BASE_ID is 1 for RGB and 2 for white. See Vertiq for other ESC setup details.

Конфігурація PX4 ​

  1. Set up DroneCAN as described in DroneCAN (UAVCAN_ENABLE ≥ 2).
  2. Set UAVCAN_LGT_NUM to the number of lights (1 or 2). Then reboot and reopen the ground station so that parameters for the new instances become visible.
  3. Set the light_id and light functions of each light:
  4. Set UAVCAN_LGT_MODE to control when fixed "orientation" colours activate.
  5. Reboot for changes to take effect.

Light Functions ​

The functions of enabled lights are configured using UAVCAN_LGT_FN0 and UAVCAN_LGT_FN1, respectively. Each function is represented by a value that defines two behaviours: one when the activation mode is inactive and one when it is active.

ЗначенняНазваWhen mode inactiveWhen mode active
0Status/StatusSystem status colourSystem status colour
1Off/WhiteOffWhite
2Off/RedOffRed
3Off/GreenOffЗелений
4Status/WhiteSystem status colourWhite
5Status/RedSystem status colourRed
6Status/GreenSystem status colourЗелений
7Status/OffSystem status colourOff

Notes:

  • The system status colours is the same LED pattern used by the flight controller's onboard status LED (e.g. red when disarmed, green when armed and ready).
  • A fixed colour, commonly used to indicate aircraft orientation. For example it is a common convention to have a red light on the port side, green on starboard, or white to the rear. These colours do not change with flight controller state.
  • For hybrid functions, such as Status/Red, the light shows the Status colour while the activation mode is inactive, then switches to the "fixed" light colour once the mode becomes active.

Activation Mode (UAVCAN_LGT_MODE) ​

The activation mode parameter (UAVCAN_LGT_MODE) controls when each light switches from its inactive to its active behaviour (configured with the Light function):

ЗначенняЗначення
0Always inactive (lights always show the inactive column)
1Active when armed (default)
2Active when prearmed or armed
3Always active (lights always show the active column)