Commit Graph
7111 Commits
Author SHA1 Message Date
Igor Mišić 89f828fba7 pps_capture: advertise for logging 2021-12-17 07:56:08 +01:00
Igor Mišić 17f5df2d3e pps_capture: add argument guard 2021-12-17 07:56:08 +01:00
Beat Küng f6ced71d26 pps_capture: make it configurable via output functions 2021-12-17 07:56:08 +01:00
Igor Mišić 0f60e7debf pps_capture: add kconfig 2021-12-17 07:56:08 +01:00
Michael Schaeuble 064a602962 Add PPS capture message to logged topics, simplify timestamp logic and small cleanup 2021-12-17 07:56:08 +01:00
Michael Schaeuble 5ad8b84dec Fix PPS based UTC timestamp in camera trigger and capture messages
The existing implementation has about 100ms difference to a reference clock. With the changes this error less than 25us.
- Use sensor_gps messages with hrt timestamps as RTC reference and not the system realtime clock. The PPS interrupt can then be aligned with the GPS clock system.
- Keep fallback based on system RTC when no PPS pulse was captured
2021-12-17 07:56:08 +01:00
Michael Schaeuble ebb657bcf4 Fix camera trigger via MAVLink when camera capture feedback is enabled
- camera_trigger module always publishes the camera_trigger msg (independent of the camera feedback)
- Use camera_trigger msg and set the feedback flag
- Subscribing modules determine if the message is relevant based on the feedback message
2021-12-17 07:56:08 +01:00
Michael Schaeuble 3e4031cf0f Set rtc_edge_time also in capture_callback
When using an FMU channel as PPS capture GPIO, the rtc_edge_time is now set as well. The delay between actual capture and callback is compensated with the elapsed time of the rtc clock.
2021-12-17 07:56:08 +01:00
Thomas Debrunner 43bc6db99e PPS capture: Add a param to enable / disable PPS capture module. This is important, since it takes over an FMU pin which can no longer be used for actuator output. 2021-12-17 07:56:08 +01:00
Igor Mišić 298a8c4637 boards/fmu-v5x: allocating PPS pin
- start pps_capture before pwm_out
2021-12-17 07:56:08 +01:00
Igor Mišić c6098ef3dd camera_capture: update to use PPS correction for UTC time 2021-12-17 07:56:08 +01:00
Igor Mišić 8eca35111e camera_trigger: update to use PPS correction for UTC time 2021-12-17 07:56:08 +01:00
Igor Mišić 72b1db4a63 pps_capture: implementation of pulse per second capture driver 2021-12-17 07:56:08 +01:00
Daniel Agar 43a04c9bca fix PARAM_PREFIX for boards with px4io (CONFIG_BOARD_IO) 2021-12-16 07:20:12 +01:00
alexklimaj 6133ef0d63 Dronecan fix beep driver 2021-12-13 14:52:46 -05:00
Beat Küng a9e918c7b2 fix ina226: use shunt param value 2021-12-10 09:03:08 -05:00
Igor Mišić d1aec01b86 uavcan/actuators: stop update esc status if there is no UAVCAN ESCs 2021-12-10 09:03:08 -05:00
Matthias Grob 68e2940f58 math: support max of three values additional to min and use it everywhere 2021-12-07 21:06:51 +01:00
Matthias Grob fdc40880d0 battery: separate out publishing from updating
to allow smart battery drivers to use the battery class and
filling in additional information in case it makes sense.
2021-12-07 21:06:51 +01:00
Matthias Grob e70d70468a battery: pass voltage and current by setter 2021-12-07 21:06:51 +01:00
Matthias Grob 39641494da battery: pass connected flag in by setter 2021-12-07 21:06:51 +01:00
Matthias Grob 38d23f5345 battery: pass priority in by setter 2021-12-07 21:06:51 +01:00
Matthias Grob f9fc9a9af6 battery: pass source in by constructor 2021-12-07 21:06:51 +01:00
Matthias Grob b965923c08 battery: fetch throttle value inside of class 2021-12-07 21:06:51 +01:00
Daniel Agar 41378fcef9 ms5611: lower SPI clock 20 MHz -> 16 MHz
- this was necessary to get the secondary ms5611 working reliably on a
particular CubeOrange
 - the sensor is transferring very little data, so lowering the speed by
default everywhere is harmless
2021-12-06 12:51:52 -05:00
Daniel Agar 9ab633c18f drivers/imu/invensense: check register bank during probe if necessary
- the WHO_AM_I is only accessible in register bank 0, which might not
be currently selected if the sensor didn't have a clean reset
2021-12-06 10:22:54 -05:00
Daniel Agar fe23718e2c drivers/gps: require valid device to start 2021-12-06 08:44:50 +01:00
Daniel Agar 58421f2edc Update submodule GPS drivers to latest Fri Dec 3 12:38:58 UTC 2021
- GPSDrivers in PX4/Firmware (3e0d06c65167c0bd79c193ea75ca5c7959053ff7): https://github.com/PX4/PX4-GPSDrivers/commit/bd72eb6794e8fb4f2ed3e47311a14c2cec69f60b
    - GPSDrivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/d6940d9c8ccb8ab3273c677097a29d46903021ff
    - Changes: https://github.com/PX4/PX4-GPSDrivers/compare/bd72eb6794e8fb4f2ed3e47311a14c2cec69f60b...d6940d9c8ccb8ab3273c677097a29d46903021ff

    d6940d9 2021-12-02 alexklimaj - Update F9P moving base with direct UART2 connection
    eb0cb58 2021-11-25 sebastian - always using groundspeed for vel_m_s in ubx driver
    0408160 2021-11-18 alexklimaj - Remove extra UART1 baudrate set
2021-12-05 19:23:07 -05:00
Daniel Agar 37c1598f38 boards: cubepilot_cubeorange enable calib_udelay and run on test rack 2021-12-05 14:50:03 -05:00
Matthias Grob 89892d0d17 px4io: discover PWM_MAIN_TRIMx parameters right away 2021-12-01 20:21:26 -05:00
Peter van der Perk ce10dd90e7 Remove ucannode_gps_demo since it's superseded by uavcan_v1 2021-12-01 09:29:15 -05:00
Peter van der Perk ce909b23b1 UAVCANv1 Node implementation work, PNP, Registers and uORB publisher 2021-12-01 09:29:15 -05:00
Jukka Laitinen 79aa8ee587 src/drivers/sw_crypto: Fix a function call argument type mismatch
Fix one function call argument from unsigned -> size_t

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-12-01 09:28:02 -05:00
Jukka Laitinen 9c94e4c5ef crypto: define XMALLOC & XFREE for sw_crypto
Use the same memory allocation in sw_crypto driver as what is used in
src/lib/crypto libraries

In addition, in nuttx protected build, allocate all memory from kernel heap

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-12-01 09:28:02 -05:00
alexklimaj 2571860ff8 Prevent uavcannode from republishing RTCM data received over uavcan 2021-12-01 09:27:11 -05:00
David Lechner a29820bdf8 gps: fix compiling on mac
This fixes the following compile error on Mac:

    src/drivers/gps/gps.cpp:562:23: fatal error: use of undeclared identifier 'B921600'
            case 921600: speed = B921600; break;
                                ^
2021-12-01 09:25:40 -05:00
alexklimaj bfd5a90a5d UAVCAN Moving Baseline Working
Set uavcan publisher priorities

Switch to ardupilot rtcm message and add heading accuracy
2021-11-30 15:59:08 -05:00
Jukka Laitinen c2cbab1e98 Improve stub_keystore configuration
It is possible to either set the keyfile locations in board configuration or
with the same environment variables as before.

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-29 11:09:51 -05:00
Jukka Laitinen 929820136a Move sw_crypto and stub_keystore under src/drivers
This is more logical place for the "backend" implementation than
directly under platform.

This also allows making other implementations as "real" drivers, as well as proper configuration via Kconfigs

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-29 11:09:51 -05:00
PX4 BuildBot 5440802aae Update submodule libcanard to latest Sat Nov 27 12:38:19 UTC 2021
- libcanard in PX4/Firmware (748cbbe79a4f91f472207b8d12e1d01e486a82ab): https://github.com/UAVCAN/libcanard/commit/2a116170285fb47fcaae150ad21c2ccde0756a5f
    - libcanard current upstream: https://github.com/UAVCAN/libcanard/commit/2d449453fc8c4060f276c6dc585d4e1e5bf4fd52
    - Changes: https://github.com/UAVCAN/libcanard/compare/2a116170285fb47fcaae150ad21c2ccde0756a5f...2d449453fc8c4060f276c6dc585d4e1e5bf4fd52

    2d44945 2021-09-18 Kalyan Sriram - Fix sonarcloud issues (#181)
d64f82f 2021-09-13 Kalyan Sriram - WIP: Migrate to Github Actions (#174)
2021-11-27 11:11:29 -05:00
Beat Küng 357a16aca6 pwm_out_sim: split module.yaml into HIL+SIM files 2021-11-23 12:40:22 -05:00
Beat Küng 70b1b19902 uavcan: add configuration parameter to actuator metadata 2021-11-23 12:40:22 -05:00
Beat Küng 490a2cd7ae dshot: handle VEHICLE_CMD_CONFIGURE_ACTUATOR 2021-11-23 12:40:22 -05:00
Beat Küng 2ff6baa250 actuator params: use module_name as prefix to channel label 2021-11-23 12:40:22 -05:00
Daniel Agar 1c6b1f7554 pwm_out: parameter failure error messages 2021-11-22 11:27:45 -05:00
Igor Mišić c73028bb1b iridiumsbd: discard all pending data for flow control enabled 2021-11-22 11:46:15 +01: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 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