Remote ID
Last updated
Last updated
:::warning Experimental Remote ID support is experimental in PX4 v1.14. :::
Remote ID is a government mandated technology for UAVs in Japan, the United States of America and the European Union, designed to enable safe sharing of airspace between UAVs and other aircraft. The specification requires that UAVs broadcast data such as: real-time location/altitude, serial number, operator ID/location, status, etc.
PX4 integrates with Remote ID hardware that supports the MAVLink protocol (Open Drone ID is an open source implementation of Remote ID).
It has been tested with the following devices:
(CubePilot)
(BlueMark)
(BlueMark) - less expensive variant without CAN port.
(Holybro)
:::note
Other devices that support the MAVLink API should work (but have not been tested).
PX4 does not support Remote ID over CAN in PX4 v1.14. :::
Remote ID devices can be connected to any free/unused serial port on the flight controller. Most commonly they are connected directly to the TELEM2
port (if it is not being use for some other purpose) as this is already configured for MAVLink "by default".
If using a different port, or a flight controller that has different connector, you may need to modify the cable. The pinout of the serial port is shown below. The TX and RX on the flight controller must be connected to the RX and TX on the Remote ID, respectively.
Cube ID Serial Port
1 (red)
VCC_5V
5V
2 (blk)
TX (OUT)
3 (blk)
RX (IN)
4 (blk)
GND
0
Holybro Pinouts
Note that CAN port not supported in PX4 v1.14
Then reboot the vehicle.
There is no need to explicitly enable Remote ID (supported Remote ID messages are either streamed by default or must be requested in the current implementation, even if no remote ID is connected).
Enable Drone ID system detection and health check. 0
: Disable (default), 1
: Warn if Remote ID not detected but still allow arming, 2
: Only allow arming if Remote ID is present.
PX4 v1.14 streams these messages by default (in streaming modes: normal, onboard, usb, onboard low bandwidth):
Implementation assumes operator is located at vehicle home position (does not yet support getting operator position from GCS). This is believed to be compliant for broadcast-only Remote IDs.
PX4 may not be compliant with the relevant specifications in version 1.14 (which is why this feature is currently experimental). A working group has been established to evaluate the gaps.
Some known issues are:
PX4 v1.14 does not process OPEN_DRONE_ID_ARM_STATUS
, and arming is only conditional on the Remote ID device HEARTBEAT
.
PX4 v1.14 does not yet receive OPEN_DRONE_ID_ARM_STATUS
.
OPEN_DRONE_ID_ARM_STATUS
must be forwarded to the GCS, if present for additional error reporting.
The vehicle ID is expected to be tamper resistent.
can be connected using its serial port (DroneCAN cannot be used). It comes with a 6-pin JST-GH 1.25mm cable that can be connected directly to the TELEM
ports on most recent Pixhawk flight controllers.
or can be connected using their serial port (DroneCAN cannot be used). They come with a 6-pin JST-GH 1.25mm cable that can be connected directly to the TELEM
ports on most recent Pixhawk flight controllers.
If using a different serial port (i.e. with fewer pins), or a flight controller that has different connector, you may need to modify the cable. Information on the port pinout can be found in the .
The beacons come preinstalled with recent firmware. The explains how you can update firmware via the web interface, if needed.
More general setup, including how to mount the beacon, is also covered in the
The can be connected using the serial port (DroneCAN cannot be used in PX4 v1.14). It comes with a 6-pin JST-GH 1.25mm cable that can be connected directly to the TELEM
ports on most recent Pixhawk flight controllers such as the Pixhawk 6C/6X or Cube Orange.
The module comes preinstalled with recent firmware. The explains how you can config and update firmware via the web interface, if needed.
Remote ID hardware is configured in the same way as any other .
Assuming you have connected the device to the TELEM2
port, as shown:
= TELEM 2
= Normal
= 0 (default sending rate for port).
= Enabled
You will now find a new parameter called . The required baud rate depends on the remote ID used (for Cube ID it must be set to 57600).
To only allow arming when a Remote ID is ready, the parameter to 2
(it is disabled by default).
(1 Hz) - UAV location, altitude, direction, and speed.
(1 Hz) Operator location/altitude, multiple aircraft information (group/swarm, if applicable), full timestamp and possible category/class information.
The following message can be streamed on request (using ):
- UAV identity information (essentially a serial number)
PX4 v1.14 specifies a serial number () but does not use the required format (ANSI/CTA-2063 format).
PX4 prevents arming based on Remote ID health if parameter is set to 2
. The UAV will then require HEARTBEAT
messages from the Remote ID as a precondition for arming the UAV. You can also set the parameter to 1
to warn but still allow arming when Remote ID HEARTBEAT
messages are not detected.
The following Open Drone ID MAVLink messages are not supported in PX4 v1.14 (to be added by ):
- Provides authentication data for the UAV.
- Operator identity (plain text).
- Operator identity.
- Status of Remote ID hardware. Use as condition for vehicle arming, and for Remote ID health check.
- Subset of OPEN_DRONE_ID_SYSTEM
that can be sent with information at higher rate.
Vehicles must arm conditional on receiving the Remote ID message, with a status that indicates the Remote ID hardware is ready to broadcast.
Health of the Remote ID depends on both receiving a HEARTBEAT
and the OPEN_DRONE_ID_ARM_STATUS
. When flying, a non-armed status for the Remote ID must be published in as a Remote ID malfunction.
specifies a serial number in an invalid format (not ANSI/CTA-2063 format).
is intended to address the known issues.