Commit Graph

  • 32f417efae Updates in pyflix Rename mav_to to system_id to match firmware naming. Readme updates. master Oleg Kalachev 2025-07-24 09:15:44 +03:00
  • 018a6d4fce Add repository field to python library Oleg Kalachev 2025-07-22 17:21:51 +03:00
  • 1f47aa6d62
    Add Python library (#20) Oleg Kalachev 2025-07-22 14:17:08 +03:00
  • 1f53191131 Move initial state values to _init_state method to avoid list sharing pyflix Oleg Kalachev 2025-07-22 14:07:02 +03:00
  • d47c0dbbc7 Bump version to 0.5 Oleg Kalachev 2025-07-22 14:03:01 +03:00
  • dd1b921686 Make work on Python 3.8+ Oleg Kalachev 2025-07-22 14:02:50 +03:00
  • f91776d747 Fix controls check Oleg Kalachev 2025-07-22 14:02:38 +03:00
  • 95e315aa5b Fix modes Oleg Kalachev 2025-07-22 14:02:30 +03:00
  • 0533d2716d Mark non-last print chunks in buffer with 'multi' flag Oleg Kalachev 2025-07-22 13:53:29 +03:00
  • a9ede4c90f Pass mode to heartbeat Oleg Kalachev 2025-07-22 13:52:45 +03:00
  • 41f1661231 Add script for remote log downloading Oleg Kalachev 2025-07-22 13:52:26 +03:00
  • 10ab7862a0 Remove redundant cli methods, add 'reboot' command hack Oleg Kalachev 2025-07-22 13:52:11 +03:00
  • 764e5159d0 Add correct note on usage alongside QGroundControl Oleg Kalachev 2025-07-22 13:51:21 +03:00
  • ccd625d669 Fixes in readme Oleg Kalachev 2025-07-22 13:50:55 +03:00
  • 49c0616171 Update readme Oleg Kalachev 2025-07-22 13:49:56 +03:00
  • b6b62c775d Add dists to gitignore Oleg Kalachev 2025-07-22 13:49:21 +03:00
  • ff39ffa46c Add proxy for running alongside QGroundControl Oleg Kalachev 2025-07-22 13:12:15 +03:00
  • 03600dbaba Minor fixes Oleg Kalachev 2025-07-22 13:10:51 +03:00
  • 8200c48351 Fix readme and version Oleg Kalachev 2025-07-22 13:09:51 +03:00
  • 6c729f0936 Describe logging config Oleg Kalachev 2025-07-22 13:09:29 +03:00
  • b4670fbf3f Add readme to package Oleg Kalachev 2025-07-22 08:59:57 +03:00
  • 570dc6eac9 Add pyflix library Oleg Kalachev 2025-07-21 17:32:36 +03:00
  • 779fa13e80 Increase connection timeout for arduino-cli as it prevents some users from downloading the core Oleg Kalachev 2025-07-21 11:12:47 +03:00
  • a5504cc550 Fix rates, acc and gyro coordinate frame in mavlink All of them should be in frd. Get rid of fluToFrd function - there is no big need for it. canonical Oleg Kalachev 2025-07-19 05:32:49 +03:00
  • 5eccb3f0c4 Fix rates, acc and gyro coordinate frame in mavlink All of them should be in frd. Get rid of fluToFrd function - there is no big need for it. Oleg Kalachev 2025-07-19 05:32:49 +03:00
  • 29f1a2b22b Minor fixes to builds list Oleg Kalachev 2025-07-18 14:19:43 +03:00
  • 1d4ce810a9 Add chkroko's bldc build Oleg Kalachev 2025-07-18 12:14:42 +03:00
  • cfb0f17a9a Minor cli change Oleg Kalachev 2025-07-15 01:29:25 +03:00
  • d61948ec9c Rename printIMUCal to printIMUCalibration for consistency with rc Oleg Kalachev 2025-07-15 01:25:10 +03:00
  • 0c87d4d634 Port changes from commit 52819e4 Oleg Kalachev 2025-07-15 01:22:18 +03:00
  • 32874b92fd Minor fixes Oleg Kalachev 2025-07-14 12:05:16 +03:00
  • 6b38070e43 Rename printIMUCal to printIMUCalibration for consistency with rc Oleg Kalachev 2025-07-14 12:04:02 +03:00
  • 52819e403b Major rework of rc subsystem Implement channels mapping calibration. Store mapping in parameters. Get rid of controls array and store control inputs in controlRoll, controlPitch, ... variables. Move channels variable to rc.ino, channels are not involved when controled using mavlink. 'Neutral' values are renamed to 'zero' - more precise naming. controlsTime is renamed to controlTime. Use unsigned values for channels. Make channel values in simulation more alike to real world: unsigned values in range [1000, 2000]. Send RC_CHANNELS_RAW instead of RC_CHANNELS_SCALED via mavlink Don't send channels data via mavlink if rc is not used Oleg Kalachev 2025-07-14 11:11:32 +03:00
  • 449dd44741 Fix storing nans and infs in preferences in simulator Turns out file streams cannot parse nans and infs on some platforms, so use std::stof to parse. Oleg Kalachev 2025-07-14 09:52:49 +03:00
  • e389d717d6 Show unspecified core as * in sys command Oleg Kalachev 2025-07-13 11:12:54 +03:00
  • ea8463ed70 Fixes in firmware variables description Oleg Kalachev 2025-07-12 10:07:52 +03:00
  • 85afe405cb Improve pause function work Fix disconnecting from qgc while pausing in the simulation. Consider total delay time in micros() in simulation to increase t while delaying. Simplify and get rid of ARDUINO macro check. Oleg Kalachev 2025-07-12 09:29:47 +03:00
  • fd4bcbeb89 Minor changes Oleg Kalachev 2025-07-10 07:27:53 +03:00
  • 4d1f9de872 Remove unnecessary documentation files Oleg Kalachev 2025-07-10 06:14:22 +03:00
  • cf3d4d7ced Increase motors pwm frequency to 78Khz 1000 Hz is too low frequency considering the update loop for motors signal is also 1000 Hz. Decrease resolution as it's required to set larger pwm frequencies. This change should vastly improve control jitter and remove audible motors noise. Oleg Kalachev 2025-07-03 03:46:11 +03:00
  • 443e5213f0 Return zero rotation vector when converting neutral quaternion Previously it would return nans Oleg Kalachev 2025-07-01 02:48:49 +03:00
  • f24db96b50 Add missing equals and non-equals operators for quaternion lib Oleg Kalachev 2025-07-01 02:47:01 +03:00
  • 86305a08f8 Add missing newlines to initialization prints Oleg Kalachev 2025-07-10 06:06:46 +03:00
  • 21dcb39b7e Improve vector and quaternion libraries Make the order or basic methods consistent between Vector and Quaternion. Remove ZYX from Euler method names as this is standard for robotics. Rename angular rates to rotation vector, which is more correct. Make rotation methods static, to keep the arguments order consistent. Make Quaternion::fromAxisAngle accept Vector for axis. Minor fixes. Oleg Kalachev 2025-05-31 04:17:00 +03:00
  • c08c89f667 Minor code updates Oleg Kalachev 2025-05-15 09:22:17 +03:00
  • 114d2305de Make wi-fi code more consistent between the firmware and simulation Oleg Kalachev 2025-05-10 05:13:57 +03:00
  • 121b50d896 Increase motors pwm frequency to 78Khz 1000 Hz is too low frequency considering the update loop for motors signal is also 1000 Hz. Decrease resolution as it's required to set larger pwm frequencies. This change should vastly improve control jitter and remove audible motors noise. Oleg Kalachev 2025-07-03 03:46:11 +03:00
  • 48c7135efb Return zero rotation vector when converting neutral quaternion Previously it would return nans Oleg Kalachev 2025-07-01 02:48:49 +03:00
  • 9229b743eb Add missing equals and non-equals operators for quaternion lib Oleg Kalachev 2025-07-01 02:47:01 +03:00
  • 52d31ba7a5 Add missing includes to Arduino.h to make build more portable Oleg Kalachev 2025-07-01 02:38:47 +03:00
  • f11ab2dc16 Add info on mpu-6050 Oleg Kalachev 2025-06-30 12:29:07 +03:00
  • 93383cc7f9 Add chkroko's build Oleg Kalachev 2025-06-19 13:25:01 +03:00
  • 389cfb94ab Add missing newlines to initialization prints Oleg Kalachev 2025-06-19 13:17:43 +03:00
  • 045f2c5ed5 Minor docs changes Oleg Kalachev 2025-06-19 13:17:32 +03:00
  • 31f5e1efbb Upload built firmware binaries as artifact Oleg Kalachev 2025-06-02 02:32:27 +03:00
  • 2d77317abc Minor fixes in book Oleg Kalachev 2025-05-31 16:56:05 +03:00
  • 963cbe09dd Minor fix in book Oleg Kalachev 2025-05-31 13:15:25 +03:00
  • 98fc0cf5b4 Add quaternion and vector chapter to book Oleg Kalachev 2025-05-31 12:46:33 +03:00
  • 6b7601c0bd Improve vector and quaternion libraries Make the order or basic methods consistent between Vector and Quaternion. Remove ZYX from Euler method names as this is standard for robotics. Rename angular rates to rotation vector, which is more correct. Make rotation methods static, to keep the arguments order consistent. Make Quaternion::fromAxisAngle accept Vector for axis. Minor fixes. Oleg Kalachev 2025-05-31 04:17:00 +03:00
  • 929bdd1f35 Minor fixes in book Oleg Kalachev 2025-05-31 03:29:44 +03:00
  • 660913f8bb Remove version 0 section from the readme Oleg Kalachev 2025-05-23 17:17:27 +03:00
  • 25e3056891 Add disclaimer to readme Oleg Kalachev 2025-05-23 16:47:04 +03:00
  • be7b6ec0c9 Fix simulator build Oleg Kalachev 2025-05-16 05:02:27 +03:00
  • 9c8c0e2578 Minor code updates Oleg Kalachev 2025-05-15 09:22:17 +03:00
  • 7e5a75a01f Revert sending mavlink udp packets in unicast This requires more complex approach as client ip may change between reconnections Oleg Kalachev 2025-05-10 05:45:57 +03:00
  • 2bcab6edb3 Make cli command case insensitive iOS QGC capitalizes the command by default, so it's more convinient Oleg Kalachev 2025-05-10 05:15:54 +03:00
  • df2b10acd4 Make wi-fi code more consistent between the firmware and simulation Oleg Kalachev 2025-05-10 05:13:57 +03:00
  • 31d6636754 Send mavlink udp packets in unicast after connected Tests and research show this is more efficient way of sending telemetry Oleg Kalachev 2025-05-10 05:08:04 +03:00
  • b143c2f1b3 Add recommended 3D printing settings to readme Oleg Kalachev 2025-05-09 06:55:28 +03:00
  • a93e046117 Make sending udp packets much faster Turns out parsing IP address string is very slow Oleg Kalachev 2025-05-06 04:32:36 +03:00
  • e6e4db0c4f Update ESP32-Core to 3.2.0 Oleg Kalachev 2025-05-06 03:52:46 +03:00
  • d8fbc193c1 Make accelerometer calibration more verbose Print the number of each calibration step Oleg Kalachev 2025-05-05 00:38:08 +03:00
  • a491b28201 Make sending udp packets much faster Turns out parsing IP address string is very slow Oleg Kalachev 2025-05-06 04:32:36 +03:00
  • 4a4642bcf6 Update ESP32-Core to 3.2.0 Oleg Kalachev 2025-05-06 03:52:46 +03:00
  • 81037d94ec Some cli improvements Improve loop rate formatting Show cpu temperature in sys command Oleg Kalachev 2025-05-06 03:16:45 +03:00
  • 965813e8f0 Use interrupts instead of polling for main loop Oleg Kalachev 2025-05-05 13:58:23 +03:00
  • 94c2d399b3 Add sys command Show ESP32 model and free heap Show tasks table with stack and cpu usage Oleg Kalachev 2025-05-05 04:32:41 +03:00
  • 21dc47c472 Make mavlink print buffered Combine all output of each step into one SERIAL_CONTROL message Oleg Kalachev 2025-05-05 00:44:06 +03:00
  • 4b938e8d89 Make accelerometer calibration more verbose Print the number of each calibration step Oleg Kalachev 2025-05-05 00:38:08 +03:00
  • 67efcdd08a Remove unused macro MAVLINK_CONTROL_SCALE is now parameter Oleg Kalachev 2025-05-04 00:03:38 +03:00
  • dcd95176b4 Make low pass filter formula more straightforward Oleg Kalachev 2025-04-29 23:28:56 +03:00
  • b7cebbb3d6 Add some missing operator for vector library Oleg Kalachev 2025-04-29 23:21:12 +03:00
  • d1d10c4c6c Updates to readme and documentation Oleg Kalachev 2025-04-30 00:05:52 +03:00
  • 4e0a1fcdab Update simulator illustration Oleg Kalachev 2025-04-29 23:37:34 +03:00
  • 5165355abc Make low pass filter formula more straightforward Oleg Kalachev 2025-04-29 23:28:56 +03:00
  • a268475f7a Add notice about firewall and vpn to troubleshooting Oleg Kalachev 2025-04-29 23:22:40 +03:00
  • c14fe7c48b Add some missing operator for vector library Oleg Kalachev 2025-04-29 23:21:12 +03:00
  • 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. Oleg Kalachev 2025-04-24 19:38:47 +03:00
  • e7a06b9413 Minor code simplifications Oleg Kalachev 2025-04-13 01:42:47 +03:00
  • 678bc7238e Update MAVLink-Arduino to 2.0.16 Oleg Kalachev 2025-04-11 07:01:54 +03:00
  • 6670b4f358 Simplify and improve acc calibration command output Oleg Kalachev 2025-04-29 23:01:09 +03:00
  • 7f80a8a58d Remove twxs.cmake from the list of recommended extensions Oleg Kalachev 2025-03-14 03:24:30 +03:00
  • 2bd74e7f6f Minor code style fix Oleg Kalachev 2025-03-14 03:03:27 +03:00
  • d378d01dbc Encode if the mode in stabilized in heartbeat message Oleg Kalachev 2025-03-14 03:02:43 +03:00
  • b2736e6a5b 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. Oleg Kalachev 2025-04-24 19:38:47 +03:00
  • f2dec78b16 Fix docker sim build fix-sim-build Oleg Kalachev 2025-04-24 19:21:23 +03:00
  • 31ac562f67 Fix docker sim build again Oleg Kalachev 2025-04-24 19:20:01 +03:00
  • feb686727b Fix Docker sim build Oleg Kalachev 2025-04-24 18:47:51 +03:00
  • 1975ed30b4 Make job using Ubuntu 22.02 Oleg Kalachev 2025-04-24 18:45:25 +03:00
  • 1859fca150 Update APT before installing libsdl2-dev Oleg Kalachev 2025-04-24 18:38:08 +03:00