Embedded firmware / UAV data link

ESP32 Firmware Development: A Wi-Fi Data Link For An Agricultural Drone

Firmware prototype for a QSPI-to-Wi-Fi bridge in a crop-protection drone, built on ESP-IDF.

Crop-spraying quadcopter with a white tank, releasing four blue spray plumes, on a white background

The opportunity

Is the data rate achievable?

A drone maker's engineers had limited ESP-IDF experience and doubted that an ESP32-PICO with a custom pinout could sustain the data rate needed for a new data-link module.

The solution

Prove it, then document it

Indeema built bridge and client firmware, tested the transfer rate and documented the design so the client's engineers can continue on native ESP-IDF.

  1. 01Rate feasibility
  2. 02Bridge firmware
  3. 03Client firmware
  4. 04Tests on hardware
  5. 05Documentation
Block diagram: a client with GPIO user input connects over QSPI slave to a bridge with QSPI master, UART logs to a console, GPIO user input, a Wi-Fi access point for configuration and a Wi-Fi station for data transfer to a server.

The impact

What the client received

  • Data rate in doubtRequired rate reached in logic-analyzer tests
  • Little ESP-IDF experienceDesign documents and integration support
  • No working linkFirmware demonstrated on a hardware setup

This is a prototype. Productization of the data-link module stayed with the client.

Engineering judgement

Decisions that shaped the product

Native ESP-IDF over Oryx

Use the native ESP-IDF network stack instead of the Oryx stack the client first considered, because it sped up initial development and is easier to maintain.

Confirm feasibility at the driver

Study the low-level SPI driver first, so the requirements and design rest on a confirmed bitrate path.

Engineer the dataflow end to end

Tune packet size and a custom QSPI configuration so both the QSPI and Wi-Fi sides run at their maximum practical speed.

Measure on a realistic rig

Validate on a hardware setup that simulates the client side, with a high-speed logic analyzer, before demonstrating.

Document for handover

Pair the prototype with a system design document so the client's team can reproduce and extend the setup.

Built with

C · C++ · Python · ESP-IDF · ESP32-PICO · ESP32-C6 · SPI / QSPI · UART

More case studies

All case studies ↗

A comparable product problem?

Drone data-link bridge firmware

Discuss a comparable challenge