Commit Graph

1135 Commits

Author SHA1 Message Date
David Sidrane ade7315e9b sd_bench:Missing free 2021-11-29 16:01:08 -05:00
David Sidrane 58a9bf0b2e sd_bench:Add verify and keep options 2021-11-25 13:11:45 -05:00
David Sidrane e76dda545c hardfault_log:Fix formatting 2021-11-24 15:00:38 -05:00
Beat Küng 6fdcc43ea8 mixer_module: add testing for SYS_CTRL_ALLOC=1 with actuator_test cmd+uorb msg 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 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
Beat Küng fdf8461452 ver: print PX4_BOARD_LABEL for 'ver all' 2021-11-11 08:38:42 -05:00
Vatsal Asitkumar Joshi ea1ae73526 Support for Raspberry PI RP2040 MCU (#18083) 2021-11-03 12:14:30 -04:00
Beat Küng 8a2b310b83 topic_listener: avoid code generation, use existing metadata at runtime
This reduces flash size for v5 by ~110KB, the topic listener now only adds
about 1.2KB.
2021-10-20 08:10:05 +02:00
mcsauder 21163d859e Whitespace cleanup. 2021-10-19 13:29:26 -04:00
Beat Küng da1df5352c fix pwm: only update oneshot timers owned by the current pwm_out instance
This fixes the case where oneshot was enabled with multi-instance pwm_out,
triggering oneshot updates too close to each other and as a result could
lead to spinning motors while disarmed.
2021-10-18 18:45:19 -04:00
Peter van der Perk d8e88aedc6 motor_ramp ram cleanup 2021-10-08 10:51:06 -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 b7f03cec5e [Kconfig] Add FMU-V5 and PX4-IOv2 px4board config 2021-10-07 10:09:01 -04:00
Peter van der Perk d5e3e9a7bc [Kconfig] Decompose Kconfig, now each module has its own Kconfig
Which is better for versioning and decomposability
2021-10-07 10:09:01 -04:00
Peter van der Perk 7a747b43f6 Initial boardconfig working with FMUK66 2021-10-07 10:09:01 -04:00
Peter van der Perk 4b89ff29ce PX4 full firmware Kconfig PoC 2021-10-07 10:09:01 -04:00
Daniel Agar a519916d79 systemcmds/sd_stress: return -1 on FAIL 2021-10-04 17:38:31 -04:00
Julian Oes 397b1ed8d6 Add sd_stress command 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
Daniel Agar 089c962d92 px4io: moving mixing to FMU side
Using mixers on the IO side had a remote benefit of being able to
override all control surfaces with a radio remote on a fixed wing.
This ended up not being used that much and since the original design
10 years ago (2011) we have been able to convince ourselves that the
overall system stability is at a level where this marginal benefit,
which is not present on multicopters, is not worth the hazzle.

Co-authored-by: Beat Küng <beat-kueng@gmx.net>
Co-authored-by: Daniel Agar <daniel@agar.ca>
2021-09-25 19:15:05 -04:00
Beat Küng e73172b537 hrt: remove hrt_elapsed_time_atomic
There's no protection on posix
2021-09-23 09:23:08 +02:00
Beat Küng 291ca246d2 matrix: update submodule (improves matrix inversion) 2021-09-05 23:18:28 -04:00
Beat Küng 73ab153fe0 fix test_microbench_math: don't try to measure single instructions
The clock is simply not accurate enough to do that.
Plus the measuring overhead is much higher than the executed instruction.

Remaining issue: memory transfers (due to volatile) add non-negligible
overhead and distort the result. Could be solved by using inline assembly.
2021-09-05 23:18:28 -04:00
Daniel Agar 2f99857b0a systemcmds/bl_update: add CONFIG_ARCH_CHIP_STM32F7 file size limit 2021-09-01 15:16:00 -04:00
Daniel Agar 5dfc07cb1b systemcmds/param: add set-default sient (-s) option 2021-09-01 15:16:00 -04:00
Hyungsub d089d4a6a4 fix memory bugs in replay and bl_update 2021-08-18 07:45:51 +02:00
David Sidrane 3c227b6f76 hardfault_log:Remove verbose output when CONSTRAINED_FLASH_NO_HELP is lit 2021-08-13 14:22:00 -04:00
David Sidrane 173e5c7554 NuttX:Track Stack naming changes 2021-08-13 14:22:00 -04:00
Daniel Agar fe1eb8cd62 cmake cleanup jlink flashing helpers 2021-07-23 15:07:25 -04:00
Daniel Agar d79eea0c41 Jenkins: HIL flash bootloaders
- add new jlink_upload_bootloader helper target
2021-07-18 23:33:00 -04:00
Daniel Agar 774ad80ba0 systemcmds/tests: split out microbenchmarks and remove obsolete tests
- reorganize Jenkins HIL tests
2021-07-18 18:02:33 -04:00
Daniel Agar 858a30df21 systemcmds/tests: replace warnx -> PX4_INFO 2021-07-17 10:57:09 -04:00
Daniel Agar fedf8f0266 world_magnetic_model: move from ecl 2021-07-15 10:38:24 -04:00
Daniel Agar dbaed99626 cmake remove git_ecl target 2021-07-13 10:03:06 -04:00
Daniel Agar e4983ab88c px4_platform_common: atomic support larger types with critical sections (on NuttX) 2021-07-08 10:56:25 -04:00
Beat Küng e3972d563a cmake: ensure generated source files exist before extracting events
Only needed for Makefile-based builds:
gmake[3]: *** No rule to make target 'src/modules/flight_mode_manager/FlightTasks_generated.hpp', needed by 'events/px4.json'.  Stop.
2021-07-07 21:38:09 -04:00
Beat Küng 38f3b8d356 mavlink & system: add events interface
- sending protocol
- uorb event message & template methods for argument packing
- libevents submodule to send common events and handle json files
- cmake maintains a list of all (PX4) source files for the current build
  (PX4 modules + libs), which is used to extract event metadata and
  generate a json file
2021-07-07 21:38:09 -04:00
David Sidrane fd68fd2933 tests:Use inttypes 2021-06-16 17:07:47 +02:00
David Sidrane 1b80018f30 systemcmds:Use inttypes 2021-06-16 17:07:47 +02:00
David Sidrane 84dd8839a2 i2c_spi_buses:Track NuttX change to getopts avoid name collision
NuttX #defined optarg and getopt to move to TLS. This fixes the
  name collision.
2021-06-16 17:07:47 +02:00
Hamish Willee 00cc1323ea gpio.cpp: Add backticks around gpio command docs 2021-06-03 12:37:48 +02:00
Peter van der Perk ecc5154a44 Reflect dynamically allocate block pointers instead of using heap 2021-05-03 14:04:02 -04:00
Beat Küng 51f527d845 param: update 'param show-for-airframe' to use set-default 2021-04-23 16:44:55 -04:00
Daniel Agar ea902e7f38 systemcmds/tests: split out individual module test commands 2021-03-23 11:39:14 -04:00
Daniel Agar 9b1cf98474 drivers/pwm_out: fix launch for non-multi case
- skip _objects[1] access if only 1 possible instance
 - command line request new mode via atomic
2021-03-23 10:40:22 -04:00
David Sidrane cc098f9dff netman:Fix setting on first boot 2021-03-19 15:48:25 +01:00
Lorenz Meier 8cc3247d21 PWM command: Switch default to status, leave info 2021-03-17 22:03:18 +01:00
Lorenz Meier 21f5f9fba0 Param: Print failing param name
This is important for any sort of boot logs to know which parameter failed.
2021-03-17 22:03:18 +01:00
Daniel Agar e7722b11eb pwm_out multi-instance support
PX4 uses banks of 8 outputs as a logical structure. Boards that have
more outputs than 8 get multiple instances. This is an arbitrary choice
that helps with overall structure and enables the mixing of different
device classes (like FMU, IO or UAVCAN).
2021-03-17 22:03:18 +01:00