Commit Graph

2595 Commits

Author SHA1 Message Date
Jacob Dahl 569849665f ekf2: range fusion: while on the ground the rangefinder quality checks are bypassed and a synthetic measurement is fused using the minimum rangefinder distance. The intention of this logic is to ensure the rangefinder can be fused immediately during takeoff even if it's reporting 0 quality while on the ground. This was not working since the rangefinder _time_bad_quality_us was being updated while on the ground. This results in range fusion being disabled as soon as the in_air flag is set, since the time since the last bad quality value has not exceeded the EKF2_RNG_QLTY_T. This commit moves the logic into the SensorRangeFinder::isQualityOk function where the _time_bad_quality_us is only set once airborne. 2025-09-15 12:29:14 -08:00
Niklas Hauser 3a734bc846 [board] Add PCA9685 driver to FMUv6s board 2025-08-29 14:05:40 +02:00
Niklas Hauser b2b80e8075 [board] Reformat FMUv6s init script to start internal sensor first 2025-08-29 14:05:40 +02:00
Alexander Lerach 8f2c36689d logging: allow logging backend config
* logging: allow logging backend config

* correct board comments

* documentation: updated logging section
2025-08-27 15:44:36 +02:00
Peter van der Perk 7887f16daa Update NuttX config for use with Zenoh 2025-08-22 08:22:59 +02:00
Peter van der Perk bac009c2b8 Enable Zenoh by default on big-flash targets
These targets can easily support Zenoh by default eases adoption and testing
2025-08-22 08:22:59 +02:00
henrykotze 8b58c01cd7 ESP32 Support Sponsored by AutonoSky
nsh console running on USB
param module running
working with i2c and common drivers
provided implementation for drv_pwm_output.h
i2cdetect working as expected with no device
mavlink started succesfully
mounts sd card and logger runs
logger to file succesfully
pwm_servo implemented without using Nuttx lib
pwm_out outputs expected waveforms
- however currently if the frequency is higher than what the pwm_out
driver runs, there will be aliasing, based on how the registers gets
resets
wifi softap working
- Seeing wifi hotspot
- cant connect due to wrong password
- problems with adjusting ssid and password
wifi ssid and password being set accordinglu
connected to wifi hotspot with dhpcd
- made some changes to nuttx to only build for SoftAP mode, however this
was effectivelyy removing the ifdef for STATION mode. Should investigate
the coexist option again
added ifdef to not use timer 0 when wifi enabled
- reverted esp32 rt_timer to make use of timer 0 by default

fix setting incorrect bit in hrt timer register

- hrt running as expected, but on startup the pwm_out driver starts up
at about 200Hz and then rises over a minute or so 250Hz. Not sure if
this was present previously, and could be due to Wifi running at time
priority on timer 0

pull xtensa compilers in setup.ubuntu.sh
revert logger stacksize and cmake argument
esp32 chip revision and PX4 UUID implemented

spi board reset implemented, formatting checked

devkit acts on startup as a wifi bridge for comms

- the most usefull setting for the general developer when buying a esp32 devkit
- testing Mavlink shell using ./Tools/mavlink_shell.py
- todo: Test mavlink messages being forward

improve wifi telemetry by increasing prio

- Remove power save mode on wifi
- increased daemon thread schedule priority to 50

compiles without Nuttx changes

- updated compiler settings to match those of nuttx on px4 side

add espressif_esp32 to excluded boards

ci: allow docker to find xtensa compilers
2025-08-19 11:09:56 -07:00
Niklas Hauser 8c4d998931 [board] Use HSE as RTC clock for FMUv6s 2025-08-19 11:18:49 +02:00
Niklas Hauser 450f1d33f6 [board] Increase CPU speed to 480MHz for FMUv6s
The Ethernet clock output is not used anymore so there are no
restrictions on the clock tree configuration.
This aligns the clock speeds with FMUv6x.
2025-08-19 11:18:49 +02:00
Liu1 b52a9e7e32 boards: Modify the cuav_x25-evo GPIO_nARMED level state (#25431)
PULLUP and PULLDOWN change actions for the board.
2025-08-18 08:51:15 -04:00
czx-fly 1f2cdf44dc Fix custom name (#25426)
* board:xc-fly misspelling rename (slam to slim)
2025-08-14 14:03:32 -04:00
accton-iot 2333fb2853 boards: new accton-godwit_ga1 2025-08-13 11:28:37 -04:00
PX4 BuildBot a69e0c6efc boards: update all NuttX defconfigs 2025-08-11 21:03:07 -04:00
czx-fly 37475d2557 boards: new xc-fly xc-slam board support (#25364) 2025-08-08 23:38:53 -04:00
cuav-liu1 e07598d838 boards: add cuav fmu-v6x 2025-08-08 23:35:03 -04:00
Alexis Guijarro a33b194d1d mRo boards: Explicit storage of parameters on microsd card as workaround due to present FRAM bug 2025-08-07 21:59:19 -04:00
Liu1 8462ead986 boards: add new cuav x25-evo (#25176) 2025-08-07 21:54:33 -04:00
alexklimaj bc60307163 boards: ARK DIST 2025-08-07 21:26:13 -04:00
Jacob Dahl 5775a48543 ark: fpv: add rover.px4board 2025-08-07 20:48:12 -04:00
jobs 79bfc07c13 boards: add new NarinFC-H7 2025-08-07 20:39:46 -04:00
PX4 BuildBot 81ff0925f8 boards: update all NuttX defconfigs 2025-08-07 20:35:04 -04:00
Ramon Roche f9b9ef5b59 boards: disable INS for micoair boards
Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2025-08-07 19:06:54 -04:00
Peter van der Perk aa15512762 fmu-v6xrt: Add V6XRT001 and V6XRT002 sensor set 2025-08-06 16:49:42 -04:00
Peter van der Perk d9bc3bc6bb fmu-v6xrt: Enable lis2dml and bmm350 magnetometer 2025-08-06 16:49:42 -04:00
Eric Katzfey a6b90eb050 VOXL2: Updated startup script to patch EKF2_EV_CTRL set default value issue 2025-08-06 09:52:55 -07:00
Eric Katzfey 7e5cc020c3 QURT: HITL: Moved heartbeat send into actuator send thread to avoid race conditions 2025-08-05 17:16:05 -07:00
Minderring f8bfe01eca Add MSP_OSD and other drivers for micoair boards 2025-08-05 16:58:31 -07:00
Alexander Lerach 900f108a2e auterion pm: add eeprom-based pm selection 2025-08-05 08:30:13 -07:00
Jacob Dahl 50fce15a75 ark: v6x: add rover.px4board 2025-08-04 12:01:22 -06:00
Eric Katzfey c5b8445ffc Added Qurt platform Serial implementations for bytesAvailable() and flush(). (#25348) 2025-08-01 13:22:00 -08:00
Ramon Roche 0cddd3dfb0 drivers: disable INS by default (#25303)
* drivers: disable INS by default

With the growing number of INS drivers some targets are running out of flash
and its becoming challenge to keep them under the limit.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

* Update boards/nxp/tropic-community/default.px4board

Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>

* Update boards/px4/fmu-v6xrt/default.px4board

Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>

---------

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>
2025-07-31 11:42:21 -08:00
Alexander Lerach 2ecc7226e6 common_rc: enable on v5x/v6x/v6s, disable rc_input 2025-07-30 15:09:39 +02:00
Jacob Dahl 42ef7a4f9a ark: fpv: enable payload deliverer module (#25322) 2025-07-28 14:03:30 -06:00
Jacob Dahl 8d4993e654 ark: v6x: enable payload deliverer 2025-07-28 11:25:17 -08:00
Jacob Dahl 75acb13c36 ark: v6x: encrypted: remove FW and VTOL modules to save flash (#25319) 2025-07-28 11:08:03 -08:00
Silvan Fuhrer edfcbc7c9b boards: remove duplicated enabling of AUX_GLOB_POS
EKF2_AUX_GLOBAL_POSITION is y by default.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2025-07-28 09:42:30 +02:00
Matthias Grob 9d75bdbe62 IO: rename FORCE_FAILSAFE to TERMINATION for clarity 2025-07-25 13:01:25 -06:00
Sindre Meyer Hegre 3be0cb077c Neural Control Mode (#24366)
* Add tflm to px4 with module

 - Add TensorFlow Lite Micro(TFLM) as a library in px4
 - Make a module that uses neural network inference for control, which uses TFLM for inference
 - Make board config files for PX4 with neural module

* Added neural flight mode

* Add posibility to read of inference times

* Fix comments from review:

- Switch ssh link to https link in submodule
- Remove mc_nn_control from startup

* Add tflm to px4 with module

 - Add TensorFlow Lite Micro(TFLM) as a library in px4
 - Make a module that uses neural network inference for control, which uses TFLM for inference
 - Make board config files for PX4 with neural module

* Added neural flight mode

* Add posibility to read of inference times

* Remove auto start

* Add logging from neural control module

* Fix automatic startup to only be when module is included

* Switch to flight mode registration

* Add docs

* Change min/max/coeff to actual parameters

* add figures to neural network docs

* Switch to e2e network

* Remove toolchain changes and replace with instructions in docs

* Get ready for merge after toolchain upgrade

* switch back to submodule

* Try to figure out cmake

* Get CI working with new toolchain

* Remove fork dependency

* Finalize PR

* fix toolchain inclusion

* Fix ctype_base.h include

* Cleanup includes for TFLM

* Remove redundant std

* Update FW module names in board files

* Fix docs

* Remove cstdlib copy

* Copy header from nuttx

* Prettier, markup, layout

* NeuralControl.msg - update uorb comments to current standard

* Add description to neural topic

* Fix typo

* Typo

* TFLM and Module utitlities

* Neural networks top level

* Update docs

* Add manual control

* Update docs

* Revert the manual control attempt

* Update docs/en/advanced/nn_module_utilities.md

* Add posibility to set trajectory setpoint with manual control

---------

Co-authored-by: Pedro Roque <padr@kth.se>
Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
Co-authored-by: Ramon Roche <mrpollo@gmail.com>
2025-07-25 09:42:12 -08:00
Jacob Dahl dce58637af ark_fpv: flash savings: remove FW and VTOL from encrypted_logs.px4board 2025-07-24 12:45:07 -06:00
Pedro Roque e14eea5615 feat: BlueROV2 Heavy updated control (attitude and position) and model (#25052)
* rft: clean merge to PX4

* fix: formatting

* fix: extra line

* fix: moved submarine out of "is_ground_vehicle", added proper check for center-throttle

* feat: updated gazebo models to include bluerov update

* fix: use 'is_uuv_vehicle', remove FW_MM/LLC from uuv build

* fix: added saturation to thrust and torque messages via param

* doc: updated parameters documentation for uuv

* fix: formatting

* feat: matching hardware reference

* fix: thrusters kg

* rft: removed commented lines

* fix: update gz reference given hw setup

* fix: hardware references

* fix: recommendations

* fix: updated settings to match hardware

* rft: check only for fixed and rotary wing for high throttle

Co-authored-by: Daniel Agar <daniel@agar.ca>

* fix: commit oupsie

* fix: format

* rft: remove is_uuv

* fix: hw parameters, uuv build target for v6x

* feat: added support for D-pad attitude changes in stabilized position control

* fix: position setpoint update and parametrized trajectory age and att change

* fix: format

* fix: removed duplicated call to check_validity_setpoint

* fix: setpoint update on arming logic

* fix: setpoint initialization for stabilized mode

---------

Co-authored-by: Daniel Agar <daniel@agar.ca>
2025-07-23 10:29:22 -07:00
Pedro Roque 09fe34af0e fix: enable control allocator for spacecraft on v6x (#25276) 2025-07-23 18:58:54 +02:00
Pedro Roque 2f55dff8b9 feat: spacecraft support (#24734)
* rft: initial merging of controllers for spacecraft vehicles

* feat: rate controller nominal

* feat: spacecraft tooling for commander and VehicleStatus

* feat: spacecraft tooling for commander and VehicleStatus

* fix: format

* fix: format

* fix: remove iostream

* fix: remove iostream

* feat: spacecraft attitude control and minor refactoring of params

* feat: add position controller

* fix: format

* fix: moved trajectories to new message, removed derivative filters

* fix: format

* fix: removed extra newline

* fix: spacecraft allocation builds

* feat: add thrusters to effectivenes, add spacecraft build to cmake, clean comments

* feat: required changes for allocation

* feat: thruster simulation interface

* fix: update maximum and minimums

* fix: format

* fix: added newline at the end of spacecraft actuator effectiveness

* feat: configurable board pwm freq from Kconfig

* feat: mavlink compliant spacecraft definition

* feat: add orbiter to define

* boards: Increase TELEM2 rx buffer size for DDS over serial use-case (ARK Jetson)

feat: spacecraft tooling for commander and VehicleStatus

fix: format

fix: remove iostream

feat: mavlink compliant spacecraft definition

* feat: add orbiter to define

* feat: add orbiter to define

* fix: change mav_type to new spacecraft orbiter enum value

* fix: build issue

* feat: update mavlink

* feat: update mavlink to latest master with spacecraft

* feat: update mavlink

* feat: update mavlink to latest

* feat: cleanup and synchronization with new mavlink vehicle definition

* fix: get away without specifying spacecraft vehicle

* fix: removed unnecessary definition

* fix: format

* feat: cmake variant for spacecraft

* feat: proper mav_type and rc init

* fix: removed dart from build system

* add: thrusters to actuator type

* rft: reordering actuator type

* rft: initial merging of controllers for spacecraft vehicles

* feat: rate controller nominal

* fix: format

* feat: spacecraft attitude control and minor refactoring of params

* feat: add position controller

* fix: format

* fix: moved trajectories to new message, removed derivative filters

* fix: format

* fix: removed extra newline

* fix: spacecraft allocation builds

* feat: add thrusters to effectivenes, add spacecraft build to cmake, clean comments

* feat: required changes for allocation

* feat: thruster simulation interface

* fix: update maximum and minimums

* fix: format

* fix: added newline at the end of spacecraft actuator effectiveness

* feat: configurable board pwm freq from Kconfig

* feat: add orbiter to define

* feat: cleanup and synchronization with new mavlink vehicle definition

* fix: get away without specifying spacecraft vehicle

* fix: conflicts

* fix: format

* fix: remove duplicate entry

* rft: remove Kconfig changes

* rft: revert main Kconfig

* rft: revert main kcoonfig on platforms

* rft: remove changes to board PWm (go on another PR)

* rft: revert changes to commander (main is correct)

* fix: extra char on commander_helper

* rft: removed extra spaces

* rft: moved effectiveness to spacecraft

* fix: spacecraft effectiveness

* fix: extra space

* feat: preliminary version, still using thrusters

* rft: initial pipeline on PX4 side with rotors instead of thrusters

* feat: add atmos model

* feat: spacecraft with rotor pipeline tested, working

* feat: update gz

* rft: removed thruster interfaces

* fix: format

* fix: remove control allocation

* fix: thruster normalization

* fix: format

* fix: nuttx version

* fix: clang tidy error

* feat: updated gz to add atmos model

* fix: update gz

* fix: update mavlink

* fix: remove friend class from allocation lib

* fix: remove actuator_outputs/motors

---------

Co-authored-by: Alexander Lerach <alexander@auterion.com>
2025-07-23 08:26:27 -07:00
Pedro Roque 6474e5d7c1 feat: configurable board pwm freq from Kconfig (#24787)
* feat: configurable board pwm freq from Kconfig

* feat: add board_pwm_config to submenu

* fix: define sequence correction

* fix: revert Tools/simulation/gz

* fix: track upstream gz

* fix: track upstream mavlink

* feat: adjustable pwm for multiple board types

* feat: add conditional check for CONFIG_ for correct fallback

* add: spacecraft board with correct BOARD_PWM_FREQ supporting 10Hz actuation rate

* fix: set dependencies for submenu arch chips

* fix: keep only upper arch level

* fix: proper checking - still not showing up for board config

* feat: add hidden kconfig for platforms

* Merge Nuttx config into px4board

Allows to expose nuttx into PX4 if needed

* Kconfig: Include nuttx symbols in updateconfig

Only if applicable i.e. defined in the kconfig

* fix: merged config with previously generated boardconfig

* doc: updated code comment

---------

Co-authored-by: Daniel Agar <daniel@agar.ca>
Co-authored-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-07-23 08:23:13 -07:00
Claudio Chies 095ab9d27a add PWM_Input as default for ats-based flight termination (#25209) 2025-07-22 09:30:53 +02:00
mahima-yoga 3c79f25e10 fmu-v6s: disable analog battery monitoring when digital power module is enabled 2025-07-18 16:42:54 +02:00
mahima-yoga 5125059b8f fmu-v6s: add ina226/ina228/ina238 support 2025-07-18 16:42:54 +02:00
Silvan e22329d074 add GYRO_FFT to v6s build
Signed-off-by: Silvan <silvan@auterion.com>
2025-07-18 14:15:46 +02:00
Alexander Lerach 3041960cf1 auav: enable on v5x/v6x/v6s boards 2025-07-18 09:58:03 +02:00
Alexander Lerach 7f5119f402 sensors: autostart bmm350 and add it to common mags 2025-07-14 17:52:18 +02:00
Beat Küng 7594a270f7 tests: remove previous fuzz testing
We now use https://github.com/google/fuzztest (see previous commits).
And the test was also failing to build
(https://github.com/PX4/PX4-Autopilot/actions/workflows/cflite_batch.yml)

This reverts these commits:
- 9eda5b373c
- 2cbc993976
- be0a5b4b32
2025-07-11 10:39:28 +02:00