The controller:
The DX5e is officially a five channel transmitter but there is a trainer switch that controls channel six. So I have a total of six channels. Four are used for flying that leaves me two channels for take off, landing and emergency. Also need a way to notify the flyer that the batteries are low. Normally this done through the app, but since this is a one way link we need a different way of communicating.
The receiver:
I'm going to use the OrangeRx R410X. This receiver has four PWM outputs and a 6Ch CPPM output. I will only use the 6Ch CPPM because I can read the 6 channels with one input instead reading the PWM signals individually. Also the receiver returns the channels to the state when they where in the bind position. I can use this function to detect when the drone has lost connection.
Landing/Takeoff:
For this I will use a toggle switch thats on the DX5e. Take off will be done on the rising edge. If the switch is returned or the drone loses connection the signal will go back to low. This falling edge will put the drone into hover mode. In this mode triggering the momentary trainer switch will make the drone land. This makes sure the drone doesn't fly off or crash when connection is lost. If the switch is turned on or connection is reestablished the drone will continue flying.
Emergency:
There is a emergency mode which cuts all engine and the drone will drop out of the sky. Using this function is very dangerous but can be useful. The momentary trainer switch will be used for this. To make sure I don't get false positives and the drone falling back to earth, the switch should be held for a period of time before activating the emergency mode.
Low battery:
I thought of two ways communicating with the flyer, movement or leds. Leds are a bit hard to see from far away so movement is my choice. The plan is to make the drone rotate around its axis until the flyer acknowledge it with the Landing/takeoff switch. After the switch is set to low the drone will keep spinning for a moment. When it has stopped the flyer can decide to land or go back to fly mode to find a decent spot to land.
Hardware:
The hardware shouldn't be much a 3.3V regulator for the ESP8266 and a level shifter to convert the 5V output from the receiver to 3.3V for the ESP8266.
Hi there, i’m trying to build my own wifi controller for the AR.Drone and i stumbled over your gitHub source.
Sadly i don’t understand enough of it to fit it for my project, can you maybe tell me how i can make the drone take off, hover, and land within the program without the external rc reciever (i have absolutely zero experience with whatever protocoll it uses)?
the commented part at the „times“ declaration puzzles me a bit ^^
... the entire „times“ array to be specific XD