Commit Graph
100 Commits
Author SHA1 Message Date
Oleg Kalachev 8d7a4595f5 Rename flushParameters to more clear syncParameters 2024-12-26 01:14:26 +03:00
Oleg Kalachev acc0274175 Minor fix 2024-12-25 02:21:17 +03:00
Oleg Kalachev edd249566e Increase motors output frequency 2024-12-25 02:13:57 +03:00
Oleg Kalachev ca355e0162 Simplify motors duty cycle computation 2024-12-25 02:13:33 +03:00
Oleg Kalachev 2efae82177 Minor fixes 2024-12-25 01:41:45 +03:00
Oleg Kalachev fd30027ea4 Support AUTOPILOT_VERSION message request to make qgc connection faster
Don't have to wait until the request is timed out.
2024-12-23 17:59:35 +03:00
Oleg Kalachev 6f190295cf Fix building article regarding new parameters subsystem 2024-12-23 13:59:44 +03:00
Oleg Kalachev ae349fb73c Implement parameters subsystem
* Unified parameters storage.
* Store parameters in flash on the hardware.
* Store parameters in text file in simulation.
* Work with parameters in command line.
* Support parameters in MAVLink for working with parameters in QGC.
2024-12-23 13:00:02 +03:00
Oleg Kalachev 28f6cfff60 Fix SBUS simulation logic
Don't consider zero values from not connected joystick
2024-12-23 04:04:00 +03:00
Oleg Kalachev 7533a9cbfa Move ONE_G definition to flix.ino 2024-12-23 02:37:03 +03:00
Oleg Kalachev 3cc3014ca0 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-23 02:04:22 +03:00
Oleg Kalachev b6286a50b2 Minor change 2024-12-23 02:01:55 +03:00
Oleg Kalachev 4f2cf0c0b1 Don't let throttle be less than 0 in failsafe 2024-12-23 01:32:25 +03:00
Oleg Kalachev f06a9301df Add notice on removing props in motor test commands in help 2024-12-23 01:14:05 +03:00
Oleg Kalachev 41cde3261a Minor troubleshooting article fix 2024-12-21 13:53:04 +03:00
Oleg Kalachev f54da5bf42 Add CLI command for rebooting the drone 2024-12-20 20:59:59 +03:00
Oleg Kalachev d01d5b7ecb Improve Markdown linting
* Move .markdownlint to the root so it applies to the main readme.
* Improve .markdownlint, enable proper names checks.
* Use markdownlint-cli2 instead of markdownlint-cli as it's more compatible with VSCode extension.
2024-12-17 17:16:19 +03:00
Oleg Kalachev 0608765347 Add link to textbook website to readme 2024-12-17 11:27:14 +03:00
Oleg Kalachev b70d16c1f7 Update deploy-pages version to fix website deploy 2024-12-16 12:13:36 +03:00
Oleg Kalachev f7253bed70 Temporarily disable macOS simulation build 2024-12-16 11:59:49 +03:00
Oleg Kalachev 9957205d8f Fix website deploy 2024-12-16 11:58:35 +03:00
Oleg KalachevandGitHub 8440ddd3ee Create book and deploy it to the website (#6)
* Create book structure.
* Add workflow for linting the markdown using markdownlint.
* Add workflow for building the book with mdBook and deploying to the website.
* Restyle mdBook and support GitHub-style alerts.
* Add images zooming.
* Add index, firmware structure and gyroscope articles.
2024-12-16 11:53:43 +03:00
Oleg Kalachev 66ba9518ae Minor readme fix 2024-12-16 11:30:53 +03:00
Oleg Kalachev d273b77ce2 Bring back macOS simulation build in Actions 2024-12-12 09:07:09 +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
Oleg Kalachev ad6bc02643 Minor fixes and changes 2024-05-21 10:49:57 +03:00
Oleg Kalachev b91f4d3b6d Install arduino-cli to /usr/local/bin
The Arduino docs probably has mistake offering non-existent ~/local/bin path instead of ~/.local/bin.
Some systems lack ~/.local/bin as well, so simply use /usr/local/bin.
Also install arduino-cli in CI the same way as in the docs to check them.
2024-05-21 10:34:05 +03:00
Oleg Kalachev 28da7baf61 Add link to Habr article to readme 2024-05-17 07:59:18 +03:00
Oleg Kalachev 7516279132 Add requirements.txt for tools 2024-05-10 22:28:42 +03:00
Oleg Kalachev a383c83a29 Minor update to .editorconfig 2024-05-02 21:22:13 +03:00
Oleg Kalachev 6392c4a97a Update dataflow diagram to reflect newly introduced gyro variable 2024-05-01 02:35:30 +03:00
Oleg Kalachev cfb2e60310 Add correct rules to yml files editor config 2024-05-01 02:33:44 +03:00
Oleg Kalachev 41a9a95747 Transfer gyro low pass filter to estimate.ino
Separate raw gyro data and filtered rates to different variables
2024-04-20 14:52:01 +03:00
Oleg Kalachev 24e8569905 Make Vector methods arguments more consistent 2024-04-20 10:57:32 +03:00