Commit Graph

25 Commits

Author SHA1 Message Date
Oleg Kalachev 35e94f6ea6 Support ESP32-C3
User Serial1 for rc instead of Serial2, as ESP32-C3 has only 2 Serials.
Add CI build for ESP32-C3.
2026-05-10 21:07:20 +03:00
Oleg Kalachev 2ccda03573 Implement motors output desaturation
So the drone continues stabilization on max thrust.
2026-04-28 13:23:42 +03:00
Oleg Kalachev 51cd5fc691 Implement battery voltage monitoring
Add power subsystem.
Add PWR_VOLT_PIN, PWR_VOLT_SCALE, PWR_VOLT_LPF_A parameters.
Support BATTERY_STATUS mavlink messages streaming.
Add pw cli command.
Add voltage field to pyflix library.
pyflix@0.12.
2026-04-22 11:35:37 +03:00
Oleg Kalachev a687303062 Make motor parameters apply without reboot
Add callback to parameter definition to call after parameter is changed.
2026-02-19 04:56:12 +03:00
Oleg Kalachev 85afe405cb Improve pause function work
Fix disconnecting from qgc while pausing in the simulation. 
Consider total delay time in micros() in simulation to increase t while delaying.
Simplify and get rid of ARDUINO macro check.
2025-07-12 09:29:47 +03:00
Oleg Kalachev 52d31ba7a5 Add missing includes to Arduino.h to make build more portable 2025-07-01 02:38:47 +03:00
Oleg Kalachev 2bcab6edb3 Make cli command case insensitive
iOS QGC capitalizes the command by default, so it's more convinient
2025-05-10 05:15:54 +03:00
Oleg Kalachev 149c62568f Refactor CLI submodule
Move command parsing to doCommand
Parse command with splitString instead of stringToken
Trim commands
Move cliTestMotor to the bottom
Rename parseInput to handleInput, which is more clear
Move motor test function to motors.ino
2025-02-17 15:51:58 +03:00
Oleg Kalachev 404ceed851 Make motor indexes definition const int and move them to motors.ino
Remove motor indexes definitions from flix.ino
Add motors.ino to simulation code and implement required mocks
2025-01-09 11:14:18 +03:00
Oleg Kalachev 2efae82177 Minor fixes 2024-12-25 01:41:45 +03:00
Oleg Kalachev ae349fb73c Implement parameters subsystem
* Unified parameters storage.
* Store parameters in flash on the hardware.
* Store parameters in text file in simulation.
* Work with parameters in command line.
* Support parameters in MAVLink for working with parameters in QGC.
2024-12-23 13:00:02 +03:00
Oleg Kalachev f54da5bf42 Add CLI command for rebooting the drone 2024-12-20 20:59:59 +03:00
Oleg Kalachev 378db51de9 Get rid of simulator build warnings 2024-10-24 03:50:03 +03:00
Oleg Kalachev a94687bd56 Keep the t variable monotonic in the simulation
Otherwise it causes stopping sending MAVLink and other bugs
2024-10-23 09:36:54 +03:00
Oleg Kalachev 627233f862 Minor updates 2024-07-25 02:44:47 +03:00
Oleg Kalachev 69cfc9e5fa Utilize internal ESP32 UART invertor for SBUS 2024-01-26 13:46:13 +03:00
Oleg Kalachev f4aaf0f4f3 Use radians macro, minor change 2024-01-12 00:43:52 +03:00
Oleg Kalachev f520b57abe Implement RC calibration, common for the real drone and the simulation 2024-01-02 11:54:09 +03:00
Oleg Kalachev d2296fea76 Change C++ code style: put curly brace on the same line 2023-12-29 18:56:25 +03:00
Oleg Kalachev cb27e0f61f Cleanups 2023-12-13 07:59:08 +03:00
Oleg Kalachev 9a93367629 Make dt=0 on first step, simplify code 2023-05-31 20:07:38 +03:00
Oleg Kalachev f84d1e95dd More cleanups 2023-05-26 16:46:22 +03:00
Oleg Kalachev 88cc792287 Cleanups 2023-05-26 16:24:19 +03:00
Oleg Kalachev 34fd303027 Restore accidentally removed files 2023-05-24 10:58:34 +03:00
Oleg Kalachev aaa8f70166 Enable Serial input and output in simulator, refactor 2023-05-24 10:23:12 +03:00