Files
PX4-Autopilot/docs/en/msg_docs/SystemPower.md
PX4BuildBot d965df930c docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-02-23 18:34:11 +00:00

3.8 KiB

pageClass
pageClass
is-wide-page

SystemPower (UORB message)

TOPICS: system_power

Fields

Name Type Unit [Frame] Range/Enum Description
timestamp uint64 time since system start (microseconds)
voltage5v_v float32 peripheral 5V rail voltage
voltage_payload_v float32 payload rail voltage
sensors3v3 float32[4] Sensors 3V3 rail voltage
sensors3v3_valid uint8 Sensors 3V3 rail voltage was read (bitfield).
usb_connected uint8 USB is connected when 1
brick_valid uint8 brick bits power is good when bit 1
usb_valid uint8 USB is valid when 1
servo_valid uint8 servo power is good when 1
periph_5v_oc uint8 peripheral overcurrent when 1
hipower_5v_oc uint8 high power peripheral overcurrent when 1
comp_5v_valid uint8 5V to companion valid
can1_gps1_5v_valid uint8 5V for CAN1/GPS1 valid
payload_v_valid uint8 payload rail voltage is valid

Constants

Name Type Value Description
BRICK1_VALID_SHIFTS uint8 0
BRICK1_VALID_MASK uint8 1
BRICK2_VALID_SHIFTS uint8 1
BRICK2_VALID_MASK uint8 2
BRICK3_VALID_SHIFTS uint8 2
BRICK3_VALID_MASK uint8 4
BRICK4_VALID_SHIFTS uint8 3
BRICK4_VALID_MASK uint8 8

Source Message

Source file (GitHub)

::: details Click here to see original file

uint64 timestamp		# time since system start (microseconds)
float32 voltage5v_v		# peripheral 5V rail voltage
float32 voltage_payload_v	# payload rail voltage
float32[4] sensors3v3		# Sensors 3V3 rail voltage
uint8 sensors3v3_valid		# Sensors 3V3 rail voltage was read (bitfield).
uint8 usb_connected		# USB is connected when 1
uint8 brick_valid		# brick bits power is good when bit 1
uint8 usb_valid 		# USB is valid when 1
uint8 servo_valid		# servo power is good when 1
uint8 periph_5v_oc		# peripheral overcurrent when 1
uint8 hipower_5v_oc		# high power peripheral overcurrent when 1
uint8 comp_5v_valid		# 5V to companion valid
uint8 can1_gps1_5v_valid	# 5V for CAN1/GPS1 valid
uint8 payload_v_valid		# payload rail voltage is valid

uint8 BRICK1_VALID_SHIFTS=0
uint8 BRICK1_VALID_MASK=1
uint8 BRICK2_VALID_SHIFTS=1
uint8 BRICK2_VALID_MASK=2
uint8 BRICK3_VALID_SHIFTS=2
uint8 BRICK3_VALID_MASK=4
uint8 BRICK4_VALID_SHIFTS=3
uint8 BRICK4_VALID_MASK=8

:::