Commit Graph
100 Commits
Author SHA1 Message Date
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
Oleg Kalachev c41c96a96d Update visual of the Gazebo model to the new version
Use STL instead of DAE, make props separated visuals
2024-10-23 09:41:16 +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 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
Oleg Kalachev a0cca80980 Some fixes to VSCode config 2024-07-30 09:28:20 +03:00
Oleg Kalachev bed5d79db8 Add comments to motor pins 2024-07-30 07:49:21 +03:00
Oleg Kalachev da51ebab38 Add some C++ code style settings to VSCode settings 2024-07-30 07:46:40 +03:00
Oleg Kalachev 0b977aee28 Add json rules to .editorconfig 2024-07-30 07:46:15 +03:00
Oleg Kalachev 6ef8820770 Add VSCode configuration 2024-07-25 06:51:47 +03:00
Oleg Kalachev e993dde355 Update ESP32 Arduino Core to v3.0.3 2024-07-25 02:45:59 +03:00
Oleg Kalachev 627233f862 Minor updates 2024-07-25 02:44:47 +03:00
Oleg Kalachev ce87234a51 Add link to Android QGroundControl download to building instructions 2024-06-18 14:43:40 +03:00
Oleg Kalachev e40fbd0ce2 Install arduino-cli without sudo in instructions 2024-06-18 13:51:07 +03:00
Oleg Kalachev 0938609dc7 Update checkout action to v4
v3 is deprecated
2024-06-12 03:26:17 +03:00
Oleg Kalachev 1a22350775 Add article on analyzing the logs 2024-06-02 11:46:32 +03:00
Oleg Kalachev 72b2cf49d5 Add tools for conversion svg logs to mcap 2024-06-02 01:45:49 +03:00
Oleg Kalachev 63d602dd7a Add C++ tool for conversion csv logs to ulog 2024-06-02 01:45:05 +03:00
Oleg Kalachev 1119c77cca Remove unneeded abs for motors thrust in simulation 2024-05-24 14:47:26 +03:00
Oleg Kalachev fbe33eac1b Set gyro limits to 2000 DPS by default 2024-05-24 14:46:38 +03:00
Oleg Kalachev 7cfcf5b63b Use more natural torqueTarget order in mixer (xyz) 2024-05-21 10:52:39 +03:00
Oleg Kalachev 94d24cbd28 Fix PWM values for reverse rotations 2024-05-21 10:51:45 +03:00
Oleg Kalachev be3d2be9d3 Fix Vector::angularRatesBetweenVectors return NaNs on opposite vectors 2024-05-21 10:50:47 +03:00