Skip to content

DroneBridge for ESP32. A secure & transparent telemetry link with support for WiFi and ESP-NOW. Supporting MAVLink, MSP, LTM or any other protocol

License

Notifications You must be signed in to change notification settings

DroneBridge/ESP32

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues


DroneBridge logo

DroneBridge for ESP32

A firmware for the popular ESP32 modules from Espressif Systems. Probably the cheapest way to communicate with your drone, UAV, UAS, ground-based vehicle or whatever you may call them.

It also allows for a fully transparent serial to WiFi pass-through link with variable packet size (As of release v2.0RC4 no continuous stream of data required anymore in MAVLink and transparent mode).

DroneBridge for ESP32 is a telemetry/low data rate-only solution. There is no support for cameras connected to the ESP32 since it does not support video encoding.

DroneBridge for ESP32 concept

Features

  • Bidirectional: serial-to-WiFi, serial-to-WiFi Long-Range (LR), serial-to-ESP-NOW link
  • Support for MAVLink, MSP, LTM or any other payload using transparent option
  • Affordable: ~7€
  • Up to 150m range using standard WiFi
  • Up to 1km of range using ESP-NOW or Wi-Fi LR Mode - sender & receiver must be ESP32 with LR-Mode enabled
  • Fully encrypted in all modes including ESP-NOW broadcasts secured using AES-GCM 256 bit!
  • Weight: <8 g
  • Supported by: QGroundControl, Mission Planner, mwptools, impload etc.
  • Easy to set up: Power connection + UART connection to flight controller
  • Fully configurable through an easy-to-use web interface
  • Parsing of LTM & MSPv2 for more reliable connection and less packet loss
  • Parsing of MAVLink with the injection of Radio Status packets for the display of RSSI in the GCS
  • Fully transparent telemetry down-link option
  • Reliable, low latency
DroneBridge with connectionless ESP-NOW protocol support for increased range of 1km or more.
DroneBridge for ESP32 can be used to control drone swarms at a low cost.

DroneBridge for ESP32 supports ESP-NOW LR, enabling ranges of more than 1km with external receiving antennas.
The number of drones is only limited by the channel capacity and the ESP32s processing power. All data is encrypted using AES256-GCM.

Hardware

Officially supported and tested boards:
Do the project and yourself a favour and use one of the officially supported and tested boards below.
These boards are very low in price, have everything you need and are also very small. Perfect for use on any drone.

For further info please check the wiki!

Installation/Flashing using precompiled binaries

It is recommended that you use the official online flashing tool!

In any other case there are multiple ways how to flash the firmware.
For further info please check the wiki!

Wiring

  1. Connect the UART of the ESP32 to a 3.3V UART of your flight controller. It is not recommended to use the ESP32s pins that are marked with TX & RX since they often are connected to the internal serial ouput. Go for any other pin instead!
  2. Set the flight controller port to the desired protocol.

Check out the manufacturer datasheet! Only some modules can take more than 3.3V. Follow the recommendations by the ESP32 board manufacturer for powering the device
For further info please check the wiki!

Configuration

  1. Connect to the WiFi DroneBridge ESP32 with password dronebridge
  2. In your browser type: dronebridge.local (Chrome: http://dronebridge.local) or 192.168.2.1 into the address bar. You might need to disable the cellular connection to force the browser to use the WiFi connection
  3. Configure as you please and hit save

DroneBridge for ESP32 web interface

For further info please check the wiki!

Use with QGroundControl, Mission Planner or any other GCS

QGroundControl

  • The ESP will auto-send data to all connected devices via UDP to port 14550. QGroundControl should auto-connect using UDP
  • Connect via TCP on port 5760 or UDP on port 14550 to the ESP32 to send & receive data with a GCS of your choice.
  • In case of a UDP connection the GCS must send at least one packet (e.g. MAVLink heart beat etc.) to the UDP port of the ESP32 to register as an endpoint. Add ESP32 as an UDP target in the GCS
  • Manually add a UDP target using the web interface

Further Support & Donations

If you benefited from this project please consider a donation:

For questions or general chatting regarding DroneBridge for ESP32 please visit the Discord channel