remoteid适配

Andrew Tridgell 7284ee5370 support power levels 3 лет назад
.github f49069a52b support ESP32C3 dev board 3 лет назад
RemoteIDModule 7284ee5370 support power levels 3 лет назад
images d537a8cf29 Update README.md with complete flash instructions 3 лет назад
libraries ae8ed8cb8b moved add_libraries.sh to scripts 3 лет назад
modules 833854a8ed update opendroneid 3 лет назад
releases a4ca9b8c22 new release 3 лет назад
scripts 7284ee5370 support power levels 3 лет назад
.gitignore 39b11b028a ignore romfs_files.h 3 лет назад
.gitmodules 07266300a8 removed uav_electronic_ids submodule 3 лет назад
BUILDING.md d65fddc144 update building for 2.0.3 3 лет назад
COPYING.txt 1d0dd64fda relicense under GPLv2+ 3 лет назад
README.md 1d0dd64fda relicense under GPLv2+ 3 лет назад

README.md

ArduPilot RemoteID Transmitter

This is an implementation of a MAVLink and DroneCAN OpenDroneID transmitter. It aims to provide a transmitter solution for the FAA standard RemoteID requrement, meeting the transmitter component of the ASTM F3586-22 Means of Compliance.

Hardware Supported

The firmware currently supports the ESP32-S3 and ESP32-C3 chips. There are 4 boards supported so far with more to come:

Hardware from https://wurzbachelectronics.com/ is expected to be added soon.

For the ESP32-S3 dev board the pins assumed in this firmware are:

  • UART TX on pin 18
  • UART RX on pin 17
  • CAN TX on pin 47
  • CAN RX on pin 38

For the ESP32-C3 dev board the pins assumed in this firmware are:

  • UART TX on pin 3
  • UART RX on pin 2
  • CAN TX on pin 5
  • CAN RX on pin 4

For CAN a suitable 1MBit bxCAN transceiver needs to be connected to the CAN TX/RX pins.

You can also do MAVLink on the USB UART port (the one marked "UART" on the silkscreen). That allows for easy simulation testing by plugging in a micro USB cable.

See board_config.h and Makefile for information on porting to new boards.

Transmission Modes

This firmware supports the following transmission modes:

  • WiFi NAN (Neighbour Awareness Networking)
  • Bluetooth 4 Legacy Advertising
  • Bluetooth 5 Long Range + Extended Advertising

Protocols

This firmware supports communication with an ArduPilot flight controller either using MAVLink or DroneCAN.

For MAVLink the following service is used: https://mavlink.io/en/services/opendroneid.html

For DroneCAN the following messages are used: https://github.com/dronecan/DSDL/tree/master/dronecan/remoteid

The DroneCAN messages are an exact mirror of the MAVLink messages to make a dual-transport implementation easy.

Releases

Pre-built releases are in the releases folder on github.

Flashing

To flash to an ESP32-S3 board use the espressif FlashTool from https://www.espressif.com/en/support/download/other-tools

If this is the first time flashing the board, you may need to hold the "boot" button down while attaching the USB cable to the USB connector marked "USB"

and then use the pre-built binary in the releases folder to flash using the following options, after selecting the COMM port that the board is attached:

Board setup dialog

Flashing with FlashTool

subsequent re-flashing of newer releases should not require holding the "boot" button during power-up of the board as the USB cable is attached.

ArduPilot Support

Support for OpenDroneID is in ArduPilot master and is pending for addition to the 4.2.x stable releases. You need to enable it on a board by setting "define AP_OPENDRONEID_ENABLED 1" in the hwdef.dat for your board.

Credit

Many thanks to the great work by:

This firmware builds on their work.

License

This firmware is licensed under the GNU GPLv2 or later