Oleg Kalachev
c3b818c2ae
Try using installable Preferences library
2025-11-18 18:19:02 +03:00
Oleg Kalachev
531b3f4d04
Use analogWrite api instead of ledc
2025-11-18 16:54:51 +03:00
Oleg Kalachev
795b248b94
Adapt firmware for non-esp32 boards
2025-11-04 13:47:41 +03:00
Oleg Kalachev
77c4b5fc5b
Test build for STM32
2025-11-04 13:42:05 +03:00
Oleg Kalachev
1a017ccb97
Keep only one floating point version of map function
...
Two variants are redundant
2025-11-02 00:02:28 +03:00
Oleg Kalachev
7170b20d1d
Simplify command for command handling
2025-10-21 19:41:10 +03:00
Oleg Kalachev
dc9aed113b
Minor code fixes
2025-10-21 19:41:05 +03:00
Oleg Kalachev
08b6123eb7
Fixes to troubleshooting
2025-10-21 19:40:54 +03:00
Oleg Kalachev
1a8b63ee04
Send only mavlink heartbeats until connected
2025-10-21 19:39:17 +03:00
Oleg Kalachev
8c49a40516
Skip attitude/rate control if thrustTarget is ineffective
...
To prevent i term windup.
2025-10-20 23:01:17 +03:00
Oleg Kalachev
ca595edce5
Refactor PID control to simplify the code and modifications
...
Each PID uses its internal dt, so may be various contexts with different rate.
PID has max dt, so no need to reset explicitly.
2025-10-20 22:54:18 +03:00
KiraFlux
d06eb2a1aa
Quaternion::fromBetweenVectors: pass u and v as const references ( #21 )
2025-10-19 20:46:46 +03:00
Oleg Kalachev
e50a9d5fea
Revert t variable type to float instead of double
...
For the sake of simplicity and consistency.
2025-10-19 20:46:38 +03:00
Oleg Kalachev
ebac78dc0f
Minor change
2025-10-19 20:46:26 +03:00
Oleg Kalachev
186cf88d84
Add generic Delay filter
2025-10-19 20:46:11 +03:00
Oleg Kalachev
253aae2220
Lowercase imu and rc variables
...
To make it more obvious these are variables, not classes.
2025-10-19 20:45:56 +03:00
Oleg Kalachev
6f0964fac4
Rename failsafe.ino to safety.ino
...
To aggregate all the safety related functionality.
2025-10-19 20:44:54 +03:00
Oleg Kalachev
1d034f268d
Add ESP32-S3 build to Actions
2025-10-19 20:44:46 +03:00
Oleg Kalachev
1ca7d32862
Update VSCode settings
...
Disable error squiggles as they often work incorrectly.
Decrease number of include libraries to index.
2025-10-14 11:43:55 +03:00
Oleg Kalachev
ab941e34fa
Fix Gazebo installation
...
Installation script is deprecated, install using package on Ubuntu 20.04
2025-10-13 18:56:14 +03:00
Oleg Kalachev
7bee3d1751
Improve rc failsafe logic
...
Don't trigger failsafe if there's no RC at all
Use AUTO mode for descending, instead of STAB
Increase RC loss timeout and descend time
2025-10-12 21:27:08 +03:00
Oleg Kalachev
06ec5f3160
Disarm the drone on simulator plugin reset
...
In order to reset yaw target.
2025-10-07 15:45:48 +03:00
Oleg Kalachev
c4533e3ac8
Reset yaw target when drone disarmed
...
Prevent unexpected behavior when the drone tries to restore its old yaw on takeoff.
2025-10-07 15:43:28 +03:00
Oleg Kalachev
e673b50f52
Include FlixPeriph header instead of MPU9250
...
This simplifies choosing IMU model
2025-10-07 08:43:12 +03:00
Oleg Kalachev
5151bb9133
Ensure showing correct raw data in imu command
...
Some IMUs will reset acc and gyro buffer on whoAmI() call
2025-10-07 08:43:06 +03:00
Oleg Kalachev
c08c8ad91c
pyflix@0.9
2025-10-03 06:49:44 +03:00
Oleg Kalachev
e44f32fca7
pyflix: don't quit on any sendto error
2025-10-03 06:47:56 +03:00
Oleg Kalachev
ca03bdb260
pyflix: partially fix wireless downloading logs
2025-10-03 06:46:56 +03:00
Oleg Kalachev
b3dffe99fb
pyflix: add passing event name to off method
2025-10-03 06:46:29 +03:00
Oleg Kalachev
6e6a71fa69
Remove unneeded advice from troubleshooting
2025-10-03 06:45:16 +03:00
Oleg Kalachev
838fe11f6b
Simplify mode index check in set_mode
2025-09-26 05:03:36 +03:00
Oleg Kalachev
8b36509932
pyflix@0.8
2025-09-25 16:55:06 +03:00
Oleg Kalachev
0268c8ebcf
Some fixes and updates in pyflix
...
Fix set_controls
Add set_armed method
2025-09-25 16:53:49 +03:00
Oleg Kalachev
09bf09e520
Update schematics diagram
2025-09-25 06:16:02 +03:00
Oleg Kalachev
4c89b10767
Fix fields order in psq command
2025-09-20 22:35:36 +03:00
Oleg Kalachev
a79df52959
Don't trigger rc failsafe in AUTO mode or if disamed
2025-09-20 20:36:36 +03:00
Oleg Kalachev
e88888baeb
Fix rc calibration steps enumeration again
2025-09-11 11:47:28 +03:00
Oleg Kalachev
de69b228ff
Fix rc calibration steps enumeration
2025-09-02 11:03:44 +03:00
Oleg Kalachev
f9739dcd7e
Don't arm by mavlink command if throttle is not low
2025-08-29 03:47:51 +03:00
Oleg Kalachev
708c8f04dc
Minor docs fix
2025-08-28 05:17:46 +03:00
Oleg Kalachev
2128201440
Fix simulation build
2025-08-28 01:13:38 +03:00
Oleg Kalachev
8e3c86f5ee
pyflix@0.7
2025-08-28 00:52:27 +03:00
Oleg Kalachev
40fc4b96b5
Implement AUTO mode for automatic flights
...
Support SET_ATTITUDE_TARGET, SET_ACTUATOR_CONTROL_TARGET in mavlink.
ACTUATOR_OUTPUT_STATUS is changed ACTUATOR_CONTROL_TARGET to match used message for setting motor outputs.
Add support for changing mode from mavlink.
Support automatic flights in pyflix.
2025-08-28 00:49:24 +03:00
Oleg Kalachev
10fafbc4a0
Send udp packets in unicast after connection is established
...
This makes qgc connection faster.
Add WIFI_UDP_REMOTE_ADDR macro for default remote address for both the firmware and simulation.
2025-08-27 05:01:07 +03:00
Oleg Kalachev
d47d7b8bd4
Support arm/disarm mavlink commands
...
Refactor commands handling to remove repeating ack message packing.
2025-08-27 04:45:25 +03:00
Oleg Kalachev
a7fdc2a88f
Minor change in cli help message
2025-08-27 04:43:24 +03:00
Oleg Kalachev
c1788e2c75
Refactor arming logic
...
Arm and disarm with gestures only: left stick right/down for arming, left/down for disarming.
Remove arming switch as it complicates arming gestures logic.
Remove MAV_CTRL_SCALE parameter as it complicates arming gestures logic, advise to decrease TILT_MAX when controlling with a smartphone.
Put some minimal thrust to motors to indicate armed state.
Rename build article to usage article, add flight instructions.
2025-08-27 03:19:26 +03:00
Oleg Kalachev
beb655fdcb
Add illustration for qgc proxy for pyflix
2025-08-27 03:13:28 +03:00
Oleg Kalachev
bf0cdac111
Major update of the articles
...
Reflect control subsystem refactoring.
Update dataflow diagram.
Add control subsystem diagram.
Minor updates.
2025-08-27 00:09:42 +03:00
Oleg Kalachev
b21e81a68b
Add cli commands for switching mode
...
Make mode variable int instead of enum, which is more convinient.
2025-08-26 21:55:27 +03:00