markingle / mavesp8266

Although the repo name implies ESP8266 this repo is a ported version of the mavesp8266 to a ESP32 WROOM
Other
7 stars 4 forks source link

MavESP8266

Current Binary

Download the current version (MAVLink V2) from here: ArduPilot fork

Download the legacy version (MAVLink V1) from here: Firmware version 1.1.1

ESP8266 WiFi Access Point and MavLink Bridge

Join the chat at https://gitter.im/dogmaphobic/mavesp8266

This was developed using a NodeMCU v2 Dev Kit as it conveniently provides a secondary UART for debugging. It has been tested with the ESP-01 shipped with the PixRacer and it is stable at 921600 baud.

The build enviroment is based on PlatformIO. Follow the instructions found here: http://platformio.org/#!/get-started (only tested on Mac OS) for installing it but skip the platform init step as this has already been done, modified and it is included in this repository. In summary:

brew install platformio
git clone --recursive https://github.com/markingle/mavesp8266.git
cd mavesp8266
platformio run

When you run platformio run for the first time, it will download the toolchains and all necessary libraries automatically.

Note: if build fails with AttributeError: module 'enum' has no attribute 'IntFlag', try pip3 uninstall -y enum34

Useful commands: ESP12e

Useful commands: ESP-01

Useful commands: ESP32-WROOM (ESP32-WROOM-32UE)

Useful commands: ESP32-S3 or ESP32-S3

Useful commands: ESP32-S3-MINI or ESP32-S3-MINI Mouser

Useful commands: ESP32-C3-MINI

Platform Details

MavLink Submodule - >>>> DON'T FORGET TO DO THIS!!!!!!! <<<<<

The git clone --recursive above not only cloned the MavESP8266 repository but it also installed the dependent MavLink sub-module. To upated the module (when needed), use the command:

git submodule update --init

Wiring it up

User level (as well as wiring) instructions can be found here: https://pixhawk.org/peripherals/8266

Get the ESP-01 adapter board here on Amazon; commonly called an "ESP01 programmer", this one has a little rocker switch on the side (UART side for serial TTL debugging by AT commands, PROG for firmware programming) and a yellow pin header which allows you plugin the ESP01 module without any wires. It defaults to 115200 and enumerates under Ubuntu as a ch341-uart converter.

MavLink Protocol

The MavESP8266 handles its own set of parameters and commands. Look at the PARAMETERS page for more information.

HTTP Protocol

There are some preliminary URLs that can be used for checking the WiFi Bridge status as well as updating firmware and changing parameters. You can find it here.