Commit Graph

137 Commits

Author SHA1 Message Date
Daniel Agar
466b5db36f uORB::Publication improvements and cleanup (#14784)
- create common uORB::PublicationBase
 - uORB::PublicationQueued types are now type aliases
 - ORB_PRIO use enum type everywhere to avoid accidental misuse
 - PX4Accelerometer/PX4Gyroscope/etc driver libs explicitly advertise on construction, unadvertise on destruction. This is a workaround for any potential issues that might appear when accel/gyro cdev and uORB indexing doesn't align.
2020-05-04 11:09:30 -04:00
Dusan Zivkovic
3d44077f2c camera_trigger: lower the polling rate from 200Hz to 20Hz to reduce the CPU load 2020-03-25 16:23:11 -04:00
Lorenz Meier
027e52d402 Camera trigger: Improve code readability
This helps to trace the code, no functional changes.
2020-03-14 17:50:40 +01:00
Lorenz Meier
8842977d80 Camera trigger: Handle trigger distance handling better 2020-03-14 17:50:40 +01:00
Beat Küng
685be9b3d1 io pins: avoid using GPIO_GPIOx_OUTPUT, use timer_io_channels instead
The whole system now uses timer_io_channels, which will allow the redundant
GPIO_GPIOx_OUTPUT definitions to be removed.
2020-02-13 03:49:16 -08:00
David Sidrane
e847698c9f PX4 System changes Supporting STM32H7
stm32:ToneAlarmInterfacePWM TIM15-TIM17 have a BDTR Register

common:board_crashdump Add H7 support

stm32/board_mcu_version:Support H7

PX4 ADC:Use 32 interface and resoution abstraction

Added PX4 stm32h7 ADC driver

stm32h7:adc fix ADC ready check

fmu: handle BOARD_HAS_PWM==5

cmake: improve error handling for NuttX olddefconfig failures

WorkQueueManager:Quiet loadmon stack warning

camera_trigger:GPIO support < 6 GPIO

Adjust stack sizes (under hw stack check)

PX4 System changes Supporting STM32H7 PX4IO Driver

aerotenna_ocpoc:ADC add px4_arch_adc_dn_fullcount

init.cmake:Track Upstream change needing Make.def at config time

PX4 System changes Supporting STM32H7

NuttX CMakeLists.txt Track upstream changes

Common board_crashdump add header and px4 config

NuttX simplify callinb make libapps

Use UINT32_MAX for error return

drivers:uavcannode NuttX chip is now hardware

drivers:uavcanesc NuttX chip is now hardware

px4io:Avoid Race on AP to PX4 IO upgrade
2019-11-16 11:43:42 +01:00
Beat Küng
3198610f85 src/platforms: move all headers to platforms/common/include/px4_platform_common
and remove the px4_ prefix, except for px4_config.h.

command to update includes:
for k in app.h atomic.h cli.h console_buffer.h defines.h getopt.h i2c.h init.h log.h micro_hal.h module.h module_params.h param.h param_macros.h posix.h sem.h sem.hpp shmem.h shutdown.h tasks.h time.h workqueue.h; do for i in $(grep -rl 'include <px4_'$k src platforms boards); do sed -i 's/#include <px4_'$k'/#include <px4_platform_common\/'$k/ $i; done; done
for in $(grep -rl 'include <px4_config.h' src platforms boards); do sed -i 's/#include <px4_config.h/#include <px4_platform_common\/px4_config.h'/ $i; done

Transitional headers for submodules are added (px4_{defines,log,time}.h)
2019-10-30 11:48:47 +01:00
Daniel Agar
c284198bec clang-tidy: partially fix hicpp-use-override 2019-10-28 10:50:31 -04:00
Daniel Agar
4192414576 clang-tidy: partially fix cppcoreguidelines-pro-type-reinterpret-cast 2019-10-28 10:50:31 -04:00
Daniel Agar
26364d44c9 px4_work_queue: command line status output and shutdown empty queues
* adds a work_queue systemcmd that will bring a tree view of all active work queues and work items
 * WorkQueues now track attached WorkItems and will shutdown when the last WorkItem is detached
2019-10-02 12:23:17 -04:00
Daniel Agar
78ef8aab2d STACK_MAIN increase default 1024 -> 2048 2019-08-30 19:11:51 -07:00
Beat Küng
f8e0441e7b src/platforms/common: move to platforms/common
Script to update include paths:
for i in $(grep -rl 'include <px4_work_queue' src platforms); do sed -i 's/#include <px4_work_queue/#include <px4_platform_common\/px4_work_queue/' $i; done
2019-08-30 07:59:44 +02:00
Hamish Willee
c1c253d9be TRIG_PINS: clarify TRIG_PINS on FMU (#12714) 2019-08-19 14:45:59 +02:00
RomanBapst
cfba41d2f4 posix configs: set trigger interface to mavlink as it's the only one
supported on posix

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2019-08-06 08:08:56 +02:00
RomanBapst
cd85f584cf camera trigger: do not try to start if interface was not created
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2019-08-06 08:08:56 +02:00
Daniel Agar
e69398c09f introduce uORB::PublicationQueued and transition most orb_advertise_queue usage 2019-08-04 10:08:09 -04:00
Daniel Agar
4bf9344913 camera_trigger: move to new WQ and uORB::Subscription 2019-08-01 12:24:12 -04:00
DanielePettenuzzo
15abb159a8 camera_capture: change topic namings to make logging, mavlink streaming and geotagging easier 2019-02-10 18:07:44 -05:00
DanielePettenuzzo
96961c6f9c camera trigger and camera capture publish on two different topics and camera feedback module uses CAM_CAP_FBACK param to choose between the two. 2019-02-10 18:07:44 -05:00
DanielePettenuzzo
3f99204de2 camera_trigger.msg: add feedback field to understand if message camera from trigger or capture driver 2019-02-10 18:07:44 -05:00
DanielePettenuzzo
ea9d6899ae clean up camera capture driver 2019-02-10 18:07:44 -05:00
DanielePettenuzzo
d49752141d rename camera capture feedback param and move it from camera_feedback module to camera capture driver 2019-02-10 18:07:44 -05:00
DanielePettenuzzo
42afc88285 add camera trigger feedback (input capture when camera actually takes the photo) 2019-02-10 18:07:44 -05:00
Hamish Willee
541b962654 CameraTrigger: Feedback fixes 2019-01-08 08:18:24 +01:00
Hamish Willee
68148c5fb4 Add camera trigger pwm params
Fix math::constrain usage

Fix second constraint
2019-01-08 08:18:24 +01:00
Daniel Agar
abb3817d31 boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
Daniel Agar
b1d3bb0403 stop ignoring Wmissing-field-initializers and fix (#9912) 2018-07-22 12:45:52 -04:00
Daniel Agar
cf74166801 double promotion warning fix or ignore per module 2018-07-01 09:36:55 +00:00
Daniel Agar
02d4405a62 c++11 default destructors 2018-06-30 19:55:08 -04:00
David Sidrane
a19fecad94 Removed zero termination as a for constuct was used 2018-06-15 17:08:01 +02:00
David Sidrane
3e0928d9ea Changed variable type and used cpp array init. 2018-06-15 17:08:01 +02:00
David Sidrane
22b8a6c57e Fixed capitalization grammar 2018-06-15 17:08:01 +02:00
David Sidrane
afc8fe39df Rename trigger argument for clarity 2018-06-15 17:08:01 +02:00
David Sidrane
4e5e0c6921 camera_trigger:Refacter GPIO camera triggering
Refactored for efficiency and simplicity.
2018-06-15 17:08:01 +02:00
Beat Küng
229b1274d0 fix camera_trigger gpio: _pins[i] == 0 is valid
Because _pins[i] is set from parameter value - 1
2018-06-14 15:03:39 -04:00
David Sidrane
a38b94c7dd BUGFIX:GPS not working. Invalid values passed to px4_arch_configgpio
This is the root cause of https://github.com/PX4/Firmware/issues/9461
   The _pins array was initialized to -1. It was used to index the
   _gpios array. The value at _gpios[-1] was a number that mapped to
   Analog mode on Port A pin 0. These is the UART4_TX pin and was
   being reconfigured by the fault in the camera_trigger to an
   alaog input.
2018-06-14 15:03:39 -04:00
Daniel Agar
d73d20bcce systemlib delete unused systemlib.h 2018-06-12 09:06:30 +02:00
Daniel Agar
222a91c6be mathlib delete Matrix, Quaternion, Vector 2018-05-23 17:27:09 -04:00
Daniel Agar
4e32cb17df clang-tidy modernize-use-equals-default 2018-05-18 22:48:55 +02:00
Daniel Agar
ea3acb7121 cmake remove circular linking and reorganize
- px4_add_module now requires MAIN
 - px4_add_library doesn't automatically link
2018-04-29 21:48:54 -04:00
Daniel Agar
21ea27f7f6 camera_trigger replace math::Vector with matrix::Vector 2018-03-21 15:35:00 -04:00
Daniel Agar
2bb4644180 camera_trigger remove unnecessary param set notification 2018-01-04 09:21:17 +01:00
Beat Küng
ca7e6fc918 camera_trigger: fix type passed to param_get() 2017-10-27 10:43:15 +02:00
Daniel Agar
58268c832c drivers remove extra semicolons 2017-09-16 21:29:52 +01:00
Daniel Agar
e15afcca7a vehicle_command commands are uint16, not uint32 2017-09-08 09:06:30 +02:00
José Roberto de Souza
4462869432 Add support to new fields in command_ack 2017-08-19 09:04:52 +02:00
José Roberto de Souza
c200d0e9a4 Keep initialization of outgoing vehicle_command_s consistent
All others are initialized this way.
2017-08-19 09:04:52 +02:00
José Roberto de Souza
925efe990d Initialize all outgoing vehicle_command_ack_s and vehicle_command_s
This will initialize those structs with zero in all fields not set
and all fields set will only be change once to the final value not
wasting CPU time zeroing it.

This will guarantee that no non-unitialized structs will have
a trash value on from_external causing it to be sent to the
MAVLink channel without need it.
2017-08-08 21:46:30 +02:00
Lorenz Meier
ae737d8df0 Camera trigger: use double per interface spec 2017-08-01 12:46:59 +02:00
Lorenz Meier
80461fad6b Camera trigger: Support triggering one image immediately.
This allows to re-enable the distance trigger and immediately take a picture. This is helpful to ensure survey areas are covered on entry and exit.
2017-07-09 14:49:21 +02:00