Compare commits

...

667 Commits

Author SHA1 Message Date
Daniel Agar a749c787ca mavlink: param_get proper type to silence errors 2021-11-19 15:55:11 -05:00
Daniel Agar e997a5f384 param.h type checking more info 2021-11-19 15:51:55 -05:00
Daniel Agar 3f5b7d9e36 mavlink: receiver fix SENS_FLOW_ROT type 2021-11-19 15:51:55 -05:00
Daniel Agar c2bc77b9b8 [DO NOT MERGE] testing param types 2021-11-19 15:51:55 -05:00
Max Elfgen 7f5fa3d1f7 Using RTPS as a label resulted in the PX4 instance crashing. Removing the label fixed the problem. 2021-11-19 20:30:46 +01:00
Matthias Grob f912ee2c8b Commander: send out parachute MAVLink command when kill switch engaged 2021-11-19 17:15:04 +01:00
Matthias Grob 3193b554ca Add optional preflight check for healthy MAVLink parachute system 2021-11-19 17:15:04 +01:00
Matthias Grob 43c529f294 Add MAVLink parachute system heartbeat detection 2021-11-19 17:15:04 +01:00
Thomas Debrunner fb54324f56 gyro-fft: Disable asm-operand-widths warning on apple silicon. The warning is caused by unused functions only. As with compiling for x86, the functions containing assembly never get used, but since the apple silicon is also an ARM target, they trigger a warning. 2021-11-19 09:14:11 -05:00
Daniel Agar 24090b724c cmake: px4_add_module improve unity build dependencies to avoid unnecessary work 2021-11-19 09:13:07 -05:00
Matthias Grob 4c6621f6cf Commander: Allow arming a rover with the throttle stick in the middle 2021-11-19 10:10:32 +01:00
Jani Paalijarvi 02336acd61 Improve SPI bus implementation
Make possible to define chip-select pin for internal SPI.
By defining chip-select pin, it's possible to start specific SPI device only.
This allows to have several same type of sensors on the same bus with different orientation.
2021-11-19 07:47:18 +01:00
Matthias Grob 35d4986ea7 FlightTasks: remove updateFinalize() concept because it got obsolete 2021-11-18 19:12:44 -05:00
Matthias Grob 9eac0edbc0 FlightTaskAuto: remove generateSetpoints function, replace by implementation 2021-11-18 19:12:44 -05:00
Matthias Grob ece8fdddec FlightTaskAuto: simplify early setpoint preparation based on triplet type 2021-11-18 19:12:44 -05:00
dagar 9646b49b60 [AUTO COMMIT] update change indication 2021-11-18 13:58:53 -05:00
Daniel Agar bffd88ad81 ekf2: don't inhibit accel bias when not in air 2021-11-18 13:58:53 -05:00
Daniel Agar f3472385da sensors/vehicle_imu: fix accel/gyro learned bias calibration updates
- fix confusion between estimated bias and calibration offset when
saving after each flight
 - when the stable bias estiamte is retrieved during flight it's
immediately converted to a sensor offset and saved
 - fixes https://github.com/PX4/PX4-Autopilot/issues/18658
2021-11-18 10:00:26 -05:00
bresch fc155bc57e Ekf2Selector: declare filter unhealthy when high test ratio
Request a switch to another instance when the combined test ratio is too high.
2021-11-18 13:29:01 +01:00
bresch 43fb076828 AngularAcceleration: explicitly disable filter when cutoff <= 0 2021-11-18 09:25:47 +01:00
bresch 4a14a8bc7f AutoLineSV: Always publish a valid yaw setpoint
In MPC_YAW_MODE 3 (along trajectory), the flight task is asked to
produce a yaw setpoint. If the previous yaw value was NAN (e.g.: during
early takeoff), the setpoint should then be reset to the current
estimate.
2021-11-16 18:09:37 -05:00
bresch f751dd2242 FlightTask: set yaw_setpoint to NAN when yaw should not be controlled 2021-11-16 18:09:37 -05:00
bresch 2213343240 ft altitude: use longerThan to save a sqrt operation 2021-11-16 18:09:37 -05:00
bresch 394fa953b8 EKF: get status on yaw alignement in flight
1s after the in air mag reset is performed, the final yaw alignment is
complete and the yaw estimate can be used for yaw control.
2021-11-16 18:09:37 -05:00
Matthias Grob 2a5751233a FlightTasks: remove unused StraightLine library
It was meant as an example for an easy to use interface of a
motion primitive with a minimal implementation. But the implementation
is much worse than the jerk optimized trajectory. We rather
work on making it easier to use. #18390 was a first step towards that.
2021-11-16 18:08:27 -05:00
Daniel Agar e062f4fcf0 mavlink: ORBIT_EXECUTION_STATUS stream limit to 2 instances 2021-11-16 17:10:13 -05:00
Alessandro Simovic 7090e634cc mission_block: always accept yaw in MC takeoff 2021-11-16 12:35:16 -05:00
Beat Küng 0622cb8857 mavlink_ftp: disallow writes outside of /fs/microsd under NuttX
As these files are kept in RAM, it could just fill up the RAM.
2021-11-16 12:34:16 -05:00
Daniel Agar 4e8c234a55 ekf2: only save mag declination if changed 2021-11-16 12:33:48 -05:00
Daniel Agar 96bf3aa5d0 matrix: apply PX4 astyle 2021-11-16 12:30:51 -05:00
Daniel Agar ab07f5300b lib/matrix: delete unused and add testing to PX4 2021-11-16 12:27:14 -05:00
Daniel Agar 4a3d64f1d7 consume PX4/Matrix repository and preserve history 2021-11-16 12:24:19 -05:00
Daniel Agar 38516f7e9c delete matrix submodule 2021-11-16 12:20:57 -05:00
Matthias Grob b36dbf8de4 Remove AutoLineSmoothVel, merged into Auto 2021-11-16 10:08:47 +01:00
Matthias Grob 179b1cdf56 FlightTaskAuto: merge activate(), reActivate() and update() from FlightTaskAutoLineSmoothVel 2021-11-16 10:08:47 +01:00
Matthias Grob 51ebb0f294 FlightTaskAuto: move in helper methods from FlightTaskAutoLineSmoothVel 2021-11-16 10:08:47 +01:00
Matthias Grob aa376c5824 FlightTaskAuto: move in parameters from FlightTaskAutoLineSmoothVel 2021-11-16 10:08:47 +01:00
Matthias Grob 50e13f132f FlightTaskAuto: move in members from FlightTaskAutoLineSmoothVel 2021-11-16 10:08:47 +01:00
Matthias Grob 33e349d71e FlightTask: remove unused _time 2021-11-16 10:08:47 +01:00
PX4 BuildBot 4a66c8c4c4 Update submodule sitl_gazebo to latest Tue Nov 16 00:39:15 UTC 2021
- sitl_gazebo in PX4/Firmware (f5d9b01f5c): https://github.com/PX4/PX4-SITL_gazebo/commit/1c8c9197103e746a21f2d2d2c844dd2f7e2b036b
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/607aa4d990ff20b4f8a3a714043d116cf191f8b6
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/1c8c9197103e746a21f2d2d2c844dd2f7e2b036b...607aa4d990ff20b4f8a3a714043d116cf191f8b6

    607aa4d 2021-11-15 Alexander Funke - Wind Plugin: Fixed typo in windGustVelocityMean. Closes #825, fixes #812 Fixed the typo in windGustVeloctiyMean to windGustVelocityMean, so that the parameter in the world file can be correctly read and the mean gust velocity properly set to the parameter's value.
2021-11-15 23:13:43 -05:00
PX4 BuildBot bfcd251a54 Update submodule mavlink to latest Tue Nov 16 00:39:28 UTC 2021
- mavlink in PX4/Firmware (2615146a0770ea416aa24dce70bd61845e45b939): https://github.com/mavlink/mavlink/commit/0a728aa8dcea5023b26d0df9f25ba5b2a14a71cd
    - mavlink current upstream: https://github.com/mavlink/mavlink/commit/c3a4b52eb1ac6e8053d64a6a8b6ade887d4fa2d2
    - Changes: https://github.com/mavlink/mavlink/compare/0a728aa8dcea5023b26d0df9f25ba5b2a14a71cd...c3a4b52eb1ac6e8053d64a6a8b6ade887d4fa2d2

    c3a4b52e 2021-11-14 olliw42 - use [value:] invalid attribute style (#1742)
5f353d79 2021-11-15 Hamish Willee - fix invalid attribute for arrays where first element sets as invalid (#1740)
b354af1c 2021-11-11 Beat Küng - add actuator test and configuration commands (#1738)
a8401492 2021-11-11 Beat Küng - Component information: add actuators (#1729)
2021-11-15 23:13:02 -05:00
Daniel Agar f5d9b01f5c NuttX build in place
- cmake NuttX build wrapper compile in place instead of copying source tree to build directory
    - slightly faster skipping necessary copying (depending on system)
    - allows debugging in place
    - easier to work directly in NuttX following official documentation
    - simplifies overall build which should make it easier to resolve any remaining NuttX dependency issues in the build system
 - the downside is switching back and forth between different builds always require rebuilding NuttX, but I think this is worth the improved developer experience
 - also no longer builds px4io and bootloader in every single build, for most users these rarely change and we're wasting a lot of build time
2021-11-15 18:47:38 -05:00
Daniel Agar 7b7b7acd36 i2c_spi_buses: respect CONFIG_I2C and CONFIG_SPI
- bmp280, dps310, and ms5611 barometers support boards without I2C
2021-11-15 15:57:33 -05:00
Daniel Agar eade2915c1 cleanup old parameter translation 2021-11-15 10:01:22 -05:00
Matthias Grob 91c48606ee battery_status: clearly define and handle zero remaining flight time 2021-11-15 15:44:02 +01:00
Matthias Grob 73287e8e8c battery: compute remaining flight time 2021-11-15 15:44:02 +01:00
Matthias Grob 54f2e91775 battery_status: report remaining flight time in seconds
This allows more accurate reporting and is compliant with the
MAVLink interface.
2021-11-15 15:44:02 +01:00
Beat Küng 4ba84d56c9 logger: introduce optional topics
The current practice of adding topics to the default set isn't scalable,
as it affects all setups.
By making sure topics are advertised on init, logger can just discard
topics that don't exist. This does not work for all topics, so topics are
specifically marked as optional. It can be extended to more topics later
on though.

This reduces the list of topics by ~35 on a pixracer configured as quad,
and reduces RAM usage by ~1KB.
2021-11-15 09:02:03 -05:00
Daniel Agar 177fe4bade logger: log write file allow single retry on write failure 2021-11-13 20:32:29 +01:00
alexklimaj 333629ce37 Update Broadcom AFBR to v1.3.5 API 2021-11-13 12:05:08 -05:00
RomanBapst 439400f76e commander: don't ack gimbal commands
- this leads to an unnecessary amount of acks which can in turn overflow
the orb queue

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-11-13 11:59:28 -05:00
Daniel Agar 3cb286abc8 gyro_calibration: reset on any sensor timeout 2021-11-13 10:15:25 -05:00
Daniel Agar 29b9e46664 mavlink_tests: add correct mavlink_c_generate dependency 2021-11-12 13:43:32 -05:00
kevindsp 17ad7071c3 fix the quaternion normalization issue
Be course of the numerical computing error . The normalization of the quaternion can't always equal to 1 precisely. It could occasionally trigger the error"attitude estimate no longer valid". So enlarge the threshold to 1e-6f. That keeps it silence.
2021-11-12 16:31:40 +01:00
Daniel Agar 6a60fba96d boards: holybro_kakutef7_default remove systemcmds/ver to save flash 2021-11-11 11:17:15 -05:00
Daniel Agar 0ec3f0d2cb mathlib: LowPassFilter2p update cutoff freq min to match NotchFilter
- numerically the cutoff frequency not being smaller than 1% of the
sample frequency is probably a better choice, but we're mostly filtering
16 bit data now stored in 32 bit float
2021-11-11 11:17:15 -05:00
Daniel Agar 0d171384b3 update IMU_GYRO_DNF_BW default 8->15 Hz
- dshot telemetry feedback can be quite slow (~2 Hz), so I think a
larger default value here makes sense
2021-11-11 11:17:15 -05:00
Daniel Agar 452f15e985 IMU_GYRO_DNF_EN remove from developer category 2021-11-11 11:17:15 -05:00
Daniel Agar 0e2ecdc59a sensors/vehicle_angular_velocity: perf counter naming consistentcy 2021-11-11 11:17:15 -05:00
Daniel Agar c60a9e2981 sensors/vehicle_angular_velocity: avoid unnecessary ESC notch filter resets 2021-11-11 11:17:15 -05:00
Daniel Agar 78436e706c mathlib: NotchFilter add optimized parameter update if only notch frequency changes 2021-11-11 11:17:15 -05:00
Daniel Agar edce30c6de sensors/vehicle_angular_velocity: fix ESC RPM notch filter update 2021-11-11 11:17:15 -05:00
Daniel Agar 376b72fb2f sensors/vehicle_angular_velocity: add new parameter for ESC RPM notch filter BW 2021-11-11 11:17:15 -05:00
Viktor Vladic 02709fcfab Fixes for MPU6000 and MatekH743-slim board
- MPU6000: Added 10us delay for R/W of slow registers
 - Board: Fixed DRDY pin from PB1 to PB2
2021-11-11 08:40:41 -05:00
Beat Küng fdf8461452 ver: print PX4_BOARD_LABEL for 'ver all' 2021-11-11 08:38:42 -05:00
Matthias Grob dbacdedad1 Remove FlightTaskAutoMapper, merged into AutoLineSmoothVel 2021-11-11 09:14:49 +01:00
Matthias Grob a94c61b896 FlightTaskAutoMapper: move parameters into FlightTaskAutoLineSmooth 2021-11-11 09:14:49 +01:00
Matthias Grob 59a395f6a0 FlightTaskAutoMapper: move remaining members into FlightTaskAutoLineSmooth 2021-11-11 09:14:49 +01:00
Matthias Grob f5183348a6 FlightTaskAutoMapper: move remaining methods into FlightTaskAutoLineSmooth 2021-11-11 09:14:49 +01:00
Matthias Grob 0211ef3ba1 FlightTaskAutoMapper: move update() into FlightTaskAutoLineSmooth 2021-11-11 09:14:49 +01:00
Matthias Grob 1cef2ad196 FlightTaskAutoMapper: merge activate() into FlightTaskAutoLineSmooth 2021-11-11 09:14:49 +01:00
wsolichin e9d50b853a Adding MAVLink message stream of GPS_RTCM_DATA 2021-11-10 21:15:01 -05:00
David Lechner d61f5d3d7b mavlink: fix forwarding to target id >= 128
The _MAV_PAYLOAD macro casts the value to a char*. Some compilers treat
char as signed, so we were getting negative system and component ids
if the id was >= 128. This caused later comparisons to fail which
resulted in messages not being forwarded.
2021-11-10 21:14:21 -05:00
Daniel Agar 374d44f38f mavlink: tests add git_mavlink_v2 dependency to avoid build race 2021-11-10 14:06:40 -05:00
PX4 BuildBot e0a9ceb2cb Update submodule mavlink to latest Wed Nov 10 12:39:06 UTC 2021
- mavlink in PX4/Firmware (74a33bad350857b6a7dcfe2a6745e8283baa2ce4): https://github.com/mavlink/mavlink/commit/3718ee300bef7a8e7a25314e25e03c11d9f0b180
    - mavlink current upstream: https://github.com/mavlink/mavlink/commit/0a728aa8dcea5023b26d0df9f25ba5b2a14a71cd
    - Changes: https://github.com/mavlink/mavlink/compare/3718ee300bef7a8e7a25314e25e03c11d9f0b180...0a728aa8dcea5023b26d0df9f25ba5b2a14a71cd

    0a728aa8 2021-11-10 Julian Oes - common: request multiple CAMERA_IMAGE_CAPTURED (#1735)
2021-11-10 14:00:28 -05:00
Daniel Agar 5e3701a365 Tools/check_submodules.sh: perform submodule sync again after first update to reach nested submodules 2021-11-10 13:52:51 -05:00
Jukka Laitinen be1023f5e9 smbus_sbs: Define linker language for a header-only library
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-10 09:27:21 -05:00
Jukka Laitinen d02a10b20f Remove src/lib/drivers/accelerometer and gyroscope linking to drivers__device
These are pure uORB publishers, they don't link to drivers__device.

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-10 09:26:36 -05:00
Matthias Grob dd05cb3496 FlightTaskManualPosition: simplify optical flow limiting logic 2021-11-09 21:47:06 -05:00
Claudio Micheli 10e329ce9e mc_pos_control: correct MPC_XY_CRUISE description
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-11-09 21:47:06 -05:00
Matthias Grob 7ec8dd9d23 vehicle_constraints: remove deprecated speed_xy constraint 2021-11-09 21:47:06 -05:00
Jukka Laitinen 356de6ccf1 Factor cdc_acm_init away from px4_init
In protected build, this needs to go to user-space initialization as it
calls apps (sercon) and launches mavlink.

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-09 21:28:28 -05:00
Jukka Laitinen 39c0c68167 print_load: Remove reference to CONFIG_MAX_TASKS
This is already removed from nuttx, and in posix the size of s->last_times
can be just checked with sizeof()

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-09 21:25:10 -05:00
Jukka Laitinen 9299a5c3f6 hrt: Add interface functions for latency counters
Add interface functions for fetching latency buckets and counters and use
those in perf_counter.cpp. This cleans up the usage of perf counters, when variables defined in hrt_drv are not referenced directly from perf.

This also enables implementing kernel-userspace interface for those for
nuttx protected/kernel build.

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-09 21:24:25 -05:00
Jukka Laitinen da51177382 Don't link sensors module to drivers__device
sensors module only works on uORB, it doesn't link to drivers__device

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-09 12:18:49 -05:00
Matthias Grob ab9b9b1eac boards: Add manual_control module to newly added boards 2021-11-09 16:36:42 +01:00
bresch d47f9f155a MC mixer: replace multirotor_motor_limits by control_allocator_status
CA: fix saturation computation
Since the CA matrix is normalized, the same scale applied to be used when using the effectiveness matrix

MCRateControl: use control_allocator_status to get saturation info
2021-11-09 10:35:10 -05:00
Jaeyoung-Lim dd83ef1813 Fix fw position controller takeoff
This was introduced by a rebase
2021-11-09 10:30:28 -05:00
Matthias Grob 00905973c7 boards/kakutef7: remove dmesg to save flash 2021-11-09 16:05:25 +01:00
Matthias Grob 4aa0756d08 ManualControlSelector: correct parameter for any source according to documentation 2021-11-09 16:05:25 +01:00
Matthias Grob fabf865411 Use backwards compatible manual_control_setpoint instead of manual_control_input 2021-11-09 16:05:25 +01:00
Matthias Grob 423aadcc4f ManualControl: fix RC override 2021-11-09 16:05:25 +01:00
Matthias Grob 7e4a079e09 Commander: report when RC selected mode is not available 2021-11-09 16:05:25 +01:00
Matthias Grob a593a51f05 Commander: fix mode initialization with RC 2021-11-09 16:05:25 +01:00
Matthias Grob 9f17f3b0f3 ManualControl: correct source for RC mode switches without mode slot 2021-11-09 16:05:25 +01:00
Matthias Grob 21739c6937 MulticopterRateControl: Add event for landing gear retraction when landed 2021-11-09 16:05:25 +01:00
Matthias Grob 2b29df06fd ManualControl: avoid scheduling based on unchosen input 2021-11-09 16:05:25 +01:00
Matthias Grob 48869ed03e ManualControl: Simplify check if switches updated 2021-11-09 16:05:25 +01:00
Matthias Grob 38ab7e6ab9 Commander: separate function for action request execution 2021-11-09 16:05:25 +01:00
Matthias Grob 820ba07d4b Fix landing gear processing 2021-11-09 16:05:25 +01:00
Matthias Grob 0a02d8e774 Commander: handle denying disarm when not landed centrally 2021-11-09 16:05:25 +01:00
Matthias Grob af54ac7cdb ManualControl: remove unused variables and renaming 2021-11-09 16:05:25 +01:00
Matthias Grob e73e6a490d ManualControl: separate function for stick arming 2021-11-09 16:05:25 +01:00
Matthias Grob a349dae760 Use action_request to command RC VTOL transitions 2021-11-09 16:05:25 +01:00
Matthias Grob dcd26bd2b8 Commander: fix "Manual control lost" showing double in QGC
because of the missing tab in the deprecated message.
2021-11-09 16:05:25 +01:00
Matthias Grob 956997eb1e Replace arm_request and mode_request with combined action_request
Which saves flash space, log size and is extensible to handle e.g.
the VTOL transition and future actions.
2021-11-09 16:05:25 +01:00
Matthias Grob 052e29267d Use mode_request for RC mode switching 2021-11-09 16:05:25 +01:00
Matthias Grob f8e4846851 Use arm_request for manual killing 2021-11-09 16:05:25 +01:00
Matthias Grob af607e3040 Use separate arm_request instead of vehicle_command for RC arming 2021-11-09 16:05:25 +01:00
Matthias Grob c4473bdab7 ManualControl: clean up arm/disarm gesture 2021-11-09 16:05:25 +01:00
Matthias Grob 48ed350b25 ManualControlSelector: simplification refactoring
- clang tidy did't like {bool} == true in a condition
- setpoint_from_input() got small enough ot just put in line
2021-11-09 16:05:25 +01:00
Matthias Grob cc2ec09659 ManualControl: fix arm button logic during testing
The latching logic has to be different than for the arm switch
this difference got lost in the rewrite of the old obfuscated
arming trigger logic.
2021-11-09 16:05:25 +01:00
Matthias Grob 0901b73f50 ManualControlSelector: rename functions and validate chosen inputs all the time 2021-11-09 16:05:25 +01:00
Matthias Grob 28a29ad050 ManualControlSelector: revamp logic to switch when configuration is changed 2021-11-09 16:05:25 +01:00
Matthias Grob 05946ff0c6 mavlink_receiver: remove unused start_helper declaration 2021-11-09 16:05:25 +01:00
Matthias Grob 7a2ef4a917 Commander: don't publish RC_IN_MODE to vehicle_status
This just contains the content of the parameter which
is redundant and results in multiple sources of truth.
2021-11-09 16:05:25 +01:00
Matthias Grob fff2de43a5 commander_params: update description based on ManualControlSelector 2021-11-09 16:05:25 +01:00
Matthias Grob 396bab52ad ManualControlSelector: refactor selection to chose based on a single condition 2021-11-09 16:05:25 +01:00
Matthias Grob 1bd786c71a ManualControlSelector: don't invalidate existing setpoint with other invalid input 2021-11-09 16:05:25 +01:00
Matthias Grob e15f6b27f2 ManualControlSelector: copy manual_control_input struct instead of each individual field 2021-11-09 16:05:25 +01:00
Matthias Grob 63ddb050ef ManualControlSelector: refactor timeout calculation to be consistent 2021-11-09 16:05:25 +01:00
Matthias Grob 2528e8c572 ManualControl: correct calculation of dt in seconds 2021-11-09 16:05:25 +01:00
Matthias Grob 12bb2de175 state_machine_helper: rever explicitly handling unavaialble mission
It was already handled by the existing condition.
2021-11-09 16:05:25 +01:00
Matthias Grob 4dc165efd0 Commander: don't retry to reach the desired_main_state if we reached it 2021-11-09 16:05:25 +01:00
Matthias Grob d48302c841 Commander: send out manual control lost event 2021-11-09 16:05:25 +01:00
Matthias Grob 93bed7f670 vehicle_command: shorten arming action/origin enum names 2021-11-09 16:05:25 +01:00
Matthias Grob 709c909929 commander_params: correct RC override description 2021-11-09 16:05:25 +01:00
Julian Oes b3a5072de5 commander/manual_control: use msg enum for params
Instead of using a private enum class we should define the enum in the
vehicle_command message and then use it consistently.
2021-11-09 16:05:25 +01:00
Julian Oes f1b1068824 commander: remove unused mode/main_state methods
With the previous changes these seem no longer required.
2021-11-09 16:05:25 +01:00
Julian Oes 42af44700b mc_rate_control: always allow landing gear control
Except of course when landed and we try to put it up.
2021-11-09 16:05:25 +01:00
Julian Oes 486a4b0118 mavlink: reduce calls to hrt_absolute_time 2021-11-09 16:05:25 +01:00
Julian Oes 454aa611ae manual_control: add missing 7 2021-11-09 16:05:25 +01:00
Julian Oes 2c0fc686a7 manual_control: don't accept outdated input 2021-11-09 16:05:25 +01:00
Julian Oes 4d00a56230 manual_control: method can be static 2021-11-09 16:05:25 +01:00
Julian Oes 6027398459 manual_control: handle invalid rc_in_mode 2021-11-09 16:05:25 +01:00
Julian Oes 50cca204d8 manual_control: add check for instance 2021-11-09 16:05:25 +01:00
Julian Oes 963d15eacc manual_control: use correct sysid/compid 2021-11-09 16:05:25 +01:00
Julian Oes cfdb53a4d8 manual_control: don't switch gear on first init
This will ignore the first transition from NONE to something.
This matches the behaviour that existed before.
2021-11-09 16:05:25 +01:00
Julian Oes 60de330f18 manual_control: add hysteresis for arm button back 2021-11-09 16:05:25 +01:00
Julian Oes 75209a7552 manual_control: address review comments 2021-11-09 16:05:25 +01:00
Matthias Grob 942eb23248 ManualControlSelector: remove commented stick difference filter draft 2021-11-09 16:05:25 +01:00
Matthias Grob 11a46d3d27 ManualControlSelectorTest: add constantly outdated samples case
Reviewing the code I saw this case arising from the order things
get checked.
2021-11-09 16:05:25 +01:00
Julian Oes 39282a795f manual_control: fix tests 2021-11-09 16:05:25 +01:00
Julian Oes 53bd254502 commander: add valid check
Better checking once too much than once too little.
2021-11-09 16:05:25 +01:00
Julian Oes efd8757fda manual_control: handle NAN 2021-11-09 16:05:25 +01:00
Julian Oes 374c9f38a7 manual_control: use constrain() instead 2021-11-09 16:05:25 +01:00
Julian Oes 2a41ade223 manual_control: update first, get diff after
Not sure why I had this the wrong way round.
2021-11-09 16:05:25 +01:00
Julian Oes d0fea93d72 manual_control: add reset to diff
This should prevent triggering user override right after RC re-appears.
2021-11-09 16:05:25 +01:00
Julian Oes 93c505b163 commander: force arming is not an option from RC 2021-11-09 16:05:25 +01:00
Julian Oes 4a5ef1c81e ROMFS: whitespace 2021-11-09 16:05:25 +01:00
Julian Oes 6a6b8d49fc msg: re-use manual_control_input in setpoint
This way we avoid duplication between manual_control_input and
manual_control_setpoint.
2021-11-09 16:05:25 +01:00
Julian Oes baf81abbab msg: whitespace only 2021-11-09 16:05:25 +01:00
Julian Oes 14cfad74bf manual_control: remove leftover debug statements 2021-11-09 16:05:25 +01:00
Julian Oes 5ae76bdc17 commander: fix potentially wrong user message 2021-11-09 16:05:25 +01:00
Julian Oes bd0c1014d9 manual_control: support arming button
The arming button required some refactoring in order to support to
toggle arm/disarm using the vehicle_command. Otherwise manual_control
would have to subscribe to the arming topic and we would spread out the
logic again, and risk race conditions.
2021-11-09 16:05:25 +01:00
Julian Oes 9cbfa2ca95 manual_control: ORBIT and PRECLAND not supported
ORBIT and PRECLAND are not actually possible on the flight mode switch.
2021-11-09 16:05:25 +01:00
Julian Oes 2e9edfcd89 commander: only override according to param
This got lost in the refactor earlier.
2021-11-09 16:05:25 +01:00
Julian Oes 56b2b81600 manual_control: use filter to check user override
Instead of only looking at the diff between two RC samples to decide
whether a user wants to override, we now look at the filtered diff over
one second. This should be more robust to RC sent at various or varying
rates.
2021-11-09 16:05:25 +01:00
Julian Oes 97d01f200e commander: move manual_control and switches out
This moves the remaining handling of the manual control stuff out
of commander. All communication between manual control now goes through
vehicle commands, and the landing gear topic.
2021-11-09 16:05:25 +01:00
Julian Oes e49b596edc commander: add desired main state
This is an intermediate solution to carry forward the initial state of
the mode slot. Basically, it allows that we start up in Stabilized but
switch to POSCTL as soon we have the required GPS.
2021-11-09 16:05:25 +01:00
Julian Oes b6af068f25 commander: always reset posvel validity
I assume reseting posvel validity is ok for any case, not just all cases
except manual, acro, stabilized.
2021-11-09 16:05:25 +01:00
Julian Oes 52563264e6 commander: move valid mission check inside
I think it makes more sense to move this check inside of
main_state_transition.
2021-11-09 16:05:25 +01:00
Julian Oes 916ffef04c manual_control: send initial mode in the beginning
In order for commander to know the desired mode we need to send the
initial position of the mode slot.
2021-11-09 16:05:25 +01:00
Julian Oes a91fa7f3c1 commander: only move to POSCTL when armed
I don't think we want to switch to POSCTL when the sticks are moved when
armed.
2021-11-09 16:05:25 +01:00
Julian Oes 66b069e788 commander: move main_state_transition out
This is a first step to having a desired main state.
2021-11-09 16:05:25 +01:00
Julian Oes e2e908d0fc mavlink: remove unused methods 2021-11-09 16:05:25 +01:00
Julian Oes 97aa06cc19 commander: move switch handling to manual_control 2021-11-09 16:05:25 +01:00
Julian Oes 08e58a44e9 Fix style 2021-11-09 16:05:25 +01:00
Julian Oes 71d6aa913d manual_control: starting to implement switches 2021-11-09 16:05:25 +01:00
Julian Oes ac121c676a commander: check for valid flag for manual_control 2021-11-09 16:05:25 +01:00
Julian Oes cda6524421 manual_control: move override detection
This also removes the option to ignore throttle for the override
detection as it's not really required anymore.
2021-11-09 16:05:25 +01:00
Julian Oes 1c15cc11d8 manual_control: implement (dis)arming via command 2021-11-09 16:05:25 +01:00
Julian Oes 8876af9150 manual_control: add instance to selector
This instance is then used to schedule the callback for the
subscription.
2021-11-09 16:05:25 +01:00
Julian Oes 14eb656a59 rc_update: use snake_case for namespace name 2021-11-09 16:05:25 +01:00
Julian Oes 6e8ccf6a45 rc_update: rename update method
This reflects better what it actually does.
2021-11-09 16:05:25 +01:00
Julian Oes 723db8bf2a manual_control: add selector class [WIP]
This adds a selector class with unit tests.
The idea is to have a valid flag in manual_control_septoint and set that
according to the selection and/or timeout of manual_control_inputs.
2021-11-09 16:05:25 +01:00
Julian Oes eeb7682fd9 ROMFS: start manual_control for SITL 2021-11-09 16:05:25 +01:00
Daniel Agar 2d816e0b3e [WIP] manual_control selector hacks 2021-11-09 16:05:25 +01:00
Daniel Agar e18cf3da3e sensors/vehicle_imu: use WelfordMean for online mean and variance 2021-11-09 15:19:35 +01:00
Daniel Agar a8c3bcca32 boards: disable CONFIG_STM32H7_SPI_DMATHRESHOLD 2021-11-08 19:20:47 -05:00
Daniel Agar cb34ff1292 posix-configs/SITL/init/test/test_imu_filtering enable gyro dynamic notch filtering by default 2021-11-08 19:14:32 -05:00
Daniel Agar e0d9ccdc18 sensors/vehicle_angular_velocity: small FFT notch update simplification 2021-11-08 19:14:32 -05:00
Daniel Agar 47afab62e7 gyro_fft: limit noise floor to configured range (IMU_GYRO_FFT_MIN/MAX) 2021-11-08 19:14:32 -05:00
Daniel Agar dd3e0b723a gyro_fft: add IMU_GYRO_FFT_SNR parameter 2021-11-08 19:14:32 -05:00
Matthias Grob 6fab6242db setup/python requirements: add future module
which is a requirement for MAVLink header generation.
Found on Ubuntu 20.04 Python 3.
2021-11-08 17:05:30 +01:00
Silvan Fuhrer b216cddf49 state_machine_helper: add place holder in array nav_state_names for removed LANDGPSFAIL mode
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-08 13:42:55 +01:00
JaeyoungLim 031f7f831b Fixedwing Pos Control: Handle vehicle transition waypoints outside controllers (#18503)
* Handle VTOL transition waypoints outside FW auto control modes
2021-11-08 11:21:08 +01:00
Daniel Agar 66ab7e50df github actions increase NuttX compile ccache limit slightly 2021-11-07 20:37:58 -05:00
Daniel Agar 3b68f8e510 Tools/check_submodules.sh revert attempted submodule improvements
- this wasn't helping break out of submodule issues
2021-11-07 20:36:47 -05:00
Daniel Agar 4627f5514e boards: holybro_kakutef7_default disable load_mon to save flash 2021-11-07 20:36:47 -05:00
Jaeyoung-Lim 6a2ebfc0cc Handle setpoint types properly for fixedwing position control
Handle setpoint types properly for fixedwing position control
2021-11-07 19:21:00 -05:00
Daniel Agar f43adaeeb5 Tools/check_submodules.sh disable parallel jobs
- this is already run separately for each submodule (potentially in parallel)
2021-11-07 18:12:30 -05:00
Silvan Fuhrer dbd9b88bea FW position controller: only allow switching to AUTO_ALTITDUE or AUTO_CLIMBRATE if pos_sp_curr_valid
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-07 23:31:21 +01:00
Daniel Agar 2f8cb5a1c2 mavlink: initial support for MAG_CAL_REPORT stream 2021-11-07 16:03:34 -05:00
Daniel Agar 24b00317b5 Tools/check_submodules.sh attempt update before sync to handle changes 2021-11-07 16:00:13 -05:00
Viktor Vladic 5b3e1a2347 boards: add MatekH743-slim support 2021-11-07 15:39:50 -05:00
JaeyoungLim cda7c6ceaa Enable offboard actuator setpoints 2021-11-07 15:38:42 -05:00
Guilherme Lawless 47a191489e cmake: sitl_gazebo build use memory information from the system to estimate the parallel jobs
Using cmake_host_system_information, grabs AVAILABLE_PHYSICAL_MEMORY and adds another job for every 1.5GB of available memory.

This is tested on a single system with 16 logical cores and 16GB RAM (~11.5GB available, reported correctly by cmake).
2021-11-07 15:37:48 -05:00
Daniel Agar 68026eadeb save significant IMU bias changes learned by the EKF
* ekf2: make publishing of learned accel biases more robust
* ekf2: reset accel bias if calibration updated
* msg: add separate accel and gyro calibration counters
* ekf2: use separate accel and gyro calibration counters
* ekf2: rework logic to reset biases when calibration counters increment
* sensors: add saving of learned accel biases
* ekf2: generalized saving accel/gyro/mag in flight sensor calibration
* boards: holybro kakutef7 disable systemcmds/perf and systemcmds/top to save flash

Co-authored-by: Paul Riseborough <gncsolns@gmail.com>
2021-11-07 15:34:27 -05:00
Jacob Crabill 5969508fa7 mavlink: cmake generate mavlink headers at build time
- mavlink/mavlink is now directly included as a submodule instead of the generated mavlink/c_library_v2
 - this also switches to mavlink development.xml by default
2021-11-05 23:01:38 -04:00
Julian Oes 88489ae8bd mavlink: Check target for mavlink shell
The SERIAL_CONTROL MAVLink message now contains a target_system and
target_component field that we should check.

Without this we might be answering to a command on the network that is
meant for another system.
2021-11-05 23:48:44 +01:00
David Sidrane 96101a9c11 NuttX backports of imxrt dcache fixes to support WB & USB 2021-11-05 13:50:02 -04:00
David Sidrane af6bedaded nxp_fmurt1062:Needs pwm_out 2021-11-05 13:50:02 -04:00
David Sidrane ff43923567 nxp_fmurt1062-v1:Use Write Back Dcache 2021-11-05 13:50:02 -04:00
David Sidrane dedad87e82 nxp_fmurt1062-v1:Force no no-unaligned-access
This results in a load saving (no dcache) of 16.82% at a cost
  of 0.03% Flash, .07% XIP Flash and .45% SRAM

Forced Alighment

With: -mno-unaligned-access

Memory region         Used Size  Region Size  %age Used
           flash:      606568 B         7 MB      8.26%
        flashxip:      622920 B         1 MB     59.41%
            sram:      640848 B       856 KB     73.11%
            itcm:          0 GB         0 GB
            dtcm:          0 GB       128 KB      0.00%

 PID COMMAND                   CP
   0 Idle Task                   87640 20.047   204/  748   0 (  0)  READY  3
   1 hpwork                          0  0.000   332/ 1784 249 (249)  w:sig  3
   2 lpwork                         26  0.008   780/ 1616  50 ( 50)  w:sig  4
   3 init                            0  0.000  1980/ 2928 100 (100)  w:sem  3
   4 wq:manager                      0  0.000   508/ 1256 255 (255)  w:sem  4
 327 navigator                     910  0.204  1124/ 1832 105 (105)  READY  6
  23 wq:lp_default                3479  0.795  1252/ 1920 205 (205)  READY  4
  30 wq:hp_default               23554  5.415  1332/ 1904 237 (237)  READY  4
  47 dataman                         0  0.000   820/ 1208  90 ( 90)  w:sem  4
  57 wq:I2C1                     26849  6.190  1060/ 2336 246 (246)  w:sem  4
  60 wq:I2C2                     24045  5.440   732/ 2336 245 (245)  w:sem  4
  86 wq:SPI1                     47127 10.804  1352/ 2336 253 (253)  w:sem  4
  91 wq:I2C3                      1935  0.436   980/ 2336 244 (244)  w:sem  4
 101 wq:SPI3                      6932  1.585  1028/ 2336 251 (251)  w:sem  4
 237 wq:nav_and_controllers      16743  3.832  1236/ 2240 242 (242)  w:sem  4
 248 wq:rate_ctrl                 9008  2.074  1572/ 1952 255 (255)  w:sem  4
 250 wq:INS0                     37182  8.450  4372/ 6000 241 (241)  w:sem  4
 264 commander                   29395  6.732  1260/ 3224 140 (140)  READY  5
 287 mavlink_if0                 60513 13.828  1876/ 2728 100 (100)  READY  4
 294 mavlink_rcv_if0              5946  1.387  1292/ 4560 175 (175)  READY  4
 307 wq:UART5                     3345  0.770   844/ 1632 229 (229)  READY  4
 370 log_writer_file                 0  0.000   372/ 1176  60 ( 60)  w:sem  3
 369 logger                       2121  0.484  2468/ 3648 230 (230)  READY  3
 393 top                         37523  8.641  3060/ 4080 237 (237)  RUN    3

Processes: 24 total, 10 running, 14 sleeping
CPU usage: 77.08% tasks, 2.87% sched, 20.05% idle
DMA Memory: 5120 total, 1024 used 1024 peak
Uptime: 441.946s total, 87.640s idle

Allow Un-Alighment
With Out: -mno-unaligned-access
Memory region         Used Size  Region Size  %age Used
           flash:      604008 B         7 MB      8.23%   8.26%    +0.03

        flashxip:      622240 B         1 MB     59.34%  59.41%    +0.07
            sram:      636752 B       856 KB     72.64%  73.11%    +0.45
            itcm:          0 GB         0 GB
            dtcm:          0 GB       128 KB      0.00%  0.00%

 PID COMMAND                   CPU(ms) CPU(%)  USED/STACK PRIO(BASE) STATE FD
   0 Idle Task                    2418  3.190   264/  748   0 (  0)  READY  3
   1 hpwork                          0  0.000   332/ 1784 249 (249)  w:sig  3
   2 lpwork                         12  0.004   852/ 1616  50 ( 50)  w:sig  3
   3 init                            0  0.000  1932/ 2928 100 (100)  w:sem  3
   4 wq:manager                      0  0.000   548/ 1256 255 (255)  w:sem  4
 327 navigator                      22  0.203  1052/ 1832 105 (105)  READY  6
  23 wq:lp_default                  83  0.743  1252/ 1920 205 (205)  READY  4
  30 wq:hp_default                 637  5.886  1332/ 1904 237 (237)  READY  4
  47 dataman                         0  0.000   820/ 1208  90 ( 90)  w:sem  4
  57 wq:I2C1                       162  1.063  1060/ 2336 246 (246)  w:sem  4
  60 wq:I2C2                        98  0.500   732/ 2336 245 (245)  w:sem  4
  86 wq:SPI1                      1166 10.771  1352/ 2336 253 (253)  w:sem  4
  91 wq:I2C3                        48  0.437  1060/ 2336 244 (244)  w:sem  4
 101 wq:SPI3                       178  1.653  1028/ 2336 251 (251)  w:sem  4
 237 wq:nav_and_controllers        410  3.781  1324/ 2240 242 (242)  w:sem  4
 248 wq:rate_ctrl                  222  2.050  1572/ 1952 255 (255)  w:sem  4
 250 wq:INS0                       940  8.691  4372/ 6000 241 (241)  w:sem  4
 264 commander                     753  6.475  1472/ 3224 140 (140)  READY  5.03
 287 mavlink_if0                  1440 13.973  1780/ 2728 100 (100)  READY  4
 294 mavlink_rcv_if0               139  1.304  1276/ 4560 175 (175)  READY  4
 307 wq:UART5                       83  0.785   828/ 1632 229 (229)  READY  4
 370 log_writer_file                 0  0.000   372/ 1176  60 ( 60)  w:sem  3
 369 logger                         54  0.493  2468/ 3648 230 (230)  READY  3
 393 top                          1053 10.015  3060/ 4080 237 (237)  RUN    3
 396 mavlink_rcv_if1               166  1.608  1380/ 4560 175 (175)  READY  4
 395 mavlink_if1                  2167 23.459  1812/ 2824 100 (100)  READY  4

Processes: 26 total, 12 running, 14 sleeping
CPU usage: 93.90% tasks, 2.91% sched, 3.19% idle     77.08% tasks, 2.87% sched, 20.05% idle -16.82%
DMA Memory: 5120 total, 1024 used 1024 peak
Uptime: 18.242s total, 2.419s idle
2021-11-05 13:50:02 -04:00
David Sidrane 4225193456 nxp_fmurt1062-v1:Proper USB HS config 2021-11-05 13:50:02 -04:00
David Sidrane e2b4e435a9 Build system:Board level control of no-unaligned-access 2021-11-05 13:50:02 -04:00
David Sidrane af9f8f08c6 NuttX PX4 build - capture log in VERBOSE=True|1 2021-11-05 13:50:02 -04:00
David Sidrane d4c2476699 nxp_fmurt1062-v1:init Fix Spelling 2021-11-05 13:50:02 -04:00
David Sidrane 46b208ba21 nxp_fmurt1062-v1:init Define ret indepenent of enabled IP Blocks 2021-11-05 13:50:02 -04:00
David Sidrane 29eb27632a nxpfmurt1062-v1:Add USB dev 2021-11-05 13:50:02 -04:00
RomanBapst 56cf77a74c addressed review comments
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-11-05 18:04:33 +01:00
RomanBapst e36e527488 fixed wrong path
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-11-05 18:04:33 +01:00
Roman Bapst d58d13b2e8 APX4-1617: Fix manual climb rate in TECS (#1463)
* tecs: workaround for the fact that vel smoothing lib uses a DOWN coordinate system

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-11-05 18:04:33 +01:00
RomanBapst 7cb99f521c moved ManualVelocitySmoothing to motion_planning lib
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-11-05 18:04:33 +01:00
RomanBapst 924298e9c3 addressed review comments
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-11-05 18:04:33 +01:00
RomanBapst 0ac3077bdc tecs: use trajectory generation library to compute height rate setpoint
- added ability to specify maximum acceleration constraint for height rate setpoint
- added support for locking altitude setpoint when in height rate control
mode and height rate input is zero

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-11-05 18:04:33 +01:00
RomanBapst 6e75b7cffd FixedWingPositionControl: push altitude setpoint locking into TECS
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-11-05 18:04:33 +01:00
Beat Küng 296db60a58 camera_capture: use output functions for pin configuration if SYS_CTRL_ALLOC==1 2021-11-05 12:36:04 -04:00
Beat Küng 6d993a9301 camera_trigger: use output functions for pin configuration if SYS_CTRL_ALLOC==1 2021-11-05 12:36:04 -04:00
Silvan Fuhrer f492fa9d3a fix typo
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 17:58:21 +03:00
RomanBapst 514cf12c57 addressed review comments
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-11-05 17:58:21 +03:00
Silvan Fuhrer 3bd114bf9f RTL: if vehicle is a VTOL in hover, always consider all safe landing points
Unless there is already a mission landing in progress,
in that case stay on the mission landing if RTL_TYPE
isn't set to closest.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 17:58:21 +03:00
Silvan Fuhrer 1163a52c17 Navigator: remove unnecessary (duplicated) info messages for RTL
There is already (a more precise) info message on RTL activation.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 17:58:21 +03:00
Silvan Fuhrer f4f9b8ebf2 RTL: replace deny_mission_landing logic by getDestinationTypeMissionLanding()
The rtl instance decides on destination of RTL, and Navigator then switches to
mission mode if required.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 17:58:21 +03:00
Silvan Fuhrer ab08bbdb58 RTL: improve RTL info message
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 17:58:21 +03:00
Silvan Fuhrer 775a1eb4b6 RTL: remove unused function and non-informative comments
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 17:58:21 +03:00
Silvan Fuhrer dd987c08a5 RTL: rename enum names for RTLType
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 17:58:21 +03:00
Silvan Fuhrer a012f01dbc Navigator: clean up get_rtl_type()
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 17:58:21 +03:00
Silvan Fuhrer 8dc6d5f208 RTL: set destination type to mission landing also in MC
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 17:58:21 +03:00
Daniel Agar 9c15be22d6 mc_autotune_attitude_control: add new MC_AT_EN parameter to enable
- only enabled by default on boards that aren't memory constrained
2021-11-05 09:52:07 -04:00
bresch 1e94512719 FD: use flags union instead of bitmask 2021-11-05 09:45:52 -04:00
bresch 3f1025fb1e FD: add dedicated topic to log more internal states
log imbalanced propeller check metric

add failure_detector_status message
2021-11-05 09:45:52 -04:00
bresch b8ed457371 Commander: trigger failsafe action if imbalanced propeller detected 2021-11-05 09:45:52 -04:00
bresch 5dfb8e594a FD: add imbalanced propeller check 2021-11-05 09:45:52 -04:00
bresch bf2fb70d67 vehicleIMU: compute and log accel variance 2021-11-05 09:45:52 -04:00
Silvan Fuhrer f02786d112 Navigator/Commander: make GPS failsafe consitent: switch to Descend also for FW and VTOL
- remove GPS failsafe mode
- for VTOL: transition to hover in Descend (unless NAV_FORCE_VT is not set)

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 12:09:39 +03:00
Silvan Fuhrer b77487d69c Fixed-wing Position controller: add modes for auto altitude and auto descend
- bit of clean up
- add GPS failsafe mode auto_altitude, that will keep current altitude with a fixed-bank angle
for some time, then switches to auto_descend that will descend with constant sink rate
of 0.5m/s
- params controlling GPS failsafe are not FW params: NAV_GPSF_R --> FW_GPSF_R and
NAV_GPSF_LT --> FW_GPSF_LT

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 12:09:39 +03:00
Daniel Agar c73a1b4c68 update UAVCAN-v0 dsdl to DroneCAN 2021-11-04 21:36:13 -04:00
Daniel Agar 67437396f1 mpu6000: add USER_CTRL I2C_MST_EN bit to checked registers 2021-11-04 21:22:14 -04:00
Daniel Agar 8fbb241c2e mpu6000: add gyro/accel self test bits to checked registers 2021-11-04 21:22:14 -04:00
Daniel Agar bffcdd6fad boards: modalai_fc-v2 fix bootloader board type 2021-11-04 15:43:29 -04:00
Matthias Grob f55590ce78 FlightTaskOrbit: remove duplicate newlines 2021-11-03 17:37:52 +01:00
Matthias Grob 6cea707330 FlightTaskOrbit: increase acceptance radius from 1 to 2m
to avoid reaproaching when tracking is not perfect while
acc/deccelerating by stick.
2021-11-03 17:37:52 +01:00
Matthias Grob eda9dce033 FlightTaskOrbit: fix direction change via MAVLink command 2021-11-03 17:37:52 +01:00
Thomas Debrunner d450afead6 FlightTaskOrbit: Direct orbit approach with slowdown at intersection point 2021-11-03 17:37:52 +01:00
Thomas Debrunner 0d0b87e193 Update src/modules/flight_mode_manager/tasks/Orbit/FlightTaskOrbit.cpp
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
2021-11-03 17:37:52 +01:00
Thomas Debrunner 9bd46be124 Orbit: Switch to PositionSmoothing library.
This also fixes the bug with altitude not follows and smoothes orbit approach trajectory
2021-11-03 17:37:52 +01:00
Vatsal Asitkumar Joshi ea1ae73526 Support for Raspberry PI RP2040 MCU (#18083) 2021-11-03 12:14:30 -04:00
Daniel Agar 8f6fd5f37b sensors/vehicle_angular_velocity: gyro RPM dynamic notch filter handle negative RPM
- some UAVCAN ESCs report negative RPM for reverse rotation
 - lower hard coded safety limit RPM limit to 10 Hz (600 RPM)
 - avoid disabling notch filters that weren't configured
2021-11-02 09:36:02 -04:00
Peter van der Perk c6f249f7f1 Kconfig merge_config only set to 'n' when BOOL
Run make updateconfig to fix delta's of derived configs
2021-11-02 09:34:21 -04:00
Daniel Agar fec0d6c5ed ekf2: change indication further reduce data precision 2021-11-02 10:21:54 +01:00
bresch 1317b1a6e1 [AUTO COMMIT] update change indication 2021-11-01 13:59:34 +01:00
bresch 9e54c6d1aa ekf2: move generic functions to control.cpp
these functions aren't specific to GPS fusion
2021-11-01 13:59:34 +01:00
bresch e90734881b ekf2_test: add more GPS fusion control tests 2021-11-01 13:59:34 +01:00
bresch 8aae39e82a ekf2: move GPS control logic to separate source file 2021-11-01 13:59:34 +01:00
bresch 689ab12845 ekf2: refactor gps vel/pos fusion control logic 2021-11-01 13:59:34 +01:00
bresch 9afc390552 ekf2: move gps yaw reset in starting function 2021-11-01 13:59:34 +01:00
Daniel Agar 1461eb0e32 logger: increase optimization to ${MAX_CUSTOM_OPT_LEVEL}
- ${MAX_CUSTOM_OPT_LEVEL} is -O2 on boards that aren't flash constrained
2021-11-01 09:13:12 +01:00
Thomas Debrunner 32be88404a commander: Only run estimator navigation checks when armed 2021-10-28 12:06:31 -04:00
PX4 BuildBot 7006b0aee9 Update submodule jMAVSim to latest Thu Oct 28 12:38:55 UTC 2021
- jMAVSim in PX4/Firmware (c9b89ee869): https://github.com/PX4/jMAVSim/commit/0a5a8c6d9da05bee5f82faa25430213d97d396b0
    - jMAVSim current upstream: https://github.com/PX4/jMAVSim/commit/b23dc53d558e801b214fbcb605a061c9773105e0
    - Changes: https://github.com/PX4/jMAVSim/compare/0a5a8c6d9da05bee5f82faa25430213d97d396b0...b23dc53d558e801b214fbcb605a061c9773105e0

    b23dc53 2021-10-08 Ilya Petrov - Use low resolution texture also on Windows
2021-10-28 11:41:02 -04:00
Harrison MG c9b89ee869 fixed ulanding_radar autostart command 2021-10-28 00:01:37 -04:00
Daniel Agar be5c5856e7 cmake: px4_add_module always add module to PX4_MODULE_PATHS so that parameters aren't pruned 2021-10-27 23:00:40 -04:00
bresch d03bf42f60 slice: add min and max functions 2021-10-07 09:19:28 -04:00
Beat Küng 007a7f78ae CI: switch to github actions 2021-09-03 12:07:26 +02:00
Beat Küng c96f0a48b6 test: update gtest to v1.11.0 2021-09-03 12:07:26 +02:00
Beat Küng 7c1860f286 geninv(): pass result as argument
depending on usage, this reduces stack usage a bit.
2021-09-03 12:07:26 +02:00
Beat Küng dc7f119b99 geninv(): improve runtime performance and reduce stack usage
- use associativity of matrix operations to reduce size of temporary
  matrices and number of multiplications in the M <= N case
- minimize the number of temporary matrices required
2021-09-03 12:07:26 +02:00
romain-chiap 3d1c9b988d quaternion exponential (#164) 2021-08-04 19:04:57 -04:00
Daniel Agar b8568a89db Euler: improve quaternion constructor 2021-04-14 22:56:03 -04:00
Daniel Agar 1d0e7f1ca1 Matrix: use naive per element copy instead of memcpy call 2021-04-14 15:44:18 -04:00
Daniel Agar 1344ce06fd Euler: simplify DCM constructor
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2021-04-14 15:40:24 -04:00
Daniel Agar 3679f7fd51 add double precision alias declarations and remove typedefs 2021-02-11 12:40:54 -05:00
Julian Kent 977cf52322 Ignore debug line in code coverage 2021-01-22 17:30:00 +01:00
Julian Kent 4837316f9b Fix small inconsistencies and compiler warnings 2021-01-22 17:30:00 +01:00
Julian Kent d540ca5de2 Coerce default epsilon values to Type 2021-01-13 10:17:09 +01:00
Julian Kent 054f8b12f4 Use a single inverse implementation for a single matrix size 2021-01-05 09:02:09 +01:00
Julian Kent 15e54ceda1 Rework rank-detection tolerance in pseudoinverse 2020-12-18 12:07:19 +01:00
Julian Kent d9a5e3dec2 Add test for new cutoff threshold 2020-12-18 12:07:19 +01:00
JacobCrabill ea43303c1c test/vector3: Add test for scalar +/- operators 2020-12-17 18:05:46 +01:00
JacobCrabill 158409abce Vector3f: Add operator+/- for scalars 2020-12-17 18:05:46 +01:00
Mitchell-Lee-93 a504b6e881 precision of tol for float has been changed 2020-11-04 10:00:55 +01:00
Julian Oes ce6b10b99a Fix clang-tidy warnings
This comes from PX4 CI.
2020-08-27 17:42:42 +02:00
Kamil Ritz 13f092a30f sparse quadratic form 2020-08-26 19:45:05 +02:00
Julian Oes 3a5bfb2bd1 matrix: inline to prevent multiple definitions (#147)
Without inline we get multiple definitions during linking.
2020-08-25 12:58:04 +02:00
Julian Oes e101edc0e7 Matrix: fix warning if M == N (#146)
This fixes the warning appearing with GCC 10.2:

../../src/lib/matrix/matrix/Matrix.hpp:481:34: error: logical ‘and’ of equal expressions [-Werror=logical-op]
  481 |         for (size_t i = 0; i < M && i < N; i++) {
      |

I would prefered something with if constexpr but we don't have that yet
in because we're using C++14.
2020-08-24 14:19:43 +02:00
Morten Fyhn Amundsen cd8ad1584c Make wrap() work with integer types (#145)
* Make wrap() work with integers
2020-08-24 10:49:12 +02:00
kamilritz 25c0455348 comply with Firmware style requirements 2020-08-10 10:13:40 +02:00
kritz f981cea2ae add possibility to iterate over SparseVector data at runtime (#143) 2020-08-09 09:44:49 +02:00
kamilritz e714a28c83 use size_t instead of int in sparseVector 2020-08-07 19:45:02 +02:00
kritz 18699416b0 SparseVector (#140)
* Add SparseVector

temp

* Add gtest

* Some reworking of the sparse concept

* Change type of M from int to size_t

* Add const modifier

* Add needed declaration for accessing elements of _indices

* Add norm_squared, norm, longerThan

* Add test for all sparse vector functions

* Add missing const to slice's norm_squared, norm and longerThan

* Construction from Vector<M> and carray[N]

* try to fix ci

Co-authored-by: Julian Kent <julian@auterion.com>
2020-08-07 18:44:48 +02:00
kamilritz 6ed5dbc2db Construct Vector from Slice<1,M> alias row() 2020-08-06 16:15:05 +02:00
Matthias Grob a126be0882 attitude test: refactoring to avoid identity quaternion confusion 2020-07-20 18:44:08 +02:00
Matthias Grob 572bafb01f Quaternion: use template type for division by two 2020-07-20 18:44:08 +02:00
Matthias Grob 242b38ee9e Quaternion: remove deprecated axis_angle conversions 2020-07-20 18:44:08 +02:00
Matthias Grob 7a3009f7a3 Remove asserts for unsigned integer >= 0
GCC 10 gives a warning
"comparison of unsigned expression in ‘>= 0’ is always true"
for these asserts since checking if an unsigned integer cannot
be negative and hence the statement gets droped.
2020-07-20 15:10:49 +02:00
Matthias Grob 0fd99c59f1 Switch operator() to return a const reference 2020-07-17 10:43:34 +02:00
kamilritz 8a59b463f2 Quaternion: Use template type instead of single hardcoded type 2020-07-17 10:37:18 +02:00
Julian Kent 9a30828a0a Add explicit matrix + scalar test 2020-06-30 10:37:10 -04:00
Julian Kent f3cf615023 Do += -= and scalar *= /= in place 2020-06-30 10:37:10 -04:00
kamilritz f529358e9a Add missing const modifier 2020-06-28 14:24:49 +02:00
kamilritz 674bd99f3b Add operator* and operator/ for slice with type 2020-06-12 11:34:09 +02:00
Nicolas MARTIN 38b3acce96 fix conjugate_inversed comment 2020-06-11 16:17:28 +02:00
Matthias Grob 2bee0d078c Quaternion: refactor multiplication to matrix multiplication style
Most often the multiplication in convention descriptions and papers is
described in matrix multiplication style like this:
q · p := Q(q)p

Q(q) :=
[q0 −q1 −q2 −q3]
[q1 q0 −q3 q2]
[q2 q3 q0 −q1]
[q3 −q2 q1 q0]

I'm just rearanging the terms such that it's easily comparable with
these definitions additional to it being clearly described by
documenting we use the hamilton convention.
2020-05-06 13:17:02 +02:00
kamilritz d613055462 Add more assignment operators for slices 2020-04-07 09:12:17 +02:00
Matthias Grob 976ada411b Matrix: min max comments and test style 2020-03-23 09:46:07 +01:00
Matthias Grob fa7153ecfb Matrix: omit min max nan case with same result
I observed this during review in
https://github.com/PX4/Matrix/pull/105/files#r348386226
2020-03-23 09:46:07 +01:00
Matthias Grob a32892926c Matrix: capture stdout for print() test
I want to switch the print() function back to use printf()
such that it's fully compatible with all (embedded) platforms.

To still test the print function I'm capturing stdout into a file
such that the print() function can stay unchanged and the result of
the printf()s can be evaluated.
2020-03-12 13:24:08 +01:00
Matthias Grob c6db357c92 Matrix: correct print buffer size prediction
Apparently printf of %8.8g can result in
8 significant digits + dot + scientific notation e.g. "e+12" = 14 bytes
2020-03-12 10:08:04 +01:00
Matthias Grob 2cca35c8fe AxisAngle: call q.imag().norm() for conversion
This is important depending on the platform because norm()
calls matrix::squrt() which dispatches correctly to the implementation
for the used type. Otherwise float squrt()s can get calculated as
double.
2020-03-12 07:35:44 +01:00
kritz 4873dc1c1e Analytic inverse implementation (#122)
* Add analytic 2x2 matrix inverse

* Add analytical 3x3 matrix inverse
2020-03-04 09:14:04 +01:00
Julian Kent 649c837b6b Use faster but less accurate average 2020-02-25 15:08:17 +01:00
kamilritz a37b91c96a Type cast remaining integer 2020-01-13 12:21:18 +01:00
Lorenz Meier 3b581fb599 Update .travis.yml
Bring Ubuntu and Mac OS toolchains to latest.
2020-01-01 15:53:50 +01:00
Lorenz Meier efa5580a67 Update CMakeLists.txt
Remove non-compatible compile option.
2020-01-01 15:53:50 +01:00
Lorenz Meier 20a9e91d44 Fix CMake configuration for coverage tests on Mac OS 2019-12-31 15:54:51 +01:00
kritz d18be0d0fa Fix AngleAxis constructors (#117) 2019-12-28 17:18:15 -05:00
kritz e81483a808 Catch quaternion canonical corner cases (#116) 2019-12-18 14:12:47 +01:00
kritz 4f3565da94 Add asserts (#115)
* Add asserts

* Type cast literals

* asserts for indexing vectors

* include assert

* Fix accessing elements outside of slice
2019-12-09 10:21:27 +01:00
kritz 2f6398168d Add several functions that are useful for coavriance matrices: (#114)
* uncorrelateCovariance
	* uncorrelateCovarianceSetVariance
	* makeBlockSymmetric
	* makeRowColSymmetric
	* isBlockSymmetric
	* isRowColSymmetric
2019-12-06 12:03:26 +01:00
kritz 5cbcf6035a Set Matrix's col amd row to single value (#113) 2019-12-05 18:16:14 +01:00
kritz ef442fab92 Getter function for the diag elements of slice (#112) 2019-12-05 11:39:21 +01:00
kritz de6a2d31ff Slice assign value (#111)
* Assign value to slice

* Readme for formatting
2019-12-04 14:33:33 +01:00
Daniel Agar a8009a36a3 Quaternion multiply inline return 2019-11-29 14:40:11 -05:00
Daniel Agar dba84236cb Vector3f cross product directly return result (#109) 2019-11-28 10:36:13 +01:00
Matthias Grob de85dcff97 Vector: switch read only functions to const (#108) 2019-11-26 13:46:45 +01:00
Julien Lecoeur a172c3cdac Add implementation of pseudo-inverse (#102)
* Fix compilation error

* Add implementation of pseudo-inverse

The implementation is based on this publication:
Courrieu, P. (2008). Fast Computation of Moore-Penrose Inverse Matrices, 8(2), 25–29. http://arxiv.org/abs/0804.4809
It is a fully templated implementation to guaranty type correctness.

* Add tests for pseudoinverse

* Apply suggestions from code review

Co-Authored-By: Mathieu Bresciani <brescianimathieu@gmail.com>

* Adapt fullRankCholesky tolerance to type

* Add pseudoinverse test with effectiveness matrix

* Fix coverage

* Fix rebase issue

* Fix SquareMatrix test, add null Matrix test
2019-11-18 14:36:30 -08:00
Daniel Agar cd185c995b add braces around statements and cleanup formatting (#107) 2019-11-13 10:41:38 -08:00
kritz 38e966cea1 Add min, max, constrain function for Matrix (#105)
* Add min, max, constrain function for Matrix

* Set individual elements to nan in constrain

* Deal with NANs
2019-11-12 18:57:12 +01:00
kritz 93d42947b6 Add test for setting Quaternion to Identity (#104) 2019-11-08 17:27:33 +01:00
Julian Kent 9f46483951 Fix GCC-4.8 bug 2019-11-04 11:11:30 -05:00
Julian Kent 445f58d484 Fix weird C preprocessor conflicts (#101) 2019-11-01 14:23:35 +01:00
Julian Kent 215203fc6f Automatic Differentiation 'Dual' Type (#100)
* Dual numbers initial implementation

* Add test coverage, with partial derivative example

* Add Jacobian test, fix small issues

* Improve test to demonstrate non-square jacobian

* Better naming for collectReals/Derivatives

* Improve comments

* Potential GCC 4.8 bug workaround

* Add fallback workaround for non-IEEE float platforms
2019-10-23 12:07:51 +02:00
Julian Kent 92d1c8761e More features: longerThan, norm, copyTo and slice on a Slice (#97)
* Allow slices of slices, add longerThan to Vector/Slice
2019-10-03 13:47:36 +02:00
Matthias Grob 740324cf1e Make all array constructors explicit (#99)
* Make all array constructors explicit

to avoid accidental implicit casts like e.g.
Vector3f v = 0;
assigning nullpointer content.
2019-10-03 13:38:51 +02:00
Julian Kent 7b34c1c51d Enable branch coverage 2019-10-03 08:32:05 +02:00
Matthias Grob 973999a4d3 Fix some template type conversions and style 2019-09-23 10:59:12 +02:00
Matthias Grob c34e8dc98f helper: consider matrices with the same NANs and INFINITYs equal
to simplify bulk checks when these values are expected
2019-09-18 09:59:50 +02:00
Matthias Grob bbaa93880b helper: consider NAN equal to NAN such that vectors can be compared exactly 2019-09-18 09:59:50 +02:00
Matthias Grob 33a629105c Matrix: add proper print function testing
Before the print function was just implicitly called somewhere
and that's why we had 100% line coverage. With this we have actual
testing of the functions.
2019-09-18 09:59:50 +02:00
Matthias Grob b0b7d7229a Multiplication test: fix division resulting in NAN 2019-09-18 09:59:50 +02:00
Matthias Grob 3747232724 LeastSquaresSolver: Fix nasty GCC compile optimization error
The original implementation with no wrapping on size_t is more readable
but the compiler errors with:
internal compiler error: in trunc_int_for_mode, at explow.c:55
I read up and it's apparently a loop optimization problem.
Inspired by https://stackoverflow.com/a/27224697/6326048
I used a far less readable implementation that works fine and
wrote a comment to explain it.
2019-09-18 09:59:50 +02:00
Matthias Grob 5844b0e46e Implement one float equality check and use it everywhere 2019-09-18 09:59:50 +02:00
Matthias Grob 1e80807e8e test: Add uncovered equality checks with NAN and INFINITE 2019-09-18 09:59:50 +02:00
Matthias Grob a374f37a54 Include helper_functions like all other library components 2019-09-18 09:59:50 +02:00
James Goppert 60c9c99dcc Fix type for division. 2019-09-17 11:08:00 -04:00
Julian Kent b4714e2ed2 Don't lose array sizes in copyTo 2019-09-17 15:09:12 +02:00
Julian Kent 51d2f9f0dc Remove direct access to internal data 2019-09-16 21:58:32 -04:00
Julian Kent 18218c8f9c Test non-square matrix multiplication (#91)
* Test non-square matrix multiplication
2019-09-16 17:40:25 +02:00
Julian Kent b817e8677d Add helpers based on Slice: row(), col(), xy() 2019-09-16 16:11:08 +02:00
Julian Kent 82d565f4d9 Add support for Slice to Matrix, SquareMatrix, Vector 2019-09-16 16:11:08 +02:00
Julian Kent af1378cc55 Add Slice class 2019-09-16 16:11:08 +02:00
Julian Kent 15865b741c Help compiler with name resolution to avoid overload mixups 2019-09-09 11:18:57 -07:00
Julian Kent 03ffd696a6 Replace pow with sqrt 2019-09-09 02:18:10 -07:00
Julian Kent 22bf63cb71 A smaller codesize wrap, since it gets inlined in many places 2019-09-05 22:31:13 +02:00
Matthias Grob 74ace7d1d5 helper test: cover wrap close to limits cases (#84) 2019-09-05 18:02:33 +02:00
Tanja Baumann 26fd962cbe fix bug in matrix wrap function (#83) 2019-09-05 11:21:41 +02:00
Julian Kent 4a4309327a better API comment
Co-Authored-By: Julian Oes <julian@oes.ch>
2019-09-05 10:19:47 +02:00
Matthias Grob 31450c407c Matrix: use existing print() if isEqual test fails 2019-09-05 10:19:47 +02:00
Matthias Grob 938274fce5 helper test: add extensive wrap tests 2019-09-05 10:19:47 +02:00
Matthias Grob 315010bae1 helper_functions: generalize wrap function to any range 2019-09-05 10:19:47 +02:00
Matthias Grob 007c7c58c4 fix math defines to have M_PI and M_TWOPI 2019-09-05 10:19:47 +02:00
Martina Rivizzigno cc084e0791 matrix: add method to check all values are nan (#82) 2019-08-26 19:27:58 +02:00
kritz 84b3da227c Canonical Quaternion with tests (#81) 2019-08-22 15:05:14 +02:00
Matthias Grob 56b069956d slice test: fix trailing whitespace style 2019-03-08 20:20:08 +01:00
Oskar Weigl 5ccfa74c72 Fix const error 2019-03-08 19:17:40 +00:00
Oskar Weigl eea6b59973 Implement slice as copy loop 2019-03-08 19:17:40 +00:00
Oskar Weigl 93375fbd3c Fix copy-paste error 2019-03-08 19:17:40 +00:00
Oskar Weigl 5872bbc28c Add slicing tests that are not pure row slicing
I had a look at the implementation of `slice`, and I found it odd that it doesn't have a copy loop. The current implementation does a raw memcpy of the underlying contiguous row-major data. As far as I can tell, this could only slice along rows. Interestingly, I found that the tests only tested for slicing along rows, so this bug would go unnoticed.

I added some tests that checks slicing along columns also. I have a feeling this would break, and we need to fix the implementation of `slice`. However I could be wrong, and hence I'm submitting these tests first to verify.
2019-03-08 19:17:40 +00:00
TSC21 ec436d5aee define FLT_EPSILON; be descriptive about upper_right_triangle() method 2019-02-24 17:14:05 +00:00
TSC21 7355a29a2a tests: use __FLT_EPSILON__ in comparisons 2019-02-24 17:14:05 +00:00
TSC21 7ab2b24e65 tests: urt: refactor 2019-02-24 17:14:05 +00:00
TSC21 4aab44fe01 Travis CI: update MacOS version to use 2019-02-24 17:14:05 +00:00
TSC21 707967d117 add test to .urt() 2019-02-24 17:14:05 +00:00
TSC21 210c76c04b add test to setNaN() 2019-02-24 17:14:05 +00:00
TSC21 96cb9ab146 add NaN value set for Matrix; add return of URT of a matrix 2019-02-24 17:14:05 +00:00
Daniel Agar 6b0777d815 stdlib_imports cinttypes currently unavailable in NuttX toolchain (#79) 2019-01-21 09:12:36 -05:00
Matthias Grob 18fba8221c quaternion: improve comments 2018-12-16 20:16:38 +01:00
Matthias Grob a4f39c0f89 quaternion: reuse existing dot product 2018-12-16 20:16:38 +01:00
Matthias Grob 9c0acfba36 Matrix: remove unsafe copyToRaw method
It used a pointer and could therefore not do correct type checking
for index out of bound or struct memebr order.
Has to be considered unsafe and bad practise.
We should switch to arrays as representation for vectors
inside the messages instead of foo_x, foo_y, foo_z fields.
2018-11-20 16:39:44 +00:00
Beat Küng 0d3bff5e00 Vector2: add explicit constructor for Vector3
Initialize from the first 2 elements.
2018-10-01 10:17:16 +02:00
Beat Küng 807472bfd7 README: document how to run tests 2018-10-01 10:17:16 +02:00
Bart Slinger 30d5a79432 testing float/double with Type template 2018-09-18 09:39:17 +02:00
Bart Slinger 707e288019 explicit casting 2018-09-18 09:39:17 +02:00
Bart Slinger 480c5f1f8e static assert M>=N. floats to Type, arguments as const reference 2018-09-18 09:39:17 +02:00
Bart Slinger 7495794386 test zero divisions 2018-09-18 09:39:17 +02:00
Bart Slinger 3f2d3cf58d fix a div/0 condition 2018-09-18 09:39:17 +02:00
Bart Slinger 983a3f0212 use Matrix and Vector class for A and tau 2018-09-18 09:39:17 +02:00
Bart Slinger 98b8e2d43b formatting 2018-09-18 09:39:17 +02:00
Bart Slinger 0009328257 least squares solver for MxN matrices using QR householder algorithm 2018-09-18 09:39:17 +02:00
Daniel Agar dc3af80977 constructors use array size rather than pointers 2018-08-31 08:11:02 +02:00
Daniel Agar f1bee775a0 use default constructors and skip unnecessary initialization 2018-08-31 08:11:02 +02:00
Daniel Agar 1bcf48bd82 Quaternion from_dcm don't pass by value 2018-08-30 12:07:48 -04:00
Roman Bapst b815fc97c4 replace quiet_NaN() with INFINITY (#70)
- solves undefined symbols for QURT

Signed-off-by: Roman <bapstroman@gmail.com>
2018-06-12 12:24:51 -04:00
Daniel Agar 03a3e3ad46 helper_functions add wrap_2pi 2018-06-10 10:56:45 +02:00
Daniel Agar abc8f82d49 travis-ci add codecov.io (#69) 2018-06-09 21:08:56 -04:00
Daniel Agar 21d47424c6 Quaternion mark const helpers const 2018-04-01 17:02:20 -04:00
James Goppert e7c95fa027 Fix README/cmake format. 2018-03-28 00:11:03 -04:00
James Goppert d142ac234c Fix coverage and bug in matrix equal test. 2018-03-28 00:09:01 -04:00
Daniel Agar 50446a55c8 Matrix add == and != operators 2018-03-27 15:05:22 -04:00
Daniel Agar 61af508755 helper_functions include required px4_defines header 2018-03-19 02:24:38 -04:00
Daniel Agar 41a1cc7583 LICENSE minor changes to template 2017-12-05 10:56:04 -05:00
Matthias Grob f835d39017 Quaternion/Vector: Small refactor for review: put more comments, switched type conversions, took out default destination vector because confusing 2017-12-04 15:34:13 +01:00
Matthias Grob af2610ec04 Test: added check for quaternion vector to vector rotation constructor
including all the parallel vector corner cases
2017-12-04 15:34:13 +01:00
Matthias Grob 84cd7483ae Quaternion: added constructor which generates the shortest rotation that maps one vector to another
including tedious corner case handling for parallel vectors with 180 degree rotations
2017-12-04 15:34:13 +01:00
Matthias Grob d513c94f85 Test: added check for Vector.norm_squared() 2017-12-04 15:34:13 +01:00
Matthias Grob 5130da206a Vector: added norm_squared() because sometimes you can safe the sqrt operation 2017-12-04 15:34:13 +01:00
Matthias Grob 41ad2bdea5 Matrix: added copyToRaw method to allow copying to a pointer
because most uORB messages still contain all components of a vector one by one after each other
2017-11-17 09:30:56 +01:00
Matthias Grob 308a6c91cb Test: added copyTo tests for Vector3, Quaternion and Matrix including clolumn-major order 2017-11-16 04:42:54 +01:00
Matthias Grob 1dffd5930b Matrix: add copyTo copying data to an array and copyToColumnMajor which does the same but with column-major order
same functionality explicitly for quaternions can be deleted
2017-11-16 04:42:54 +01:00
Matthias Grob 3bd94fcd6f Test vector: structured & commented, added normalize and unit_or_zero tests, removed duplicate data preparation 2017-11-06 17:58:52 +01:00
Matthias Grob 9e59691e43 Vector: Additional normalization with check for zero norm because it occurs so many times in applications 2017-11-06 17:58:52 +01:00
Matthias Grob f4243160e2 Quaternion: changed comments because of typos and unclear inconsistent indexing 2017-10-17 17:37:23 +02:00
Matthias Grob d259ab2108 Test: add Quaternion rotate() test that catches non-commutating rotations 2017-10-17 17:37:23 +02:00
Matthias Grob ee2219b836 Quaternion: replace conversion in rotate() with AxisAngle call 2017-10-17 17:37:23 +02:00
Matthias Grob b241cf5c95 Quaternion: Adjusted rotate() to the Hamilton convention (which we switched to)
Note: This error was not caught by a test because the test included only trivial cases which do not explore non-commuting quaternions.
2017-10-17 17:37:23 +02:00
Matthias Grob 6b1fea76d0 Quaternion: added and adjusted comments to further explain conjugation and derivative functionality 2017-10-17 17:37:23 +02:00
Matthias Grob 0527471a52 Matrix: adjust buffer size calculation to account for additional characters
Note: If the buffer is too small there's no memory corruption because of the snprintf limit but part of the output gets missing.
2017-10-17 17:37:23 +02:00
Matthias Grob 0a772f59dd Quaternion: added direct efficient body z-axis calculation with test 2017-09-26 11:20:56 +02:00
Matthias Grob 976461eb0f Dcm: more efficient conversion from quaternion, extend reuse of multiplications 2017-09-26 11:20:56 +02:00
Matthias Grob baf54ad29f quaternion: correcting comments
^(-1) went missing and some phrase was inprecise
2017-09-25 12:18:10 +01:00
James Goppert e595ebb9a7 Switch to Hamilton quaternions and add Cholesky decomposition. 2017-08-31 11:09:20 +02:00
Nate Weibley 471e96ff6f Provide const dataptr access 2017-03-23 20:22:45 -07:00
Nate Weibley 2ad3ec46b9 Mark simple min, max, abs methods as const 2017-03-23 20:22:45 -07:00
Nate Weibley 66e1b406b8 Remove artifical need to virtualize dtors 2017-03-23 20:22:45 -07:00
Pavel Kirienko 499b897e5f Style fix 2017-03-17 12:18:39 -04:00
Pavel Kirienko 99b44c0242 NuttX math lib workaround 2017-03-17 12:18:39 -04:00
Pavel Kirienko 8dbe4a7531 NuttX workaround 2017-03-17 12:18:39 -04:00
Pavel Kirienko 23def31d21 Fixed stdlib imports 2017-03-17 12:18:39 -04:00
Pavel Kirienko e09cf12e2e Removed all uses of C library from tests 2017-03-17 12:18:39 -04:00
Pavel Kirienko 9ebf5f89db Removed all use of C library from the matrix namespace 2017-03-17 12:18:39 -04:00
Pavel Kirienko 552dad40a1 Fixed inclusions in matrix/ 2017-03-17 12:18:39 -04:00
Pavel Kirienko b74749fb61 Un-poisoned fabs 2017-03-17 12:18:39 -04:00
Pavel Kirienko 8af7b8c130 Poisoned the C library identifiers 2017-03-17 12:18:39 -04:00
Daniel Agar cf924956d7 test vector3 using matrix::isEqual 2017-02-24 20:47:41 -05:00
Daniel Agar d81ddb0f37 travis-ci only check formatting once 2017-02-24 20:47:41 -05:00
Daniel Agar de3517a5c7 cmake add asan and ubsan 2017-02-24 20:47:41 -05:00
Daniel Agar cfa68c2196 clang-tidy trivial cleanup 2017-02-24 20:47:41 -05:00
Daniel Agar 5f2f6f0308 rename cmake "Profile" to "Coverage" and add builds 2017-02-24 20:47:41 -05:00
Daniel Agar fb87165051 cmake add check 2017-02-24 20:47:41 -05:00
Daniel Agar f00edc9442 update to astyle 2.06 and fix formatting 2017-02-24 20:47:41 -05:00
Daniel Agar 68c7cc5bfd Quaternion add copyTo 2017-02-24 20:47:41 -05:00
Daniel Agar e2211c5867 QuRT use __builtin_isfinite 2017-02-15 19:30:19 -05:00
Lorenz Meier 2283e6946a Matrix inversion: Ensure that null check is done against the same type 2017-02-04 10:42:10 +01:00
James Goppert 843be9418b Rename isfinite to is_finite to avoid name conflicts. 2017-02-03 18:15:43 -05:00
James Goppert 63aea23f9e Add cholesky decomp, Closes #30, and dynamic print buf 2017-02-03 17:54:16 -05:00
James Goppert a154e14439 Fix coverage for inverse. 2017-02-03 17:24:15 -05:00
James Goppert db6dfeafbe Add helper_functions include for inverse and in general header 2017-02-03 16:56:33 -05:00
James Goppert 230e84702a Fix unit test, create matrix isfinite. 2017-02-03 16:25:55 -05:00
Siddharth Bharat Purohit 7e3eff7b2d remove unnecessary duplicate matrices from inverse 2017-02-03 16:12:17 -05:00
Matthias Grob 47c0a93140 Quaternion: added tests for the corner cases of Dcm to quaternion conversion 2016-12-14 18:25:06 +01:00
Matthias Grob 2f4427a923 Quaternion: Implemented the largest pivot element method for conversion from Dcm to Quaternion to avoid numerical problems 2016-12-14 17:55:05 +01:00
Matthias Grob bb1a321639 Changed Dcm to inherit from SquareMatrix because it is square and we can use the trace method 2016-12-14 17:42:45 +01:00
James Goppert 7eff04742c Fix for zero check on quat from dcm ctor. 2016-12-13 10:21:55 -05:00
James Goppert 74a120f554 Handle some divide by zero edge cases on init. 2016-11-30 01:27:48 -05:00
James Goppert 945edbc58c Ensure direction is always defined for axis angle. 2016-11-30 00:40:55 -05:00
James Goppert 8a94f0f8ac Fix axis angle fabsf usage. 2016-11-28 10:43:29 -05:00
James Goppert bf69be7f17 Fix formatting. 2016-11-22 10:07:08 -05:00
James Goppert f3e478cbff Fix matrix inverse pivotting logic. 2016-11-22 10:04:45 -05:00
James Goppert 34fccdd680 add renormalize method (#32) 2016-11-02 12:10:30 -04:00
James Goppert db4374882b Fix attitude tests. 2016-08-18 16:54:43 -04:00
James Goppert 3aeb099249 Revert "Use Hamilton quaternion definition."
This reverts commit 19554c4470.
2016-08-18 16:51:00 -04:00
James Goppert 4653626d92 Format. 2016-08-16 19:04:23 -04:00
James Goppert 0eb8aa0c0b Support more of mathlib function for easier swap in px4. 2016-08-16 19:03:54 -04:00
James Goppert 558777f34c Fix formatting. 2016-08-16 12:43:42 -04:00
James Goppert 262a715d90 Fix some when building in px4. 2016-08-16 12:37:41 -04:00
James Goppert 4be23552c5 Bump version. 2016-08-16 12:13:26 -04:00
James Goppert 9af58f7e08 Coverage fix. 2016-08-16 12:00:37 -04:00
James Goppert 6197515a51 Fix shadow warnings. 2016-08-16 11:50:46 -04:00
James Goppert f02fb37265 Add Testing to git ignore. 2016-08-16 11:40:14 -04:00
James Goppert 37b00b0880 Added check or consistency of dcm and quaternion product. 2016-08-16 11:37:45 -04:00
James Goppert 1a87564b85 Added dcm quat prod consistency check. 2016-08-16 11:33:56 -04:00
James Goppert 4f13809420 Added axis angle accessors, removed == operator. 2016-08-16 11:05:01 -04:00
James Goppert 19554c4470 Use Hamilton quaternion definition. 2016-08-16 03:59:06 -04:00
James Goppert e6a6b4680c Use quaternion multiplaction for quaternion derivative. 2016-08-16 01:03:23 -04:00
James Goppert c563c41cd4 Fix cmake version. 2016-07-06 01:56:24 -04:00
James Goppert cbb7e06a1f Replace float with Type in kalman. 2016-07-06 01:39:06 -04:00
James Goppert 9353e4cb64 Fix bugs in axis angle. 2016-07-06 01:37:50 -04:00
James Goppert 7b7297b674 Fix for ctor comments on axis angle. 2016-07-05 21:30:22 -04:00
James Goppert fdf00d163c Small fix to README. 2016-07-05 21:27:42 -04:00
James Goppert 0b1bed6b00 Added deprecation warnings in source code. 2016-07-05 21:16:17 -04:00
James Goppert b78e124b73 Fix for README. 2016-07-05 21:08:12 -04:00
James Goppert 298e037f3a Added AxisAngle to README. 2016-07-05 21:06:48 -04:00
James Goppert 0f41af271a Added axis angle attitude representation. (#25) 2016-07-05 20:59:42 -04:00
James Goppert 3320d57f63 Fix format.sh user message. 2016-07-05 17:13:41 -04:00
Beat Küng 42eadb2656 format.sh: better inform the user what to do on style issues (#24) 2016-07-05 17:09:25 -04:00
Beat Küng b1f76782f6 Euler, Quaternion: fix compiler errors for GCC 6.1.1 (#23)
* Euler, Quaternion: fix compiler errors for GCC 6.1.1

GCC output:
error: implicit conversion from ‘float’ to ‘double’ to match other operand
of binary expression [-Werror=double-promotion]

* astyle: fix formatting for Euler.hpp & Quaternion.hpp
2016-07-05 17:00:35 -04:00
Roman Bapst 3c87ae78ff added two more examples to the README 2016-05-25 15:24:35 +02:00
Roman eeb595d1db applied formatting 2016-05-17 08:27:35 +02:00
Roman f4e2b21608 - better description for quaternion class
- revert conversion functions to constructor
2016-05-16 09:21:44 +02:00
Andreas Bircher 81eacb0cfa removing body and intertial frame expressions and establishing consistency 2016-05-15 18:42:21 +02:00
Roman 4a405e7f60 make it clear that we are using right hand rotation convention 2016-05-15 18:42:21 +02:00
Roman 10c1b49bde fix typo 2016-05-15 18:42:21 +02:00
Roman 1033e145a5 fix some typos and better explanation of quaternion ordering 2016-05-15 18:42:21 +02:00
Roman 2b3bdb523d better description for quaternion class 2016-05-15 18:42:21 +02:00
Roman 3152d3d6cf better function descriptions for rotation classes:
- do not talk specifically about body or earth frame, just use frame 1 and frame 2
2016-05-15 18:42:21 +02:00
Andreas Bircher e3a1d67444 adding detailed comments on rotation classes 2016-05-15 18:42:21 +02:00
Andreas Bircher af2e6d952e correcting comments 2016-05-15 18:42:21 +02:00
Andreas Bircher 34e6e2a941 refactoring rotation classes and adding initial description 2016-05-15 18:42:21 +02:00
jaredkw 3509329f30 Define M_PI float, change logical and to && 2016-05-11 18:35:05 -04:00
James Goppert 4d33092bcb Removed lcov testing from travis. 2016-05-09 12:19:26 -04:00
James Goppert dd8ff8db12 Made coverage html output optional. 2016-05-09 12:13:00 -04:00
James Goppert 061609322a Added command line output for coverage. 2016-05-09 12:01:20 -04:00
James Goppert 32ad3989f2 Fix lcov install on travis. 2016-05-09 11:55:45 -04:00
James Goppert f4902fafb9 Added lcov package for coverage test. 2016-05-09 11:53:18 -04:00
James Goppert 155202f6b0 Found a few coverage gaps with local coverage testing. 2016-05-09 11:49:45 -04:00
James Goppert 6efa3c1cb5 Added make coverage to travis. 2016-05-09 11:34:26 -04:00
James Goppert 3f77991388 Merge branch 'MaEtUgR-maetugr-fix2' 2016-05-09 11:24:55 -04:00
James Goppert 8b7eae3b4a Merge branch 'maetugr-fix2' of https://github.com/MaEtUgR/Matrix into MaEtUgR-maetugr-fix2 2016-05-09 11:24:28 -04:00
James Goppert bd8420fcf6 Added example of assignment to already created object. 2016-05-09 11:12:06 -04:00
MaEtUgR b2eb4d13d8 Matrix.setCol off by one bug fixed
The Column Vector you are copying from, only has one Column and it is indexed by 0 not 1.
I also completed the unit test stub that would have found this bug.
2016-05-05 13:18:51 +02:00
Matthias Grob 65679fbcbb Features and fixes
* added the trace function for a SquareMatrix

* added Vector3.hat() and it's counterpart Dcm.vee()
for skewsymskew symmetric matrix operations in relation to the cross product
see https://en.wikipedia.org/wiki/Hat_operator

* Matrix::write_string produced runtime errors when I used it in PX4 posix simulation, i simplified it

* a Matrix3f is a SquareMatrix

* added tests for SquareMatrix.trace, Vector3.hat and Dcm.vee

* added a test for quaternion initialisation from array

* preventing buffer overflows in Matrix.write_string method
2016-04-28 15:16:36 -04:00
James Goppert 07fba8322a Fix for effective cpp. 2016-03-18 20:56:41 -04:00
James Goppert 711b57d2d4 Added unit function that returns normalized vector. 2016-03-15 18:09:48 -04:00
James Goppert 0e14e11183 Added support for attitude_estimator_q functions. 2016-03-15 06:35:13 -04:00
James Goppert 6c04605531 Added conversion for scalar to vector. 2016-02-26 06:10:09 -05:00
James Goppert 2d27cd79d3 Added scalar to matrix conversion. 2016-02-26 05:56:21 -05:00
James Goppert 6974f97b1c Added scalar const conversion operator. 2016-02-26 05:47:24 -05:00
James Goppert 7b969094cb Fix for scalar type. 2016-02-26 05:33:16 -05:00
James Goppert 3917ef1992 Merge branch 'master' of github.com:PX4/Matrix 2016-02-26 03:39:28 -05:00
James Goppert 15865897d5 Added pow. 2016-02-26 03:39:04 -05:00
James Goppert dd30028823 Merge pull request #14 from mcsauder/master
Matrix index correction to allow non-square matrices to evaluate properly.
2016-02-25 16:36:14 -05:00
mcsauder 46c83a8c18 Correct a few indexing copy/paste errors that likely previously only functioned properly on square matrices. 2016-02-25 18:51:28 -07:00
James Goppert 95e3d7d6ce Added set function. 2016-02-16 14:54:15 -05:00
James Goppert 5a01e6c939 Added slice function for matrix. 2016-02-16 12:22:08 -05:00
James Goppert 1ae114b3d2 Improved rk4 integration to allow longer time interval than 1 step. 2016-02-16 10:53:12 -05:00
James Goppert ce30542dba Fix output for unit test. 2016-01-25 13:54:13 -05:00
James Goppert 1778ac199c Fixed euler wrapping. 2016-01-25 13:40:51 -05:00
James Goppert a92d5c1338 Removed unneeded headers. 2016-01-24 02:44:25 -05:00
James Goppert e639a3612f Fix typo. 2016-01-24 02:30:54 -05:00
James Goppert d8e397c010 Merge pull request #10 from PX4/euler_fix
fix euler calculation
2016-01-24 01:52:40 -05:00
James Goppert 5aef810e7c Fixed euler angles. 2016-01-24 01:50:34 -05:00
James Goppert 6e6033a1af Merge branch 'master' into euler_fix 2016-01-24 00:41:12 -05:00
James Goppert b98ac75452 Formatting. 2016-01-24 00:39:59 -05:00
James Goppert ffbe58ca10 Added better roundtrip euler test. 2016-01-24 00:39:21 -05:00
James Goppert b9bfadb0cc Fix for travis. 2016-01-24 00:00:22 -05:00
James Goppert faee66273b Turned back on testing flag. 2016-01-23 23:58:43 -05:00
James Goppert 20a1f902b1 Merge branch 'master' into euler_fix
Conflicts:
	.travis.yml
	test/attitude.cpp
2016-01-23 23:56:35 -05:00
James Goppert cc2804d6a6 Merge pull request #13 from PX4/testing
Testing
2016-01-23 23:38:13 -05:00
James Goppert 0969b0ae56 Removed uncessary print. 2016-01-23 23:35:44 -05:00
James Goppert d761bd3721 Fixed formatting. Made traivs more verbose. 2016-01-23 23:33:25 -05:00
James Goppert 38211e1aff Fix testing mechanism. 2016-01-23 23:26:26 -05:00
Lorenz Meier 6009709986 Merge pull request #11 from PX4/dspal_fix
Added dspal_math.h for missing constants
2016-01-21 23:23:41 +01:00
Mark Charlebois 306f0ac25d Added dspal_math.h for missing constants
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-01-21 12:45:07 -08:00
Lorenz Meier 48a3288753 Fix QuRT build 2016-01-18 13:39:46 -08:00
James Goppert fa31c61f2c Fix for euler. 2016-01-14 15:24:37 -05:00
Roman Bapst a22a47fe15 fix euler calculation
Conflicts:
	matrix/Euler.hpp
2016-01-14 15:51:28 +01:00
Lorenz Meier 1d9d8e6f9b Use a slight ifdef hack to let things default to C++11 for most platforms 2016-01-12 12:14:53 +01:00
Lorenz Meier 187830164d Fix cast 2016-01-12 11:50:21 +01:00
James Goppert 67c8c8b331 Cast to float for isfinite. 2016-01-12 01:35:33 -06:00
James Goppert f1968f51d6 Fixed coverage issues. 2016-01-12 01:28:48 -06:00
James Goppert a90484362f Merge pull request #8 from PX4/cast_fix
added missing cast
2016-01-12 01:09:56 -06:00
Roman 4034c916c7 added missing cast 2016-01-12 07:51:52 +01:00
James Goppert cc800454d2 Formatting. 2016-01-11 22:05:34 -06:00
James Goppert 684a6b626d Merge branch 'quaternion'
Conflicts:
	test/attitude.cpp
2016-01-11 21:59:28 -06:00
James Goppert 0e48d2596c Merge pull request #6 from thomasgubler/pr1
scalar multiplication; std::cout support
2016-01-11 21:47:51 -06:00
Thomas Gubler 45e6012818 matrix scalar pre multiplication and general scalar multiplication for
quaternions
2015-12-26 13:15:39 +01:00
Thomas Gubler 99ac532746 remove unnecessary ; 2015-12-26 12:07:12 +01:00
Thomas Gubler d999923a35 support for std::cout 2015-12-26 12:07:12 +01:00
Roman cc1658db15 fixed wrong type conversion 2015-12-22 11:23:18 +01:00
Roman Bapst c3c6a0a9df fix euler calculation 2015-12-20 06:06:56 +01:00
Roman 10b395a782 added more quaternion methods 2015-12-19 09:47:03 +01:00
jgoppert 9cd6ac3dd9 Fixed coverage. 2015-11-14 09:04:38 -05:00
jgoppert dc0eb16880 Fixed integration test. 2015-11-14 09:01:09 -05:00
jgoppert f2c0669c0d Changed rk4 to use generic matrix interface. 2015-11-14 08:55:34 -05:00
jgoppert b9924820e1 Work on kalman filter interface. 2015-11-12 16:41:07 -05:00
jgoppert 0a110a1b02 Fixed integration test. 2015-11-12 15:15:31 -05:00
jgoppert aa3a086cda Work on rk4 interface. 2015-11-12 15:13:17 -05:00
jgoppert 7656385ea1 Changed rk4 signature. 2015-11-12 10:19:30 -05:00
jgoppert 606eb1dc2b Added attitude classes to README. 2015-11-12 10:09:54 -05:00
jgoppert a334cecfa7 Forced function instantiation for coverage testing. 2015-11-12 10:07:09 -05:00
jgoppert 410bbc4c71 Added more to README. 2015-11-12 09:51:11 -05:00
jgoppert c29c44b450 Added more testing to instantiate some missing templates. 2015-11-12 09:44:30 -05:00
James Goppert 6a351ac050 Merge pull request #1 from PX4/coverage_filter
Changed root dir for coverage.
2015-11-12 01:32:08 -05:00
jgoppert e724ae4078 Set include dir. 2015-11-12 01:29:47 -05:00
jgoppert 8054180e89 Changed root dir for coverage. 2015-11-12 01:27:27 -05:00
jgoppert 10b89a2594 Switching coverage upload mechanism. 2015-11-12 01:22:40 -05:00
jgoppert 787606b6b8 Formatting. 2015-11-11 23:33:26 -05:00
jgoppert 42f2e60b24 Added runge kutta integration. 2015-11-11 23:31:43 -05:00
jgoppert 2c7a375e3d Fixed kalman correct test. 2015-11-09 19:58:00 -05:00
jgoppert e972a0a111 Made kalman filter correction function usable. 2015-11-09 19:55:20 -05:00
jgoppert 222a97e73f Merge ../Firmware/src/lib/matrix 2015-11-08 12:08:52 -05:00
jgoppert 5c573b075f Fixes for nuttx. 2015-11-08 12:08:19 -05:00
jgoppert 400a9caa47 Merge ../Firmware/src/lib/matrix 2015-11-07 14:27:41 -05:00
jgoppert 9b995e19f3 Added vector2. 2015-11-07 14:27:12 -05:00
jgoppert 1f72309520 Added some docs. 2015-11-07 12:17:45 -05:00
jgoppert 835cdd2f91 README fix. 2015-11-07 12:03:10 -05:00
jgoppert 3a2c3bdae1 README formatting. 2015-11-07 12:00:21 -05:00
jgoppert 9884a4c423 Improved README. 2015-11-07 11:59:30 -05:00
jgoppert f621f68fe1 Changed license holder to development team. 2015-11-07 11:55:24 -05:00
jgoppert ace2751715 Badge fix. 2015-11-07 11:29:08 -05:00
Lorenz Meier f6e8cdd970 First attempt at enabling coveralls 2015-11-07 17:17:37 +01:00
jgoppert b9e1ccfe00 Merge branch 'master' of github.com:PX4/Matrix 2015-11-07 11:08:33 -05:00
jgoppert 1fb0f33eb4 Removed old references to matrix.hpp. 2015-11-07 11:08:17 -05:00
Lorenz Meier 4058e32f73 Fix include path 2015-11-07 17:06:07 +01:00
Lorenz Meier 222e42f934 Re-add convenience header 2015-11-07 09:43:28 +01:00
Lorenz Meier 6abd2f782a Re-add Matrix.hpp 2015-11-07 09:42:33 +01:00
Lorenz Meier 713aee154b Remove both versions of matrix / Matrix 2015-11-07 09:41:38 +01:00
jgoppert a2696fcee4 Fix for isfinite. 2015-11-06 21:09:34 -05:00
jgoppert 7abbdcd88f License fix. 2015-11-05 20:27:03 -05:00
jgoppert 32839006f3 Implemented vector 3 cross product. 2015-11-05 20:22:17 -05:00
jgoppert 5b5cfcfeca Added more vector ctors. 2015-11-05 19:37:31 -05:00
jgoppert 44768fad35 Added vector data ctor. 2015-11-05 19:32:28 -05:00
jgoppert cefe7b3e80 Cleaned up header includes. 2015-11-05 19:25:44 -05:00
jgoppert b06c557a2a Comment fix. 2015-11-05 18:16:07 -05:00
jgoppert c70994e6a5 Formatting. 2015-11-05 18:10:06 -05:00
jgoppert 4a6369cee5 More coverage testing. 2015-11-05 18:07:05 -05:00
jgoppert 550108cf1d More testing. 2015-11-05 17:29:57 -05:00
jgoppert 75399fb15e Cleanup of printing. 2015-11-05 17:13:03 -05:00
jgoppert 455cb58ebf New tests. 2015-11-05 17:03:22 -05:00
jgoppert 6ff42b7b31 Added some more vectors tests. 2015-11-05 16:59:59 -05:00
jgoppert 7136e5b7d1 More work on gimbal lock case. 2015-11-05 16:54:19 -05:00
jgoppert d01e0a1038 Formatting. 2015-11-05 15:44:54 -05:00
jgoppert 00a0b36836 Moved inverse outside of matrix definition. 2015-11-05 15:43:36 -05:00
jgoppert 5566b3dc77 expm testing and fixes. 2015-11-05 15:39:41 -05:00
jgoppert 5517532c90 Fixed coveralls build. 2015-11-05 13:37:14 -05:00
jgoppert 6aa8a72651 Renamed coverage option. 2015-11-05 13:34:49 -05:00
jgoppert 31821a44aa Fixed formatting script. 2015-11-05 13:33:35 -05:00
jgoppert 9af1604daa Formatting. 2015-11-05 12:45:53 -05:00
jgoppert 537c683d58 More cleanup. 2015-11-05 12:34:14 -05:00
jgoppert fd64e7e93a More testing and cleanup. 2015-11-05 12:28:39 -05:00
jgoppert 9d88b0d573 Fix for gcc 4.6 2015-11-05 11:29:18 -05:00
jgoppert bb6b375390 Travis fix. 2015-11-05 11:25:47 -05:00
jgoppert 5b0ea675c3 Fixed float in square matrix. 2015-11-05 11:23:54 -05:00
jgoppert cbe8b4ef6f Travis fix. 2015-11-05 11:21:48 -05:00
jgoppert b8dc262582 Formatting. 2015-11-05 11:18:33 -05:00
jgoppert 0062cbcbe2 Added more warnings, and fixed issues. 2015-11-05 11:17:54 -05:00
jgoppert 6ba15eeaa0 Formatting. 2015-11-05 10:51:53 -05:00
jgoppert 7c4b2c590e Update for travis. 2015-11-05 10:46:22 -05:00
jgoppert f7b1c63b86 Work on testing. 2015-11-05 10:44:21 -05:00
jgoppert a703c8169e Working on formatting. 2015-11-04 23:19:20 -05:00
jgoppert f23bed6823 Explicity disabled sudo. 2015-11-04 22:54:39 -05:00
jgoppert 3fc5ec9751 Tried apt addon. 2015-11-04 22:53:45 -05:00
jgoppert 04f24310b5 Added astyle install to travis. 2015-11-04 22:51:25 -05:00
jgoppert b818774f6a Work on format testing. 2015-11-04 22:48:13 -05:00
jgoppert eddc55827a More filter testing. 2015-11-04 20:58:56 -05:00
jgoppert 76cf91c5fd Work on filter. 2015-11-04 20:56:44 -05:00
jgoppert 52956e360a Added filtering test. 2015-11-04 20:43:22 -05:00
jgoppert b2e9e1e3c7 Added kalman filter. 2015-11-04 18:58:29 -05:00
jgoppert 7ec13f6282 Updated pdf. 2015-11-04 12:22:07 -05:00
jgoppert 18f80462b7 Got coverage working for templates. 2015-11-04 12:11:32 -05:00
jgoppert bf6de4b710 Updated travis. 2015-11-04 11:39:49 -05:00
jgoppert 9e37b99d76 Added local coverage tools. 2015-11-04 11:38:55 -05:00
jgoppert edc356d0db Added coverage flag. 2015-11-04 11:02:09 -05:00
jgoppert 4bf4611087 Work on coverage. 2015-11-04 10:54:46 -05:00
jgoppert abd0ef0143 Removed test files from coverage. 2015-11-04 03:39:35 -05:00
jgoppert 88def6b54e Made instantiation actual test program. 2015-11-04 03:37:33 -05:00
jgoppert 3477ff2adb Added coverage to build. 2015-11-04 03:29:01 -05:00
jgoppert 6458c0477e Working on coverage for templates. 2015-11-04 03:16:41 -05:00
jgoppert ea66d09a8e Added coverage source. 2015-11-04 03:11:45 -05:00
jgoppert 9b90f223a4 Updated token. 2015-11-04 02:51:42 -05:00
jgoppert ce719a0fe2 Added cov sources. 2015-11-04 02:29:07 -05:00
jgoppert 8f0448eb91 Coverage fix. 2015-11-04 01:58:48 -05:00
jgoppert 35edae200f Badge placement. 2015-11-04 01:54:14 -05:00
jgoppert edd23778ca Added coverage. 2015-11-04 01:52:19 -05:00
jgoppert b1ee027f64 Working on coverage. 2015-11-04 01:50:30 -05:00
jgoppert 12713105b8 Fixed quaternion unit test. 2015-11-04 00:48:59 -05:00
jgoppert c84e934909 Updated vector class. 2015-11-04 00:37:00 -05:00
jgoppert 89851a85c0 Added badge. 2015-11-03 20:31:47 -05:00
jgoppert 33e0272447 Travis fix. 2015-11-03 20:31:10 -05:00
jgoppert 7470134559 Fixed filename. 2015-11-03 20:29:34 -05:00
jgoppert ad03429ae9 Added readme. 2015-11-03 20:28:48 -05:00
jgoppert 49035ed6a9 Added mode lines for vi. 2015-11-03 20:26:42 -05:00
jgoppert b842f8d8a5 Added travis. 2015-11-03 20:17:34 -05:00
jgoppert 5369904d27 Fixed default. 2015-11-03 19:50:09 -05:00
jgoppert a36ff9f1e5 Formatting and added Scalar. 2015-11-03 19:38:31 -05:00
jgoppert 76e86cf937 Initial commit. 2015-11-03 14:46:54 -05:00
639 changed files with 23469 additions and 6106 deletions
+2
View File
@@ -59,6 +59,7 @@ pipeline {
"holybro_durandal-v1_default",
"holybro_kakutef7_default",
"holybro_pix32v5_default",
"matek_h743-slim",
"modalai_fc-v1_default",
"modalai_fc-v1_rtps",
"modalai_fc-v2_default",
@@ -79,6 +80,7 @@ pipeline {
"nxp_ucans32k146_canbootloader",
"nxp_ucans32k146_default",
"omnibus_f4sd_default",
"raspberrypi_pico_default",
"px4_fmu-v2_default",
"px4_fmu-v2_fixedwing",
"px4_fmu-v2_multicopter",
+4 -4
View File
@@ -18,8 +18,8 @@ pipeline {
}
steps {
checkoutSCM()
sh 'make cubepilot_cubeorange_bootloader'
sh 'make cubepilot_cubeorange_test'
sh 'make cubepilot_cubeorange_test bootloader_elf'
sh 'ccache -s'
stash includes: 'build/*/*.elf, platforms/nuttx/Debug/*, Tools/HIL/*.py', name: 'cubepilot_cubeorange_test'
}
@@ -39,7 +39,7 @@ pipeline {
sh 'export'
sh 'find /dev/serial'
unstash 'cubepilot_cubeorange_test'
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cubepilot_cubeorange_test/cubepilot_cubeorange_bootloader.elf'
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cubepilot_cubeorange_bootloader/cubepilot_cubeorange_bootloader.elf'
// flash board and watch bootup
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cubepilot_cubeorange_test/cubepilot_cubeorange_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600'
}
@@ -89,8 +89,8 @@ pipeline {
}
steps {
checkoutSCM()
sh 'make cuav_x7pro_bootloader'
sh 'make cuav_x7pro_test'
sh 'make cuav_x7pro_test bootloader_elf'
sh 'ccache -s'
stash includes: 'build/*/*.elf, platforms/nuttx/Debug/*, Tools/HIL/*.py', name: 'cuav_x7pro_test'
}
@@ -110,7 +110,7 @@ pipeline {
sh 'export'
sh 'find /dev/serial'
unstash 'cuav_x7pro_test'
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cuav_x7pro_test/cuav_x7pro_bootloader.elf'
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cuav_x7pro_bootloader/cuav_x7pro_bootloader.elf'
// flash board and watch bootup
sh './platforms/nuttx/Debug/upload_jlink_gdb.sh build/cuav_x7pro_test/cuav_x7pro_test.elf && ./Tools/HIL/monitor_firmware_upload.py --device `find /dev/serial -name *usb-*` --baudrate 57600'
}
+3 -1
View File
@@ -34,6 +34,7 @@ jobs:
holybro_durandal-v1,
holybro_kakutef7,
holybro_pix32v5,
matek_h743-slim,
modalai_fc-v1,
modalai_fc-v2,
mro_ctrl-zero-f7,
@@ -48,6 +49,7 @@ jobs:
nxp_fmurt1062-v1,
nxp_ucans32k146,
omnibus_f4sd,
raspberrypi_pico,
px4_fmu-v2,
px4_fmu-v3,
px4_fmu-v4,
@@ -82,7 +84,7 @@ jobs:
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
echo "max_size = 120M" >> ~/.ccache/ccache.conf
echo "hash_dir = false" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
+6 -10
View File
@@ -1,11 +1,11 @@
[submodule "mavlink/include/mavlink/v2.0"]
path = mavlink/include/mavlink/v2.0
url = https://github.com/mavlink/c_library_v2.git
[submodule "src/modules/mavlink/mavlink"]
path = src/modules/mavlink/mavlink
url = https://github.com/mavlink/mavlink.git
branch = master
[submodule "src/drivers/uavcan/libuavcan"]
path = src/drivers/uavcan/libuavcan
url = https://github.com/PX4/libuavcan.git
branch = px4
url = https://github.com/dronecan/libuavcan.git
branch = main
[submodule "Tools/jMAVSim"]
path = Tools/jMAVSim
url = https://github.com/PX4/jMAVSim.git
@@ -14,10 +14,6 @@
path = Tools/sitl_gazebo
url = https://github.com/PX4/PX4-SITL_gazebo.git
branch = master
[submodule "src/lib/matrix"]
path = src/lib/matrix
url = https://github.com/PX4/PX4-Matrix.git
branch = master
[submodule "src/drivers/gps/devices"]
path = src/drivers/gps/devices
url = https://github.com/PX4/PX4-GPSDrivers.git
@@ -65,7 +61,7 @@
url = https://github.com/mavlink/libevents.git
[submodule "Tools/simulation-ignition"]
path = Tools/simulation-ignition
url = https://github.com/Auterion/px4-simulation-ignition.git
url = https://github.com/PX4/px4-simulation-ignition.git
[submodule "src/lib/crypto/libtomcrypt"]
path = src/lib/crypto/libtomcrypt
url = https://github.com/PX4/libtomcrypt.git
+10
View File
@@ -186,6 +186,11 @@ CONFIG:
buildType: MinSizeRel
settings:
CONFIG: holybro_durandal-v1_default
matek_h743-slim_default:
short: matek_h743-slim
buildType: MinSizeRel
settings:
CONFIG: matek_h743-slim_default
modalai_fc-v1_default:
short: modalai_fc-v1
buildType: MinSizeRel
@@ -221,3 +226,8 @@ CONFIG:
buildType: MinSizeRel
settings:
CONFIG: nxp_fmuk66-v3_default
raspberrypi_pico_default:
short: raspberrypi_pico
buildType: MinSizeRel
settings:
CONFIG: raspberrypi_pico_default
+2 -2
View File
@@ -14,7 +14,6 @@
"C_Cpp.workspaceParsingPriority": "low",
"cmake.buildBeforeRun": true,
"cmake.buildDirectory": "${workspaceFolder}/build/${variant:CONFIG}",
"cmake.buildTask": true,
"cmake.configureOnOpen": true,
"cmake.ctest.parallelJobs": 1,
"cmake.skipConfigureIfCachePresent": true,
@@ -136,5 +135,6 @@
"workbench.settings.enableNaturalLanguageSearch": false,
"yaml.schemas": {
"${workspaceFolder}/validation/module_schema.yaml": "${workspaceFolder}/src/modules/*/module.yaml"
}
},
"cortex-debug.openocdPath": "${env:PICO_SDK_PATH}/../openocd/src/openocd" // Added for rp2040
}
+3 -3
View File
@@ -40,7 +40,7 @@
# * Common functions should be included in px_base.cmake.
#
# * OS/ board specific fucntions should be include in
# px_impl_${PX4_PLATFORM}.cmake or px4_impl_${PX4_PLATFORM}_${PX4_BOARD}.cmake.
# px_impl_${PX4_PLATFORM}.cmake
#
# Formatting
# ---------------------------------------------------------------------------
@@ -101,8 +101,8 @@
cmake_minimum_required(VERSION 3.2 FATAL_ERROR)
set(PX4_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
set(PX4_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}")
set(PX4_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}" CACHE FILEPATH "PX4 source directory" FORCE)
set(PX4_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}" CACHE FILEPATH "PX4 binary directory" FORCE)
list(APPEND CMAKE_MODULE_PATH ${PX4_SOURCE_DIR}/cmake)
include(px4_parse_function_args)
+2 -5
View File
@@ -63,13 +63,10 @@ menu "Toolchain"
help
relative path to the ROMFS root directory
config BOARD_BUILD_BOOTLOADER
bool "Enable bootloader"
help
flag to enable building and including the bootloader config
config BOARD_IO
string "IO board name"
default "px4_io-v2_default"
depends on DRIVERS_PX4IO
help
name of IO board to be built and included in the ROMFS (requires a valid ROMFSROOT)
+18
View File
@@ -309,6 +309,24 @@ uorb_graphs:
@$(MAKE) --no-print-directory px4_fmu-v5_default uorb_graph
@$(MAKE) --no-print-directory px4_sitl_default uorb_graph
px4io_update: px4_io-v2_default cubepilot_io-v2_default
# px4_io-v2_default
cp build/px4_io-v2_default/px4_io-v2_default.bin boards/holybro/durandal-v1/extras/px4_io-v2_default.bin
cp build/px4_io-v2_default/px4_io-v2_default.bin boards/holybro/pix32v5/extras/px4_io-v2_default.bin
cp build/px4_io-v2_default/px4_io-v2_default.bin boards/mro/x21-777/extras/px4_io-v2_default.bin
cp build/px4_io-v2_default/px4_io-v2_default.bin boards/px4/fmu-v2/extras/px4_io-v2_default.bin
cp build/px4_io-v2_default/px4_io-v2_default.bin boards/px4/fmu-v3/extras/px4_io-v2_default.bin
cp build/px4_io-v2_default/px4_io-v2_default.bin boards/px4/fmu-v4pro/extras/px4_io-v2_default.bin
cp build/px4_io-v2_default/px4_io-v2_default.bin boards/px4/fmu-v5/extras/px4_io-v2_default.bin
cp build/px4_io-v2_default/px4_io-v2_default.bin boards/px4/fmu-v5x/extras/px4_io-v2_default.bin
cp build/px4_io-v2_default/px4_io-v2_default.bin boards/px4/fmu-v6x/extras/px4_io-v2_default.bin
# cubepilot_io-v2_default
cp build/cubepilot_io-v2_default/cubepilot_io-v2_default.bin boards/cubepilot/cubeorange/extras/cubepilot_io-v2_default.bin
cp build/cubepilot_io-v2_default/cubepilot_io-v2_default.bin boards/cubepilot/cubeyellow/extras/cubepilot_io-v2_default.bin
git status
bootloaders_update: cuav_nora_bootloader cuav_x7pro_bootloader cubepilot_cubeorange_bootloader holybro_durandal-v1_bootloader matek_h743-slim_bootloader modalai_fc-v2_bootloader mro_ctrl-zero-h7_bootloader mro_ctrl-zero-h7-oem_bootloader mro_pixracerpro_bootloader px4_fmu-v6u_bootloader px4_fmu-v6x_bootloader
git status
.PHONY: coverity_scan
+49 -34
View File
@@ -143,38 +143,14 @@ add_custom_command(
COMMENT "ROMFS: copying, generating airframes"
)
if(EXISTS ${PX4_BOARD_DIR}/extras/${PX4_BOARD_VENDOR}_${PX4_BOARD_MODEL}_bootloader.bin)
set(BOARD_FIRMWARE_BIN "${PX4_BOARD_VENDOR}_${PX4_BOARD_MODEL}_bootloader.bin")
configure_file(${PX4_SOURCE_DIR}/platforms/nuttx/init/rc.board_bootloader_upgrade.in ${romfs_gen_root_dir}/init.d/rc.board_bootloader_upgrade @ONLY)
endif()
# copy extras into ROMFS
set(extras_dependencies)
# copy px4io binary if configured
if(config_io_board)
list(APPEND extras_dependencies
copy_px4io_bin
${fw_io_bin}
)
file(RELATIVE_PATH iofw_file_relative ${PX4_SOURCE_DIR} ${fw_io_bin})
message(STATUS "ROMFS: Adding ${iofw_file_relative} -> /etc/extras/${config_io_board}.bin")
endif()
# board bootloader (built or included)
if(TARGET copy_bootloader_bin)
if(board_bootloader_firmware)
file(RELATIVE_PATH bl_file_relative ${PX4_SOURCE_DIR} ${board_bootloader_firmware})
message(STATUS "ROMFS: Adding ${bl_file_relative} -> /etc/extras/bootloader.bin")
else()
file(RELATIVE_PATH bl_file_relative ${PX4_SOURCE_DIR} ${bootloader_bin})
message(STATUS "ROMFS: Adding ${bl_file_relative} -> /etc/extras/bootloader.bin")
endif()
list(APPEND extras_dependencies
copy_bootloader_bin
${bootloader_bin}
)
endif()
# optional board architecture defaults
set(board_arch_rc_file "rc.board_arch_defaults")
if(EXISTS "${PX4_SOURCE_DIR}/platforms/${PX4_PLATFORM}/init/${CONFIG_ARCH_CHIP}/${board_arch_rc_file}")
@@ -199,6 +175,7 @@ if(EXISTS "${PX4_SOURCE_DIR}/platforms/${PX4_PLATFORM}/init/${CONFIG_ARCH_CHIP}/
endif()
# board custom init files
set(OPTIONAL_BOARD_RC)
list(APPEND OPTIONAL_BOARD_RC
rc.board_defaults
@@ -233,21 +210,59 @@ foreach(board_rc_file ${OPTIONAL_BOARD_RC})
endforeach()
# board extras
set(OPTIONAL_BOARD_EXTRAS)
file(GLOB OPTIONAL_BOARD_EXTRAS ${PX4_BOARD_DIR}/extras/*)
foreach(board_extra_file ${OPTIONAL_BOARD_EXTRAS})
if(EXISTS "${board_extra_file}")
file(RELATIVE_PATH extra_file_base_name ${PX4_BOARD_DIR}/extras/ ${board_extra_file})
file(RELATIVE_PATH extra_file_relative_source ${PX4_SOURCE_DIR} ${board_extra_file})
message(STATUS "ROMFS: Adding ${extra_file_relative_source} -> /etc/extras/${extra_file_base_name}")
add_custom_command(
OUTPUT
${romfs_gen_root_dir}/extras/${extra_file_base_name}
${extra_file_base_name}.stamp
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${PX4_BOARD_DIR}/extras/${extra_file_base_name} ${romfs_gen_root_dir}/extras/${extra_file_base_name}
COMMAND ${CMAKE_COMMAND} -E touch ${extra_file_base_name}.stamp
DEPENDS
${board_extra_file}
romfs_copy.stamp
COMMENT "ROMFS: copying ${board_extra_file}"
)
list(APPEND extras_dependencies
${extra_file_base_name}.stamp
)
endif()
endforeach()
if(config_uavcan_peripheral_firmware)
include(ExternalProject)
foreach(uavcan_peripheral_config ${config_uavcan_peripheral_firmware})
# include the px4io binary in ROMFS
# include the UAVCAN peripheral binaries in ROMFS
message(STATUS "ROMFS: Adding UAVCAN peripheral ${uavcan_peripheral_config} -> /etc/uavcan/fw/")
# ExternalProject_Add() with GIT_SUBMODULES "" initializes no submodules.
cmake_policy(SET CMP0097 NEW)
include(ExternalProject)
ExternalProject_Add(build_${uavcan_peripheral_config}
SOURCE_DIR ${CMAKE_SOURCE_DIR}
DOWNLOAD_COMMAND ""
UPDATE_COMMAND ""
GIT_REPOSITORY ${CMAKE_SOURCE_DIR}
GIT_TAG ${PX4_GIT_TAG}
GIT_SUBMODULES ""
DOWNLOAD_NO_PROGRESS true
CMAKE_ARGS -DCONFIG=${uavcan_peripheral_config}
INSTALL_COMMAND ""
USES_TERMINAL_BUILD true
DEPENDS git_nuttx git_nuttx_apps
BUILD_ALWAYS 1
)
+3
View File
@@ -144,6 +144,8 @@ param set-default SENS_MAG_MODE 0
param set-default IMU_GYRO_FFT_EN 1
param set-default -s MC_AT_EN 1
# By default log from boot until first disarm.
param set-default SDLOG_MODE 1
# enable default, estimator replay and vision/avoidance logging profiles
@@ -217,6 +219,7 @@ load_mon start
battery_simulator start
tone_alarm start
rc_update start
manual_control start
sensors start
commander start
navigator start
+5 -1
View File
@@ -73,7 +73,11 @@ mc_rate_control start
# Start Multicopter Attitude Controller.
#
mc_att_control start
mc_autotune_attitude_control start
if param greater -s MC_AT_EN 0
then
mc_autotune_attitude_control start
fi
#
# Start Multicopter Position Controller.
+5 -1
View File
@@ -24,7 +24,11 @@ mc_att_control start vtol
flight_mode_manager start
mc_pos_control start vtol
mc_hover_thrust_estimator start
mc_autotune_attitude_control start
if param greater -s MC_AT_EN 0
then
mc_autotune_attitude_control start
fi
fw_att_control start vtol
fw_pos_control_l1 start vtol
+6 -13
View File
@@ -325,6 +325,7 @@ else
# start before commander
#
rc_update start
manual_control start
#
# Sensors System (start before Commander so Preflight checks are properly run).
@@ -506,21 +507,13 @@ else
. ${R}etc/init.d/rc.autostart.post
fi
#
# Bootloader upgrade
#
if param compare -s SYS_BL_UPDATE 1
set BOARD_BOOTLOADER_UPGRADE ${R}etc/init.d/rc.board_bootloader_upgrade
if [ -f $BOARD_BOOTLOADER_UPGRADE ]
then
if [ -f "/etc/extras/bootloader.bin" ]
then
param set SYS_BL_UPDATE 0
param save
echo "bootloader update..."
bl_update "/etc/extras/bootloader.bin"
echo "bootloader update done, rebooting"
reboot
fi
sh $BOARD_BOOTLOADER_UPGRADE
fi
unset BOARD_BOOTLOADER_UPGRADE
#
# End of autostart.
+1 -1
View File
@@ -17,10 +17,10 @@ exec find boards msg src platforms test \
-path src/drivers/uavcannode_gps_demo/libcanard -prune -o \
-path src/lib/crypto/monocypher -prune -o \
-path src/lib/events/libevents -prune -o \
-path src/lib/matrix -prune -o \
-path src/lib/parameters/uthash -prune -o \
-path src/modules/ekf2/EKF -prune -o \
-path src/modules/gyro_fft/CMSIS_5 -prune -o \
-path src/modules/mavlink/mavlink -prune -o \
-path src/modules/micrortps_bridge/micro-CDR -prune -o \
-path src/modules/micrortps_bridge/microRTPS_client -prune -o \
-path test/mavsdk_tests/catch2 -prune -o \
+2
View File
@@ -9,6 +9,7 @@ if [[ -f $1"/.git" || -d $1"/.git" ]]; then
if [ "$CI" == "true" ] || [ -n "${VSCODE_PID+set}" ]; then
git submodule --quiet sync --recursive -- $1
git submodule --quiet update --init --recursive --jobs=8 -- $1 || true
git submodule --quiet sync --recursive -- $1
git submodule --quiet update --init --recursive --jobs=8 -- $1
exit 0
fi
@@ -51,6 +52,7 @@ if [[ -f $1"/.git" || -d $1"/.git" ]]; then
else
git submodule --quiet sync --recursive --quiet -- $1
git submodule --quiet update --init --recursive -- $1 || true
git submodule --quiet sync --recursive --quiet -- $1
git submodule --quiet update --init --recursive -- $1
fi
+2 -2
View File
@@ -69,7 +69,7 @@ num_vehicles=${NUM_VEHICLES:=3}
world=${WORLD:=empty}
target=${TARGET:=px4_sitl_default}
vehicle_model=${VEHICLE_MODEL:="iris"}
export PX4_SIM_MODEL=${vehicle_model}${LABEL}
export PX4_SIM_MODEL=${vehicle_model}
echo ${SCRIPT}
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
@@ -126,7 +126,7 @@ else
m=0
while [ $m -lt ${target_number} ]; do
export PX4_SIM_MODEL=${target_vehicle}${LABEL}
export PX4_SIM_MODEL=${target_vehicle}
spawn_model ${target_vehicle}${LABEL} $n $target_x $target_y
m=$(($m + 1))
n=$(($n + 1))
+5 -4
View File
@@ -115,10 +115,11 @@ def main(kconfig_file, config1, config2):
sym_name = match.group(1)
kconf.syms[sym_name].unset_value()
for default, cond in kconf.syms[sym_name].orig_defaults:
if(cond.str_value == 'y'):
# Default is y, our diff is unset thus we've set it to no
kconf.syms[sym_name].set_value(0)
if kconf.syms[sym_name].type is BOOL:
for default, cond in kconf.syms[sym_name].orig_defaults:
if(cond.str_value == 'y'):
# Default is y, our diff is unset thus we've set it to no
kconf.syms[sym_name].set_value(0)
f.close()
+2 -2
View File
@@ -137,8 +137,8 @@ class ModuleDocumentation(object):
"\"board-specific bus (default=all) (external SPI: n-th bus (default=1))\"", 'true'])
if self._is_bool_true(args[1]):
self._handle_usage_param_int(['\'c\'', '1', '1', '10',
"\"chip-select index (for external SPI)\"", 'true'])
self._handle_usage_param_int(['\'c\'', '-1', '0', '31',
"\"chip-select pin (for internal SPI) or index (for external SPI)\"", 'true'])
self._handle_usage_param_int(['\'m\'', '-1', '0', '3', "\"SPI mode\"", 'true'])
self._handle_usage_param_int(['\'f\'', '-1', '0', '1000000', "\"bus frequency in kHz\"", 'true'])
+2
View File
@@ -3,9 +3,11 @@ argparse>=1.2
cerberus
coverage
empy>=3.3
future
jinja2>=2.8
jsonschema
kconfiglib
lxml
matplotlib>=3.0.*
numpy>=1.13
nunavut>=1.1.0
+3
View File
@@ -86,6 +86,8 @@ sudo DEBIAN_FRONTEND=noninteractive apt-get -y --quiet --no-install-recommends i
gdb \
git \
lcov \
libxml2-dev \
libxml2-utils \
make \
ninja-build \
python3 \
@@ -141,6 +143,7 @@ if [[ $INSTALL_NUTTX == "true" ]]; then
libisl-dev \
libmpc-dev \
libmpfr-dev \
libncurses5 \
libncurses5-dev \
libncursesw5-dev \
libtool \
@@ -58,6 +58,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
@@ -25,7 +25,7 @@
# CONFIG_STM32_CCMEXCLUDE is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/airmind/mindpx-v2/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -92,7 +92,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -7,7 +7,7 @@
#
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/ark/can-flow/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -40,13 +40,6 @@ CONFIG_FS_PROCFS_MAX_TASKS=0
CONFIG_MM_REGIONS=2
CONFIG_NAME_MAX=0
CONFIG_NUNGET_CHARS=0
CONFIG_NXFONTS_DISABLE_16BPP=y
CONFIG_NXFONTS_DISABLE_1BPP=y
CONFIG_NXFONTS_DISABLE_24BPP=y
CONFIG_NXFONTS_DISABLE_2BPP=y
CONFIG_NXFONTS_DISABLE_32BPP=y
CONFIG_NXFONTS_DISABLE_4BPP=y
CONFIG_NXFONTS_DISABLE_8BPP=y
CONFIG_PREALLOC_TIMERS=0
CONFIG_PTHREAD_STACK_MIN=512
CONFIG_RAM_SIZE=262144
@@ -124,10 +124,6 @@
#define GPIO_CAN1_RX GPIO_CAN1_RX_2
#define GPIO_CAN1_TX GPIO_CAN1_TX_2
/* I2C */
#define GPIO_I2C1_SCL GPIO_I2C1_SCL_1
#define GPIO_I2C1_SDA GPIO_I2C1_SDA_1
/* SPI */
#define GPIO_SPI1_MISO GPIO_SPI1_MISO_1
#define GPIO_SPI1_MOSI GPIO_SPI1_MOSI_1
@@ -21,7 +21,7 @@
# CONFIG_STM32_DMACAPABLE is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/ark/can-flow/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -57,8 +57,6 @@ CONFIG_GRAN=y
CONFIG_GRAN_INTR=y
CONFIG_HAVE_CXX=y
CONFIG_HAVE_CXXINITIALIZE=y
CONFIG_I2C=y
CONFIG_I2C_RESET=y
CONFIG_IDLETHREAD_STACKSIZE=750
CONFIG_LIBC_FLOATINGPOINT=y
CONFIG_LIBC_LONG_LONG=y
@@ -72,7 +70,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -127,7 +124,6 @@ CONFIG_STM32_DMA1=y
CONFIG_STM32_DMA2=y
CONFIG_STM32_FLASH_PREFETCH=y
CONFIG_STM32_FLOWCONTROL_BROKEN=y
CONFIG_STM32_I2C1=y
CONFIG_STM32_JTAG_SW_ENABLE=y
CONFIG_STM32_PWR=y
CONFIG_STM32_RTC=y
-1
View File
@@ -49,7 +49,6 @@ if("${PX4_BOARD_LABEL}" STREQUAL "canbootloader")
else()
add_library(drivers_board
can.c
i2c.cpp
init.c
led.c
spi.cpp
@@ -7,7 +7,7 @@
#
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/ark/can-gps/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -40,13 +40,6 @@ CONFIG_FS_PROCFS_MAX_TASKS=0
CONFIG_MM_REGIONS=2
CONFIG_NAME_MAX=0
CONFIG_NUNGET_CHARS=0
CONFIG_NXFONTS_DISABLE_16BPP=y
CONFIG_NXFONTS_DISABLE_1BPP=y
CONFIG_NXFONTS_DISABLE_24BPP=y
CONFIG_NXFONTS_DISABLE_2BPP=y
CONFIG_NXFONTS_DISABLE_32BPP=y
CONFIG_NXFONTS_DISABLE_4BPP=y
CONFIG_NXFONTS_DISABLE_8BPP=y
CONFIG_PREALLOC_TIMERS=0
CONFIG_PTHREAD_STACK_MIN=512
CONFIG_RAM_SIZE=262144
@@ -21,7 +21,7 @@
# CONFIG_STM32_DMACAPABLE is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/ark/can-gps/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -72,7 +72,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
+1 -2
View File
@@ -1,6 +1,5 @@
CONFIG_BOARD_CONSTRAINED_FLASH=n
CONFIG_BOARD_NO_HELP=n
CONFIG_BOARD_CONSTRAINED_MEMORY=y
CONFIG_SYSTEMCMDS_TOP=y
CONFIG_SYSTEMCMDS_REBOOT=y
CONFIG_SYSTEMCMDS_TOP=y
CONFIG_SYSTEMCMDS_UORB=y
@@ -7,7 +7,7 @@
#
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/ark/can-rtk-gps/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -40,13 +40,6 @@ CONFIG_FS_PROCFS_MAX_TASKS=0
CONFIG_MM_REGIONS=2
CONFIG_NAME_MAX=0
CONFIG_NUNGET_CHARS=0
CONFIG_NXFONTS_DISABLE_16BPP=y
CONFIG_NXFONTS_DISABLE_1BPP=y
CONFIG_NXFONTS_DISABLE_24BPP=y
CONFIG_NXFONTS_DISABLE_2BPP=y
CONFIG_NXFONTS_DISABLE_32BPP=y
CONFIG_NXFONTS_DISABLE_4BPP=y
CONFIG_NXFONTS_DISABLE_8BPP=y
CONFIG_PREALLOC_TIMERS=0
CONFIG_PTHREAD_STACK_MIN=512
CONFIG_RAM_SIZE=262144
@@ -21,7 +21,7 @@
# CONFIG_STM32_DMACAPABLE is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/ark/can-rtk-gps/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -72,7 +72,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
+1
View File
@@ -17,6 +17,7 @@ CONFIG_MODULES_LAND_DETECTOR=y
CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
@@ -25,7 +25,7 @@
# CONFIG_NSH_DISABLE_TIME is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/atl/mantis-edu/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32f7"
@@ -97,7 +97,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
+2 -1
View File
@@ -44,8 +44,8 @@ CONFIG_MODULES_EKF2=y
CONFIG_MODULES_ESC_BATTERY=y
CONFIG_MODULES_EVENTS=y
CONFIG_MODULES_FLIGHT_MODE_MANAGER=y
CONFIG_MODULES_FW_AUTOTUNE_ATTITUDE_CONTROL=y
CONFIG_MODULES_FW_ATT_CONTROL=y
CONFIG_MODULES_FW_AUTOTUNE_ATTITUDE_CONTROL=y
CONFIG_MODULES_FW_POS_CONTROL_L1=y
CONFIG_MODULES_GYRO_CALIBRATION=y
CONFIG_MODULES_GYRO_FFT=y
@@ -55,6 +55,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
+1 -2
View File
@@ -37,7 +37,7 @@
# CONFIG_NSH_DISABLE_XD is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/av/x-v1/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32f7"
@@ -123,7 +123,6 @@ CONFIG_NET_UDP=y
CONFIG_NET_UDP_CHECKSUMS=y
CONFIG_NET_UDP_WRITE_BUFFERS=y
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
+1
View File
@@ -39,6 +39,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
@@ -48,11 +48,16 @@
// I2C
#define CONFIG_I2C 1
#define PX4_NUMBER_I2C_BUSES 2
#define PX4_I2C_OBDEV_MPU9250 0x68
// SPI
#define CONFIG_SPI 1
// ADC channels:
#define ADC_CHANNELS (1 << 5)
#define BOARD_ADC_POS_REF_V (1.8f)
+4
View File
@@ -35,4 +35,8 @@
#include <drivers/drv_sensor.h>
constexpr px4_spi_bus_t px4_spi_buses[SPI_BUS_MAX_BUS_ITEMS] = {
initSPIBus(1, {
initSPIDevice(DRV_DEVTYPE_UNUSED, 1), // spidev1.1
initSPIDevice(DRV_DEVTYPE_UNUSED, 2), // spidev1.2
}),
};
@@ -21,6 +21,7 @@ CONFIG_MODULES_LAND_DETECTOR=y
CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_HOVER_THRUST_ESTIMATOR=y
@@ -25,7 +25,7 @@
# CONFIG_STM32_CCMEXCLUDE is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/bitcraze/crazyflie/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -88,7 +88,6 @@ CONFIG_MTD_AT24XX=y
CONFIG_MTD_BYTE_WRITE=y
CONFIG_MTD_PARTITION=y
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -21,6 +21,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_HOVER_THRUST_ESTIMATOR=y
@@ -24,7 +24,7 @@
# CONFIG_STM32_CCMEXCLUDE is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/bitcraze/crazyflie21/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -86,7 +86,6 @@ CONFIG_MTD_AT24XX=y
CONFIG_MTD_BYTE_WRITE=y
CONFIG_MTD_PARTITION=y
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -7,7 +7,7 @@
#
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cuav/can-gps-v1/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -40,13 +40,6 @@ CONFIG_FS_PROCFS_MAX_TASKS=0
CONFIG_MM_REGIONS=2
CONFIG_NAME_MAX=0
CONFIG_NUNGET_CHARS=0
CONFIG_NXFONTS_DISABLE_16BPP=y
CONFIG_NXFONTS_DISABLE_1BPP=y
CONFIG_NXFONTS_DISABLE_24BPP=y
CONFIG_NXFONTS_DISABLE_2BPP=y
CONFIG_NXFONTS_DISABLE_32BPP=y
CONFIG_NXFONTS_DISABLE_4BPP=y
CONFIG_NXFONTS_DISABLE_8BPP=y
CONFIG_PREALLOC_TIMERS=0
CONFIG_PTHREAD_STACK_MIN=512
CONFIG_RAM_SIZE=262144
@@ -21,7 +21,7 @@
# CONFIG_STM32_DMACAPABLE is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cuav/can-gps-v1/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -72,7 +72,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
+1 -1
View File
@@ -1,6 +1,5 @@
CONFIG_BOARD_TOOLCHAIN="arm-none-eabi"
CONFIG_BOARD_ARCHITECTURE="cortex-m7"
CONFIG_BOARD_BUILD_BOOTLOADER=y
CONFIG_BOARD_SERIAL_GPS1="/dev/ttyS0"
CONFIG_BOARD_SERIAL_GPS2="/dev/ttyS2"
CONFIG_BOARD_SERIAL_TEL1="/dev/ttyS1"
@@ -63,6 +62,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
Binary file not shown.
@@ -11,7 +11,7 @@
# CONFIG_STM32H7_SYSCFG is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cuav/nora/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32h7"
+1 -3
View File
@@ -24,7 +24,7 @@
# CONFIG_NSH_DISABLE_TIME is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cuav/nora/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32h7"
@@ -98,7 +98,6 @@ CONFIG_MTD_PROGMEM=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -190,7 +189,6 @@ CONFIG_STM32H7_SPI6=y
CONFIG_STM32H7_SPI6_DMA=y
CONFIG_STM32H7_SPI6_DMA_BUFFER=1024
CONFIG_STM32H7_SPI_DMA=y
CONFIG_STM32H7_SPI_DMATHRESHOLD=8
CONFIG_STM32H7_TIM12=y
CONFIG_STM32H7_TIM15=y
CONFIG_STM32H7_TIM1=y
+1 -1
View File
@@ -1,6 +1,5 @@
CONFIG_BOARD_TOOLCHAIN="arm-none-eabi"
CONFIG_BOARD_ARCHITECTURE="cortex-m7"
CONFIG_BOARD_BUILD_BOOTLOADER=y
CONFIG_BOARD_SERIAL_GPS1="/dev/ttyS0"
CONFIG_BOARD_SERIAL_GPS2="/dev/ttyS2"
CONFIG_BOARD_SERIAL_TEL1="/dev/ttyS1"
@@ -64,6 +63,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
Binary file not shown.
@@ -11,7 +11,7 @@
# CONFIG_STM32H7_SYSCFG is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cuav/x7pro/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32h7"
+1 -3
View File
@@ -24,7 +24,7 @@
# CONFIG_NSH_DISABLE_TIME is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cuav/x7pro/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32h7"
@@ -98,7 +98,6 @@ CONFIG_MTD_PROGMEM=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -190,7 +189,6 @@ CONFIG_STM32H7_SPI6=y
CONFIG_STM32H7_SPI6_DMA=y
CONFIG_STM32H7_SPI6_DMA_BUFFER=1024
CONFIG_STM32H7_SPI_DMA=y
CONFIG_STM32H7_SPI_DMATHRESHOLD=8
CONFIG_STM32H7_TIM12=y
CONFIG_STM32H7_TIM15=y
CONFIG_STM32H7_TIM1=y
+1 -1
View File
@@ -1,6 +1,5 @@
CONFIG_BOARD_TOOLCHAIN="arm-none-eabi"
CONFIG_BOARD_ARCHITECTURE="cortex-m7"
CONFIG_BOARD_BUILD_BOOTLOADER=y
CONFIG_BOARD_IO="cubepilot_io-v2_default"
CONFIG_BOARD_SERIAL_GPS1="/dev/ttyS2"
CONFIG_BOARD_SERIAL_GPS2="/dev/ttyS5"
@@ -59,6 +58,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
Binary file not shown.
@@ -11,7 +11,7 @@
# CONFIG_STM32H7_SYSCFG is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cubepilot/cubeorange/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32h7"
@@ -25,7 +25,7 @@
# CONFIG_NSH_DISABLE_TIME is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cubepilot/cubeorange/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32h7"
@@ -99,7 +99,6 @@ CONFIG_MTD_PROGMEM=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -184,7 +183,6 @@ CONFIG_STM32H7_SPI4=y
CONFIG_STM32H7_SPI4_DMA=y
CONFIG_STM32H7_SPI4_DMA_BUFFER=1024
CONFIG_STM32H7_SPI_DMA=y
CONFIG_STM32H7_SPI_DMATHRESHOLD=8
CONFIG_STM32H7_TIM1=y
CONFIG_STM32H7_TIM3=y
CONFIG_STM32H7_TIM4=y
@@ -24,7 +24,7 @@
# CONFIG_NSH_DISABLE_TIME is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cubepilot/cubeorange/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32h7"
@@ -98,7 +98,6 @@ CONFIG_MTD_PROGMEM=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -183,7 +182,6 @@ CONFIG_STM32H7_SPI4=y
CONFIG_STM32H7_SPI4_DMA=y
CONFIG_STM32H7_SPI4_DMA_BUFFER=1024
CONFIG_STM32H7_SPI_DMA=y
CONFIG_STM32H7_SPI_DMATHRESHOLD=8
CONFIG_STM32H7_TIM1=y
CONFIG_STM32H7_TIM3=y
CONFIG_STM32H7_TIM4=y
@@ -58,6 +58,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
Binary file not shown.
@@ -26,7 +26,7 @@
# CONFIG_NSH_DISABLE_TIME is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cubepilot/cubeyellow/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32f7"
@@ -98,7 +98,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -8,7 +8,7 @@
# CONFIG_DEV_NULL is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/cubepilot/io-v2/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -164,7 +164,4 @@
#define BOARD_NUM_IO_TIMERS 3
#define BOARD_DISABLE_I2C_SPI
#include <px4_platform_common/board_common.h>
+1
View File
@@ -40,6 +40,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
+4
View File
@@ -49,9 +49,13 @@
// I2C
#define CONFIG_I2C 1
#define PX4_NUMBER_I2C_BUSES 1
// SPI
#define CONFIG_SPI 1
// ADC channels:
// A0 - board voltage (shows 5V)
// A1 - servo rail voltage
@@ -7,7 +7,7 @@
#
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/freefly/can-rtk-gps/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32f7"
@@ -20,7 +20,7 @@
# CONFIG_NSH_DISABLE_TIME is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/freefly/can-rtk-gps/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32f7"
@@ -82,7 +82,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -7,7 +7,7 @@
#
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/holybro/can-gps-v1/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -40,13 +40,6 @@ CONFIG_FS_PROCFS_MAX_TASKS=0
CONFIG_MM_REGIONS=2
CONFIG_NAME_MAX=0
CONFIG_NUNGET_CHARS=0
CONFIG_NXFONTS_DISABLE_16BPP=y
CONFIG_NXFONTS_DISABLE_1BPP=y
CONFIG_NXFONTS_DISABLE_24BPP=y
CONFIG_NXFONTS_DISABLE_2BPP=y
CONFIG_NXFONTS_DISABLE_32BPP=y
CONFIG_NXFONTS_DISABLE_4BPP=y
CONFIG_NXFONTS_DISABLE_8BPP=y
CONFIG_PREALLOC_TIMERS=0
CONFIG_PTHREAD_STACK_MIN=512
CONFIG_RAM_SIZE=262144
@@ -21,7 +21,7 @@
# CONFIG_STM32_DMACAPABLE is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/holybro/can-gps-v1/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32"
@@ -72,7 +72,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
+1 -2
View File
@@ -1,7 +1,5 @@
CONFIG_BOARD_TOOLCHAIN="arm-none-eabi"
CONFIG_BOARD_ARCHITECTURE="cortex-m7"
CONFIG_BOARD_BUILD_BOOTLOADER=y
CONFIG_BOARD_IO="px4_io-v2_default"
CONFIG_BOARD_SERIAL_GPS1="/dev/ttyS0"
CONFIG_BOARD_SERIAL_TEL1="/dev/ttyS1"
CONFIG_BOARD_SERIAL_TEL2="/dev/ttyS2"
@@ -56,6 +54,7 @@ CONFIG_MODULES_LANDING_TARGET_ESTIMATOR=y
CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
Binary file not shown.
Binary file not shown.
@@ -11,7 +11,7 @@
# CONFIG_STM32H7_SYSCFG is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/holybro/durandal-v1/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32h7"
@@ -24,7 +24,7 @@
# CONFIG_NSH_DISABLE_TIME is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/holybro/durandal-v1/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32h7"
@@ -99,7 +99,6 @@ CONFIG_MTD_PROGMEM=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -187,7 +186,6 @@ CONFIG_STM32H7_SPI6=y
CONFIG_STM32H7_SPI6_DMA=y
CONFIG_STM32H7_SPI6_DMA_BUFFER=1024
CONFIG_STM32H7_SPI_DMA=y
CONFIG_STM32H7_SPI_DMATHRESHOLD=8
CONFIG_STM32H7_TIM1=y
CONFIG_STM32H7_TIM3=y
CONFIG_STM32H7_TIM4=y
+2 -5
View File
@@ -26,8 +26,8 @@ CONFIG_MODULES_EVENTS=y
CONFIG_MODULES_FLIGHT_MODE_MANAGER=y
CONFIG_MODULES_GYRO_CALIBRATION=y
CONFIG_MODULES_LAND_DETECTOR=y
CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_HOVER_THRUST_ESTIMATOR=y
@@ -37,12 +37,9 @@ CONFIG_MODULES_NAVIGATOR=y
CONFIG_MODULES_RC_UPDATE=y
CONFIG_MODULES_SENSORS=y
CONFIG_SYSTEMCMDS_BL_UPDATE=y
CONFIG_SYSTEMCMDS_DMESG=y
CONFIG_SYSTEMCMDS_DMESG=n
CONFIG_SYSTEMCMDS_HARDFAULT_LOG=y
CONFIG_SYSTEMCMDS_MIXER=y
CONFIG_SYSTEMCMDS_PARAM=y
CONFIG_SYSTEMCMDS_PERF=y
CONFIG_SYSTEMCMDS_PWM=y
CONFIG_SYSTEMCMDS_REBOOT=y
CONFIG_SYSTEMCMDS_TOP=y
CONFIG_SYSTEMCMDS_VER=y
@@ -24,7 +24,7 @@
# CONFIG_SPI_CALLBACK is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/holybro/kakutef7/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32f7"
@@ -98,7 +98,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -134,8 +134,6 @@
GPIO_RSSI_IN, \
}
#define BOARD_ENABLE_CONSOLE_BUFFER
#define BOARD_NUM_IO_TIMERS 4
__BEGIN_DECLS
+1
View File
@@ -63,6 +63,7 @@ CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
Binary file not shown.
@@ -25,7 +25,7 @@
# CONFIG_NSH_DISABLE_TIME is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="../nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR="../../../../boards/holybro/pix32v5/nuttx-config"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="px4"
CONFIG_ARCH_CHIP="stm32f7"
@@ -97,7 +97,6 @@ CONFIG_MTD_PARTITION=y
CONFIG_MTD_RAMTRON=y
CONFIG_NAME_MAX=40
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_ARCHROMFS=y
CONFIG_NSH_ARGCAT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_CMDPARMS=y
@@ -0,0 +1,3 @@
CONFIG_BOARD_TOOLCHAIN="arm-none-eabi"
CONFIG_BOARD_ARCHITECTURE="cortex-m7"
CONFIG_BOARD_ROMFSROOT=""
+83
View File
@@ -0,0 +1,83 @@
CONFIG_BOARD_TOOLCHAIN="arm-none-eabi"
CONFIG_BOARD_ARCHITECTURE="cortex-m7"
CONFIG_BOARD_SERIAL_GPS1="/dev/ttyS1"
CONFIG_BOARD_SERIAL_TEL1="/dev/ttyS2"
CONFIG_BOARD_SERIAL_TEL2="/dev/ttyS3"
CONFIG_BOARD_SERIAL_TEL3="/dev/ttyS5"
CONFIG_BOARD_SERIAL_TEL4="/dev/ttyS6"
CONFIG_DRIVERS_ADC_BOARD_ADC=y
CONFIG_COMMON_BAROMETERS=y
CONFIG_DRIVERS_CAMERA_CAPTURE=y
CONFIG_DRIVERS_CAMERA_TRIGGER=y
CONFIG_COMMON_DISTANCE_SENSOR=y
CONFIG_DRIVERS_DSHOT=y
CONFIG_DRIVERS_GPS=y
CONFIG_DRIVERS_IMU_INVENSENSE_MPU6000=y
CONFIG_DRIVERS_IMU_INVENSENSE_ICM20602=y
CONFIG_COMMON_LIGHT=y
CONFIG_COMMON_MAGNETOMETER=y
CONFIG_COMMON_OPTICAL_FLOW=y
CONFIG_DRIVERS_OSD=y
CONFIG_DRIVERS_PWM_OUT=y
CONFIG_DRIVERS_PWM_OUT_SIM=y
CONFIG_DRIVERS_RC_INPUT=y
CONFIG_DRIVERS_RPM=y
CONFIG_COMMON_TELEMETRY=y
CONFIG_DRIVERS_TONE_ALARM=y
CONFIG_DRIVERS_UAVCAN=y
CONFIG_MODULES_ATTITUDE_ESTIMATOR_Q=y
CONFIG_MODULES_BATTERY_STATUS=y
CONFIG_MODULES_COMMANDER=y
CONFIG_MODULES_DATAMAN=y
CONFIG_MODULES_EKF2=y
CONFIG_MODULES_EVENTS=y
CONFIG_MODULES_FLIGHT_MODE_MANAGER=y
CONFIG_MODULES_GYRO_CALIBRATION=y
CONFIG_MODULES_GYRO_FFT=y
CONFIG_MODULES_LAND_DETECTOR=y
CONFIG_MODULES_LANDING_TARGET_ESTIMATOR=y
CONFIG_MODULES_LOAD_MON=y
CONFIG_MODULES_LOCAL_POSITION_ESTIMATOR=y
CONFIG_MODULES_LOGGER=y
CONFIG_MODULES_MAG_BIAS_ESTIMATOR=y
CONFIG_MODULES_MANUAL_CONTROL=y
CONFIG_MODULES_MAVLINK=y
CONFIG_MODULES_MC_ATT_CONTROL=y
CONFIG_MODULES_MC_AUTOTUNE_ATTITUDE_CONTROL=y
CONFIG_MODULES_MC_HOVER_THRUST_ESTIMATOR=y
CONFIG_MODULES_MC_POS_CONTROL=y
CONFIG_MODULES_MC_RATE_CONTROL=y
CONFIG_MODULES_NAVIGATOR=y
CONFIG_MODULES_RC_UPDATE=y
CONFIG_MODULES_SENSORS=y
CONFIG_MODULES_TEMPERATURE_COMPENSATION=y
CONFIG_MODULES_VMOUNT=y
CONFIG_SYSTEMCMDS_BL_UPDATE=y
CONFIG_SYSTEMCMDS_DMESG=y
CONFIG_SYSTEMCMDS_DUMPFILE=y
CONFIG_SYSTEMCMDS_ESC_CALIB=y
CONFIG_SYSTEMCMDS_GPIO=y
CONFIG_SYSTEMCMDS_HARDFAULT_LOG=y
CONFIG_SYSTEMCMDS_I2CDETECT=y
CONFIG_SYSTEMCMDS_LED_CONTROL=y
CONFIG_SYSTEMCMDS_MFT=y
CONFIG_SYSTEMCMDS_MIXER=y
CONFIG_SYSTEMCMDS_MOTOR_TEST=y
CONFIG_SYSTEMCMDS_MTD=y
CONFIG_SYSTEMCMDS_NSHTERM=y
CONFIG_SYSTEMCMDS_PARAM=y
CONFIG_SYSTEMCMDS_PERF=y
CONFIG_SYSTEMCMDS_PWM=y
CONFIG_SYSTEMCMDS_REBOOT=y
CONFIG_SYSTEMCMDS_SD_BENCH=y
CONFIG_SYSTEMCMDS_SD_STRESS=y
CONFIG_SYSTEMCMDS_SERIAL_TEST=y
CONFIG_SYSTEMCMDS_SYSTEM_TIME=y
CONFIG_SYSTEMCMDS_TOP=y
CONFIG_SYSTEMCMDS_TOPIC_LISTENER=y
CONFIG_SYSTEMCMDS_TUNE_CONTROL=y
CONFIG_SYSTEMCMDS_UORB=y
CONFIG_SYSTEMCMDS_USB_CONNECTED=y
CONFIG_SYSTEMCMDS_VER=y
CONFIG_SYSTEMCMDS_WORK_QUEUE=y
CONFIG_EXAMPLES_FAKE_GPS=y
Binary file not shown.
+13
View File
@@ -0,0 +1,13 @@
{
"board_id": 139,
"magic": "PX4FWv1",
"description": "Firmware for the MatekH743-slim board",
"image": "",
"build_time": 0,
"summary": "MatekH743-slim",
"version": "0.1",
"image_size": 0,
"image_maxsize": 1966080,
"git_identity": "",
"board_revision": 0
}
@@ -0,0 +1,16 @@
#!/bin/sh
#
# board specific extras init
#------------------------------------------------------------------------------
# if ! param compare OSD_ATXXXX_CFG 0
# then
# atxxxx start -s
# fi
atxxxx start -s
# DShot telemetry is always on UART7
# dshot telemetry /dev/ttyS5
@@ -0,0 +1,18 @@
#!/bin/sh
#
# board specific sensors init
#------------------------------------------------------------------------------
board_adc start
# Internal SPI bus ICM-20602
icm20602 -R 12 -s start
# Internal SPI bus MPU-6000
mpu6000 -R 12 -s start
# Internal baro
dps310 -I start -a 118
# External mag
qmc5883l -X start -a 13

Some files were not shown because too many files have changed in this diff Show More