Commit Graph

336 Commits

Author SHA1 Message Date
Beat Küng 2776b723ea holybro/kakuteh7: switch to flash-based params 2022-08-31 09:42:59 +02:00
Daniel Agar 4040e4cdf2 simulation organization and cleanup
- new modules/simulation directory to collect all simulators and related modules
 - new Tools/simulation directory to collect and organize scattered simulation submodules, scripts, etc
 - simulation module renamed to simulator_mavlink
 - sih renamed to simulator_sih (not a great name, but I wanted to be clear it was a simulator)
 - ignition_simulator renamed to simulator_ignition_bridge
 - large sitl_target.cmake split by simulation option and in some cases pushed to appropriate modules
 - sitl targets broken down to what's actually available (eg jmavsim only has 1 model and 1 world)
 - new Gazebo consistently referred to as Ignition for now (probably the least confusing thing until we fully drop Gazebo classic support someday)
2022-08-25 09:10:03 -04:00
Beat Küng 7b810bb776 boards: update px4 io binary 2022-08-23 21:07:18 -04:00
Igor Mišić f929017618 boards: link missing arch_io_pins lib 2022-07-31 11:19:20 -04:00
Igor Mišić 4b503c310e Merge PR #19575 (changes to pr-extendend_hw_ver_rev_format)
- 4096 of 3 hex digits each for rev and ver is enough.
    #defines used in SPI versions do not be long format, use use the macro
 - Board provides a prefix and the formatting is sized and built in
 - No need for funky board_get_base_eeprom_mtd_manifest interface
    Original mft is used where the abstraction is done with the MFT interface

Co-authored-by: David Sidrane <David.Sidrane@Nscdg.com>
2022-07-05 09:29:26 +02:00
Igor Mišić ec1614d156 boards: update id string from V5X{0-a}{0-a} to V5X{xxxx}{xxxx}
boards: new format for hwtypecmp string
boards: update manifest.c to follow the new hw_ver_rev format
2022-07-05 09:29:26 +02:00
alexklimaj 4cc3e78558 Add mag bias estimator to CAN GPS units with IMUs
- run `sensors` hub to process sensor_mag and publish vehicle_magnetometer
 - update uavcannode to use vehicle_magnetometer
2022-06-19 15:46:36 -04:00
Daniel Agar c7cec4252c sensors: add CONFIG_SENSORS_VEHICLE_AIRSPEED for airspeed/differential pressure
- disable CONFIG_SENSORS_VEHICLE_AIRSPEED on boards only used for multicopter
2022-06-17 19:31:45 -04:00
Daniel Agar dea404a9a3 boards: disable modules to save flash
- px4_fmu-v5x_rtps disable common barometers to save flash
 - px4_fmu-v6x_default disable telemetry drivers to save flash
2022-06-16 16:14:57 -04:00
Igor Mišić 25488da944 px4io: replace safety_off state with safety button event (#19558)
internal PX4IO safety_off state is removed and replaced with a normal safety button event. From this 'commit' commander is taking care of the PX4IO safety.
2022-06-01 13:15:13 -04:00
Daniel Agar 5b6e5a0968 boards: NuttX update all boards to preallocated sem holder list
- CONFIG_SEM_PREALLOCHOLDERS=32
 - CONFIG_SEM_NNESTPRIO=16 (default)
2022-05-31 01:41:07 -07:00
David Sidrane 479b52fd02 Update all H7 Bootloders 2022-05-27 14:25:25 -04:00
David Sidrane fd81951391
boards: STM32H7 pad to 256 bit - 32 bytes (#19724) 2022-05-27 14:04:51 -04:00
Igor Misic 554283655c Revert "px4io: replace safety_off state with safety button event (#19558)"
This reverts commit 12a81979a8.
2022-05-26 10:06:32 -04:00
Igor Misic 6aefcbb6cf Revert "px4iofirmware: fix for bug introduced with #19558"
This reverts commit 79a34b5aed.
2022-05-26 10:06:32 -04:00
Igor Misic 79a34b5aed px4iofirmware: fix for bug introduced with #19558 2022-05-23 14:59:11 -04:00
Igor Misic 12a81979a8 px4io: replace safety_off state with safety button event (#19558)
internal PX4IO safety_off state is removed and replaced with a normal safety button event. From this 'commit' commander is taking care of the PX4IO safety.
2022-05-23 06:54:37 +02:00
Beat Küng abb37a3d27 holybro/kakutef7: disable module to reduce flash 2022-05-10 08:57:39 +02:00
Vincent Poon 080ba4458a
holybro/kakuteh7: change Product ID to show board name properly in QGC
https://github.com/mavlink/qgroundcontrol/pull/10270
2022-04-29 07:21:58 +02:00
Daniel Agar 7bb789cb23
boards: update bootloaders to latest 2022-04-25 22:39:25 -04:00
Daniel Agar 3cdeeb8d64
px4iofirmware: convert most files to c++ 2022-04-17 20:44:30 -04:00
Daniel Agar 3f13c70cae
px4io cleanup LED and heater handling
- most px4_io-v2 boards have a blue LED that breathes for status
 - the pixhawk 2.1 (hex) re-used this blue LED for as an IMU heater (active low), but kept the same board id (so we have to detect at runtime)
 - the new cubepilot boards (yellow, orange) inverted the polarity of this heater pin
 - untangle the mess slightly so that things we know statically (eg cubepilot cubeorange LEDs and heater polarity) are handled at build time.
2022-04-13 18:43:59 -04:00
Daniel Agar 091fca701e
px4io: input_rc only publish new successful decodes
- previously an invalid decode would continue to be transferred to the FMU (at 50 Hz) and published to the rest of the system as successfully decoded new RC data
 - by only publishing new successful decodes we can more effectively discard invalid data in downstream consumers
2022-04-09 14:28:16 -04:00
Beat Küng 3381a5914d holybro/kakuteh7: fix BOARD_FLASH_SIZE
The BL was reporting a flash size of 1703936, whereas it should be 1835008.
2022-04-04 10:44:11 -04:00
Beat Küng 601c588294 holybro/kakuteh7: disable bluetooth 2022-03-04 08:02:11 -05:00
Beat Küng 047352d049 holybro/kakuteh7: update bootloader binary 2022-03-04 08:02:11 -05:00
Beat Küng bc9dfe8599 holybro/kakutef7: disable module to reduce flash 2022-02-25 08:30:58 +01:00
Daniel Agar 611d50edf3
boards: holybro kakutef7 disable tone_alarm to save flash 2022-02-24 11:33:25 -05:00
David Sidrane 1c66fb44aa holybro_kakutef7:fit in flash 2022-02-16 10:09:02 -05:00
Julian Oes 490a0c473b Rename vmount to gimbal 2022-02-07 19:21:15 -05:00
Daniel Agar 052adfbfd9
borads: holybro_kakutef7 disable modules/events to save flash 2022-02-06 16:53:13 -05:00
Jukka Laitinen 700c13cdff Remove linking of arch_io_pins into drivers_board
This goes the other way around; arch_io_pins is using the pin
definitions from drivers_board, so the drivers_board needs to be linked
into arch_io_pins

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2022-01-27 12:42:40 -05:00
Beat Küng 92769bd2b2 dshot: remove BOARD_DSHOT_MOTOR_ASSIGNMENT & handle timer channel gaps 2022-01-21 20:41:15 -05:00
Beat Küng 425b268feb boards: add holybro/kakuteh7
known issues:
- flash-based params does not work on H7 (due to ECC), so params are on
  SD card. The last flash sector is still reserved however.
- output channel 6 does not support DShot (the implementation does not
  handle channel gaps)
- flashing of the 2. flash bank is much slower (around 3x), than the 1.
  bank for some unknown reason.
- after the BL jumps to the app, there's several seconds passing until
  stm32_boardinitialize() is called.
2022-01-17 10:41:33 -05:00
Daniel Agar d077ca15fb delete PWM_SERVO_SET, PWM_SERVO_SET_MODE, systemcmds/motor_ramp, and pwm_out test 2022-01-10 09:51:11 -05:00
Daniel Agar df44df2df6 delete systemcmds/esc_calib
- this is redundant with commander esc_calibration
2022-01-10 09:51:11 -05:00
Daniel Agar daa925137c boards: move default battery calibration defines to parameter defaults 2022-01-10 09:49:36 -05:00
Daniel Agar e835a7c4ea boards: enable readline history and tab completion on newer boards 2022-01-03 10:44:32 -05:00
Daniel Agar 3ef9c2d16c boards: holybro_kakutef7_default disable modules/gyro_calibration to save flash 2021-12-27 12:19:55 -05:00
Beat Küng 082cd74cab holybro/kakutef7: disable IST8310 to reduce flash 2021-12-24 20:06:13 -05:00
Julian Oes 9686c81f7d boards: enable flow control on CDCACM
This enables flow control on CDCACM for the NuttX boards which fixes a
problem where HITL would stall.

The stall could happen if the hardware would be a bit too slow in
keeping up with the incoming messages. Often, this happened on arming
because the logger would take some time to log all parameters right at
the beginning.

The stall would then not recover due to NuttX bug where the rx interrupt
would not be restored correctly and instead only a slower watchdog would
release the next read. This watchdog takes 200ms which means it's hard
to impossible to get out of the situation without restarting sim and/or
PX4.  For more information about the issue, see:
apache/incubator-nuttx#3633

As a workaround, until that bug is fixed, and because it makes sense
anyway, I propose to enable FLOWCONTROL for the serial via USB.
2021-12-21 08:01:38 +01:00
Daniel Agar 8185e2a384 boards: board_app_initialize() don't return early on failure
- depending on the situation we're more likely to get actionable user
feedback by allowing boot to complete rather than silently failing
2021-12-09 20:41:54 -05:00
Daniel Agar a2064cceff boards: enable early MPU reset on any board potentially not using the PX4 bootloader 2021-12-01 20:13:41 -05:00
David Sidrane 76585409fa durandal rev 1 has bmi088->icm20602 2021-11-29 21:59:30 -05:00
David Sidrane b7c3d560d3 holybro_pix32v5 nsh:Remove CONFIG_RAMTRON_WRITEWAIT 2021-11-26 19:27:29 -05:00
David Sidrane 0bc377ecd3 holybro_kakutef7 nsh:Remove CONFIG_RAMTRON_WRITEWAIT 2021-11-26 19:27:29 -05:00
David Sidrane ddc73b4647 holybro_durandal-v1 nsh:Remove CONFIG_RAMTRON_WRITEWAIT 2021-11-26 19:27:29 -05:00
David Sidrane 6921b04600 holybro_can-gps-v1 nsh:Remove CONFIG_RAMTRON_WRITEWAIT 2021-11-26 19:27:29 -05:00
David Sidrane 2fb615d7e2 holybro_kakutef7:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32 2021-11-24 09:46:23 -05:00
David Sidrane 04df95436d holybro_pix32v5:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32 2021-11-24 09:46:23 -05:00
David Sidrane c4ccde51df holybro_durandal-v1:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32 2021-11-24 09:46:23 -05:00
Beat Küng 950767f1af holybro/kakutefy: disable modules to reduce flash 2021-11-23 12:40:22 -05:00
Beat Küng 4c03def6e9 boards: add CONTROL_ALLOCATOR + ACTUATOR_TEST 2021-11-23 12:40:22 -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 6a60fba96d boards: holybro_kakutef7_default remove systemcmds/ver to save flash 2021-11-11 11:17:15 -05:00
Matthias Grob 00905973c7 boards/kakutef7: remove dmesg to save flash 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 a8c3bcca32 boards: disable CONFIG_STM32H7_SPI_DMATHRESHOLD 2021-11-08 19:20:47 -05:00
Daniel Agar 4627f5514e boards: holybro_kakutef7_default disable load_mon to save flash 2021-11-07 20:36:47 -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
Beat Küng 8476875b4d Kconfig: add missing serial ports 2021-10-27 08:03:55 +02:00
David Sidrane 38e2e6a01f
Use NuttX MPU Reset (#18283)
* NuttX with MPU reset backports

* Use NuttX MPU reset
2021-10-25 18:05:31 -04:00
Daniel Agar a548c94230 boards: holybro_durandal-v1_default disable modules to save flash 2021-10-25 13:41:31 +02:00
bresch 6ec9ab11f2 add fw auto-tune module to board configs 2021-10-25 13:41:31 +02:00
Daniel Agar f1016dc32c boards: add systemcmds/topic_listener to CAN nodes 2021-10-21 14:06:11 -04:00
Beat Küng d28dd5cc14 holybro/pix32v5: add capture pins to list of pwm pins 2021-10-18 18:45:19 -04:00
Beat Küng d9bf03b2dc holybro/durandal-v1: add capture pins to list of pwm pins 2021-10-18 18:45:19 -04:00
Daniel Agar cb6b1bd427 boards: delete unused test and debug variants 2021-10-07 10:09:01 -04:00
Peter van der Perk 05d71c8118 Kconfig fix CI issues after rebase 2021-10-07 10:09:01 -04:00
Peter van der Perk ed5fee1a72 Backport #18311 mc atune 2021-10-07 10:09:01 -04:00
Peter van der Perk 454c907b7d Kconfig backport #18327 mag_bias 2021-10-07 10:09:01 -04:00
Peter van der Perk 36191e649a Kconfig backport #18289 and other flash size fixes 2021-10-07 10:09:01 -04:00
Peter van der Perk 6a1675ac28 Backport #17864 to px4board config 2021-10-07 10:09:01 -04:00
Peter van der Perk f7803fb686 [Kconfig] Bloaty 2nd pass 2021-10-07 10:09:01 -04:00
Peter van der Perk 33fd65e5fe [Kconfig] Fix regressions found by bloaty and cleanup unused cmake 2021-10-07 10:09:01 -04:00
Peter van der Perk 892d673b45 [Kconfig] fix flash overflow test builds 2021-10-07 10:09:01 -04:00
Peter van der Perk 1eb9a77a9b [Kconfig] Added missing sensor drivers 2021-10-07 10:09:01 -04:00
Peter van der Perk efc91d2b69 [Kconfig] Fixed inclusion of microbench bydefault when TESTING was enabled
Added full optimization option
2021-10-07 10:09:01 -04:00
Peter van der Perk b3e799e277 [Kconfig] Add all distance sensors 2021-10-07 10:09:01 -04:00
Peter van der Perk 21e6547ac7 [Kconfig] Toolchain & platform fixes, SITL still broken 2021-10-07 10:09:01 -04:00
Peter van der Perk c2ad07b983 [Kconfig] Don't inherit kconfig when bootloader (and canbootloader) 2021-10-07 10:09:01 -04:00
Peter van der Perk 6af0477733 [Kconfig] Gnerate px4board from old cmake
Added make updateconfig to update all config when default's have changed
Added cmake to px4board conversion script
2021-10-07 10:09:01 -04:00
Daniel Agar bbfaa4694c
boards: cleanup serial RX DMA hrt_call_every
- remove ts_to_abstime dependency
2021-10-06 14:39:59 -04:00
Daniel Agar 51758bd7e6
boards: delete unused variants 2021-10-05 23:14:04 -04:00
Daniel Agar 2b9ebb7ed6
boards: holybro_kakutef7 disable systemcmds/work_queue to save flash 2021-10-05 17:10:30 -04:00
Daniel Agar c271a9e3e6 add sd_stress to all boards and run on test rack 2021-10-04 17:38:31 -04:00
Daniel Agar 6d78054f50
mavlink USB auto start/stop on boards with VBUS
- no longer start sercon or mavlink usb by default
 - on USB connection (VBUS) monitor serial USB at low rate and start Mavlink if there's a HEARTBEAT or nshterm on 3 consecutive carriage returns
 - the mavlink USB instance is automatically stopped and serdis executed if USB is disconnected
 - skipping Mavlink USB (and sercon) saves a considerable amount of memory on older boards
2021-10-03 15:32:54 -04:00
bresch 1443f773da mbe: add module to targets 2021-10-02 21:25:21 -04:00
bresch 5874b1f87c mc atune: add module to all targets
- adjust flash constrianed targets to fit
2021-10-02 18:12:05 -04:00
David Sidrane 63e29b821c holybro_can-gps-v1:Ensure sensors are powered 2021-09-29 14:37:17 -04:00
Beat Küng c49e78cbac holybro/durandal-v1: disable modules to reduce flash 2021-09-11 14:08:41 -04:00
Beat Küng c5c80e31b6 boards: remove DIRECT_INPUT_TIMER_CHANNELS from board_config.h 2021-09-08 16:10:24 -04:00
Beat Küng a8e75d174c boards: remove BOARD_HAS_PWM and use DIRECT_PWM_OUTPUT_CHANNELS 2021-09-08 16:10:24 -04:00
Daniel Agar 40e5477edb NuttX boards fix mkfatfs and rcS logic 2021-09-01 15:16:00 -04:00
Daniel Agar f856b89723 boards: Holybro H7 boards clear MPU early in board init
- needed if the bootloader configures the memory protection unit (MPU)
2021-09-01 08:53:05 +02:00
David Sidrane bb913ae11a system_load:Track Dynamic PID hash 2021-08-13 14:22:00 -04:00
David Sidrane a73b688566 holybro_kakutef7: Update nsh defconfig NuttX 10.1.0+ 2021-08-13 14:22:00 -04:00
David Sidrane b3555ada6b holybro_can-gps-v1: Update nsh defconfig NuttX 10.1.0+ 2021-08-13 14:22:00 -04:00
David Sidrane 7d572c515c holybro_pix32v5: Update nsh defconfig NuttX 10.1.0+ 2021-08-13 14:22:00 -04:00
David Sidrane 55bf2c7610 holybro_durandal-v1: Update bootloader defconfig NuttX 10.1.0+ 2021-08-13 14:22:00 -04:00