DIY Motion Controller is a gesture control controller that works with any drone or RC airplane. It acts as an OpenTX trainer slave connected to the OpenTX radio like a Radiomaster TX16S or any other with SBUS trainer input.
Drone or airplane should be capable of Position Hold and Altitude Hold. INAV or Ardupilot recommended.
More info about the project can be found here:
Trainer Sticks
(Model -> Special Functions)SERIAL1_TX
pin (14 default)In case of radios that does not have user accessible serial port, PPM mode can be used.
To enable PPM output on pin 14
, uncomment #define TRAINER_MODE_PPM
and comment out #define TRAINER_MODE_SBUS
//#define TRAINER_MODE_SBUS
#define TRAINER_MODE_PPM
INAV craft should be capable of performing Position Hold and Altitude Hold. Craft should be stationary when Motion Controller is enabled.
Gyro: OK
HOT
STL for the controller available here. Print with PLA/PET-G/ABS. Design has integrated supports, print without adding supports in slicing software.
ESP32 PIN | Accessory PIN |
---|---|
0 | MPU6050 SDA |
23 | MPU6050 SCL |
4 | Thumb trigger |
15 | Index finger trigger |
13 | Thumb joystick X Axis |
33 | Thumb joystick Y Axis |
32 | Thumb hoystick press button |
Both Thumb and Index Finger Triggers should be wired to GND (ESP32 Pullups are enabled on those inputs)
To complile and flash ESP32, you will need the latest Arduino and Arduino ESP32 core
Following Arduino libraries are required: