Commit Graph
100 Commits
Author SHA1 Message Date
Oleg Kalachev e6e4db0c4f Update ESP32-Core to 3.2.0 2025-05-07 17:41:48 +03:00
Oleg Kalachev d8fbc193c1 Make accelerometer calibration more verbose
Print the number of each calibration step
2025-05-07 17:40:31 +03:00
Oleg Kalachev dcd95176b4 Make low pass filter formula more straightforward 2025-04-30 00:16:16 +03:00
Oleg Kalachev b7cebbb3d6 Add some missing operator for vector library 2025-04-30 00:16:02 +03:00
Oleg Kalachev a6ccd236de Fix simulation build in Actions
Switched runner to Ubuntu 22.04 since Gazebo 11 now has binaries for 22.04 (amd64 only).
Changed the building tutorial to reflect that.
2025-04-29 23:02:56 +03:00
Oleg Kalachev e7a06b9413 Minor code simplifications 2025-04-29 23:01:59 +03:00
Oleg Kalachev 678bc7238e Update MAVLink-Arduino to 2.0.16 2025-04-29 23:01:46 +03:00
Oleg Kalachev 6670b4f358 Simplify and improve acc calibration command output 2025-04-29 23:01:09 +03:00
Oleg Kalachev 7f80a8a58d Remove twxs.cmake from the list of recommended extensions 2025-04-29 22:59:32 +03:00
Oleg Kalachev 2bd74e7f6f Minor code style fix 2025-04-29 22:59:09 +03:00
Oleg Kalachev d378d01dbc Encode if the mode in stabilized in heartbeat message 2025-04-29 22:58:54 +03:00
Oleg Kalachev e8341976f6 Cleanup 2025-03-01 00:02:44 +03:00
Oleg Kalachev f2aae92f1e Cleanups and updates 2025-02-28 23:58:31 +03:00
Oleg Kalachev 0a7ed1039f Rename flu to frd function to match the code style 2025-02-28 23:39:03 +03:00
Oleg Kalachev d4d1797ffc Update main readme for the minimal version 2025-02-28 23:22:03 +03:00
Oleg Kalachev 209986b9cd Change accel calibration code style a bit 2025-02-28 23:15:02 +03:00
Oleg Kalachev 32cdbba2a1 Remove dt multiplier from acc correction and increase acc weight
More classical complementary filter implementation
Increase effective accelerometer weight for faster convergence
2025-02-28 23:13:44 +03:00
Oleg Kalachev dd1ea4f604 Cleanup mavlink subsystem code 2025-02-28 23:12:57 +03:00
Oleg Kalachev 5fc30dbd8a Put last control time in RC control mavlink message instead of send time 2025-02-28 23:08:40 +03:00
Oleg Kalachev 51fa5a6cac Simplify and fix code 2025-02-28 23:07:37 +03:00
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 67e4a95697 Minor fix in joystick support for simulation
Don't use channels variable as it breaks code isolation
2025-02-28 22:30:29 +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
Oleg Kalachev dbfbe11478 Add test on building the firmware without Wi-Fi to Actions 2025-02-28 22:26:05 +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 07c5ae19dd Update upload-artifact action to fix build 2025-02-28 22:21:53 +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 e66cadbb57 Some fixes and updates to readme and other articles 2025-01-09 10:00:05 +03:00
Oleg Kalachev abfb3fea05 Update ESP32-core to 3.1.0 2025-01-09 09:59:51 +03:00
Oleg Kalachev 672149bd34 Use ubuntu-20.04 runner to build simulator in CI
The latest Ubuntu Gazebo 11 officially supports is Ubuntu 20.04
2025-01-09 09:59:40 +03:00
Oleg Kalachev 6c76d339e0 Add battery connector cable to components list 2025-01-09 09:59:31 +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 f7434921e5 Fix joystick work in simulation
Logic was broken as joystickGet never got called
2024-12-27 15:38:44 +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 ad9259810f Fix SBUS simulation logic
Don't consider zero values from not connected joystick
2024-12-25 02:17:58 +03:00
Oleg Kalachev c43624734d Move ONE_G definition to flix.ino 2024-12-25 02:17:50 +03:00
Oleg Kalachev 292b10197f Improve logic of passing channels data in simulated SBUS
Return the data the same way as on the real drone without touching channels global vairable
2024-12-25 02:17:43 +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 fcb426a16f Update MAVLink-Arduino to 2.0.11 2024-12-09 08:04:36 +03:00
Oleg Kalachev eea1a6a83c Minor fix in troubleshooting article 2024-12-08 07:40:24 +03:00
Oleg Kalachev 9d470cbdfa Add info on required version of Ubuntu for the simulation 2024-12-05 09:28:44 +03:00
Oleg Kalachev 6e140d673c Cleanup unused utility functions 2024-12-05 08:29:21 +03:00
Oleg Kalachev c75760e9e6 Some readme change regarding using different IMU board 2024-12-04 23:00:26 +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 7fa3baa76a Add some minor clarification under the IMU orientation picture 2024-11-30 04:59:04 +03:00
Oleg Kalachev 2c5eac92ea Add diagram for IMU orientation 2024-11-29 10:14:11 +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 a65ec946c0 Update ESP32 core to 3.0.7 2024-11-24 01:45:41 +03:00
Oleg Kalachev 429aecbbad Temporarily disable macOS simulation build in CI 2024-11-24 01:08:03 +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 7a2f2d955b Minor fix to the troubleshooting 2024-11-23 18:18:19 +03:00
Oleg Kalachev c611549f67 Update link to the troubleshooting article 2024-11-23 18:16:46 +03:00
Oleg Kalachev be3c5bf312 Add troubleshooting article 2024-11-23 18:13:41 +03:00
Oleg Kalachev f6ddeb4689 Clarify GY-91 pin names 2024-11-12 21:02:47 +03:00
Oleg Kalachev f6006d3305 Fix c_cpp_properties.json to match updated ESP32 core version 2024-11-04 16:35:22 +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 e7445599cc Update core and libraries to the most recent versions 2024-11-04 16:28:13 +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 c5c889679b Fix simulation build 2024-10-31 19:27:27 +03:00
Oleg Kalachev ad2c64625c Print the IMU information in imu command 2024-10-31 10:24:00 +03:00
Oleg Kalachev 39d4f39932 Some updates in docs 2024-10-30 09:45:27 +03:00
Oleg Kalachev 57fe3fef2a Upload STEP files for models 2024-10-29 14:18:03 +03:00
Oleg Kalachev 4ba9accf4b Fix image for washer-m3 model 2024-10-29 14:04:42 +03:00
Oleg Kalachev 99c891e1cd Add explanation on installing the right ESP32 core in build insutrctions 2024-10-27 11:07:53 +03:00
Oleg Kalachev 378db51de9 Get rid of simulator build warnings 2024-10-24 03:50:03 +03:00
Oleg Kalachev 8a83d70bb6 Update MAVLink-Arduino to 2.0.10 2024-10-24 03:49:28 +03:00
Oleg Kalachev ba5ac30136 Adjust the default camera position in the simulator 2024-10-24 03:48:31 +03:00
Oleg KalachevandGitHub baf724ed6e Minor README fixes 2024-10-23 14:45:57 +03:00
Oleg Kalachev af58d56138 README fixes 2024-10-23 14:35:28 +03:00
Oleg Kalachev 13341602f0 Fix Gazebo stl model orientation 2024-10-23 14:30:25 +03:00
Oleg Kalachev 84368738b4 Major documentation update, the new drone version files released 2024-10-23 10:17:47 +03:00
Oleg Kalachev 0397b3a736 Move the visual part of the gazebo model to the bottom of the file 2024-10-23 09:42:17 +03:00