152 Commits

Author SHA1 Message Date
Oleg Kalachev
75127eb6f8 Remove non-nessesary printArray function 2025-02-28 23:06:12 +03:00
Oleg Kalachev
89c1ada005 Remove command parsing to simplify the code 2025-02-28 23:02:02 +03:00
Oleg Kalachev
6058e8ecab 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
Remove parameters table functionality to simplify the code
2025-02-28 22:49:37 +03:00
Oleg Kalachev
fafe630e4c Improve RC reading in calibration process 2025-02-28 22:29:36 +03:00
Oleg Kalachev
5ff44db8dd Simplify WIFI_ENABLED macro test 2025-02-28 22:28:44 +03:00
Zatupitel
2b15812483 Fix working on ESP32-S3 (#8)
Disable brown-out detector in a more correct way: clear only enable bit instead of clearing the whole register.

---------

Co-authored-by: Oleg Kalachev <okalachev@gmail.com>
2025-02-28 22:28:10 +03:00
Oleg Kalachev
41b5932a5d Move SBUS RC declaration to the top 2025-02-28 22:25:27 +03:00
Oleg Kalachev
add03482aa Minor cleanups and fixes 2025-02-28 22:24:15 +03:00
Oleg Kalachev
32c4875ca1 Increase pwm frequency and resolution 2025-02-28 22:22:39 +03:00
Oleg Kalachev
d60968ea25 Remove RC_CHANNELS macro 2025-02-28 22:19:52 +03:00
Oleg Kalachev
03c6576b72 Move controlsTime variable to rc.ino 2025-01-11 01:17:11 +03:00
Oleg Kalachev
59a8a80cce Minor cleanup 2025-01-10 07:15:38 +03:00
Oleg Kalachev
5530ad2981 Move loopRate to time.ino 2025-01-10 07:15:15 +03:00
Oleg Kalachev
f9e1802bc0 Make util module header instead of .ino-file 2025-01-10 07:02:00 +03:00
Oleg Kalachev
ddc46c049f Make ONE_G definition const and move to utils.ino 2025-01-09 11:31:33 +03:00
Oleg Kalachev
8c9bff0813 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:17:44 +03:00
Oleg Kalachev
e3873c99c5 Fix getDutyCycle return type to make it possible to increase resolution 2025-01-09 11:02:57 +03:00
Oleg Kalachev
fd437b96d3 Add missing const qualifiers to some quaternion methods 2025-01-09 10:03:08 +03:00
Oleg Kalachev
9a977e85c8 Implement rotate method for quaternions as replace for multiplication
Vector rotating method is renamed from `rotate` to `rotateVector` to avoid inconsistent object and argument order in different `rotate` methods
2025-01-09 10:00:16 +03:00
Oleg Kalachev
a76f5a2299 Remove redundant inline specifiers
In-class defined methods are specified as inline by default
2025-01-09 09:59:10 +03:00
Oleg Kalachev
8e8c8d05bb Some minor cleanups and fixes 2025-01-09 09:58:56 +03:00
Oleg Kalachev
1582238abc Various minor fixes 2024-12-27 21:53:23 +03:00
Oleg Kalachev
3c28d0e950 Minor fix 2024-12-25 02:21:40 +03:00
Oleg Kalachev
77c621100f Increase motors output frequency 2024-12-25 02:19:06 +03:00
Oleg Kalachev
1ef1ed5fc4 Simplify motors duty cycle computation 2024-12-25 02:19:00 +03:00
Oleg Kalachev
ce67baae89 Minor fixes 2024-12-25 02:18:52 +03:00
Oleg Kalachev
c43624734d Move ONE_G definition to flix.ino 2024-12-25 02:17:50 +03:00
Oleg Kalachev
16c9d8fe8a Minor change 2024-12-25 02:17:28 +03:00
Oleg Kalachev
931f46b92d Don't let throttle be less than 0 in failsafe 2024-12-25 02:17:16 +03:00
Oleg Kalachev
441f82af95 Add notice on removing props in motor test commands in help 2024-12-25 02:16:34 +03:00
Oleg Kalachev
77effa5577 Rotate IMU data to support standard axes orientation in new FlixPeriph 2024-12-11 06:17:37 +03:00
Oleg Kalachev
6e140d673c Cleanup unused utility functions 2024-12-05 08:29:21 +03:00
Oleg Kalachev
172b6becc6 Use new FlixPeriph library with ICM-20948 support 2024-12-04 14:41:23 +03:00
Oleg Kalachev
475e9a87ba Configure IMU before calibrating the gyro which improves calibration 2024-12-04 12:25:07 +03:00
Oleg Kalachev
ea141f851f Use 'loop rate' term instead of misleading 'loop frequency' 2024-12-04 07:00:00 +03:00
Oleg Kalachev
048a3c6375 Use the new UART2 pins for RC by default
To make it consistent with the documentation
2024-11-27 23:02:20 +03:00
Oleg Kalachev
a7b69f99d0 Fix non-working motor control commands 2024-11-24 00:17:47 +03:00
Oleg Kalachev
b015c15a7e Remove non-working fullmot command 2024-11-24 00:10:37 +03:00
Oleg Kalachev
eca48c6546 Minor fix 2024-11-04 16:28:54 +03:00
Oleg Kalachev
cd5f6721dc Updates to LED control code
Don't call digitaWrite on each setLED call
2024-11-04 16:28:43 +03:00
Oleg Kalachev
6327585754 Print accel calibration parameters in more convenient way 2024-11-04 14:37:05 +03:00
Oleg Kalachev
ec832d4e37 Implement RC fail-safe 2024-11-04 11:51:17 +03:00
Oleg Kalachev
2fdad7bdb6 Remove LED horizontality signalization
It's better to control the attitude estimation using QGC
2024-11-03 17:41:13 +03:00
Oleg Kalachev
ad2c64625c Print the IMU information in imu command 2024-10-31 10:24:00 +03:00
Oleg Kalachev
abcc9b96de Use FLU as the main coordinate system instead of FRD
Corresponding to the IMU orientation in the new version
2024-10-23 09:30:49 +03:00
Oleg Kalachev
f46460e53d Make RC_CHANNELS=16 corresponding the number of SBUS channels 2024-10-23 09:28:09 +03:00
Oleg Kalachev
23f3295439 Remove ESC support and add MOSFET support in motors code
The new version uses MOSFETs
2024-10-23 09:27:54 +03:00
Oleg Kalachev
b0b6eb9a97 Minor code cleanups and clarifications 2024-10-23 09:25:39 +03:00
Oleg Kalachev
84a329cca7 More clean yaw error calculation 2024-10-23 09:25:07 +03:00
Oleg Kalachev
5613028678 Enable Wi-Fi by default 2024-10-23 09:24:58 +03:00