GitHub repository: DroneBridge/DroneBridge
Description: DroneBridge is a system based on the WifiBroadcast approach. A bidirectional digital radio link between two endpoints is established using standard WiFi hardware and a custom protocol. DroneBridge is optimized for use in UAV applications and is a complete system. It is intended be a real alternative to other similar systems, such as DJI Lightbridge or OcuSync.
Topics: aerial-imagery, ardupilot, arial-photography, drone, dronebridge, fpv, hd, hdfpv, inav, lightbridge, long-range, mavlink, msp, multicopter, multiwii, qgroundcontrol, quadcopter, rc, telemetry, wifibroadcast

Release v0.7.0: tag_name: v0.7.0
body: Alpha

- Improved FEC encoding/decoding
- New kernel with RTL88XXAU driver support
DroneBridge v0.6.0: tag_name: v0.6.0
body: # New major features
- Improved DroneBridge common librarys (encryption support for Python, code cleanup, software diversity support)
- All software based on DroneBridge common library
- All new startup scripts done in Python 3
- New communication protocol messages
- TCP instead of UDP for all GCS connections instead of video
- USBBridge for wired connection to Android phones even without SIM

# Limitations/Known Bugs
- Requires new DroneBridge for Android app
- Requires 2.5A power supply for GND Pi if phone is connected via USB
- No support for RTP video stream for now (H264 only)

**Alpha release. Use with caution. Not field tested. Make sure you use a sufficient power supply for both Raspberry Pis**

**[Get the ready to use image for the Raspberry Pi here](https://forstudents-my.sharepoint.com/:u:/g/personal/ga25puh_forstudents_onmicrosoft_com/EZah1nq0VhNKtHNdDhQNh5QBtVIsj1dOsqOnqJYzGeuN8w?e=S7vCbh)**
DroneBridge 0.5: tag_name: v0.5
body: **Warning: This is a beta release! Despite extensive tests use with caution!**
**DroneBridge for Android v1.2.2+ required!**
For setup instructions check out the Wiki!

# Changelog:
* Added OpenTX support (e.g all FrSky radios - tested with FrSky X-Lite) - just connect via USB and use DroneBridge for transmission of RC signals
* Auto calibration for OpenTX radios on Linux side via app - Calibrate your RC first! Only use if values still not correct
* Added communication messages: error, ping, ACK, camselect, adjustrc
* [Support for multi-camera modules.](http://www.arducam.com/multi-camera-adapter-module-raspberry-pi/) Change camera via JSON or using the app (Not tested due to no available hardware)
* Support for new app features: ping, cam select & adjustrc
* Faster response to connection errors due to reduced timeouts
* Better error messages forwarded to app
* Removed calls for WBC MSP bidirectional link - Use DroneBridge modules
* More robust Android app - bugfixes and usability improvements

# Bugfixes:
* No data except video when connected via USB tethering
* DroneBridge modules would start too early when USB Stick is connected on startup

# Known Bugs
* Do not plug in the RC before the ground station has booted! This may cause slow OSD, no telemetry in app or power warnings since the phone charges via the Pi 

See milestones in the Wiki for more information.

DroneBridge 0.4: tag_name: v0.4
body: **Warning: This is a beta release! Despite extensive tests use with caution!**
This image is based on the WifiBroadcast 1.6RC6 release
For setup instructions check out the Wiki!

Tested on Raspberry Pi 3 with TL-WN722N wifi modules. MSP connected over USB and LTM over UART.

## Changelog:

*  Verified SUMD RC output in UAV
*  Fixed mwptools support
*  Implement telemetry module (air and ground) in C for less CPU usage
*  Merge telemetry module code & proxy module code into one executable
*  Release DroneBridge for ESP32 (ultra cheap medium-range UAV link)
*  Added working example on how to use DroneBridge python lib
*  New and more robust hotspot checker (move away from EZ-WifiBroadcasts way of doing things)
*  Fixed OSD via proxy telemetry


See milestones in the Wiki for more information.
DroneBridge 0.3.1: tag_name: v0.3.1
body: **Warning: This is a beta release! Despite extensive tests use with caution!**
This image is based on the WifiBroadcast 1.6RC6 release
To set it up check out the Wiki

Tested on Raspberry Pi 3 with TL-WN722N wifi modules. MSP connected over USB and LTM over UART.

## Changelog:
- added transparent pass through option for a telemetry stream (recommended for MAVLink telemetry) 
- fixed 5% CPU usage by control module on groundstation. Now it is < 0.1%

See milestones in the Wiki for more information.
DroneBridge 0.3: tag_name: v0.3
body: **Warning: This is a beta release! Despite extensive tests use with caution!**
This image is based on the WifiBroadcast 1.6RC6 release
To set it up check out the Wiki

Tested on Raspberry Pi 3 with TL-WN722N wifi modules. MSP connected over USB and LTM over UART.

## Changelog:
Much of the code and protocols has been rewritten. DroneBridge now features a custom C-lib that handles all the protocol and transmission stuff. That way all modules are based on the same source, except python implementations. All fancy new features of WifiBroadcast 1.6RC6 like OSD and kernel modules are available. DroneBridge comes with updated packages.

- **Full support for MAVLink telemetry (DroneBridge on Raspberry Pi & app)**
- MAVLink upload (bidirectional link). Untested as I do not have a MAVLink FC :(
- **MSP upload/download fully supported and tested (might be slow due to packetloss or some bug)**
- MWP Tools sucessfuly tested with DroneBridge. Upload iNAV missions!
- **All new DroneBridge RC protocol (12 channels & 50% smaller packets, more secure)**
- **All new DroneBridge raw protocol v2: way smaller packets while keeping all the functionality**
- Android app can display RC channels (via MAVLink telemetry or DroneBridge RC)
- Based on WBC 1.6 RC6
- Ability to set/request individual settings - smaller packets, future proof
- Telemetry module baud rate can be changed
- Display WBC video stats in app
- **SUMD RC output** (Untested)
- Lots of code cleanup and new modules (C only)
- Custom splash screen at boot

See milestones in the Wiki for more information.
DroneBridge 0.2: tag_name: v0.2
body: **Warning: This is a beta release! Despite extensive tests use with caution!
This image is based on the WifiBroadcast 1.6 RC2 release**
To set it up check out the Wiki

Tested on Raspberry Pi 3 with TL-WN722N wifi modules. MSP connected over USB and LTM over UART.

fixed:
- ip checker module caused telemetry lag

(hopefully) working:
- status module
- control module (RC i6S)
- telemetry module
- communication module
- support for Atheros and Ralink chips

Known Issues:
- WifiBroadcast needs to be running before modules do start
- MSP upload is not verified by control module. It is not recommended to use control module to upload missions yet
- No wifi mode support
- No usb accessory mode (use usb-tethering or wifi)
- RC signal quality not forwarded to WBC OSD
- Reception on drone side measured by telemetry module and not by control module
- currently two versions of the DroneBridge LTM frame get transmitted (Y (telemetry module) & Z (status module))

DroneBridge 0.1: tag_name: v0.1
body: <b>Warning: This is a beta release! Despite extensive tests use with caution!</b>
<b>This image is based on the WifiBroadcast 1.6 RC2 release</b>
<b>To set it up check out the Wiki</b>

Tested on Raspberry Pi 3 with TL-WN722N wifi modules. MSP connected over USB and LTM over UART.

<b>(hopefully) working:</b>
 - status module
 - control module (RC i6S)
 - telemetry module
 - communication module
 - support for Atheros and Ralink chips

<b>Known Issues:</b>
 - WifiBroadcast needs to be running before modules do start
 - MSP upload is not verified by control module. It is not recommended to use control module to upload missions yet
 - No wifi mode support
 - No usb accessory mode (use usb-tethering or wifi)
 - RC signal quality not forwarded to WBC OSD
 - Reception on drone side measured by telemetry module and not by control module
 - currently two versions of the DroneBridge LTM frame get transmitted (Y (telemetry module) & Z (status module))