Commit Graph

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