Improvements - cornellmotionstudio/DylanDrone GitHub Wiki
3/3
Making Dylan more stable with two different approaches:
1. Optical Flow sensor:
For this to work, we need to at least be running iNav or ArduPilot. iNav is easier to use and have lesser hardware specifications while ArduPilot supports features such as live telemetry mapping on the computer out of the box. I think the course of action is to first, pursue iNav, and if this does not work, then pursue the ArduPilot option.
In terms of optical flow sensor modules, I think this is the best one for our indoor flying purposes:
In terms of flight controllers that support iNav, unfortunately we cannot use the default T-Motor ones that we have. Rather, we must use one of the following two options that are in stock and support our 20x20mm mounting pattern for Dylan:
- H7 Processor (more expensive, but slightly better IMU & processor): https://www.racedayquads.com/products/matek-h743-mini-v3-20x20-flight-controller?keyword=inav%20flight%20controller%2020%20x%2020
- F4 Processor (less expensive): https://www.racedayquads.com/products/matek-f405-minite-20x20-flight-controller?keyword=matek%20flight%20controller
2. STM emulating a transmitter:
Which sends signals to the drone based on the relative position of the drone over ESP-32 or something like this:
https://www.youtube.com/watch?v=0ql20JKrscQ&t=500s
This approach seems more feasible, particularly with smaller drones, possible to be run with an ESP-32 acting an emulator which is sending the signals of motion.
Incorporating telemetry
Additionally investigating the option of adding telemetry to receive information from the drone's sensors such as battery, current draw data, and more with Airport, using a serial link.
For this option, we need to have two ELRS transmitters and receivers per Dylan, one operating at 2.4 GHz, that is the control link, and one operating at 900 MHz which is for the telemetry. The 900 MHz telemetry receiver can be connected to a computer where INAV mission planner (the app), or something like this can display data.
Look into which modules support this airport functionality and whether to run iNav, ArduPilot, or BetaFlight.