Control a Swarm of RC Vehicles with ESP8266

Over at RCgroups, user [Cesco] has shared a very interesting project which uses the ever-popular ESP8266 as both a transmitter and receiver for RC vehicles. Interestingly, this code makes use of the ESP-Now protocol, which allows devices to create a mesh network without the overhead of full-blown WiFi. According to the Espressif documentation, this mode is akin to the low-power 2.4GHz communication used in wireless mice and keyboards, and is designed specifically for persistent, peer-to-peer connectivity.

Switching an ESP8266 between being a transmitter or receiver is as easy as commenting out a line in the source code and reflashing the firmware. One transmitter (referred to as the server in the source code) can command eight receiving ESP8266s simultaneously. [Cesco] specifically uses the example of long-range aircraft flying in formation; only coming out of the mesh network when it’s time to manually land each one.

[Cesco] has done experiments using both land and air vehicles. He shows off a very hefty looking tracked rover, as well as a quickly knocked together quadcopter. He warns the quadcopter flies like “a wet sponge”, but it does indeed fly with the ESP’s handling all the over the air communication.

To be clear, you still need a traditional PPM-compatible RC receiver and transmitter pair to use his code. The ESPs are simply handling the over-the-air communication. They aren’t directly responsible for taking user input or running the speed controls, for example.

This isn’t the first time we’ve seen an ESP8266 take the co-pilot’s seat in a quadcopter, but the maniacal excitement we feel when considering the possibility of having our very own swarm of flying robots gives this particular project an interesting twist.

9 thoughts on “Control a Swarm of RC Vehicles with ESP8266

  1. I think you’re a bit confused. Or maybe I am. You do need an RC “transmitter”, but only as a box with controls that generates a PPM signal. One ESP takes that PPM signal and sends it to the other. The other can just be used as a receiver that sends the PPM signal to a flight controller, but I was under the impression here that he turned the ESP into a flight controller by adding an IMU and letting it talk to ESCs.

    1. He might be using a pro-mini board to distribute the PPM signal to the ESCs; I can’t really tell from the picture, since those connections are hidden under the board. I’m guessing about the pro-mini based on the picture of the rover..

        1. It’s not exactly clear what the setup is, but it looks like the flight controller code is running on the ESP, and it’s outputting PPM controls that are distributed somehow (perhaps by way of a pro-mini board) to the ESCs.

  2. They really got some stuff wrong here …

    > One transmitter (referred to as the server in the source code)

    Wrong, receiver is server, transmitter the client.

    > specifically uses the example of long-range aircraft flying in formation;

    Never mentioned formation.

    > with the ESP’s handling all the over the air communication.

    Not only comms but ALL control, self-level and mixing

    > To be clear, you still need a traditional PPM-compatible RC receiver

    No you dont. You only need a ppm generator, which can be a RC transmitter.

    > They aren’t directly responsible … for running the speed controls,

    Yes they are. The tracked version produces pwm signals while the copter produces a serial datastream for the esc’s.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.