Compare commits

...

1919 Commits

Author SHA1 Message Date
Martin K. Schröder cb1528008f Update Matrix.hpp (#4966)
This was horribly wrong. Matrix is first cast into a matrix of size NxM (which is supposed to be the size of the result - NOT the starting point) so the transpose result becomes garbage. Instead make "Me" an MxN matrix as the original. Took me a whole evening to figure out this problem. Now my Kalman filter finally returns good results.
2016-07-03 12:30:24 +02:00
Julian Oes 403d76c7a7 px4io: set safety on before going into bootloader (#4860)
Sometimes when flashing new firmware, the IO update fails because safety
is off. In this case, we should set safety on first before putting the
IO board into bootloader mode.
2016-06-21 09:18:45 +02:00
Julian Oes a031f6eec8 land_detector: fix timestamp type (#4710)
The overflow of the uint32_t lead to the land_detector start getting
aborted.
2016-06-01 17:16:29 +02:00
Pavel Kirienko 0749b04c9f Fixed stack overflow in UAVCAN process (#4643)
* Increased uavcan stack size; the old value of 1800 was insufficient

* Removed a misleading warning message from uavcan servers initialization
2016-05-26 20:00:46 +02:00
Lorenz Meier 0902401115 SBUS decoding: Fix channel 18 return value 2016-05-21 15:55:32 +02:00
Lorenz Meier 87a6d36341 EKF2: Remove unused header 2016-05-21 14:13:30 +02:00
Lorenz Meier bdf01061d0 Bottle drop: Fix uninitialized member 2016-05-21 14:13:22 +02:00
Lorenz Meier 62c76d62cd LPE: Fix stack smashing 2016-05-21 14:13:15 +02:00
Lorenz Meier 65c4a9190c EKF1: Simplify output 2016-05-21 14:13:08 +02:00
Lorenz Meier 5070238504 EKF1: Fix stack smashing resulting from uninitialized publication 2016-05-21 14:13:00 +02:00
Lorenz Meier 2f52c90885 Fix compile error in MAVLink app 2016-05-19 15:34:25 +02:00
Roman Bapst 9b4b67644d WIP: Manual attitude setpoint for large heading errors (#4564)
* mc pos control: in manual mode calculate attitude setpoint
such that it reflects the users intuition of roll and pitch
for any given heading error

* added some comments on the new manual attitude setpoint generation

* make calculation shorter
2016-05-19 15:32:08 +02:00
Lorenz Meier 556c33cf8c Battery lib: Set valid flag 2016-05-19 15:32:08 +02:00
Lorenz Meier ac256eb64d MAVLink: Use valid flag to initialize fields
Conflicts:
	src/modules/mavlink/mavlink_messages.cpp
2016-05-19 15:32:08 +02:00
Lorenz Meier fd3efe168a Battery status: Add valid flag 2016-05-19 15:32:08 +02:00
Lorenz Meier d091af4fc0 EKF: Be less verbose, avoid floating ng point printing stack smashing 2016-05-14 18:22:58 +02:00
Lorenz Meier 3ebea78d91 IO driver: Fix PWM load 2016-05-14 18:06:32 +02:00
Lorenz Meier 8361b8b3c6 PWM cmd: better reporting 2016-05-14 18:06:24 +02:00
Lorenz Meier 2807e53838 Navigator: Do not publish an empty triplet 2016-05-13 11:05:18 +02:00
Lorenz Meier 2cc613cf64 Commander: Better status feedback 2016-05-13 11:05:12 +02:00
Lorenz Meier d017514d59 sdlog2: Start / stop logging on arming even if enabled already during boot 2016-05-11 14:46:23 +02:00
Lorenz Meier 165f75589b MAVLink app: Use proper C99 NaN define 2016-05-11 12:59:57 +02:00
Lorenz Meier e016f6ca38 Clang: Do not use new pointer option 2016-05-11 12:59:41 +02:00
Lorenz Meier 34baf01d7e Fix altitude estimate 2016-05-11 10:02:03 +02:00
Julian Oes 097840ef83 eagle: fix DSP build
The hexagon-clang is clang-3.5 and does not support -fcheck-new.
2016-05-11 09:32:05 +02:00
Lorenz Meier 52af5408d3 Racer: Disable attitude bias estimatition 2016-05-10 22:57:59 +02:00
Mark Whitehorn b429fbc024 update generic 250 racing quad parameters 2016-05-10 22:33:19 +02:00
sander 29dd1ad47a Code style 2016-05-10 21:34:11 +02:00
sander 1a04e952f8 Inline comment addition 2016-05-10 21:34:11 +02:00
sander e0a8571254 Use filtered voltage and current values for mavlink sys message 2016-05-10 21:34:11 +02:00
sander 9a09c5af5c Add low pass filtered current draw 2016-05-10 21:34:11 +02:00
CarlOlsson 6b5e77250f ekf2: Added airspeed to rpl logging 2016-05-10 21:32:55 +02:00
Roman f4c8bd9be3 updated gains of QAV 250 racer:
- tested in acro mode with good orientation lock and good response
- tested in stabilize mode with good attitude tracking
- needs more testing and maybe small adjustments
2016-05-10 21:27:10 +02:00
Beat Küng 7d733c5ccd cmake: add -fcheck-new to cxx_compile_flags
GCC assumes that operator new never returns null, but throws an exception
instead. This is defined by the C++ standard, and thus ok. But we disable
exceptions with -fno-exceptions, so we break this assumption. GCC then goes
ahead and removes some of our nullptr checks. This flag removes the
assumption.

This adds ~1.4kB to the binary size of the px4fmu-v4 target.
2016-05-10 21:23:53 +02:00
Lorenz Meier 8960ab3402 Navigator: differentiate between takeoff and reposition commands, perform calculations for repositions only when armed. 2016-05-10 13:58:42 +02:00
Lorenz Meier befab7303f Commander: Fix modes switching back to prev mode 2016-05-10 13:57:05 +02:00
Lorenz Meier 06938064c1 MAVLink: Always accept commands to avoid corner case with USB power 2016-05-10 12:41:48 +02:00
Lorenz Meier 86a5244bc9 RTL: Set RTL messages to info so they do not distract the user from the actual operation 2016-05-10 12:40:59 +02:00
Lorenz Meier 098db8595f Style fix 2016-05-10 12:40:28 +02:00
Lorenz Meier 05b19c8e85 Fix yaw handling for land command 2016-05-10 12:09:47 +02:00
Lorenz Meier 65f9a86c19 Navigator: Only run FOH logic when in mission mode 2016-05-10 10:13:37 +02:00
Lorenz Meier a686d9a166 Navigator: Add mission state feedback 2016-05-10 10:12:29 +02:00
Lorenz Meier 09d8476c1d Navigator: update header 2016-05-10 10:12:10 +02:00
Andreas Antener 3b88937594 added ROTATION_PITCH_90_ROLL_270 2016-05-10 09:29:06 +02:00
Lorenz Meier c31c29097d Rename params, add transitional support 2016-05-10 09:27:00 +02:00
Adyasha Dash 468b0b25de added different parameters for ascent and descent rates 2016-05-10 09:18:40 +02:00
Lorenz Meier ffb0d37c8a Commander: Fix reposition handling, run faster to allow catching of consecutive commands 2016-05-09 23:01:54 +02:00
Lorenz Meier b9333d95f4 Navigator: Run faster 2016-05-09 23:01:54 +02:00
Kabir Mohammed 4ed112b259 Remove old toolchain 2016-05-09 16:13:01 +02:00
Lorenz Meier c5a6442ce6 Perf print: Fix division by zero 2016-05-09 09:03:30 +02:00
Lorenz Meier d369a26db4 Fix ESC calibration 2016-05-09 08:44:50 +02:00
Lorenz Meier 32cd154d7c Revert "ESC cal: Increase timeouts"
This reverts commit d2575c2556.
2016-05-09 08:37:05 +02:00
Lorenz Meier 0917a346e4 Mag cal: allow 6, 3 and 2 side calibrations (and anything in-between with bitfields) 2016-05-09 00:32:54 +02:00
Lorenz Meier 4aec95b239 HMC5883: Be less sensitive to large scaling errors and offsets 2016-05-07 14:37:55 +02:00
Lorenz Meier 3f169d9b78 Fix instructions for airspeed calibration 2016-05-07 14:37:55 +02:00
Sander Smeets 1815b47fbf Add reserved type, fixes #4466 (#4476)
* Add reserved type, fixes #4466

* Additional reserved vtol types added to is_vtol
2016-05-07 10:59:49 +02:00
Andreas Bircher 61d2987e6d Geotagging enhancements (#4475)
* adding the altitude tag

* sorting list of pics before tagging

* adding instruction about alphabetical image naming
2016-05-07 10:29:40 +02:00
Daniel Agar 7b0078a20d bosch bmi160 driver (#4469) 2016-05-06 21:07:34 +02:00
Lorenz Meier 755176b247 Sim compile fix 2016-05-06 19:22:18 +02:00
Lorenz Meier ebaca071f6 Battery charge estimation: Factor in voltage drop for idle props 2016-05-06 18:14:34 +02:00
Lorenz Meier 48d7295be6 Default to a multicopter 2016-05-06 07:28:36 +02:00
Mark Charlebois e2c3ea064e Remove release configs (#4454)
* Removed release configs for eagle

These configs are only built for internal testing

Signed-off-by: Mark Charlebois <charlebm@gmail.com>

* Removed release build for eagle from Makefile

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-05-06 07:18:57 +02:00
Lorenz Meier 7dbef87ca0 FW pos control: Reduce excessive stack ssize 2016-05-05 20:11:00 +02:00
Lorenz Meier 5e099d8d16 sensors: Reduce perf counters 2016-05-05 20:09:09 +02:00
Lorenz Meier 901461f301 FW att ctrl: Reduce perf counters 2016-05-05 20:08:54 +02:00
Lorenz Meier 34c7dea08c EKF: Reduce perf counters 2016-05-05 20:08:43 +02:00
Lorenz Meier dd774a60e3 IO driver: Reduce perf counters 2016-05-05 20:08:11 +02:00
Lorenz Meier 2e23d01b60 Systemlib: harden perf counter handling for null ptrs 2016-05-05 20:07:48 +02:00
Lorenz Meier 32e2998fe4 ROMFS: Further squeeze FMUv1 logging buffer 2016-05-05 20:07:20 +02:00
Lorenz Meier e250d12184 Board drivers: Shorten perf names 2016-05-05 20:06:42 +02:00
Lorenz Meier 1840d2287c Update ECL to reduce perf counter usage 2016-05-05 20:06:23 +02:00
Lorenz Meier ae75ba26b7 MAVLink: Remove excessive stack 2016-05-05 19:36:39 +02:00
Lorenz Meier 986145ac23 ROMFS: Free flash by being less verbose 2016-05-05 19:36:28 +02:00
Lorenz Meier 29550a4cee Strip LPE config, as it has become part of the default config 2016-05-05 18:23:33 +02:00
Lorenz Meier 639a589233 Fix RTL abort detection on stick change 2016-05-05 16:55:04 +02:00
Lorenz Meier bbd2b763a3 Fix battery charge level filter 2016-05-05 16:13:58 +02:00
Julian Oes 6c61b67fd5 shmem: fix eagle build 2016-05-05 14:28:35 +02:00
Julian Oes bdaa1b58f6 uart_esc: fix eagle build 2016-05-05 14:28:20 +02:00
Lorenz Meier 2801a54544 Snapdragon param build fix 2016-05-05 14:15:25 +02:00
Lorenz Meier 34ba80ea9d Remove attributes warning for Snapdragon 2016-05-05 14:09:18 +02:00
Lorenz Meier 192510ee1c FMUv4 compile fix 2016-05-05 14:09:03 +02:00
Lorenz Meier 084dfb4026 Fix Snapdragon no-packed 2016-05-05 14:02:31 +02:00
Lorenz Meier 1e7f19335d Build: Less verbose 2016-05-05 13:37:02 +02:00
Daniel Agar 7aa6e85563 enable Wshadow 2016-05-05 13:32:42 +02:00
Lorenz Meier e61f517bc6 Update ECL library to include all bugfixes 2016-05-05 13:18:03 +02:00
Lorenz Meier bdaa2ee20e Update DriverFramework to include recent improvements and fixes 2016-05-05 11:51:36 +02:00
Julian Oes 3e165c51d4 cmake: copy over changes that rebase missed 2016-05-05 09:14:11 +02:00
Julian Oes efd20373ff cmake: re-use the QURT build as well
Instead of calling the eagle cmake script from excelsior, use a shared
sdflight cmake file like in it is done for the POSIX build on
Snapdragon.
2016-05-05 09:12:46 +02:00
Julian Oes 805ef9fff1 cmake: added some comments about eagle/excelsior 2016-05-05 09:11:59 +02:00
Julian Oes 01ad1b642b Makefile: whitespace only 2016-05-05 09:11:29 +02:00
jwilson 5b6fae5380 Adding config changes to allow PX4 to be built for the Excelsior board. 2016-05-05 08:34:31 +02:00
jwilson c87a8bedb6 Adding config changes to allow PX4 to be built for the Excelsior board. 2016-05-05 08:34:31 +02:00
Julian Oes 0c5c111cdd cmake: no param sculling for all eagle configs 2016-05-05 08:09:59 +02:00
David Sidrane 8d510471a1 Turn off paramter culling on eagle 2016-05-05 08:00:26 +02:00
David Sidrane a08cce27d7 Allow paramter culling to be tunred off 2016-05-05 08:00:26 +02:00
Daniel Agar 553818b646 make submodulesclean proper order
-can't sync after deinit
2016-05-04 23:21:17 -04:00
Felix Hu 18176ea73d change productstr 2016-05-04 23:33:48 +02:00
Felix Hu 9dd42e45d5 mod mindpx v2 prototype and defconfig 2016-05-04 23:33:48 +02:00
Lorenz Meier 45a5f2aaa4 MC vel control: Better defaults, better min and max gains 2016-05-04 22:49:36 +02:00
Julian Oes aafcae7e6f MPU9250: integrate using the FIFO sample interval
Instead of calculating time offsets between samples, it is easier just
to assume a constant sampling time. Then all samples can be integrated,
and published every forth time the FIFO buffer has been emptied.

The sampling in the sensor happens at 8kHz, the driver empties the
buffer at 1kHz, and publishes (and resets the integration) at 250 Hz.
2016-05-04 22:28:19 +02:00
Julian Oes f528c63030 integrator: add a put method for known intervals
This adds a second put method to the integrator class. This allows to
integrate with known intervals between samples, rather than based on
timestamps. This makes integrating the samples coming out of the MPU9250
FIFO buffer easier.
2016-05-04 22:28:19 +02:00
Beat Küng e24bef1f70 fix AttPosEKF::FuseOptFlow: move fuse block into 'if (fuseOptFlowData)' block
if fuseOptFlowData == false, then K_LOS was not initialized, but it was
accessed in the next fuse block to update states variable.
2016-05-03 17:34:42 +02:00
Beat Küng 27d821ac9f fix position_estimator_inav_main: put terrain_estimator on the stack
This fixes a memory leak
2016-05-03 17:34:42 +02:00
Beat Küng 44a0981c14 fix px4_task_spawn_cmd: unlock mutex if pthread_create fails 2016-05-03 17:34:42 +02:00
Beat Küng 99a682e7a7 fix px4_task_spawn_cmd: memory leak, if one of the pthread_* calls fails 2016-05-03 17:34:42 +02:00
Beat Küng c942266aa6 fix airspeedsim: add missing return 2016-05-03 17:34:41 +02:00
tumbili 57f73e59b7 warn immediately if ekf2 instance allocation has failed 2016-05-03 16:09:26 +02:00
tumbili 9f5e9594f5 implement ekf instance and block parameter instance as class members
in order to avoid memory management
2016-05-03 16:09:26 +02:00
Julian Oes a6e1df06d9 Merge pull request #4422 from PX4/fix_snappy_muorbinit
muorb: call `initialize()` before `get_instance()`
2016-05-03 15:51:21 +02:00
Michal Stasiak 9db80b75f4 Auto take-off corner case: Reset work item type when landed 2016-05-03 14:04:33 +02:00
Lorenz Meier b883b30404 Simulator: Drain the battery to 15%, reffill it once disarmed to allow for more testing 2016-05-03 13:45:15 +02:00
Lorenz Meier e1e15add01 Reposition: Do not yaw for small dispsplacements 2016-05-03 13:35:53 +02:00
Lorenz Meier a4ad826958 Loiter: Face travel direction when performing reposition 2016-05-03 13:16:19 +02:00
Lorenz Meier 6de02c460a Battery estimation: Widen thresholds and filter more 2016-05-03 12:35:35 +02:00
Lorenz Meier 4c61f52269 Code style fixes 2016-05-03 11:42:28 +02:00
Lorenz Meier c958bfeaa3 MAVLink app: Report OS and Firmware version 2016-05-03 11:39:54 +02:00
Lorenz Meier ff3e17df0d Systemlib: Add FW and OS versioning 2016-05-03 11:39:39 +02:00
Lorenz Meier cef1e79b00 Update DriverFramework version 2016-05-03 10:04:55 +02:00
Mark Charlebois 8cb8987bcd Use DriverFramework as a PX4 module (#4415)
* Use DriverFramework as a PX4 module

Targets wanting to use DriverFramework must add

   lib/DriverFramework/framework

to their config file.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>

* Removed spurious code

No need to add if check before for loop

Signed-off-by: Mark Charlebois <charlebm@gmail.com>

* Added DriverFramework to NuttX configs

Added lib/DriverFramework/firmware to nuttx configs

Signed-off-by: Mark Charlebois <charlebm@gmail.com>

* Updated src/lib/DriverFramework

* Removed DF_TARGET and __DF_${OS} defines

These are now handled inside DriverFramework

Signed-off-by: Mark Charlebois <charlebm@gmail.com>

* Updated DriverFramework

Signed-off-by: Mark Charlebois <charlebm@gmail.com>

* Restored __DF_${OS}

The include files in DriverFramwork need to know the target OS.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-05-03 10:03:28 +02:00
Lorenz Meier 23a9af9088 Bump param meta version 2016-05-01 18:28:45 +02:00
Lorenz Meier c84b2ddeb0 Navigator: Clarify geofence params, remove terminate 2016-05-01 18:28:20 +02:00
Lorenz Meier 9b1e4c42de Multicopter: Clarify speed params 2016-05-01 18:28:01 +02:00
Andreas Daniel Antener bca167aa3f added Sparkletech Ranger Quadplane config (#4411) 2016-05-01 17:30:06 +02:00
Lorenz Meier 6b756ca95a FMU driver: Do not fake RSSI values, but report that we have no proper RSSI available 2016-05-01 16:55:42 +02:00
Lorenz Meier 887dfd1ec4 Fix RSSI lower bound 2016-05-01 16:42:30 +02:00
Lorenz Meier 4ec4deabbd FMU driver: Make auto-detection of analog RSSI more stable 2016-05-01 16:36:15 +02:00
Lorenz Meier be467f606b Sensors: Use C++ init style 2016-05-01 16:25:25 +02:00
Lorenz Meier 088ee74591 Sensor params: Add two param handles that should have been there for a long time 2016-05-01 16:25:14 +02:00
Lorenz Meier c7f3881ccc Quad mixers: Add AUX1-2 passthrough 2016-05-01 16:24:52 +02:00
Lorenz Meier 34081c1d3c FMU: Fix rc lost flag handing 2016-05-01 16:24:33 +02:00
Lorenz Meier bdd2070dd7 FMU driver: Report RSSI for RC
Move RSSI sampling into FMU driver from sensors
2016-05-01 15:48:50 +02:00
Lorenz Meier 3335d32c0a ADC driver: Publish via uORB 2016-05-01 15:48:50 +02:00
Lorenz Meier ca3b1478ce Add ADC report
Enable building of ADC topic
2016-05-01 15:48:43 +02:00
Lorenz Meier b5b4769d1f Enable RSSI sampling on Pixracer 2016-05-01 14:23:25 +02:00
Andrew Tridgell 82aca3d65c FMUv4: enable RSSI analog input pin 2016-05-01 14:22:58 +02:00
Lorenz Meier a189130b52 Commander: Be less chatty on auto disarm 2016-05-01 14:22:34 +02:00
Lorenz Meier 44316ac316 FMUv1: Build camera trigger 2016-05-01 14:22:16 +02:00
Lorenz Meier 9cfd730819 Topic listener: Depend properly on msg_gen 2016-05-01 13:47:41 +02:00
Lorenz Meier 0c7a4fd66e Make parameter source file generation properly depend on board config 2016-05-01 13:47:41 +02:00
Lorenz Meier d55feb2e0e Disable mTECS, but retain code for now (#4407)
* Disable mTECS, but retain code for now

* astyle fw_pos_control_l1

* fw_pos remove pitch_max_special only used by mtecs

* move FW_T_CLMB_MAX to FW TECS param group

* fw_pos initialize tecs_status_s
2016-05-01 13:47:41 +02:00
Lorenz Meier 5a84a223e6 Param handling: Cull unused params 2016-05-01 13:47:41 +02:00
David Sidrane 1c94e27463 Bugfix:#3167 Nested parameter files under xxxx/yyyy/zzzz/kkkk are considered in the scope of xxxx/yyyy
Conflicts:
	src/lib/ecl
2016-05-01 13:47:41 +02:00
David Sidrane 64d43ad381 Scope parameter included in build by cmake/configs
Conflicts:
	Tools/px_generate_params.py
	src/lib/ecl
2016-05-01 13:47:41 +02:00
Daniel Agar 93d261a558 cmake fix px4_base linker flags 2016-05-01 13:47:41 +02:00
Lorenz Meier d0dd52c0d6 Better param meta 2016-05-01 11:40:11 +02:00
thedevleon 9ff6751eb5 hotfix for frsky dport telemetry (#4409) 2016-05-01 00:41:17 +02:00
Lorenz Meier 05885e4e5f Add support to enable FrSky telemetry on TELEM2 2016-04-30 12:00:56 +02:00
Lorenz Meier e7b23a557a Mag cal: Require only three sides, robustify output. 2016-04-30 09:16:12 +02:00
Lorenz Meier f386fb8bae EKF estimator: Disable vibration warnings due to excessive false positives 2016-04-30 09:15:47 +02:00
Lorenz Meier d69109c21c Q estimator: Disable vibration warning due to excessive false positives 2016-04-30 09:15:26 +02:00
Lorenz Meier ae123d9e20 MAVLink app: Do not accept config commands on wireless links when USB is connected 2016-04-30 09:15:06 +02:00
Lorenz Meier 796af52df2 MAVLink app: Offer a little more RAM 2016-04-29 22:05:56 +02:00
Lorenz Meier 2a963dc3b7 Initialize MAVLink system to sane defaults 2016-04-29 22:00:00 +02:00
Lorenz Meier bf0ea86bd9 Fix battery params to better defaults 2016-04-29 20:34:32 +02:00
Lorenz Meier c1bf70eea0 EKF: Bump vibration warning threshold 2016-04-29 17:39:50 +02:00
Lorenz Meier 7fcb53ec74 Q Estimator: Bump vibration warning threshold 2016-04-29 17:39:49 +02:00
Julian Oes ef6892a885 sdlog2 bugfix of vehicle_status conflicting with commander_state (#4402)
* sdlog2: move from STAT.MainState to COMM.MainState

This fixes a bug where vehicle_system_status and the commander internal
state were conflicting.

This will need adaptations in logging tools.

* sdlog2: don't bother changing STAT.MainState

For compatibility reasons, let's stick to the used log field (but still
fix the bug where the buffer (union) was overwrittern.
2016-04-29 17:16:45 +02:00
Julian Oes eb1ab4011a sensors: the ifdef logic was inverted (#4401) 2016-04-29 16:21:52 +02:00
Julian Oes 49ae3e17d5 land_detector: fix wrong astyle formatting (#4399) 2016-04-29 15:36:18 +02:00
Lorenz Meier 1b11049e42 Land detector: fix code style 2016-04-29 15:01:39 +02:00
Lorenz Meier a741257293 Enable new ESP8266 TELEM2 output mode 2016-04-29 14:59:11 +02:00
Lorenz Meier 18b72241ce System params: Update choices for ESP8266 2016-04-29 14:58:41 +02:00
Lorenz Meier 8b9b02bee8 Land detector: Update params 2016-04-29 14:58:27 +02:00
Lorenz Meier 5c1d2c1cee Land-detector: Better granularity for manual and auto flight modes 2016-04-29 14:50:45 +02:00
Julian Oes 234068989b sensors: treat RPi like QURT 2016-04-29 13:50:18 +02:00
Lorenz Meier 3ccd9988d3 Multicopter land detector: Enforce sync between system and detector 2016-04-29 12:34:58 +02:00
Lorenz Meier 109f88564d Commander: Init land detector 2016-04-29 12:34:28 +02:00
Lorenz Meier 567364317a Fix formatting in battery 2016-04-29 11:16:41 +02:00
Lorenz Meier 4a94835880 Fix formatting in sensors 2016-04-29 11:16:27 +02:00
Beat Küng 825d754036 orb nuttx: add irqsave() guard around 64bit timestamp readout 2016-04-29 11:15:16 +02:00
Beat Küng 1ce5d795be orb: move SmartLock into global space and use it also for NuttX 2016-04-29 11:15:16 +02:00
Beat Küng 4269db73a0 refactor semaphore: move into separate file 2016-04-29 11:15:15 +02:00
Beat Küng 843e54f554 orb DeviceMaster posix: make destructor virtual 2016-04-29 11:15:15 +02:00
Beat Küng c6da90ac63 orb nuttx: fix threadding issue in uORB::DeviceNode::write
same issue as in posix code: 64bit values are not atomic in general.
2016-04-29 11:15:15 +02:00
Beat Küng 44012be8b6 orb posix: fix multi-threading issues
in detail:
- in the write method: the following are not necessarily atomic operations:
 	_last_update = hrt_absolute_time();
 	_generation++;
- appears_updated() was called with a lock held in some cases, but not
  in ioctl
- use the SmartLock class, so that unlock() is not needed before every
  return call. Makes it less error prone
2016-04-29 11:15:15 +02:00
Beat Küng 9a0cff2a00 vdev: add a SmartLock class that automatically unlocks when going out of scope 2016-04-29 11:15:15 +02:00
Beat Küng aacfd8d553 orb: add some comments about locking 2016-04-29 11:15:15 +02:00
Beat Küng 5cf78da7d7 orb uORB::DeviceMaster::_flavor: make it const, it's never changed 2016-04-29 11:15:15 +02:00
Beat Küng c61a5acd59 orb DeviceNode::filp_to_sd: make this method static
Makes it easier to see that no class members are accessed
2016-04-29 11:15:15 +02:00
Beat Küng 1a57488ac6 orb: add a separate uORB::Manager::initialize() method
This fixes a race condition: uORB::Manager::get_instance() is used in a
multi-thread context, but the singleton initialization was not thread-safe.
Further, this avoids having to check for nullptr every time the singleton
is accessed.

uORB::Manager::initialize() is called when uorb is started. No one else
accesses the singleton before that point, because it is only used in the
orb_* methods, and in muorb. Both require uorb to be started already when
they are used.
2016-04-29 11:15:15 +02:00
Lorenz Meier 1b133931a6 Battery charge estimation: Refactor the filtering strategy and move it to the backend, doing integration before and filtering the resulting charge estimate 2016-04-29 11:05:44 +02:00
Lorenz Meier 343b8fb50f Sensors app: Send proper throttle setting to battery charge level estimator 2016-04-29 11:02:51 +02:00
Lorenz Meier 49d174aae4 Add small script to sync meta data to QGC build 2016-04-29 11:02:29 +02:00
Lorenz Meier 52d85f56e1 upload sh: Fix portability 2016-04-29 11:02:15 +02:00
Julian Oes 08f88d006f sensors: use the empty sensor init for RPi as well
The RPi build is based on the same DriverFramework base like the QURT
build, therefore it should use the same empty sensor init function.
2016-04-29 10:02:53 +02:00
Beat Küng 1827f78ab7 orb unit tests: use orb_unadvertise & create a separate test for it
Now 'uorb test' can be called multiple times.
2016-04-29 09:31:08 +02:00
Beat Küng 9da537c092 uorb: add uorb_unadvertise method
This is necessary when using multiple instances of a topic. However it does
not free the underlying resources, as it is assumed they will be used again
at a later point.
2016-04-29 09:31:08 +02:00
Julian Oes 0c0d251003 Intersil wrapper continued
* Qflight: add intersil sensor driver

* df_isl_wrapper: change driver lib name to isl

* posix-config: add df_isl_wrapper start command to eagle startup

* isl_wrapper: cleanup isl wrapper

* isl: remove unused option -R

* isl: change the driver name to isl29501

* DriverFramework: updated submodule again

This is to get the latest `make fix-style` changes.

* df_isl29501_wrapper: rename wrapper all the way
2016-04-28 15:31:40 +02:00
Andreas Antener f1d86a9064 removed not needed memsets 2016-04-28 13:39:02 +02:00
Andreas Antener a6878fb653 initialize offboard structs 2016-04-28 13:39:01 +02:00
Lorenz Meier 3345a586d2 Battery: Initialize lowpass value properly 2016-04-28 13:24:53 +02:00
Lorenz Meier 4441b74020 sensors: Default battery to a 50% setting 2016-04-28 13:06:02 +02:00
Lorenz Meier a676af3d42 Battery: Deal with symmetric throttle 2016-04-28 13:05:44 +02:00
Lorenz Meier d67ff7564f Fix sdlog2 race between copy and store 2016-04-28 12:20:16 +02:00
Lorenz Meier e42b1dc948 Revert "fix bug in the logging app:"
This reverts commit 29c5c25f47.
2016-04-28 12:14:29 +02:00
jwilson eb89cddea3 Adds pressure sensor driver to the build and modifies the configuration file to get the associated driver loaded. 2016-04-28 08:53:06 +02:00
Roman 29c5c25f47 fix bug in the logging app:
- either sensor combined or the replay topic where copied into
the union buffer but at times the memory was overwritten by other
topics which updated below
- this change makes sure that the two topics are copied into the union
buffer at the correct location in the code
2016-04-27 21:40:07 +02:00
Lorenz Meier 5bcdfed203 Improve trigger meta 2016-04-27 19:57:26 +02:00
Lorenz Meier a01cb1d0b8 Bump param meta version 2016-04-27 16:40:58 +02:00
Lorenz Meier 2fc6cdd994 Gazebo SITL: Ensure a tightly closed altitude control loop 2016-04-27 15:30:44 +02:00
Lorenz Meier 65d0d1f9e3 Commander: Allow better battery failsafe warning / actions 2016-04-27 14:40:56 +02:00
Lorenz Meier f3586b371a Travis CI: Upload all default targets 2016-04-27 12:17:55 +02:00
Lorenz Meier 7a197c5384 Travis CI: Re-create historic file names 2016-04-27 12:14:52 +02:00
Lorenz Meier 83f146aea7 Update master build 2016-04-27 11:42:01 +02:00
David Sidrane 161f92250f Update CMakeLists.txt (#4377)
Removes warning as Cmake now using STACK_MAIN
2016-04-27 08:29:06 +02:00
Julian Oes 99286cf1bd ekf2: replace !isnan with PX4_ISFINITE (#4374) 2016-04-26 22:15:30 +02:00
Julian Oes ea3adee28a shmem_qurt: fix format 2016-04-26 10:23:39 +02:00
Julian Oes e3c9135ac2 param_shmem: fix bug where params didn't stick
There was the case where a param was changed on the Linux side but the
change did not get saved on the DSP side because the param was not in
the local list of changed params on the DSP side. On save, the param
index is now refreshed, and param_get is called on all params that have
changed. This is a hacky workaround but resolves the problem for now.
2016-04-26 10:21:01 +02:00
Lorenz Meier 2fff2d4eac Robustify single mode selection. Fixes #4364 2016-04-26 09:11:35 +02:00
Mark Whitehorn 1a5040b9d2 only call fsync in NUTTX builds 2016-04-25 21:51:09 +02:00
Mark Whitehorn 6f20b9e1df fix unused variable error 2016-04-25 21:51:09 +02:00
Mark Whitehorn 4cf427510e fix problem with log_file_path and add msg timestamps 2016-04-25 21:51:09 +02:00
Andrew Tridgell 6552f925f8 px4fmu: allow control of safety state on FMUv4
allows for MAVLink control of safety state
2016-04-25 17:25:47 +02:00
Nicolas de Palezieux 9199c5ec17 changed parameters to int32_t to prevent stack smashing 2016-04-25 16:16:04 +02:00
Nicolas de Palezieux b1c6a2c7ab ensure PWM_DISARMED value is sent to ESCs if snapdragon does not send anything else 2016-04-25 16:11:49 +02:00
Julian Oes f454d74a51 mavlink: fix Snapdragon build 2016-04-25 15:35:22 +02:00
Julian Oes 2e476ce6bf gps/devices: updated submodule
This includes the mtk bugfix for Snapdragon.
2016-04-25 06:21:36 -07:00
Julian Oes 5e5af9c37f posix px4_layer: fix Mac build 2016-04-25 06:21:36 -07:00
Julian Oes ee57055b99 posix px4_layer: fix linking error on QURT 2016-04-25 06:21:36 -07:00
Julian Oes c975d01200 gps: fix Snapdragon build 2016-04-25 06:21:36 -07:00
Lorenz Meier 191afe499c Gazebo: More Eigen3 fixes 2016-04-25 14:53:01 +02:00
Lorenz Meier 14a20e3112 MAVLink streams: Better log file handling 2016-04-25 14:46:15 +02:00
Beat Küng b855d76f28 fix gps: subscribe to topics in the gps thread instead of the shell thread
NuttX does not inherit file descriptors when creating new tasks.
2016-04-25 13:35:41 +02:00
Beat Küng 58a7db51c3 gps: add RTCM message rate to the 'gps status' command 2016-04-25 13:35:41 +02:00
Beat Küng acc40c8217 orb unittest: increase waiting time so that test does not fail on slow devices
This test failed on the pixracer because the subscriber thread was too slow
and thus orb messages got lost. This behavior is expected, but the test
should not fail because of that, so we increase the sleeping time.
2016-04-25 13:35:41 +02:00
Julian Oes 0031220c1a df_mpu9250_wrapper: add reporting for range hits
We now send log messages over mavlink in case excessive vibrations are
detected.
2016-04-25 12:48:48 +02:00
Julian Oes 84c87696fe df_mpu9250_wrapper: use the elapsed counter 2016-04-25 12:48:48 +02:00
Julian Oes 20e494410a df_mpu9250_wrapper: add an info function 2016-04-25 12:48:48 +02:00
Julian Oes 23f882063e df_mpu9250_wrapper: also free the perf_counters 2016-04-25 12:48:48 +02:00
Julian Oes 1cf7de8fdb perf_counter: perf_print_counter now works on QURT 2016-04-25 12:48:48 +02:00
Julian Oes d55b4802f1 df_mpu9250_wrapper: add perf counters 2016-04-25 12:48:48 +02:00
Julian Oes 4ac67f69d1 DriverFramework: updated submodule
This brings the latest renamed counters.
2016-04-25 12:48:48 +02:00
Julian Oes 944acfaf75 simulator: change after perf_counter API change 2016-04-25 12:48:48 +02:00
Julian Oes fa6fe4ca96 px4io: small change after perf_counter API change 2016-04-25 12:48:48 +02:00
Julian Oes 662c097803 perf_counter: add function to set a count
This needed the set function which sets elapsed to change the name to
avoid ambiguities.
2016-04-25 12:48:48 +02:00
Julian Oes 08a1941fd6 df_mpu9250_wrapper: fix style 2016-04-25 12:48:48 +02:00
Julian Oes 75444ae084 df_mpu9250_wrapper: use FIFO time offsets
- Make use of the FIFO time offsets provided by the MPU9250 driver.
  It allows to use proper dt for the integration.
- Got rid of the unnecessary perf_counters for now.
- Properly use the changed integrator lib.
- Provide integral_dt for ekf2.
2016-04-25 12:48:48 +02:00
Julian Oes d824ca3a14 integrator: fix style 2016-04-25 12:48:48 +02:00
Julian Oes 544f0b70a9 DriverFramework: updated submodule
This brings error counters and timestamp offsets between FIFO samples.
2016-04-25 12:48:48 +02:00
Julian Oes 302bf879de integrator: improvements and cleanup
The integrator had an untested read mode which did not apply the coning
correction. Instead of keeping two integrals (auto/read) it is now one
and the reset mechanism can be selected by setting the
auto_reset_interval to 0 to disable it or some positive number else.

Also, the integrator could potentially explode if a (single) timestamp
was wrong, so before the last integrated one. This is now caught with a
dt of 0 instead of inf/nan.
2016-04-25 12:48:48 +02:00
Julian Oes f91be1e281 DriverFramework: updated submodule
This raises the sampling frequency from 500 Hz to 8kHz using the FIFO
buffer.
2016-04-25 12:48:48 +02:00
Lorenz Meier 3f1994886a Add new GPS submodule to check 2016-04-25 09:49:42 +02:00
Beat Küng afefa4d2a0 gps: use a max poll timeout of 50ms to check for orb msgs more often
Before this, I measured a max time spent in poll of 197ms. By checking at
least every 50ms we make sure to not lose any orb messages.
2016-04-25 09:48:24 +02:00
Beat Küng f62324c8a6 mavlink_receiver.cpp: use sizeof(gps_inject_data_topic.data) instead of hardcoded size 2016-04-25 09:48:24 +02:00
Beat Küng 6029551c63 gps & mavlink receiver: use C arrays instead of std::array<> 2016-04-25 09:48:24 +02:00
Beat Küng 4cf08ba580 gps handleInjectDataTopic: repeatedly check for new orb messages
Without that there were still lost messages, now it's all fine (tested
under Linux)
2016-04-25 09:48:24 +02:00
Beat Küng c8f2a7ea02 update gps submodule (fix coding style) 2016-04-25 09:48:24 +02:00
Beat Küng 1085f33f88 gps: remove the old driver files 2016-04-25 09:48:24 +02:00
Beat Küng 7ef718912a drv_gps.h: cleanup the file, remove unneeded stuff 2016-04-25 09:48:24 +02:00
Beat Küng 1013ae7d49 gps: major restructuring & extension of ubx driver: use a submodule for gps drivers
The gps drivers are now in a platform-independent submodule because they
are used in QGroundControl as well
2016-04-25 09:48:24 +02:00
Beat Küng b427f5c90d mavlink_receiver.cpp: fix coding style 2016-04-25 09:48:24 +02:00
Beat Küng 5b684a77f4 mavlink_receiver.cpp: remove __BEGIN_DECLS, __END_DECLS
This is the wrong usage of the macros and not needed at this place
2016-04-25 09:48:24 +02:00
Beat Küng 5cf351f585 orb: add gps_inject_data message & publish from mavlink 2016-04-25 09:48:24 +02:00
Lorenz Meier faa85a2eba Battery: Add proper units 2016-04-25 09:36:28 +02:00
Lorenz Meier 2a83cb54c8 Raise param meta version 2016-04-25 09:36:13 +02:00
Lorenz Meier 388d29baec MC pos control: Show normalized units properly 2016-04-25 09:35:58 +02:00
Lorenz Meier 9b71379ea6 FW pos control: Show normalized units properly 2016-04-25 09:35:41 +02:00
Lorenz Meier aa6168963a Land detectorr: Fix units, complete meta data for decent user representation 2016-04-25 09:35:23 +02:00
Lorenz Meier 3598d1e291 Fix typo in param meta 2016-04-25 08:44:51 +02:00
Lorenz Meier c7df99030a Commander: Limit data link loss params to save ranges 2016-04-25 08:44:51 +02:00
Lorenz Meier dc635b460c Update FIirmware param meta 2016-04-25 08:44:51 +02:00
Lorenz Meier fd9978c805 Battery: Trigger RTL a little later 2016-04-25 08:44:51 +02:00
Lorenz Meier f533e00d5c SITL configs: Fix param names 2016-04-25 08:44:51 +02:00
Lorenz Meier 163b5afc73 Navigator: Fix style 2016-04-25 08:44:51 +02:00
Lorenz Meier 35180e1d10 Hide OBC failsafe actions for normal users 2016-04-25 08:44:51 +02:00
Lorenz Meier d3dff8a1e2 Raise params version 2016-04-25 08:44:51 +02:00
Lorenz Meier 3003ed8d40 Make battery failsafe limits configurable 2016-04-25 08:44:51 +02:00
Lorenz Meier 5c70b44d0a Navigator: Support finer granularity of RTL and failsafe actions 2016-04-25 08:44:51 +02:00
Lorenz Meier 55d18949bc Commander: support finer granularity of data llink loss and RC loss actions 2016-04-25 08:44:51 +02:00
Leon b781006e20 Increase sending of navstate and gpsfix to 2 Hz 2016-04-25 07:55:53 +02:00
Leon 5d114d3984 Small improvements and corrections
Added more SPort GPS Sensors

Fix code style

Adding DIY IDs

Moved navstate and gpsfix away from Temp1 and Temp2 to their own IDs

More consistent names

Fix codestyle

Rebase work off master frsky_telemetry driver

Fixed code-style error

forgot something
2016-04-25 07:55:49 +02:00
Julian Oes a302e79bb6 param_shmem: be less chatty, printf cleanup 2016-04-24 20:03:10 +02:00
Lorenz Meier a1e90f4aa7 Better loiter handling 2016-04-24 20:03:05 +02:00
Julian Oes 92afa7c258 mag_calibration: bugfix for device ID of mag
The device ID is defined as a uint32_t in the driver and topic but
stored as a int32_t param. It is therefore sufficient if the device ID
is not 0 in order to be valid.
2016-04-24 17:07:37 +02:00
Lorenz Meier 588133e85d Commander: Only change flight mode immediately if GCS requested it 2016-04-24 12:10:23 +02:00
Lorenz Meier 2244ff167f Navigator: execute on reposition commands 2016-04-24 11:54:20 +02:00
Lorenz Meier 711053fd76 Commander: Switch flight mode so reposition commands can get applied 2016-04-23 20:12:27 +02:00
Lorenz Meier 05aae9410c Navigator: Handle reposition commands. Untested 2016-04-23 20:12:11 +02:00
Lorenz Meier c99ff66f75 Support disarming fixed wing if landed 2016-04-23 18:27:18 +02:00
Lorenz Meier 1ecfaff6ea Fix up power consumption estimation 2016-04-23 17:51:24 +02:00
Lorenz Meier 4beca408b9 Fix Jenkins build error 2016-04-23 16:59:40 +02:00
Lorenz Meier 25f327c4ac Set RSSI to zero if we loose signal 2016-04-23 16:33:25 +02:00
Lorenz Meier 82d51c5d17 Support more failsafe actions on data link and RC loss 2016-04-23 16:31:03 +02:00
Lorenz Meier b402cd9336 Battery: Fix code style 2016-04-23 15:51:44 +02:00
Daniel Agar 41c1e56075 FW stabalized mode properly initialize att_sp 2016-04-23 15:50:43 +02:00
Paul Riseborough f3ec95c3b2 ekf2_replay: Add missing GPS height data 2016-04-23 15:50:01 +02:00
Mark Charlebois 1b3ac22d3f Added missing controllib
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-04-23 15:49:34 +02:00
Andreas Antener c0177e9795 do not reset VT parameters on every boot 2016-04-23 15:48:42 +02:00
Lorenz Meier 8955fdc0e1 Commander: Decouple land detection states 2016-04-23 15:47:59 +02:00
Lorenz Meier ba817c7e45 Battery handling: Make critical state accessible 2016-04-23 15:47:20 +02:00
Lorenz Meier 268b2e3546 Improve yaw behaviour in RTL 2016-04-23 15:47:00 +02:00
Lorenz Meier 50433c5eee Commander: Better RTL output 2016-04-23 15:12:20 +02:00
Lorenz Meier 36e2bdf876 Commander: Support battery failsafe 2016-04-23 14:52:37 +02:00
Lorenz Meier 5b897e095a Generalize RTL handling 2016-04-23 14:52:30 +02:00
Lorenz Meier a49ba1a383 Sensors: Code style 2016-04-23 14:45:12 +02:00
Lorenz Meier 7d57713dd5 Start simulator after params have been loaded and set 2016-04-23 14:33:10 +02:00
Lorenz Meier 19f2a7bff0 Only publish battery if we can measure something, initialize battery topic in commander correctly 2016-04-23 14:29:25 +02:00
Lorenz Meier 4b0f1a6fb1 Battery lib: Fix interfaces and params 2016-04-23 14:25:21 +02:00
Lorenz Meier 0733651d01 Simulator: Fix battery interface 2016-04-23 14:25:01 +02:00
Lorenz Meier 803880a9f8 MAVLink: Fix current reporting 2016-04-23 14:24:36 +02:00
Benoit Landry 1b7319d2e5 adding the position control mode change for accel control back to the commander 2016-04-22 10:31:52 +02:00
Benoit Landry 95faba391a accel control in pos controller 2016-04-22 10:31:52 +02:00
Benoit Landry ce810542e2 simple NED acceleration control interface 2016-04-22 10:31:52 +02:00
Robert Dickenson 2dac97fe68 Add required rotation option to driver startup command and fix a couple of details in warnings/comments 2016-04-22 10:30:19 +02:00
Robert Dickenson b797657694 remove the commented out WARN as it's no longer an issue 2016-04-22 10:30:19 +02:00
Robert Dickenson 91241626a9 change type mag_scale to type struct mag_calibration_s for compatibility with master (only noted this thanks to travis build test) 2016-04-22 10:30:19 +02:00
Robert Dickenson cb3c625ea4 Apply AStyle to fixup formating 2016-04-22 10:30:19 +02:00
Robert Dickenson 630146686e Comment out line which checks for attempt to set sampling rate beyond that supported by device. 2016-04-22 10:30:19 +02:00
Robert Dickenson edd17771b1 Quiet an annoying warning 2016-04-22 10:30:19 +02:00
Robert Dickenson 45a601b9c1 New driver for the LIS3MDL magnetometer. 2016-04-22 10:30:19 +02:00
Lorenz Meier ff800a4c97 MAVLink app: Save stack for file name handliling, log only when armed 2016-04-22 10:28:13 +02:00
Lorenz Meier 851b5d02a9 Fix potential string overflow corner case 2016-04-22 09:36:07 +02:00
Lorenz Meier b046f93173 Better MAVLink app error reporting 2016-04-22 09:34:02 +02:00
Lorenz Meier 4077616264 Significantly reduce stack size needed for calibration in commander 2016-04-22 09:03:57 +02:00
Nicolas de Palezieux f2c31ec4da passthrough: stop commander s.t. it doesn't disarm. Unfortunately this makes it impossible to stop the no-SD-card beeping with the safety switch 2016-04-22 08:50:25 +02:00
Nicolas de Palezieux 8475b32909 fixes issue with sending PWM signals to ESCs in passthrough mode 2016-04-22 08:50:25 +02:00
Mark Charlebois 578d1f1f24 Removed csr_gps from module list
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-04-22 08:49:26 +02:00
Mark Whitehorn 37bd291446 fix regression which broke rattitude mode 2016-04-22 08:40:40 +02:00
Lorenz Meier c2f88c78b4 Fix battery current integration issue 2016-04-21 21:32:18 +02:00
Julian Oes 8e5091703c commander: no message due to LED/buzzer not found
The LED init and Buzzer init messages were only annoying and not helpful
on Snapdragon and SITL. Therefore they are replaced with only developer
printfs.
2016-04-21 21:22:52 +02:00
Nicolas de Palezieux 8c246b3219 mavlink_receiver: only publish the distance measurement of the mavlink flow message on uORB if they are valid
On the snapdragon, optical flow is computed in a separate process and sent to the mainapp via mavlink. Distance measurements come from a range sensor and are already published on uORB.
Here we make sure that meaningless distance values in the mavlink optical flow message do not interfere with the ones from other sources.
2016-04-21 18:18:08 +02:00
Julian Oes 88626cf5f1 px4io: remove leftover printf 2016-04-21 13:34:46 +02:00
Julian Oes 482ce55d57 px4io: allow 0 as a PWM signal 2016-04-21 13:32:38 +02:00
Julian Oes d5cc9e0873 snapdragon_rc_pwm: allow the driver to be stopped 2016-04-21 13:00:08 +02:00
Lorenz Meier 835ee4d709 Commander: Better status feedback about power status 2016-04-21 10:36:14 +02:00
Lorenz Meier ef69f74977 Do not use low level debug output on USB resume 2016-04-21 10:35:57 +02:00
Lorenz Meier c8c7c84110 Simplify ADC driver 2016-04-21 10:35:44 +02:00
Lorenz Meier 5569d5444b Fix incorrect use of constant 2016-04-21 10:02:52 +02:00
sander 3307c71e6d Additional yaw handling on land 2016-04-21 09:32:33 +02:00
sander e2812e34f8 Restore yaw orientation on RTL descend 2016-04-21 09:32:33 +02:00
sander f5d3871b9c Fix RTL vtol back transition 2016-04-21 09:32:33 +02:00
Andreas Antener e42206fc61 use waypoint type for RTL descent phase 2016-04-21 09:32:33 +02:00
Andreas Antener 433eeb3d09 make landing in RTL default for VTOL capable vehicles 2016-04-21 09:32:33 +02:00
Andreas Antener f224375641 VTOL: transition to MC before descent in RTL 2016-04-21 09:32:33 +02:00
Lorenz Meier af02b860b3 Revert "bug fixes for sitl cmake files"
This reverts commit 76df4ecf34.
2016-04-21 08:39:28 +02:00
jwilson f76bc2aa18 Adding additional changes to the legacy driver config files, originally in the non-legacy driver config files. 2016-04-21 07:57:30 +02:00
jwilson d2ecd3c9f5 Modify config files to incorporate changes made in the corresponding non-legacy CMake config files. 2016-04-21 07:57:30 +02:00
jwilson fb97edd8af Adding new CMake config files which will be used to generate a build which uses the legacy sensor drivers. This is only temporary until integration with the corresponding PX4 DriverFramework drivers is complete. 2016-04-21 07:57:30 +02:00
SimsGautam 76df4ecf34 bug fixes for sitl cmake files 2016-04-20 22:28:39 +02:00
Nicolae Rosia fff535857d drivers/gps: fix segfault when parsing arguments
running gps command without parameters results in segfault
due to illegal access to unallocated memory

Signed-off-by: Nicolae Rosia <nicolae.rosia@gmail.com>
2016-04-20 21:50:10 +02:00
Paul Riseborough df3dce33c7 ecl: update library reference
Improved reporting and logging of ekf2 status
2016-04-20 21:47:29 +02:00
Paul Riseborough 771d753419 sdlog2: log ekf2 GPS and control status flags 2016-04-20 21:47:29 +02:00
Paul Riseborough 631040b30b ekf2: publish filter control mode status 2016-04-20 21:47:29 +02:00
Paul Riseborough 07eb4feed8 ekf2: publish GPS check status 2016-04-20 21:47:29 +02:00
Paul Riseborough ba5d608cad msg: Add control mode data to estimator status 2016-04-20 21:47:29 +02:00
Andreas Antener fce556e34c commented tests for mp sitl cmake config 2016-04-20 17:52:02 +02:00
Andreas Antener dab7d1f828 allways pull latest container before running tests 2016-04-20 17:23:05 +02:00
Andreas Antener 0282321304 fixed test results directory location 2016-04-20 17:00:39 +02:00
Andreas Antener bee2c98785 reorganized posix sitl launch scripts, reorganized mavros python test scripts (integration tests) and updated them for posix sitl, removed old and not working integration tests 2016-04-20 16:51:58 +02:00
Andreas Antener a8a57ca20c make iris move a bit faster in gazebo and removed broken assertion from posctl test 2016-04-20 11:07:02 +02:00
Andreas Antener 326405faa4 updated mavros IT scripts, copy more data after the test 2016-04-20 11:05:29 +02:00
Andreas Antener 7f767a86e5 copy test results outside container 2016-04-20 11:05:29 +02:00
Andreas Antener fc8d9588c6 added IT run scripts to Firmware 2016-04-20 11:05:29 +02:00
Andreas Antener cbc94fbe8c first attempt to run mavros tests in new sitl environment 2016-04-20 11:05:29 +02:00
Mark Whitehorn f097e118df assign timestamp 2016-04-19 21:19:44 +02:00
Julian Oes 91133021d6 posix/qurt cmake: fix eagle upload 2016-04-19 15:10:43 +01:00
tumbili d227c61246 update all fields of the control state message 2016-04-19 13:25:41 +02:00
tumbili 42e733b984 better comments for control state message 2016-04-19 13:25:41 +02:00
Sebastian Verling 184a2fa7de publishing velocity and position to control state in ekf2
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
2016-04-19 13:25:41 +02:00
Roman b1b8ab62a3 updated ecl ekf 2016-04-19 13:25:41 +02:00
Roman c6668cae6c provide ekf2 with eas2tas factor 2016-04-19 11:20:57 +02:00
Roman f5730dc7b5 updated ecl ekf 2016-04-19 11:19:36 +02:00
Beat Küng 80e05dd3a3 orb: fix memory leaks, forgotten unlock & wrong exit condition in advertisement
How can someone just add a FIXME for such a simple case?!
2016-04-19 11:12:36 +02:00
Beat Küng fdc10d212b orb: fix when orb_subscribe_multi is called before orb_advertise_multi
This fixes the previously introduced unit test. It fixes the case where
orb_subscribe_multi is called multiple times with different instances,
and no publisher advertised the topic yet. In this case all subscribers
got the same instance 0.
2016-04-19 11:12:36 +02:00
Beat Küng 8fa18f412a uorb: add unit test that currently fails (simulation of a queue with a single topic)
This fails both on NuttX & Linux
2016-04-19 11:12:36 +02:00
Beat Küng 9041b7e16d fix formatting style for uORB 2016-04-19 11:12:35 +02:00
Beat Küng 934207b518 uORB: merge the files uORBManager_{nuttx,posix}.cpp, largely the same code 2016-04-19 11:12:35 +02:00
Beat Küng c598429547 uORB doc: remove redundant doc & update existing one (describe the _multi methods) 2016-04-19 11:12:35 +02:00
Beat Küng e9019582cc uORB::DeviceMaster::ioctl: avoid operator[], since we already have the iterator
In the existing implementation, the map had to be searched twice.
2016-04-19 11:12:35 +02:00
Beat Küng 9c360e9f88 uORB: fix node_open: *instance is read even though it's an output parameter
This fixes a subtle bug: the instance parameter of orb_advertise is an output
parameter and thus its value can be random. However in node_open this value
is accessed and thus the open(...) call could succeed even though it should
not. This can happen for example if a second advertiser of a topic calls
orb_advertise_multi with *instance=0.

The existing implementation worked only because *instance was initialized
with -1 in most cases.
2016-04-19 11:12:35 +02:00
Lorenz Meier 995710da00 MAVLink update 2016-04-19 11:12:15 +02:00
tumbili 852e33697d fixed ekf2_replay:
we are now using the vehicle_landing_detected topic
instead of getting the landed flag from the vehicle status topic
2016-04-19 10:58:14 +02:00
Benoit Landry 10b9fde169 parameters for esc duty cycles 2016-04-18 23:43:05 +02:00
Lorenz Meier 6801a5a0d1 Update cmake_hexagon version 2016-04-18 23:40:56 +02:00
Mark Charlebois 169259059b Updated cmake_hexagon and all the associated files that use it
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-04-18 23:40:56 +02:00
Mark Charlebois e904184613 Updated cmake/cmake_hexagon 2016-04-18 23:40:56 +02:00
jwilson 5211da9f5b Adding new CMake config files which will be used to generate a build which uses the legacy sensor drivers. This is only temporary until integration with the corresponding PX4 DriverFramework drivers is complete. 2016-04-18 23:36:35 +02:00
Lorenz Meier 03f4e1f437 Update SITL Gazebo version 2016-04-18 22:53:08 +02:00
Emmanuel Roussel b3841e5ea5 ran astyle 2016-04-18 22:27:11 +02:00
Emmanuel Roussel ec427f61c4 fix a small mistake: parameter LNDMC_FFALL_TRIG was not shown in QGC. 2016-04-18 22:27:11 +02:00
Emmanuel Roussel f350bab67b use accelerations provided by the control_state message instead of
sensor_combined
2016-04-18 22:27:11 +02:00
Emmanuel Roussel e6b3cf3ac9 Fix code style
(Ran AStyle)
2016-04-18 22:27:11 +02:00
Emmanuel Roussel 59c9f6b4fb Removed debug parts
Disable free-fall detection when threshold is 0
2016-04-18 22:27:11 +02:00
Emmanuel Roussel 776c7f5d60 Updated commander to take free-fall into account
Added free-fall status in vehicle_status topic
2016-04-18 22:27:11 +02:00
Emmanuel Roussel 98d51179ad Added time to trigger free-fall as a parameter 2016-04-18 22:27:11 +02:00
Emmanuel Roussel 78a99797fb Implemented first try on multicopter free-fall detection 2016-04-18 22:27:11 +02:00
Emmanuel Roussel 35110a52f9 Added room in land_detector code for free-fall detection 2016-04-18 22:27:11 +02:00
devbharat e70804c9d0 Removed debug comments 2016-04-18 18:45:50 +02:00
Roman cf7145c8d9 calculate large error rotation correclty in attitude controller 2016-04-18 18:44:14 +02:00
Andrew Tridgell 9daf6c336b px4iofirmware: removed unused PX4IO_P_CONFIG_CONTROL_GROUP_COUNT 2016-04-18 18:44:05 +02:00
Andrew Tridgell 3bad8131cf px4io: don't call io_set_rc_config when rc config disabled 2016-04-18 18:44:05 +02:00
Lorenz Meier 7dae3abac9 Sensors: Adjust mode switch ranges 2016-04-18 18:29:21 +02:00
Lorenz Meier 0adb4d8e8c Commander: Fix single channel mode switching 2016-04-18 18:29:07 +02:00
Lorenz Meier b90f6dc157 Fix text print to logfile 2016-04-18 17:06:12 +02:00
Andrew Tridgell cc0fbdd549 px4fmu: added SET_MODE ioctl
this gives control over timer capture driver
2016-04-18 11:45:44 +02:00
Andrew Tridgell e60f2c3f41 drv_pwm: added new PWM_SERVO_SET_MODE ioctl 2016-04-18 11:45:44 +02:00
Andrew Tridgell c66fab01e5 drv_pwm: expand range of PWM ioctl indexes
we had run out of them. _IOC_MASK is 0xFF, so we can add an extra 16
without an issue
2016-04-18 11:45:13 +02:00
Andrew Tridgell fde635ef5a px4iofirmware: fixed display of sbus rate in px4io status 2016-04-18 11:43:24 +02:00
Andrew Tridgell c5f5b9f53c drv_pwm_output: added IOCTL for SBUS rate 2016-04-18 11:43:24 +02:00
Andrew Tridgell 30ce7fdd48 px4io: display SBUS rate in px4io status 2016-04-18 11:43:24 +02:00
Andrew Tridgell 6290e621d4 px4io: added control for setting SBUS rate 2016-04-18 11:43:24 +02:00
Andrew Tridgell f19761d278 px4iofirmware: support setting the SBUS output frame rate
this allows for helicopters and multicopters with SBUS output
2016-04-18 11:43:24 +02:00
Andrew Tridgell 58122ed33d sbus: added support for changing SBUS output rate 2016-04-18 11:43:24 +02:00
Andrew Tridgell 05790ff540 px4fmu: prevent checking of safety switch parameter in main loop 2016-04-18 11:41:01 +02:00
Andrew Tridgell 3fda934d1b px4io: on config error ask IO to reboot to bootloader
this allows us to update fw when core config settings have changed,
such as the actuators/servos change that happened recently
2016-04-18 11:40:07 +02:00
Andrew Tridgell 85e8cd89b6 px4io: set reasonable default voltage scaling
needed for when px4 param system not available in ardupilot
2016-04-18 11:39:37 +02:00
Andrew Tridgell 5928569321 px4fmu: fixed signed/unsigned comparison 2016-04-18 11:39:06 +02:00
Gustavo Jose de Sousa 955af32b1c systemlib: properly check for MULT_COUNT value
Checking with preprocessor directives doesn't have any effect because
MULT_COUNT is an enum value rather than a macro. Thus, since MULT_COUNT is
undefined from the preprocessor perspective, even if the number of items in
`enum MULT_PORTS` (except MULT_COUNT) was greater than 33, the error wouldn't
be raised.
2016-04-18 11:38:28 +02:00
Andrew Tridgell 9984555faa motor_test: fixed build
this is C, not C++
2016-04-18 11:37:43 +02:00
Andrew Tridgell 05c282e761 stm32: fixed build errors with more warnings enabled
needed for ArduPilot build
2016-04-18 11:36:28 +02:00
Andrew Tridgell 091515956d dsm: fixed shadowed variables errors 2016-04-18 11:35:21 +02:00
Andrew Tridgell fc6b074d40 irlock: fixed header for other than FMUv2 2016-04-18 11:34:24 +02:00
Paul Riseborough 25dbb5d628 ekf2: Add missing tuning parameters 2016-04-18 11:15:38 +02:00
Paul Riseborough 0d50dd03d6 ekf2: Specify display precision for parameters 2016-04-18 11:15:38 +02:00
Paul Riseborough 81292c1e65 ekf2: Enable position of range finder and flow sensor to be adjusted 2016-04-18 11:15:38 +02:00
Paul Riseborough 66fe3ab583 ekf2: Use corrected local position and velocity
Corrects for IMU offset from body frame origin
2016-04-18 11:15:38 +02:00
Paul Riseborough 43e56f9fdc ekf2: Add tuneable parameters for sensor positions 2016-04-18 11:12:09 +02:00
Paul Riseborough 7acd5fda22 ekf2: send flow sensor yaw rate data 2016-04-18 11:12:09 +02:00
stmoon 717c90eab4 enable commander hil option when hils mode
test for merge...

recover modification part
2016-04-18 11:10:02 +02:00
Lorenz Meier 98443e8712 Update UAVCAN 2016-04-18 11:07:44 +02:00
Lorenz Meier 07d926bab8 Show fatal error for tools missing 2016-04-18 09:27:58 +02:00
Daniel Agar 8290f59247 travis-ci use make check 2016-04-17 20:41:48 -04:00
Daniel Agar f58157266f mindpx-v2_default STACK -> STACK_MAIN 2016-04-17 16:36:59 -04:00
Daniel Agar 469af45c21 travis-ci fix mindpx-v2_default typo 2016-04-17 16:33:07 -04:00
Daniel Agar f754119ff6 cmake - I don't care what you couldn't find unless you need it 2016-04-17 16:27:05 -04:00
Daniel Agar 19c78f583a make check_format check version
-run Tools/fix_code_style.sh with no argument to check astyle version
2016-04-17 16:20:51 -04:00
Daniel Agar 9ad38cf393 travis-ci properly handle build config name 2016-04-17 16:10:29 -04:00
Daniel Agar 8569c3e25d PX4 NuttX enable -Werror 2016-04-17 16:02:28 -04:00
Daniel Agar 0b54bb99f9 NuttX quiet build
cmake combine NuttX copy and export

-NuttX wasn't recopying if it fails to compile
2016-04-17 16:02:28 -04:00
Simone Guscetti 211e667639 Configure mavlink to connect to localhost 2016-04-17 21:55:43 +02:00
Lorenz Meier e8cd89eb01 Add make broadcast jmavsim SITL build 2016-04-17 21:54:37 +02:00
Jonathan Challinger d5dfb17f0d px4iofirmware: return failure when FORCE_SAFETY_OFF fails 2016-04-17 21:38:16 +02:00
Lorenz Meier 9f3401d12c Update NuttX version 2016-04-17 21:33:04 +02:00
Lorenz Meier 66080b4b28 Make submodule check smarter 2016-04-17 21:30:38 +02:00
Lorenz Meier 51f94809d8 UAVCAN update 2016-04-17 21:20:48 +02:00
Lorenz Meier cdeb7df43c MAVLink: More robust string operations 2016-04-17 20:03:48 +02:00
Lorenz Meier f42f229c5f Fix length of mavlink log message 2016-04-17 20:03:32 +02:00
Lorenz Meier 5088baa87d ECL: Update library to fix pointer initialization 2016-04-17 19:33:53 +02:00
Andrew Tridgell 943e6ffbc9 px4iofirmware: blink blue LED more rapidly when override is active
this makes it easier for a user to test that override is working
correctly in pre-flight checks. Otherwise override is hard to
distinguish from normal manual mode
2016-04-17 19:10:23 +02:00
jaxxzer d8aee84625 ms5611: Fix to start drivers for all devices present at boot. 2016-04-17 19:07:30 +02:00
Lorenz Meier f164500580 Commander: optimize text for voice output 2016-04-17 19:06:00 +02:00
Daniel Agar c80918acef add mindpx-v2_default to make check 2016-04-17 19:03:09 +02:00
Daniel Agar a0b818096b fix hc_sr04 and srf02_i2c subsystem_info init 2016-04-17 19:02:59 +02:00
Lorenz Meier 20a59b8886 Fix mixer testing setup 2016-04-17 18:53:50 +02:00
Lorenz Meier 74db7bdf84 Multiplatform: Resolve compile warning 2016-04-17 18:32:52 +02:00
Lorenz Meier a663aa68af Send out ADS-B reports to GCS 2016-04-17 18:19:32 +02:00
Lorenz Meier 2c2a87cea1 MAVLink app: Read MAVLink transponder report 2016-04-17 17:57:00 +02:00
Lorenz Meier 1da25db617 Add ADSB transponder report 2016-04-17 17:56:39 +02:00
Lorenz Meier 40546647b3 Update EKF2 interface 2016-04-17 16:21:49 +02:00
Lorenz Meier 7e8f434869 Update UAVCAN library version 2016-04-17 16:16:39 +02:00
Lorenz Meier 236304b929 Update EKF2 version 2016-04-17 16:16:29 +02:00
Andrew Tridgell 43235a8cff perf: fixed mixup of stdout/stdin 2016-04-17 16:07:44 +02:00
Holger Steinhaus 59ee9ea1ae uavcan: add IOCTL interface for queryiung node discovery progress 2016-04-17 16:06:09 +02:00
Andrew Tridgell efd4552e37 ms5611: reduced OSR to 1024
this reduces self-heating of the sensor which reduces the amount of
altitude change when warming up. Apparently some individual sensors
are severely affected by this.

Unfortunately it raises the noise level, but Paul is confident it
won't be a significant issue
2016-04-17 16:04:44 +02:00
Lorenz Meier 73f48b78aa Update ECL version 2016-04-17 16:04:07 +02:00
Simon Wilks fcb099883c Add new config for the Sparkle Tech 1.2m Pigeon flying wing.
Add a new config for the Sparkle Tech 1.2m Pigeon flying wing.
2016-04-17 15:58:21 +02:00
Lorenz Meier 5c067ccdbb Merge pull request #4279 from bkueng/fix_listener_cmd
Fix listener cmd
2016-04-17 11:56:26 +02:00
Lorenz Meier 349a06d03a Fix mixer test 2016-04-17 11:54:56 +02:00
Daniel Agar a1352af048 px4fmu-v2 stop building unused drivers and examples 2016-04-17 11:51:07 +02:00
James Goppert 0f0f354acd Added warning for MPC_ALT_MODE. 2016-04-15 11:02:32 -04:00
Beat Küng 9259406a29 generate_listener.py: add a timeout of 2 seconds
abort if within 2s there is no new message published
2016-04-15 15:02:26 +02:00
Beat Küng 1269dfbc43 generate_listener.py: fix listener command
the loop variable i was increased even if no topic was updated. This means
less messages are outputed than specified.
2016-04-15 14:29:35 +02:00
James Goppert 8a3b9e3b4e Merge pull request #4273 from jgoppert/sf0x_handling
Added LPE to testing, fix LPE logging, add SENS_EN_SF0X
2016-04-14 18:28:30 -04:00
James Goppert 372de3fca9 Added LPE to testing, fix LPE logging, add SENS_EN_SF0X 2016-04-14 18:17:58 -04:00
James Goppert 2527a88042 Merge pull request #4272 from jgoppert/mpc_alt_mode
Added mpc_alt_mode.
2016-04-14 18:03:06 -04:00
James Goppert f905276958 Added mpc_alt_mode. 2016-04-14 17:52:28 -04:00
James Goppert 31cef095fe Merge pull request #4271 from jgoppert/uorb_update
Added control state subscription.
2016-04-14 17:45:01 -04:00
James Goppert d45e5ca50e Added control state subscription. 2016-04-14 17:41:08 -04:00
James Goppert 4666a9a4db Merge pull request #4269 from jgoppert/mc_est_groups
Added SYS_MC_EST_GROUP to allow fine grained algorithm selection.
2016-04-14 17:07:50 -04:00
James Goppert f73af95b38 Added SYS_MC_EST_GROUP to allow fine grained algorithm selection. 2016-04-14 15:22:25 -04:00
James Goppert bdd6f8ee97 Merge pull request #4268 from jgoppert/sf0x_min_dist
Set sf0x min dist to 30 cm, 0 cm is outside of spec for sf02.
2016-04-14 15:03:17 -04:00
James Goppert 09d4ce1e2c Set sf0x min dist to 30 cm, 0 cm is outside of spec for sf02. 2016-04-14 15:01:41 -04:00
James Goppert f5988dd3ac Merge pull request #4267 from jgoppert/lpe_update
Updated lpe for separate sensor source files, also made more quiet.
2016-04-14 14:55:56 -04:00
James Goppert 0bfe3a4403 Updated lpe for separate sensor source files, also made more quiet. 2016-04-14 14:32:22 -04:00
James Goppert ba36183d7d Merge pull request #4266 from jgoppert/controllib_move
Moved control library.
2016-04-14 14:29:16 -04:00
James Goppert afcc5b4695 Moved control library. 2016-04-14 14:28:32 -04:00
James Goppert 831bce67bc Merge pull request #4265 from jgoppert/cmake_stack
Modified cmake to use STACK_MAX and STACK_MAIN

Looked over the reported sitl failure with jenkins, but it shows all tests passed, and this is happening on all branches, so going to merge.
2016-04-14 14:10:01 -04:00
James Goppert 362a8957c9 Merge pull request #4264 from jgoppert/dji_matrice
Added config for dji matrice 100.
2016-04-14 13:38:44 -04:00
James Goppert 967e4dd127 Modified cmake to use STACK_MAX and STACK_MAIN 2016-04-14 13:36:36 -04:00
James Goppert 28f7c72ce4 Added config for dji matrice 100. 2016-04-14 13:07:30 -04:00
Daniel Agar 5843acecc4 fix mixer_test 2016-04-13 22:16:16 -04:00
Julian Oes 0438bf6a8b mavlink: get the ifdefs correct 2016-04-12 10:13:52 -07:00
Julian Oes 72be6de0cf mavlink: whitespace fix 2016-04-12 10:13:52 -07:00
Julian Oes 361c057412 mavlink: get mavlink reconnection working 2016-04-12 10:13:52 -07:00
Lorenz Meier 02fb3d1856 Multirotor mixers: Only map two AUX channels 2016-04-12 10:13:32 -07:00
tumbili c2c6b222bf publish acceleration in control state 2016-04-12 14:23:29 +02:00
Julian Oes 22847e49e7 param_shmem: fix style 2016-04-12 13:15:50 +02:00
Julian Oes 9cfffc9747 param_shmem: do fsync after param write 2016-04-12 13:15:50 +02:00
Julian Oes 015d7431a7 sdlog2: comment fix 2016-04-12 13:13:50 +02:00
Julian Oes 1aa45cede8 sdlog2: workaround for Snapdragon
This fixes an issue where topics where not subscribed to on the Linux
side on Snapdragon. It's a hack until there is a proper fix for the
orb_exists() call.
2016-04-12 13:13:50 +02:00
Paul Riseborough 592113178b ecl: update library reference
Improved recovery from bad height estimation
2016-04-12 12:36:05 +02:00
Julian Oes fbd7c73043 drv_hrt: fix comment 2016-04-12 08:56:34 +02:00
Lorenz Meier 4bdfb8a107 Drop Wifi rate to 20K 2016-04-11 12:51:24 -07:00
Julian Oes 6abc55c303 navigator: whitespace 2016-04-11 18:01:49 +02:00
Julian Oes 34e504aec5 navigator: fix after rebase 2016-04-11 18:01:49 +02:00
Julian Oes c9ac9c7dbd commander: fixes after rebase 2016-04-11 18:01:49 +02:00
Julian Oes 32f2b89252 sdlog2: comment fix 2016-04-11 18:01:49 +02:00
Julian Oes 3c9f9540dc commander: add failsafe flag back in 2016-04-11 18:01:49 +02:00
Julian Oes 11c2b6784d msg: fix comment in commander_state 2016-04-11 18:01:49 +02:00
Julian Oes 974223bdd1 commander: pass battery status to preflight check
A low battery check was recently added to the preflight check, therefore
we need to pass on the information about the battery.
2016-04-11 18:01:49 +02:00
Julian Oes 68a69c9d46 cmake: add commander_state message to ROS build 2016-04-11 18:01:49 +02:00
Julian Oes a325b77adf ros-commander: refactor changes 2016-04-11 18:01:49 +02:00
Julian Oes 3b806235ac sdlog2: compile fixes after rebase 2016-04-11 18:01:49 +02:00
Julian Oes 50c36296fa navigator: compile fixes after rebase 2016-04-11 18:01:49 +02:00
Julian Oes 08ce231d76 ekf2: compile fixes after rebase 2016-04-11 18:01:49 +02:00
Julian Oes e91f587438 commander; various compile fixes after rebase 2016-04-11 18:01:49 +02:00
Julian Oes 9859d43fe2 frsky_telemetry: fixed build 2016-04-11 18:01:49 +02:00
Julian Oes 05d64b3342 navigator: fix for vehicle status refactor 2016-04-11 18:01:49 +02:00
Julian Oes 03a0788207 fw_pos_control_l1: fix for vehicle status refactor 2016-04-11 18:01:49 +02:00
Julian Oes f21f82223c ekf2: fix stupid bug caught by travis on Mac 2016-04-11 18:01:49 +02:00
Julian Oes be2fe78c82 commander: publish internal state 2016-04-11 18:01:48 +02:00
Daniel Agar 3a209d71af fix clang size error 2016-04-11 18:01:48 +02:00
Daniel Agar dfeab4f5e3 remove unused vehicle_status 2016-04-11 18:01:48 +02:00
Daniel Agar 56dbfef378 remove duplicate bat_msg.id 2016-04-11 18:01:48 +02:00
Daniel Agar c494e85095 fix sign compare to make travis-ci happy 2016-04-11 18:01:48 +02:00
Julian Oes 315c202824 sensors: removed more leftover variables 2016-04-11 18:01:48 +02:00
Julian Oes c87fa43b68 sensors: removed unused variable 2016-04-11 18:01:48 +02:00
Julian Oes 9512a71cf8 commander: cleanup the status messages 2016-04-11 18:01:48 +02:00
Julian Oes 2cd05dea4d commander: try different mavlink include 2016-04-11 18:01:48 +02:00
Julian Oes 5ca5af5fcd commander: take main_state out of vehicle_status
This state is only commander internal. Therefore it doesn't need to be
in vehicle_status. Instead it is now in the commander_state message.
2016-04-11 18:01:48 +02:00
Julian Oes 1ad0ee0fae mc_att_control: don't use main state for RATTITUDE
Instead of the state use the boolean flags.
2016-04-11 18:01:48 +02:00
Julian Oes 5c9713f05b commander: try to get the travis include right 2016-04-11 18:01:48 +02:00
Julian Oes 70cff975cc commander: move some flags out of vehicle_status
All the removed flags were not used anywhere else than inside the
commander.
2016-04-11 18:01:48 +02:00
Julian Oes 0988fef831 commander: forgot to close fd 2016-04-11 18:01:48 +02:00
Julian Oes 23df992cc5 commander: moved offboard bools into status_flags
The offboard status bools were not used anywhere but in the commander.
Therefore they are now moved to the local status_flags topic.
2016-04-11 18:01:48 +02:00
Julian Oes a11a986df8 mavlink: removed leftover debug printf 2016-04-11 18:01:48 +02:00
Julian Oes 1f44fb1efd commander: internalize system status bools
Most condition bools in the commander are not used anywhere but in the
commander. It therefore makes sense to move them to a different internal
struct and remove them from the vehicle_status message.

Also, the land_detected should be used by all the modules instead of
getting it through the commander and system_status.
2016-04-11 18:01:47 +02:00
Julian Oes 705979e3c7 simulator: use new battery systemlib 2016-04-11 18:01:47 +02:00
Julian Oes 2dfc644f17 sensors: only publish battery topic if valid 2016-04-11 18:01:47 +02:00
Julian Oes 4ddd1bbf03 battery: fix segfault
The name was set NULL which lead to a segfault on POSIX.
2016-04-11 18:01:47 +02:00
Julian Oes 141b984d5b commander: take previous main state out of status 2016-04-11 18:01:47 +02:00
Julian Oes 181eb49da8 commander: remove calibration_enabled
This flag is not used anywhere, it therefore doesn't need to be in
vehicle_status.
2016-04-11 18:01:47 +02:00
Julian Oes fe85841a1d commander: remove counter
The counter variable in system status wasn't used anywhere.
2016-04-11 18:01:47 +02:00
Julian Oes 1cc43a00d6 battery: astyle 2016-04-11 18:01:47 +02:00
Julian Oes 76c66a4e92 frsk_telemetry: astyle 2016-04-11 18:01:47 +02:00
Julian Oes 69b0b75151 px4io: astyle 2016-04-11 18:01:47 +02:00
Julian Oes 32c3135788 commander: move battery calculations to systemlib
The commander used to consume the battery_status topic and write the
contents after some calculations into the system state. Instead, the
calculations now happen in library calls in systemlib/battery.

This moves the battery fields out of the vehicle_status message into the
battery_status topic.

This brought quite some changes in all modules that need battery
information. The current state is compiling but untested.
2016-04-11 18:01:47 +02:00
Julian Oes 699b08c9fd commander: move battery warning
The battery warning is not consumed anywhere, therefore scrap it from
the vehicle_status message.
2016-04-11 18:01:47 +02:00
Julian Oes 8e9e9f8a8b vehicle_status: move vtol_vehicle_status enum
It makes more sense to have the VTOL status in its own message.
2016-04-11 18:01:47 +02:00
Julian Oes 74072dbe74 vehicle_status.msg: delete unused mavlink stuff
The MAV_TYPE enum was not in sync with the mavlink specs anymore. It
makes therefore sense to remove the duplication and include the correct
mavlink header file where it is needed.
Also, error counts which are not populated, can be scrapped.
2016-04-11 18:01:47 +02:00
Julian Oes 5f3a23a253 commander: remove circuit breakers from status msg
Since the circuit breaker bools are not actually used anywhere else than
in the commander, it is safe to remove them and replace them with local
bools.
2016-04-11 18:01:47 +02:00
Mark Whitehorn ebacd4c1de add missing check for stop command in idle state 2016-04-11 17:54:39 +02:00
tumbili 2f7601370b mixer multirotor: initialise min_out with correct value 2016-04-11 17:47:40 +02:00
tumbili 092efd22fd set default thrust scale parameter to zero - this will disable using the fw motor for mc pitch by default 2016-04-11 15:10:53 +02:00
tumbili 04cfc23c01 allow pusher for pitch strategy to be turned off by setting thrust scal param to zero 2016-04-11 15:03:50 +02:00
Roman f7c0518a61 log pitch setpoint after modifying it 2016-04-11 14:56:50 +02:00
tumbili db2a53d95d added parameter to allow scaling the forward thrust used to acclerate forward
in multirotor mode
2016-04-11 14:56:50 +02:00
tumbili 34fe340864 added parameter for maximum allowed standard vtol down pitch 2016-04-11 14:56:49 +02:00
sander cf309bfc3f invert setpoint formula 2016-04-11 14:56:49 +02:00
Roman e11d4ae302 standard vtol:
implement moving forward using pusher
2016-04-11 14:56:49 +02:00
sander 0b10720034 testing tweaks 2016-04-11 14:56:49 +02:00
sander 3a6882a4d6 First attempt at pusher assist 2016-04-11 14:56:49 +02:00
Julian Oes 441d7aacbb gps: fix build, unused var ERROR 2016-04-11 13:51:04 +02:00
sander e3eea62887 Add estimator selection logic to VTOL apps 2016-04-11 11:26:33 +02:00
Beat Küng dde7907da4 ubx gps driver: configure both USB & UART interfaces 2016-04-11 11:23:01 +02:00
Beat Küng 8c64e2b801 gps driver: fix 'gps stop' error 2016-04-11 11:23:01 +02:00
Beat Küng 0c966dc923 fix mtk+ubx gps driver: use px4_clock_settime instead of clock_settime 2016-04-11 11:23:01 +02:00
Beat Küng c495266c79 ubx gps driver: remove variable length member 'raw' from union
this causes only problems and is not supported by ANSI C. error caused:
fatal error: field '_buf' with variable sized type 'ubx_buf_t' not at the end of a struct or class is a GNU extension
2016-04-11 11:23:01 +02:00
Beat Küng 215aa78f30 fix coding style for gps drivers 2016-04-11 11:23:01 +02:00
Beat Küng 851340eccc ubx gps driver: add error handling when write(...) fails
this also fixes a compiler warning
2016-04-11 11:23:01 +02:00
Beat Küng 95c7534712 ashtech gps: fix compiler warning in configure
the warning is:
error: ignoring return value of ‘ssize_t write(int, const void*, size_t)’, declared with attribute warn_unused_result [-Werror=unused-result]
2016-04-11 11:23:01 +02:00
Beat Küng 21f403e12b gps: make sure the gps module compiles for POSIX & add it to the posix_sitl_default cmake
- Note that the simulator still uses gpssim by default
- now the gps module can be used in the SITL. this makes it possible to test
  the real gps HW under POSIX
  additional steps needed to use it:
  - in the rcS_jmavsim_iris, make sure to start the gps instead of gpssim:
    gps start -d /dev/ttyACM0 -s
  - disable the mavlink serial connection in simulator_mavlink.cpp,
    openUart(PIXHAWK_DEVICE, 115200);
- this also fixes a memory leak in the gps module
2016-04-11 11:23:01 +02:00
Beat Küng b724847154 ack: add .ackrc to ignore the Documentation directory
when using ack to search the code we want to avoid matches in the doc html
files
2016-04-11 11:23:01 +02:00
Beat Küng b3ed8b70d2 systemlib scheduling_priorities: include the more generic px4_tasks.h
this makes sure the header can also be used under POSIX
2016-04-11 11:23:01 +02:00
Beat Küng ec819737c1 systemlib: make err() & errx() work for POSIX 2016-04-11 11:23:01 +02:00
Beat Küng 458feb0a44 fix gpssim: properly handle the case where gpssim is not running 2016-04-11 11:23:01 +02:00
Beat Küng 77cda58d73 fix ashtech gps: _satellite_info can be nullptr 2016-04-11 11:23:01 +02:00
Beat Küng 7ff80463be fix completely wrong file permissions for log files & mavlink ftp (new mode 666) 2016-04-11 11:23:01 +02:00
Beat Küng d7ca0b1139 hrt_absolute_time: add comment, that time is in us 2016-04-11 11:23:00 +02:00
Beat Küng a12c79a115 romfs mixer files: remove executable bit of file permission 2016-04-11 11:23:00 +02:00
Beat Küng cf48f9ff12 doc: rename the README -> doxygen.README & remove reference to qgroundcontrol 2016-04-11 11:23:00 +02:00
Lorenz Meier 13967975c1 Wifi link: Drop rate further to relieve pressure on ESP8266 2016-04-10 12:19:12 -07:00
Lorenz Meier d97f32cca1 Fix MAVLink not responding regression on TELEM2 2016-04-10 12:11:26 -07:00
Lorenz Meier d2c98a98e9 Rename stop-all to stop for MAVLink, but still keep stop-all for existing scripts 2016-04-10 11:18:05 -07:00
Lorenz Meier 8b876e6497 MAVLink command feedback: Do only report command status and not additional string 2016-04-10 11:15:18 -07:00
Don Gagne 91d4e129f4 Change to normal cal message
This way QGC can respond to it and show good ui
2016-04-10 10:58:37 -07:00
Lorenz Meier d3f5cf5d93 MAVLink app via Wifi: Drop max data rate 2016-04-10 10:58:11 -07:00
Lorenz Meier ad3ca2a9d2 Commander: Indicate low battery 2016-04-10 10:57:38 -07:00
Lorenz Meier e3d6bad3fe Revert "report sensor init failure"
This reverts commit 407f467b456a393a891a936c79cc90e64e52fd45.
2016-04-10 10:37:03 -07:00
Lorenz Meier b66967a8a5 Revert "add low battery warning and comment out the "resolved" messages"
This reverts commit 221e259d01b32f23d14270af78d0996b728bf9d1.
2016-04-10 10:36:48 -07:00
Lorenz Meier 34a9449df9 Include cal status data for mag 2016-04-09 18:00:38 -07:00
Lorenz Meier 224aaeddfe Harden calibration experience on master 2016-04-09 13:44:53 -07:00
Lorenz Meier d9b32221e7 Commander: Reduce mag output 2016-04-09 11:53:44 -07:00
Lorenz Meier 275fe8ee2d Play safe with calibration done messages 2016-04-09 11:50:50 -07:00
Lorenz Meier 0abc792d96 Update Gazebo plugin 2016-04-09 10:24:30 -07:00
sander 7338fe889e Only set virtual waypoint for VTOL_TAKEOFF. Fixes #4193 2016-04-09 13:24:20 +02:00
sander 42eff31c84 Keep current altitude for vtol move to land after transition 2016-04-09 12:23:43 +02:00
Andreas Antener 7f5a2b1bac only use the default acceptance radius for checking mission feasibility 2016-04-08 22:40:02 -07:00
Julian Oes 727783fe94 mavlink: keep trying to find to broadcast
This should help the Snapdragon to connect if the network is not yet up
by the time the mainapp starts. It will retry to find a network and
broadcast once it finds one.
2016-04-08 22:38:22 -07:00
Holger Steinhaus 0ddf720759 uavcan: fix shadowed variable 2016-04-08 22:36:59 -07:00
Lorenz Meier 43473b10a8 Better defaults for posix SITL 2016-04-08 22:36:07 -07:00
Lorenz Meier a8ccc2b087 jMAVSIM / IRIS: Disarm on land 2016-04-08 22:15:37 -07:00
Lorenz Meier 678c7dfdf4 IRIS / SITL: Disarm on land 2016-04-08 22:15:06 -07:00
Lorenz Meier 4e0e9ff691 Update SITL Gazebo 2016-04-08 22:14:48 -07:00
Lorenz Meier ebc1c0b648 Update SITL Gazebo 2016-04-08 21:51:12 -07:00
Lorenz Meier 075a6e3d4e Update IRIS configs to match new simulator dynamics and fixes 2016-04-08 21:51:00 -07:00
Lorenz Meier dd0d1f001e MPC velocity controller: Reduce gain to stabilize control loop 2016-04-08 21:25:55 -07:00
Lorenz Meier f2cff929e9 Update SITL version 2016-04-08 18:23:31 -07:00
Lorenz Meier 504e42561f Gazebo IRIS: Fly with default gains 2016-04-08 18:21:26 -07:00
Lorenz Meier 55e4e75a4f SITL: Generate SDF from xacro on every build 2016-04-08 18:20:59 -07:00
Lorenz Meier 0231b512b4 Plane: Use appropriate idle speed 2016-04-08 17:24:14 -07:00
Lorenz Meier b3b22b1c2c Airspeed driver: Proper start handling 2016-04-08 17:23:59 -07:00
Julian Oes c32310b6b4 muorb: improve comment 2016-04-08 15:51:16 +02:00
Julian Oes 36d580bdc8 DF wrappers: use abs time instead of DF timestamp
The timestamp in the DriverFramework is not the same as the one
provided by hrt_absolute_time() in PX4. Because we are publishing on the
PX4 side, let's also use the timestamp from there.
2016-04-08 15:51:16 +02:00
Julian Oes 8422280f18 muorb: typo and added comment for magic number 2016-04-08 15:51:16 +02:00
Julian Oes 2bce8f2803 muorb: abs time on aDSP in sync with Linux side
This adds a call on startup of the muorb on the aDSP side to use an
offset for hrt_absolute_call(). This means that the hrt_absolute_call()
on the appsproc (Linux) side should now match the one on the aDSP
(QURT) side.
The accuracy still needs to be determined.
2016-04-08 15:51:16 +02:00
Julian Oes ae2c28677d mavlink: adapt network detection for Mac, use heap
It seems that Mac does not support the ioctl to check how big the ifconf
buffer needs to be. Therefore we just have to make a guess.
Alos, instead of allocating the variable size array on the stack, it's
probably safer to use the heap.
2016-04-08 09:41:10 +02:00
Julian Oes 20cd5f3e76 mavlink: make broadcast detection Mac compatible
This adresses that the ifconf interface is a bit different on Mac.
2016-04-07 15:21:24 +02:00
Julian Oes 66567baf89 mavlink: only try broadcast if valid address found 2016-04-07 13:20:48 +02:00
Lorenz Meier 832dde7531 Update rcS to run Wifi faster 2016-04-06 14:57:55 -07:00
Lorenz Meier 9fdbaa5a22 Mag cal 2016-04-06 14:30:51 -07:00
Lorenz Meier 6d24e33819 Commander: Space out mag feedback further 2016-04-06 14:23:49 -07:00
Lorenz Meier 47d3e093a4 Increase Wifi data rate 2016-04-06 14:23:35 -07:00
Lorenz Meier 7c4479fa7a Start attitude estimator Q stream 2016-04-06 11:17:50 -07:00
Lorenz Meier 97be79496f LPE: Add attitude quaternion stream 2016-04-06 11:17:50 -07:00
Lorenz Meier bd99b9de64 Gazebo configs: Enable attitude quaternion stream 2016-04-06 11:17:50 -07:00
Lorenz Meier 0a606462d2 Add attitude quaternion stream for iris config 2016-04-06 11:17:50 -07:00
Lorenz Meier d990a43c62 Add attitude quaternion stream for EKF2 config 2016-04-06 11:17:50 -07:00
Lorenz Meier a0a0e5edd6 Add attitude quaternion stream for FW config 2016-04-06 11:17:50 -07:00
Julian Oes 9c8f67dfb8 platforms: fix build for QURT 2016-04-06 11:18:24 +02:00
Nicolas de Palezieux 00352565ee added I2C driver for TeraRanger One 2016-04-06 10:35:38 +02:00
Lorenz Meier 43e0186eb3 Commander: Space out MAVLink log messages more 2016-04-05 21:33:40 -07:00
Lorenz Meier a052907c29 Updated SITL Gazebo version 2016-04-05 21:31:53 -07:00
Lorenz Meier 1634fa9390 Update Gazebo 2016-04-05 20:22:20 -07:00
Lorenz Meier a64af416ba Update Gazebo 2016-04-05 20:09:18 -07:00
Mark Whitehorn 817c0eafbc add low battery warning and comment out the "resolved" messages 2016-04-05 19:13:49 -07:00
Mark Whitehorn b4520f538e report sensor init failure 2016-04-05 19:13:49 -07:00
Lorenz Meier f5c3b349a8 MAVLink sim: Fix code style 2016-04-05 19:09:30 -07:00
Lorenz Meier 9c9ca9211f HRT fix for negative time instrumentation 2016-04-05 19:09:30 -07:00
Lorenz Meier e035c95cf7 Update jMAVSim version 2016-04-05 19:09:30 -07:00
Lorenz Meier 5828c7fa4f system_time: Use more strict time 2016-04-05 19:09:30 -07:00
Lorenz Meier 805439c0f2 Simulator fixes 2016-04-05 19:09:30 -07:00
Lorenz Meier b2029f7a35 POSIX: Fix code style of main app 2016-04-05 19:09:30 -07:00
Lorenz Meier 205650efd7 Simulator: Fix code style 2016-04-05 19:09:30 -07:00
Lorenz Meier 437041f302 POSIX API extensions 2016-04-05 19:09:30 -07:00
Lorenz Meier 6ed99a2325 Remove debug output 2016-04-05 19:09:30 -07:00
Lorenz Meier 0baa625681 Adjustements and improvements in the simulation interface 2016-04-05 19:09:30 -07:00
Lorenz Meier 4d27239bb2 Update jMAVSim 2016-04-05 19:09:30 -07:00
Lorenz Meier 3cfb6ba4a7 Do not send unneeded NSH command any more 2016-04-05 19:09:29 -07:00
Lorenz Meier 23bf798e29 Update jMAVSim version 2016-04-05 19:09:29 -07:00
Lorenz Meier 079151b3fe New strategy to build and run jMAVSIM 2016-04-05 19:09:29 -07:00
Lorenz Meier 3232912c77 Update ECL version 2016-04-05 19:09:04 -07:00
Paul Riseborough e66a3bd99f ekf2: incorporate fixes to covariance prediction and initialisation
Update ecl library reference.
Update default parameters
2016-04-05 19:08:39 -07:00
Paul Riseborough 222566de6e ekf2: Fix error in parameter documentation 2016-04-05 19:08:39 -07:00
CarlOlsson 16dea15d54 AStyle 2016-04-05 16:23:26 -07:00
CarlOlsson 7c88d599ee publish wind_estimate topic 2016-04-05 16:23:25 -07:00
Julian Oes 8707cfe9f2 commander: use macro with wait in all calibrations 2016-04-05 15:36:03 -07:00
Julian Oes f583f51027 commander: add macros for log messages and wait
As a current workaround we need to wait some time after publishing a
mavlink log message in order for it to arrive in QGC.
2016-04-05 15:36:02 -07:00
Lorenz Meier dff78830ac Build mindpx-v2 target in Travis 2016-04-05 15:35:00 -07:00
Felix Hu afdf8bbaaa Fix the build of mindpx-v2 default 2016-04-05 15:32:40 -07:00
Lorenz Meier 321440281b Fix land detection for altitude hold 2016-04-05 15:32:13 -07:00
Roman 65d491cafc ekf2: update airspeed fusion (not yet active) 2016-04-05 21:37:36 +02:00
Roman 42a5be5afe replay cleanup 2016-04-05 21:24:11 +02:00
Roman f3e147f57b make replay faster 2016-04-05 21:24:11 +02:00
Roman 1ce99e3b96 ekf2 replay: some cosmetics 2016-04-05 21:24:11 +02:00
Roman bd4a0e30de ekf2 replay: allow user to change parameters 2016-04-05 21:24:11 +02:00
Julian Oes 7352dc6f2e commander: workaround to wait 1s before param save
Without this wait, we end up saving the old parameters on Snapdragon.
2016-04-05 13:02:53 +02:00
Julian Oes 60d66dc23f param_shmem: before saving update the param 2016-04-05 13:02:53 +02:00
Julian Oes 57c134a23d DriverFramework: updated submodule
This fixes the clock used for pthread_cond_timedwait properly.
2016-04-05 09:30:33 +02:00
Julian Oes 1afb7af2bb cmake: don't mess with git submodules everywhere
It's enough to have the check_submodules.sh script. The rest needs to
go.
2016-04-05 09:22:37 +02:00
Julian Oes e5c64c7629 DriverFramework: update submodule
This fixes a bug that the mainapp on Snapdragon uses 100% CPU.
2016-04-04 16:01:44 +02:00
Julian Oes 2b95b3dff1 sdlog2: fixed wrong memset 2016-04-04 13:02:36 +02:00
tumbili 94aaf0d298 increase sleep time in accel calibration routine to make accel calibration work on snapdragon 2016-04-04 11:17:26 +02:00
Mark Whitehorn 2f057939ad fix bug in handling of missing default current scaling parameter 2016-04-02 21:40:34 +01:00
Lorenz Meier 0d94800b50 VTOL: Add missing fields to log. Fixes #4080 2016-04-02 21:39:03 +01:00
sander cbe7bd2198 Set virtual waypoint for VTOL_TAKEOFF item 2016-04-02 21:29:27 +01:00
sander 4fc24dce60 Set correct setpoint type for vtol transitions 2016-04-02 21:29:27 +01:00
sander dcacefb0d3 Ignore position for VTOL_TAKEOFF 2016-04-02 21:29:26 +01:00
sander a9511478f2 Don't allow yaw updates during transition 2016-04-02 21:29:26 +01:00
sander f9037b9ca7 Force vtol by default and correct param name 2016-04-02 21:29:26 +01:00
sander 4171e89137 Code style and commenting 2016-04-02 21:29:26 +01:00
sander b922ceecfd Rename VT_FORCE_VTOL to VT_NAV_FORCE_VTL 2016-04-02 21:29:26 +01:00
sander 26c8df0eb9 Sanitize vtol_takeoff behavior 2016-04-02 21:29:26 +01:00
sander 1a20de7908 Fix aligning to next waypoint for regular transition command 2016-04-02 21:29:26 +01:00
sander 3f256a778d apply vtol_force_vtol
remove debug output
2016-04-02 21:29:26 +01:00
sander b99e3e0ae2 Wait for VTOL transition command to complete 2016-04-02 21:29:26 +01:00
sander 240c8fbee1 Fix VTOL_LAND to have correct SETPOINT_TYPE 2016-04-02 21:29:26 +01:00
Andreas Antener aafeab63d5 do not try to calculate FOH altitude when distance and acceptance radius are 0 2016-04-02 21:29:26 +01:00
sander 31862be420 Workitem handling for land 2016-04-02 21:29:26 +01:00
sander 903a0cd689 Vtol takeoff/land handling in work items 2016-04-02 21:29:25 +01:00
sander 8d8c3f9683 Implement forced VTOL landing 2016-04-02 21:29:25 +01:00
sander a713fd4197 Implemented VTOL_TAKEOFF and VTOL_LAND commands 2016-04-02 21:29:25 +01:00
Lorenz Meier e832f7dbf5 Fix reporting on broadcast address 2016-04-02 00:04:26 +02:00
Julian Oes f4f1f5f027 commander: raise stack of low prio thread
The accel calibration sometimes lead to a crash. Raising the stack size
resolved the issue.
2016-04-01 15:12:08 +02:00
tumbili 08be5b3f3a fixed formatting 2016-04-01 13:54:47 +02:00
tumbili 4da93a316d ekf2 replay logic:
support recent change in ekf2 module which made it only publish the output
when an ekf update was occuring. in case the ekf2 module does not update
the replay module will be informed and will thus not wait for an update
but continue preparing the next sample of sensor data
2016-04-01 13:54:46 +02:00
Julian Oes 994947ea84 Makefile/cmake/Tools: add easy Snapdragon upload
This adds a a target `make eagle_default` to build both the POSIX and
the QURT side in one command. Also, it adds an upload target for both to
push the files over adb to the device. This doesn't just push the
executables and lib files, but also the startup config files.
2016-04-01 11:36:27 +02:00
tumbili 2f48317a9e ekf2: publish indicated airspeed in control state topic 2016-03-31 14:03:42 +02:00
Lorenz Meier 8810ee33a4 Travis CI: Only notify via Slacack if builds fail 2016-03-30 21:56:30 +02:00
Andreas Antener ffb72d3fae added battery current sensor offset 2016-03-30 21:07:31 +02:00
Andreas Antener 4a4ab13bfe log both actuator groups 0 and 1 again 2016-03-30 20:59:28 +02:00
Lorenz Meier 76a9ee2618 MAVLink app: Limit to max updaate rate 2016-03-30 20:56:11 +02:00
Lorenz Meier 0ef5c1fc14 Travis Slack integration 2016-03-30 20:48:23 +02:00
Lorenz Meier 936f6b6eb7 Fix FMUv3 startup script logic 2016-03-30 19:45:39 +02:00
Felix Hu c528c02e95 Optimize rc shell 2016-03-30 19:45:39 +02:00
Felix Hu 4aa13d8f1f remove un-necessary change 2016-03-30 19:45:39 +02:00
Felix Hu 3295b29bf9 fix code style issues 2016-03-30 19:45:39 +02:00
Felix Hu bd580e09bf supports MindPXv2 borad which is a product from AirMind. 2016-03-30 19:45:39 +02:00
Daniel Agar adab451013 fw defaults param fix 2016-03-30 18:30:22 +02:00
tumbili ff338d8920 set mavlink data rate for snapdragon 2016-03-30 18:05:48 +02:00
Julian Oes 56585082ec mavlink: look up broadcast address, don't guess it 2016-03-30 17:36:04 +02:00
Julian Oes a7e9bc8ba5 mavlink: copyright and author update 2016-03-30 17:36:04 +02:00
Julian Oes df24852366 mavlink: fix broadcast on Snapdragon
Instead of using 255.255.255.255 as the broadcast address, go through
the network interfaces and and try to use a broadcast in the local
network such as 192.168.1.255.
2016-03-30 17:36:04 +02:00
Julian Oes f776a3dc37 mavlink: better broadcast failed error description 2016-03-30 17:36:04 +02:00
Julian Oes 4a68946b62 DriverFramework: update submodule
This lowers the MPU9250 sampling rate from 1kHz to 500 Hz.
2016-03-30 17:35:02 +02:00
CarlOlsson 6f6795160d updated ecl 2016-03-30 17:33:37 +02:00
CarlOlsson 23d084dbc9 adopted logging 2 2016-03-30 17:33:37 +02:00
CarlOlsson 3244808ca8 Adopted logging 2016-03-30 17:33:37 +02:00
CarlOlsson 1bb07ff50c adopted ekf2_params.c 2016-03-30 17:33:37 +02:00
CarlOlsson 3af01a8c5e adopted ekf2_main.cpp 2016-03-30 17:33:37 +02:00
CarlOlsson c821f41631 added msg 2016-03-30 17:33:37 +02:00
Julian Oes 9a5aa4f112 commander: pass PreflightCheck on Snapdragon
The tests don't work properly on Snapdragon yet, so just report happy
for now. Otherwise users get messages such as "No Gyro found" which is
wrong.
2016-03-30 10:00:22 +02:00
Roman 99723975a6 ekf2 replay: apply parameter values from log at the beginning 2016-03-30 07:45:54 +02:00
Lorenz Meier bc39cae5a3 Revert argc change reqquired for NuttX 2016-03-29 22:47:48 +02:00
Julian Oes 3464648533 sdlog2: fix segfault when starting without args
`sdlog2 start` lead to a segfault.
2016-03-29 22:43:20 +02:00
Julian Oes 4179ed6c19 sdlog2: don't free the logbuffer after disarm
Only free the logbuffer if you exit sdlog2. After disarming, just reset
the pointers. This way, we don't take any risks doing malloc and free.

The actual "double free" was caused by trying to free the perf counter
inside logbuffer_free.
2016-03-29 22:43:20 +02:00
Julian Oes 7ce297be59 sdlog2: add logbuffer_reset to reset pointers
This allows resetting of the logbuffer without having to free and malloc
again.
2016-03-29 22:43:20 +02:00
Lorenz Meier 3981f06d42 Reject arming timeout 2016-03-29 22:42:57 +02:00
Julian Oes 4e64382ba5 sdlog2: fixes for Snapdragon 2016-03-29 09:55:29 +02:00
Julian Oes 3ae0ef6eb6 mainapp.config: add sdlog2 to Snapdragon startup 2016-03-29 09:54:19 +02:00
Lorenz Meier a66cf2a658 MAVLink app hotfix: Enable MAVLink daemon on default port 2016-03-28 17:30:43 +02:00
Lorenz Meier 0cab404cb8 Recuperate 1.7K RAM with leaner startup scripts 2016-03-28 14:48:14 +02:00
Lorenz Meier 15427bec58 Trone: Use shorter perf names 2016-03-28 13:05:47 +02:00
Lorenz Meier 2c6119e355 SRF02: Use shorter perf names 2016-03-28 13:05:36 +02:00
Lorenz Meier 90f731a134 SF10a: Use shorter perf names 2016-03-28 13:05:22 +02:00
Lorenz Meier c7cc563832 SF0X: use shorter perf names 2016-03-28 13:05:07 +02:00
Lorenz Meier 6e34e0acaf Flow: Use shorter perf names 2016-03-28 13:04:53 +02:00
Lorenz Meier 0f31f88b24 PCA: Remove unuses perf counter 2016-03-28 13:04:41 +02:00
Lorenz Meier 8891c94087 Gimbal: remove unuses perf counters 2016-03-28 13:04:25 +02:00
Lorenz Meier 96fd15f42e MS5611: Use shorter perf names 2016-03-28 13:04:10 +02:00
Lorenz Meier 5a65f41482 MPU9K: Use shorter perf names 2016-03-28 13:03:56 +02:00
Lorenz Meier b8c5f6be6a MPU6K: Use shorter perf names 2016-03-28 13:03:41 +02:00
Lorenz Meier fdf57e14a1 Use shorter perf names for MB12xx 2016-03-28 13:03:25 +02:00
Lorenz Meier 37fb74c8b7 Use shorter perf names for LSM303D 2016-03-28 13:03:10 +02:00
Lorenz Meier 6b7142469a Use shorter perf names for L3GD20H 2016-03-28 13:02:59 +02:00
Lorenz Meier 54a75d5ef9 HMC: Use shorter perf names 2016-03-28 13:02:41 +02:00
Lorenz Meier b71123f4fe GPS: Use shorter perf names 2016-03-28 13:02:29 +02:00
Lorenz Meier 924b7efaa2 Airspeed: Use shorter perf names 2016-03-28 13:02:15 +02:00
Lorenz Meier e26c5bb590 Do not receive anything in OSD mode 2016-03-28 12:37:03 +02:00
Nic b600e3ee93 added descend into navigation using existing land helper, downstream logic handles ignoring position setpoints (despite being populated), tested with multirotor in gazebo 2016-03-28 12:27:20 +02:00
James Goppert 5418e17a99 Navigator mavlink_fd rename fix. 2016-03-27 15:35:47 -04:00
Lorenz Meier 039d1e4e2f Fix wrong header location 2016-03-27 12:52:47 +02:00
Julian Oes 438c8827f6 snapdragon_rc_pwm: astyle 2016-03-27 12:40:10 +02:00
Julian Oes f718c25dbe commander: remove QURT workaround
Timestamps didn't exist when commander was run on the Linux side.
However, commander is now always run on the QURT side, so the hack is no
longer needed.
2016-03-27 12:40:10 +02:00
Julian Oes 00bee89c66 uart_esc: fix compile error and remove printf 2016-03-27 12:40:10 +02:00
Julian Oes 4698bf92a5 snapdragon_rc_pwm: no PWM when timed out
PWM output is now stopped if the mavlink actuator_controls stop being
sent. This means props will stop in case the Snapdragon crashes or the
cable from Snapdragon to Pixhawk/Pixracer breaks.
2016-03-27 12:40:10 +02:00
Julian Oes 8bf41fda94 px4.config: go back to J13 which is /dev/tty-2 2016-03-27 12:40:10 +02:00
Julian Oes 5fc5fc1ba2 posix_eagle_default: define fix for POSIX eagle 2016-03-27 12:40:10 +02:00
Julian Oes e7c997c5f1 rcS: remove hack
The mavlink instance USB can now be shutdown, so this hack is not needed
anymore.
2016-03-27 12:40:10 +02:00
Julian Oes 28a295485c rcS: set PWM output to 400 Hz for passthrough 2016-03-27 12:40:10 +02:00
Julian Oes 8b9c943da9 uart_esc: calculate raw PWM on the Snapdragon
This includes taking care of the arming state and the limit ramp.
2016-03-27 12:40:10 +02:00
Julian Oes df9832f806 snapdragon_rc_pwm: use ioctl to set PWM
This is by far the easiest solution for now.
2016-03-27 12:40:10 +02:00
Julian Oes a615f57c80 rcS: Make the passthrough option a vehicle_type 2016-03-27 12:40:10 +02:00
Julian Oes a9a20e0a55 rcS: startup for a passthrough Snapdragon option
This adds a custom passthrough "vehicle" to be used on
Pixhawk/Pixfalcon/Pixracer together with Snapdragon for RC input and PWM
output.
2016-03-27 12:40:10 +02:00
Julian Oes e5dfda6d46 uart_esc: remove timeout printf 2016-03-27 12:40:10 +02:00
Julian Oes e50f3ad4f2 uart_esc: do an additional advertise
If this is not done, the aDSP crashes, not quite sure why but it's gotta
be something about the context of the callback.
2016-03-27 12:40:10 +02:00
Julian Oes 647526407a snapdragon_rc_pwm: cleanup and raise bitrate 2016-03-27 12:40:10 +02:00
Julian Oes ee7b9751ce px4_layer: removed leftover printf lie 2016-03-27 12:40:10 +02:00
Julian Oes a318c4a4cd px4.config: use the ESC J13 UART on Snapdragon 2016-03-27 12:40:10 +02:00
Julian Oes cd2f0eca95 uart_esc: major cleanup, raise UART bitrate
This remove all leftovers from Qualcomm's ESC. Also, the startup
commands are cleaned up, and the UART bitrate is raised to 921600.
2016-03-27 12:40:10 +02:00
Julian Oes 45b41e26cc uart_esc: accept n channels instead of just 8. 2016-03-27 12:40:10 +02:00
Julian Oes 4477566d73 snapdragon_rc_pwm: send RC anyway.
Let's always send RC even if nothing arrives on the UART just yet.
2016-03-27 12:40:10 +02:00
Julian Oes 05ad25e141 px4fmu-v4_default: compile snapdragon_rc_pwm 2016-03-27 12:40:10 +02:00
Julian Oes 1d30e352fe rcS: don't stop if mc_att_control not running
This stopped the startup for setups with SYS_AUTOSTART 0.
2016-03-27 12:40:10 +02:00
Julian Oes d06c6a3f5c rcS: don't stop Pixracer startup if no params 2016-03-27 12:40:10 +02:00
tumbili 07246efef9 added snapdragon rc pwm driver 2016-03-27 12:40:10 +02:00
Julian Oes cf98894a23 df_mpu9250_wrapper: disable coning correction
The coning correction for the accel int slipped in by accident.
2016-03-27 12:40:10 +02:00
Julian Oes b04cfd3eee df_mpu9250_wrapper: publish at 250 Hz 2016-03-27 12:40:10 +02:00
Julian Oes 393bcad4b6 df_mpu9250_wrapper: add delta angles for MPU9250 2016-03-27 12:40:10 +02:00
Julian Oes 4effcc0ac7 cmake/posix-configs: switch to ekf2 on Snapdragon 2016-03-27 12:40:10 +02:00
Lorenz Meier 4aceb21d19 Mission: Be less chatty 2016-03-27 12:26:33 +02:00
Andreas Antener d9cabde13e reset mission after vehicle was in mission and then disarms 2016-03-27 12:25:47 +02:00
Jimmy Johnson fbd2edaae5 fixing possible safety issue with altitude 2016-03-27 12:10:57 +02:00
Lorenz Meier ed2029b5d4 Navigator: Fix header code style 2016-03-27 12:10:57 +02:00
Lorenz Meier 88b2349241 Code style fixes 2016-03-27 12:10:57 +02:00
Lorenz Meier 9dd6327668 Fixed MAVLink app code style 2016-03-27 12:10:57 +02:00
Lorenz Meier b3472d6cc8 Fixed follow target code style 2016-03-27 12:10:57 +02:00
Lorenz Meier 737ad045b2 Fix up formatting in mc pos control 2016-03-27 12:10:57 +02:00
Jimmy Johnson f2777cb6ee making code more robust 2016-03-27 12:10:57 +02:00
Jimmy Johnson 6ff1b2d896 Replacing SETPOINT_TYPE_VELOCITY use with velocity and position valid
booleans in setpoint struct
2016-03-27 12:10:57 +02:00
Jimmy Johnson 9993b24bf9 reverting .gitmodules file 2016-03-27 12:10:57 +02:00
Jimmy Johnson 38c40d5601 fixing var change after rebase, setting min mission takeoff altitude to 10m for safety 2016-03-27 12:10:57 +02:00
Jimmy Johnson 3ce7d13c51 fixing structure initalization 2016-03-27 12:10:57 +02:00
Jimmy Johnson 3aaad68c76 fixed position tracking overshoot 2016-03-27 12:10:57 +02:00
Jimmy Johnson 142884bcd8 fixing code style and enter/exit radius logic 2016-03-27 12:10:57 +02:00
Jimmy Johnson dfc2d9b5e0 more clean up 2016-03-27 12:10:57 +02:00
Jimmy Johnson 515882ac0e more clean up 2016-03-27 12:10:57 +02:00
Jimmy Johnson 8829db8844 code clean up complete 2016-03-27 12:10:57 +02:00
Jimmy Johnson 26cb645ee0 follow me working 2016-03-27 12:10:57 +02:00
Jimmy Johnson 01e971b342 Tests 2016-03-27 12:10:57 +02:00
Jimmy Johnson 0797c7fc21 velocity smoothing 2016-03-27 12:10:57 +02:00
Jimmy Johnson 554d1ac013 making first setpoint on follow target activation loiter in place 2016-03-27 12:10:57 +02:00
Jimmy Johnson 69351675b6 follow target mode working 2016-03-27 12:10:57 +02:00
Jimmy Johnson bbc8eaefd7 Adding new follow target navigation and main states. New follow target
topic added. New follow fsm added to the navigator
2016-03-27 12:10:57 +02:00
Andreas Antener fc061ea94d try meas airspeed on I2C bus 2 on fmu rev 3 2016-03-27 12:06:40 +02:00
Daniel Agar 34992d9796 FW_ATT_TC replaced with FW_R_TC and FW_P_TC 2016-03-26 23:21:10 -04:00
sander 1c891432eb Merge branch 'bo-rc-master' 2016-03-26 21:25:29 +01:00
Bo Liu e697998828 fix sdlog2 self deadlock bug 2016-03-26 13:59:33 -05:00
Lorenz Meier c10b37c2ed Merge pull request #4078 from dagar/master
more param metadata cleanup
2016-03-26 12:17:52 +01:00
Daniel Agar ff75b8bb8f allow boolean tag 2016-03-25 20:47:56 -04:00
Daniel Agar 26bb2fd22f capitalize param values 2016-03-25 20:38:08 -04:00
Daniel Agar 6888545037 remove @unit enum 2016-03-25 20:33:25 -04:00
Daniel Agar bee39d93d9 battery param add units 2016-03-25 20:27:48 -04:00
Daniel Agar 70a68def83 params correct boolean tag 2016-03-25 20:25:17 -04:00
Daniel Agar ff9b8118ab fw_att_control add units 2016-03-25 17:24:48 -04:00
Daniel Agar b26f90406b group l1 control and tecs as FW 2016-03-25 17:04:59 -04:00
Daniel Agar c748eb6757 cleanup mission params 2016-03-25 16:28:51 -04:00
James Goppert d02abf2cc0 Removed CMSIS. 2016-03-25 18:43:43 +01:00
Lorenz Meier 425c5dea2a Fixed 9250 mag readouts. From @Inspirati 2016-03-25 16:07:51 +01:00
Lorenz Meier a721cd88cb Update README 2016-03-25 16:07:25 +01:00
Lorenz Meier 6dd0a192e2 Temporary fix for NuttX build failure 2016-03-25 15:52:56 +01:00
Lorenz Meier 6d42595c79 Fix MAVLink app teardown with mavlink stop-all command 2016-03-25 15:20:32 +01:00
Lorenz Meier c385d5e32b Adjust multicopter position control default params 2016-03-25 14:22:49 +01:00
Andreas Bircher 0dae7528c9 adjusting header 2016-03-24 17:36:21 +01:00
Andreas Bircher b63701bfdb adding geotagging python script 2016-03-24 17:36:21 +01:00
Lorenz Meier e2be45e8e7 Update NuttX version 2016-03-24 16:18:42 +01:00
AndersonRayner 13c611462e Make sdlog2_dump.py compatible with APM .bin files
sdlog2_dump.py didn't know what to do with data types "d" and was causing errors when trying to dump APM .bin files to .csv.
2016-03-24 15:03:21 +01:00
Julian Oes 79426c32c7 DriverFramework: update submodule
The latest version must have gotten lost in the merge.
2016-03-24 14:56:54 +01:00
Lorenz Meier 391f366a03 MAVLink app: formatting 2016-03-24 14:21:49 +01:00
Lorenz Meier e28b9edc8b Fix MAVLink log output and priorities 2016-03-24 14:21:36 +01:00
Julian Oes d3f710dbb5 mavlink: don't use the file logging on Snapdragon 2016-03-24 13:10:02 +01:00
Julian Oes c1d112e860 cmake: add define for the POSIX side of eagle 2016-03-24 13:10:02 +01:00
Julian Oes 13866400fa commander: workaround to get calibration status
If mavlink_log calls follow close after each other a later one will
replace the previous one. Therefore do a quick usleep to get the
calibration status out the door.
2016-03-24 13:10:02 +01:00
Julian Oes de0e467150 mavlink: bring buffering for log messages back 2016-03-24 13:10:02 +01:00
Julian Oes 1fc9b99307 commander: some rebase fixes 2016-03-24 13:10:02 +01:00
Julian Oes aecdd4e32f mavlink: add logging of mavlink messages back
The logging into a text file was commented out in the recent changes but
is added back in with this commit.
2016-03-24 13:10:02 +01:00
Julian Oes 198b8a299e mavlink: remove file added by accident 2016-03-24 13:10:02 +01:00
Julian Oes 4ed29bf66b mc_pos_control_multiplatform: comment mavlink_log
The mavlink log didn't seem to be used anyway. This should fix jenkins.
2016-03-24 13:10:02 +01:00
Julian Oes bba0d0384d drivers/modules: changes after mavlink_log change
The mavlink_log API changes lead to changes in all drivers/modules using
it.
2016-03-24 13:10:02 +01:00
Julian Oes b49b012d35 ringbuffer: update header file
The header file was not in source with the source file.
2016-03-24 13:09:16 +01:00
Julian Oes 2d4179a35b mavlink: refactor mavlink_log
This moves the mavlink_log interface from ioctl to uORB and enables the
mavlink statusmessage output for Snapdragon. The API changes will lead
to changes in all modules that are using it.
2016-03-24 13:09:16 +01:00
Julian Oes 790fa7667c commander: cherry-pick fixes 2016-03-24 13:08:31 +01:00
Julian Oes 37a1f6ea8d DriverFramework: updated submodule
This brings better support for device ids.
2016-03-24 13:08:31 +01:00
Julian Oes 88a812618c commander: fix the calibration for NuttX.
This fixes some regressions on the calibration using NuttX, especially
considering the PRIME param and the device ids.
2016-03-24 13:08:31 +01:00
Julian Oes d0e9ec0c67 commander: get PRIME parameter back
The PRIME param got lost on the way of the refactoring.
2016-03-24 13:08:31 +01:00
Julian Oes e949d6d18a commander: get PRIME parameter back
The PRIME param got lost on the way of the refactoring.
2016-03-24 13:08:31 +01:00
Julian Oes a6af53bcb4 df_mpu9250_wrapper: reset calibration if no params 2016-03-24 13:08:31 +01:00
Julian Oes 10ce1c19a2 mag_calibration: small fix for non QURT 2016-03-24 13:08:31 +01:00
Julian Oes 1b5210ca13 sensors/calibration: use params in DF wrappers
Instead of using a uORB topic with the calibration values published in
sensors and consumed by the DriverFramework driver wrappers, let's just
use the the params directly. This is quite a rough change and needs
definitely some cleanup and refactoring.
2016-03-24 13:08:31 +01:00
Julian Oes aa9d698204 mavlink_log: support telem printfs on QURT 2016-03-24 13:08:31 +01:00
Julian Oes 6a8bac2b30 df_hmc5883_wrapper: subscribe to calibration data 2016-03-24 13:08:31 +01:00
Julian Oes 23da6696d7 df_mpu9250_wrapper: comments only 2016-03-24 13:08:31 +01:00
Julian Oes c152f88f7f uavcan: fix after calibration refactor 2016-03-24 13:08:30 +01:00
Julian Oes e0c41632a6 drivers: some fixes for the calibration refactor 2016-03-24 13:08:30 +01:00
Julian Oes a8955553de hmc5883: missing semicolons 2016-03-24 13:08:30 +01:00
Julian Oes 8d096c4053 hmc5883: astyle 2016-03-24 13:08:30 +01:00
Julian Oes b9cc0b74e2 drivers: re-use calibration topic
E.g. instead of defining a gyro_scale struct in drv_gyro.h, use the
gyro_calibration message.
2016-03-24 13:08:30 +01:00
Julian Oes 98e407696e commander: whitespace only
Trailing whitespace all over.
2016-03-24 13:08:30 +01:00
Julian Oes f24b2a701f sensors: first part of a calibration refactor
This adds uORB messages to publish calibration data by sensors which is
then consumed by the sensors. Currently this is only used on Snapdragon
and guarded by QURT ifdefs.
2016-03-24 13:08:30 +01:00
Lorenz Meier 76a8bea1c1 Fix mixer reporting 2016-03-24 12:07:06 +01:00
Lorenz Meier ec930d2372 Increase stack size by 100 bytes. From @tridge 2016-03-24 10:40:46 +01:00
Lorenz Meier 2fa1673ee0 Make 800 bytes space on IO. From @tridge. 2016-03-24 10:40:29 +01:00
Lorenz Meier 1f47aa1180 SD log: Fix skipped statistics 2016-03-23 20:08:45 +01:00
Lorenz Meier 2dcd529ad8 sdlog2: Use more appropriate priorities and locking strategies. 2016-03-23 20:08:45 +01:00
Julian Oes a446a337e9 Revert "mavlink: send out parameters faster over UDP"
This reverts commit 213cdf1a91.

Raising the stream rate of param values had the nice effect that
receiving the params became really quick. However, on the downside it
set all other streams pretty slow. This needs to be fixed differently.
2016-03-23 11:46:25 +01:00
Julian Oes 2e3093cd8f sdlog2: put defines around QURT path 2016-03-22 22:22:30 +01:00
Kevin Mehall 46bc1774f4 sdlog2: hard-code path to work on Linux 2016-03-22 22:21:24 +01:00
Siddharth Bharat Purohit 91a32ff7fb landdetector: use PX4_WARN and remove printf statements 2016-03-22 22:20:11 +01:00
Julian Oes f006840f2a px4.config: remove rc_receiver
This was in there by accident.
2016-03-22 22:18:49 +01:00
Julian Oes 40c6ac94c7 cmake: include land_detector in QURT build 2016-03-22 22:12:40 +01:00
Julian Oes 4e1c6073ae px4.config: add SYS_AUTOSTART param for now 2016-03-22 21:28:15 +01:00
Julian Oes f06a27a53c posix-configs: unite mainapp-calib/mainapp-flight
There is no calibration config needed anymore.
2016-03-22 21:25:26 +01:00
Julian Oes e1aca91467 posix-configs: unite px4-calib and px4-flight
The calibration config is no longer needed.
2016-03-22 21:22:47 +01:00
Julian Oes d629f0912c px4-flight.config: add land_detector 2016-03-22 21:20:55 +01:00
Julian Oes bc85380439 px4-flight.config: fix rc_receiver command 2016-03-22 21:19:18 +01:00
Julian Oes 4a1e9d610b param_shmem: fix the "unknown param id" bug
The recent workaround to flag all params as used did not include
param_for_used_index(). However, this function got used in the case if
one param had not been received by QGC and was requested by its index.
2016-03-22 20:38:11 +01:00
Daniel Agar 25cb671a6c mission_block.h add TODO 2016-03-22 06:54:42 +01:00
Daniel Agar 408d147a18 MissionFeasibilityChecker geofence ignore NAV_CMD_DO_*
-closes #4040
2016-03-22 06:54:41 +01:00
Mark Whitehorn c37cf7abd4 remove broken configgpio call; tested OK on R14 2016-03-21 22:01:20 +01:00
Mark Whitehorn 192c2a32c8 unconfigure GPIO_PPM_IN before reconfiguring 2016-03-21 22:01:20 +01:00
James Goppert 2cf5fb8fb0 Merge pull request #4052 from PX4/revert_sonar_pub
Revert "px4flow: disable distance data transmission from px4flow sensor"
2016-03-21 16:08:16 -04:00
Julian Oes acf9be488d Revert "px4flow: disable distance data transmission from px4flow sensor"
This reverts commit 47f79a66d1 because it
was just an intermediate debug commit.
2016-03-21 16:06:41 -04:00
James Goppert 20720bdfb1 Matrixlib update. 2016-03-21 16:02:57 -04:00
Andreas Antener f3a1abf659 added support for SP type idle 2016-03-21 20:32:19 +01:00
Andreas Antener 664b0ee0a9 read setpoint type from type mask in offboard 2016-03-21 20:32:19 +01:00
Andreas Antener 46ad873d00 add nan protection to attitude and actuator targets 2016-03-21 20:32:19 +01:00
Andreas Antener b1ee89b5ca add nan protection for position target local 2016-03-21 20:32:18 +01:00
Julian Oes a3967872f3 df_bmp280_wrapper: hack to publish altitude
Previously we only published pressure which wasn't inav for the position
estimator.
2016-03-21 11:38:07 +01:00
Andreas Antener a1f4ab21bf fixed code style 2016-03-20 14:48:47 +01:00
Andreas Antener 6782bdaf69 prevent alternate flight control group (1) throttle from being active when safety is disabled 2016-03-20 11:19:23 +01:00
Andreas Antener 4847023cad reset current setpoint when entering RTL 2016-03-19 19:30:09 +04:00
Lorenz Meier f3f01ad960 Fix NuttX compilation 2016-03-19 19:28:42 +04:00
Kevin Mehall afa06ba9d7 Disable UDP options on platforms where it's not supported 2016-03-19 19:19:29 +04:00
Kevin Mehall 0cc3b4becc Add mavlink start -t partner_ip option to pre-set partner IP.
This avoids the need to modify the source code to hard-code the IP when
broadcast doesn't work.

Initializing the sockaddr_in structs with memset is unnecessary because
they are value-initialized by the Mavlink constructor.
2016-03-19 19:19:29 +04:00
Daniel Agar 319fb6b9f9 make submodulesclean deinit 2016-03-19 19:12:16 +04:00
Paul Riseborough 4b3aab2767 ekf2_replay: Fix bug in replay message format handling 2016-03-19 19:11:15 +04:00
Paul Riseborough a46b924d8c sdlog2: Fix bug in EKF replay message format 2016-03-19 19:11:15 +04:00
Paul Riseborough 75ebdda179 ekf2: Improved publishing rules
If the ekf has not completed alignment or encounters a serious error that produces NaN's on the attitude states, then the control, attitude and position topics are not published
The control topic is published first to reduce latency
2016-03-19 19:07:23 +04:00
Julian Oes 8ea581189a DriverFramework: updated submodule
This brings various bugfixes for the framework, as well as Support for
RPi2 with Navio+.
2016-03-19 18:57:45 +04:00
Lorenz Meier c27981d27b Update to latest MAVLink libraries / submodule. 2016-03-19 18:47:43 +04:00
Joep Linssen 38b09031a0 Fixed a typo that caused a uORB publication to fail 2016-03-19 11:24:40 +04:00
Mark Whitehorn 6b997f9e91 fix error in use of union 2016-03-19 11:22:37 +04:00
Mark Whitehorn 7dde4cb55b fix sensor_combined_s temperature indexing error 2016-03-19 11:22:37 +04:00
Nicolas 6ac641956a added posix and qurt apps to enable remote execution of shell commands on qurt side from posix shell
commands are sent via muOrb to qurt, where they are executed and printed (i.e. visibile on mini-dm)
2016-03-18 17:23:51 +01:00
Julian Oes 61baef4b65 param_shmem: fix format 2016-03-18 11:26:29 +00:00
Julian Oes 06d7a9c491 param_shmem: fixes for params on Snapdragon
On Snapdragon we can't yet use the "used" mask for parameters and
therefore need to send all of them down to the ground station. All
params were set to used in an earlier commit but the count and index
function didn't reflect this change. This is fixed now, therefore we can
successfully receive all params in QGC.
2016-03-18 11:26:29 +00:00
Julian Oes 213cdf1a91 mavlink: send out parameters faster over UDP 2016-03-18 11:26:29 +00:00
Lorenz Meier 8a224b7d6a Merge pull request #4032 from FantasyJXF/patch-1
Update nuttx_px4fmu-v2_default.cmake
2016-03-18 15:11:52 +04:00
FantasyJXF 03072bb4d4 Update nuttx_px4fmu-v2_default.cmake
hello sky
2016-03-18 17:03:09 +08:00
James Goppert 21e5c0a990 Merge pull request #4009 from jgoppert/lpe-gps-delay
Enabled gps delay compensation for lpe based on x hist.
2016-03-18 01:42:47 -04:00
James Goppert bcba1fb27e Enabled gps delay for lpe based on x hist. 2016-03-17 11:27:13 -04:00
James Goppert ce7dad81c2 Updated matrix. 2016-03-15 18:11:44 -04:00
James Goppert 484a95978f Matrix lib update. 2016-03-15 06:52:13 -04:00
Julian Oes 2f4aaa6449 land_detector: remove unused variables 2016-03-14 09:45:34 +01:00
Julian Oes 836c63339e land_detector_params: comment fix 2016-03-14 09:45:34 +01:00
Julian Oes 31beabd7b9 VtolLandDetector: only comment fixes 2016-03-14 09:45:34 +01:00
Julian Oes 70eb77453a MultiCopterLandDetector: switch to local position
Instead of using the global position topic for NED velocities, let's use
the local position topic. Also, use the xy and z valid flags instead of
the system state.
In case of no local position update, still rely on the throttle stick
position.
2016-03-14 09:45:34 +01:00
Julian Oes f5e0c72ea0 FixedwingLandDetector: timeout fixes
In the case of the control state topic not updating, the land detector
would get stuck. Therefore, set it to landed in that case.
2016-03-14 09:45:34 +01:00
Lorenz Meier 0cab41075b Fix pparam meta data 2016-03-14 09:43:51 +01:00
Paul Riseborough 58e08339e8 ekf2: Update parameter documentation
Updates parameter documentation to take advantage of the range finder height option.
2016-03-14 09:42:06 +01:00
Paul Riseborough aed444c1c8 ecl: update library reference
Adds functionality allowing the range finder to be used as the primary height measurement when operating over flat terrain. This will be useful for indoor testing where barometric pressure is unreliable due to operation of HVAC systems.
2016-03-14 09:42:06 +01:00
Lorenz Meier 3e1f5c232b Flow driver: Handle rotation parameter if present 2016-03-14 09:29:53 +01:00
Lorenz Meier 6708069a97 Sensors app: Remove flow rotation setup 2016-03-14 09:29:34 +01:00
Lorenz Meier 5c810eef11 Set reboot required param for flow sensor 2016-03-14 09:21:18 +01:00
Lorenz Meier c99b7abe8d Do not ignore untracked files in DF and ECL 2016-03-14 09:16:01 +01:00
Daniel Agar 94824e718b eclipse project template updates
-filter out new build_* directories
-add proper targets
-use uORB from posix_sitl_default
2016-03-14 09:15:02 +01:00
Daniel Agar fc54d2c305 Makefile submodulesclean force clean 2016-03-14 09:15:02 +01:00
Daniel Agar ce8eb0edd8 unit tests -Werror 2016-03-14 09:15:02 +01:00
Daniel Agar dcd44ea4bb unit tests use ninja and ctest 2016-03-14 09:15:02 +01:00
Daniel Agar a67546d232 Makefile add package_firmware 2016-03-14 09:15:02 +01:00
Daniel Agar ca4dfb5643 mixer_test change count to 4 2016-03-14 09:15:02 +01:00
Daniel Agar 20ec9965ea mixer_test be less verbose so we can see the failure 2016-03-14 09:15:02 +01:00
Daniel Agar c82e7d6ae9 make check build everything and run tests 2016-03-14 09:15:02 +01:00
Daniel Agar e029ad41ef Makefile add travis-ci vectorcontrol build 2016-03-14 09:15:02 +01:00
Daniel Agar c37236ecb5 Makefile add distclean and submodulesclean 2016-03-14 09:15:02 +01:00
Daniel Agar 1e2be407dd unit tests cleanup
-launch using top level make tests
-ignore generated files
2016-03-14 09:15:02 +01:00
Daniel Agar d02ca5dd45 git submodules ignore untracked files 2016-03-14 09:15:02 +01:00
Daniel Agar 7a051cbd8f px4fmu param @unit take 2 2016-03-14 09:12:34 +01:00
Daniel Agar 9c94acc3e3 ekf2 remove @unit None 2016-03-14 09:12:34 +01:00
Daniel Agar 371f189cd5 mtecs fix comment formatting 2016-03-14 09:12:34 +01:00
Daniel Agar b89fbc9dbd ekf2 fix comment formatting 2016-03-14 09:12:34 +01:00
Daniel Agar 8ffcfdb492 systemlib fix comment formatting 2016-03-14 09:12:34 +01:00
Daniel Agar c5645dfdf8 fw_pos_control_l1 fix @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 7a9427bc34 param remove empty @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 146cdf578a px4io param @unit take 2 2016-03-14 09:12:34 +01:00
Daniel Agar c654b20584 param @unit remove % usage 2016-03-14 09:12:34 +01:00
Daniel Agar c10dbfed7b position_estimator_inav param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 0869d9b1da gimbal param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 33bfbd6290 camera_trigger param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 0049022239 vtol_att_control param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 8f80b210b6 uavcan param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 12d0febaea system param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 91e3073e11 circuit_breaker param metadata 2016-03-14 09:12:34 +01:00
Daniel Agar d840eac923 sensors param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 3e44957d20 sdlog2 param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar cfac0b0640 position_estimator_inav param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar db06e7eebc rtl param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 15aceae7d8 rcloss param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 189138d6a1 navigator param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar 2fbf607341 mission param @unit 2016-03-14 09:12:34 +01:00
Daniel Agar e22e0b28b6 gpsfailure param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar d10027996a geofence param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar dc34328e67 datalinkloss param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 11f1251fca mc_pos_control_multiplatform param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar f930f3e557 mc_pos_control param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 018c6cec76 mc_att_control_multiplatform param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 55b33e97b3 mc_att_control param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar da9025ce86 mavlink param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 066c25aacc local_position_estimator param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar c9b03a9844 land_detector param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 7c5ba19fe2 fw_pos_control_l1 param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar fa66055a92 mTecs param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 344555e086 fw_att_control param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 5af98549b9 ekf2 param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 676713d0c2 ekf_att_pos_estimator param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 13932103ba commander param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar c013a87490 bottle_drop param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 638b4efc1a attitude_estimator_q param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 1c164f09d5 runway_takeoff param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 06b61a93cb launchdetection param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 51cd8ce1ff subscriber example param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar d2bd25cad1 uart_esc param comment typo 2016-03-14 09:10:29 +01:00
Daniel Agar 0ab44ad8f6 rgbled param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar 58e9c23544 px4io param @unit 2016-03-14 09:10:29 +01:00
Daniel Agar f557f1565f px4fmu param @unit 2016-03-14 09:10:29 +01:00
Pavel Kirienko 11a31d5ecb ESC command transfer priority assigned a high value. This change is not directly related to the current PR, but this change seems minor enough to be pulled in with it. 2016-03-14 09:07:46 +01:00
Pavel Kirienko 1a64b5fa01 Assigned a low transfer priority value for hardpoint commands 2016-03-14 09:07:46 +01:00
Pavel Kirienko 8fd05e81b7 Fixed string literals after autoformatting (astyle is stupid) 2016-03-14 09:07:46 +01:00
Pavel Kirienko 6c3af77937 Fixed hardpoint controller initialization 2016-03-14 09:07:46 +01:00
Pavel Kirienko 1b75da8103 UAVCAN better usage help 2016-03-14 09:07:46 +01:00
Pavel Kirienko 1ac88ec034 Improved hardpoint command handling 2016-03-14 09:07:46 +01:00
Pavel Kirienko 7b83e828b8 UAVCAN hardpoint driver: fixed mutex lock/unlock 2016-03-14 09:07:46 +01:00
blah 6a06c59c09 more cleanup 2016-03-14 09:07:46 +01:00
blah 5e596df859 fixed mutex in hardpoint_controler_set() 2016-03-14 09:07:46 +01:00
blah 39fc9c7761 clean up.... 2016-03-14 09:07:46 +01:00
blah ef7e11e56c more format fixing... 2016-03-14 09:07:46 +01:00
blah 1188aa138c Fixed formating and cleanup 2016-03-14 09:07:46 +01:00
blah 147606a399 moved function defenition 2016-03-14 09:07:46 +01:00
blah 7d079d1dd7 added/fixed more checking on hardpoint set command for CLI 2016-03-14 09:07:46 +01:00
blah c98e236744 fixed CLI hardpoint_controller set 2016-03-14 09:07:46 +01:00
blah 8a1a9b43e0 CLI for hardpoint, set_commmand call not working 2016-03-14 09:07:46 +01:00
blah 26b7fff239 buch of error fixes for the uavcan hardpoint stuff 2016-03-14 09:07:46 +01:00
blah ecf2b56013 fix timer in hardpoint controller 2016-03-14 09:07:46 +01:00
blah 9228e420d0 IOCTL for Hardpoint controller and instantiation for UavcanHardpointController as a field of UavcanNode 2016-03-14 09:07:46 +01:00
blah fb4db49ea0 Added Hardpoint controller to UAVCAN for OpenGrab EPM support
periodic update timer is broken needs fixing
2016-03-14 09:07:46 +01:00
Lorenz Meier cab895004d Navigator: DDifferentiatee between min loiter alt and min takeoff alt. Reduce both by default 2016-03-14 09:05:22 +01:00
Lorenz Meier d81d0c21ed More debug output in commander shell 2016-03-13 19:49:18 +01:00
Lorenz Meier c29bfcd1fe Enable data loss failsafe in SITL so we doo not RTL on RC failure 2016-03-13 19:49:05 +01:00
Lorenz Meier 79fb8036b6 Bump param meta version 2016-03-13 18:29:01 +01:00
Lorenz Meier b323908fc5 Correct param name 2016-03-13 18:12:17 +01:00
Lorenz Meier 2a2dca84bf Navigator: Do not interpret DO_SET_SPEED as 3D location, reset speed on negative value. 2016-03-13 18:09:52 +01:00
Lorenz Meier c97dca0cdb MC pos control: Differentiate between cruise and max velocity 2016-03-13 18:09:52 +01:00
Lorenz Meier 36a8f3f45a Commander: Ignore speed commands 2016-03-13 18:09:04 +01:00
Lorenz Meier f73148e98d mc pos control: Support do change speed 2016-03-13 18:08:25 +01:00
Lorenz Meier 7871ab0fae Fixed wing: support do change speed 2016-03-13 18:08:25 +01:00
Lorenz Meier 697096511c Enable change speed command 2016-03-13 18:07:47 +01:00
Lorenz Meier 2549505e7b Navigator: Add support to read cruising speed off a mission item 2016-03-13 18:07:47 +01:00
Lorenz Meier cc5afdd6b5 Add field for desired cruising speed 2016-03-13 18:07:47 +01:00
Daniel Agar e285e509c1 mkblctrl param @unit 2016-03-13 18:03:21 +01:00
Daniel Agar 9b7452c09b gimbal param @unit 2016-03-13 18:03:21 +01:00
Daniel Agar 289b9266c3 camera trigger param @unit 2016-03-13 18:03:21 +01:00
Lorenz Meier 63235747c2 ROMFS: Run I2C clock config command for all non-v1 boards 2016-03-13 17:59:19 +01:00
Lorenz Meier 2184dc16d4 FMU driver: Allow i2c config without FMU instance 2016-03-13 17:59:19 +01:00
Holger Steinhaus 5acad450f8 uavcan module: extracted public module header for inclusion from other components
The module has some interfaces, that need to be known by external components (e.g. the IOCTL bases and device paths). These were defined in uavcan_main.hpp, which contains to much internal knowledge to be includable from other components.
2016-03-13 17:56:06 +01:00
MaEtUgR d1e0cbe325 fixing all "argc < 1" to avoid segmentation fault when calling the module with no parameters
argc is never smaller than one because the first element of the array is the program name!
2016-03-13 17:52:33 +01:00
Paul Riseborough cecec86081 ekf2: Update documentation for height source param option
The GPS and range finder options are still under development but should be reserved in the interface
2016-03-13 17:47:56 +01:00
Paul Riseborough c037b30aeb ekf2: add missing GPS status data to ekf2 replay 2016-03-13 17:47:56 +01:00
Paul Riseborough 016bfad507 sdlog2: add missing GPS status data to ekf2 replay 2016-03-13 17:47:56 +01:00
Paul Riseborough c0404e8460 msg: add missing GPS status data to ekf2 replay 2016-03-13 17:47:56 +01:00
Roman 77697c586f write flow innovations and flow innovation variances to replay log 2016-03-13 17:47:56 +01:00
Roman 7a6a09f1a1 ekf2_replay: support parsing a uint32_t 2016-03-13 17:47:56 +01:00
Roman 89ace03133 ekf2_replay: added support for flow and range data 2016-03-13 17:47:56 +01:00
Roman 8e1b824ecb ekf2 app: only copy flow and range into replay message if they updated 2016-03-13 17:47:56 +01:00
Roman 37079dc743 sdlog2:
added separate replay messages for flow and range
2016-03-13 17:47:56 +01:00
Roman 4965926392 make ekf2 replay app work with sparse gps data 2016-03-13 17:47:56 +01:00
Roman 06ffd59f17 sdlog2: only log gps replay data if updated
Conflicts:
	src/modules/sdlog2/sdlog2.c
2016-03-13 17:47:56 +01:00
Roman 181a5fd60d ekf2 app: only publish gps in replay if updated 2016-03-13 17:47:56 +01:00
Paul Riseborough 80927d79fe sdlog2: Add replay logging of flow and range finder messages for ekf2 2016-03-13 17:47:56 +01:00
Paul Riseborough b1f656c4b8 ekf2: Add optical flow and range finder data to ekf2 replay logging 2016-03-13 17:47:56 +01:00
Paul Riseborough 686b000503 msg: Add optical flow and range finder data to ekf2 replay 2016-03-13 17:47:56 +01:00
Paul Riseborough 1ca857404f ekf2: Enable tuning of terrain estimator 2016-03-13 17:47:56 +01:00
Paul Riseborough 735f2942c8 ekf2: Enable tuning of range finder and optical flow fusion parameters 2016-03-13 17:47:56 +01:00
Paul Riseborough dcb47e425d ekf2: Add local position ground clearance reporting 2016-03-13 17:47:56 +01:00
Paul Riseborough 70e9047f5d sdlog2: Log ekf2 height above ground fusion data 2016-03-13 17:47:56 +01:00
Paul Riseborough e540315da8 ekf2: Publish height above ground fusion data 2016-03-13 17:47:56 +01:00
Paul Riseborough c9954c8ddc msg: Add ekf2 height above ground fusion data 2016-03-13 17:47:56 +01:00
Paul Riseborough 562bfd1be3 sdlog2: fix duplicate message ID 2016-03-13 17:47:56 +01:00
Roman 5abd11c6b9 fixed rebasing issues 2016-03-13 17:47:56 +01:00
bugobliterator 01ee608117 sdlog: setup flow innovation logging 2016-03-13 17:47:56 +01:00
bugobliterator 47f79a66d1 px4flow: disable distance data transmission from px4flow sensor 2016-03-13 17:47:56 +01:00
bugobliterator e2901a7c2f ekf2: use yaw estimation of ekf for local position yaw value 2016-03-13 17:47:56 +01:00
bugobliterator d33dbb8cbb ekf2: use estimator's estimate of variance for standard deviation calculation 2016-03-13 17:47:56 +01:00
bugobliterator c02d17f56e ekf2: calculate dist from bottom values 2016-03-13 17:47:56 +01:00
bugobliterator 6c5812c528 ekf2: add listeners for range and optical flow data 2016-03-13 17:47:56 +01:00
Daniel Agar 31a975e501 VEHICLE_CMD_DO_SET_MODE missing RATTITUDE 2016-03-13 17:44:55 +01:00
Lorenz Meier 6b10d2b8e1 Sensors: Remove debug output 2016-03-13 15:42:34 +01:00
Lorenz Meier 475bdb7212 Sensors: Fix white space 2016-03-13 15:41:02 +01:00
Lorenz Meier b114575139 GPS: Fix comment 2016-03-13 15:40:39 +01:00
Lorenz Meier 1fdf252e96 Remove duplicate LAND mode, clean up mode reporting across the board to ensure consistency 2016-03-13 15:39:35 +01:00
Lorenz Meier f472ac577a Cleanup for manual control messages 2016-03-13 15:39:12 +01:00
Lorenz Meier 8373f41d42 Clean up new mode switching 2016-03-13 15:38:56 +01:00
Lorenz Meier 99e686ea08 Sensors: Add integer rounding prottection, add comments so people less familiar with integer arithmetic can follow 2016-03-13 11:49:27 +01:00
Lorenz Meier 6bcf38c4bb Fix mode switching 2016-03-13 11:49:27 +01:00
Lorenz Meier f7640f02ad GPS driver: Removed debugging noise 2016-03-12 17:17:47 +01:00
Lorenz Meier f7ac1f0d8f Clean up mixers, remove unused pass-through mixers from planes clobbering up RAM 2016-03-12 16:43:30 +01:00
Lorenz Meier c198388dd5 Use new data for mode changes 2016-03-12 16:36:04 +01:00
Lorenz Meier 3373e994b4 Commander params: Hold mode is now called hold mode 2016-03-12 16:21:16 +01:00
Lorenz Meier bac1903a43 param meta data cleanup 2016-03-12 16:15:35 +01:00
Lorenz Meier 3f1ba686a7 Meta data update 2016-03-12 16:15:04 +01:00
Lorenz Meier 703f41d76b Move unit tests to Linux only to avoid false positives 2016-03-12 12:37:49 +01:00
Daniel Agar f944ac7e26 commander add mode argument 2016-03-12 12:23:31 +01:00
Julian Oes 65947346eb df_hmc5883_wrapper: get the var swapping right 2016-03-12 12:22:05 +01:00
Julian Oes 09dd88ec01 df_hmc5883_wrapper: fix mag rotation
The external GPS+Mag needs some rotation.
2016-03-12 12:22:05 +01:00
Lorenz Meier 1aee73a8a7 Update ECL 2016-03-12 12:15:10 +01:00
Lorenz Meier 2fa43e35f5 Compile fixes for EKF2 2016-03-12 12:15:10 +01:00
Lorenz Meier 83557ff0ba Update ECL lib 2016-03-12 12:15:10 +01:00
Lorenz Meier 22a0ce7048 Pull in fixes from Gazebo 2016-03-12 12:14:55 +01:00
Lorenz Meier 2d25ef36bb Complete plane config 2016-03-12 12:06:17 +01:00
Lorenz Meier b080f76c3a Updated SITL 2016-03-12 11:22:20 +01:00
Lorenz Meier ed35f73a28 Update DriverFramework to fix SITL 2016-03-12 11:19:36 +01:00
Lorenz Meier 32368e5eda Baro sim: Cleanup 2016-03-12 11:07:55 +01:00
Lorenz Meier c1321ec721 GPS sim: Add missing velocity timestamp 2016-03-12 11:07:34 +01:00
Lorenz Meier 155a0d7f18 Code style in MAVLink simulator 2016-03-12 11:06:51 +01:00
Mark Whitehorn 8e4a1ca36e change large mag offset from error to warning 2016-03-11 13:58:26 -07:00
sander 4b5750287e Remove increments from enums 2016-03-11 16:42:37 +01:00
sander 04cbe17b45 bools to enums and fix values 2016-03-11 16:42:37 +01:00
sander ac79d98741 fix enum 2016-03-11 16:42:37 +01:00
sander 531762d6b5 fix typo 2016-03-11 16:42:37 +01:00
sander f6cb253d41 Model specific param meta data 2016-03-11 16:42:37 +01:00
sander 32b7ef5284 VTOL params meta data 2016-03-11 16:42:37 +01:00
Lorenz Meier d7254c2b01 Fix SITL configs 2016-03-11 16:42:17 +01:00
Lorenz Meier de14678452 Makefile: Add gazebo plane config 2016-03-11 16:42:17 +01:00
Lorenz Meier 412bf391b6 Add CMake target for plane 2016-03-11 16:42:17 +01:00
Lorenz Meier f5dd944e46 Add Gazebo plane config 2016-03-11 16:42:17 +01:00
Lorenz Meier 1401629ab8 Update header in Makefile 2016-03-11 12:30:41 +01:00
Lorenz Meier 71f5e3377a Strip python serial since we are not flashing boards in Travis 2016-03-11 12:20:32 +01:00
Lorenz Meier cf89e82e95 Makefile: Be less verbose on build 2016-03-11 12:07:39 +01:00
Lorenz Meier 0720407b8c Make submodule check less verbose 2016-03-11 12:07:26 +01:00
Lorenz Meier b937618e59 Improved CMAKE return value checking and ensured that fresh checkouts initialize the GIT submodules correctly 2016-03-11 11:59:49 +01:00
Lorenz Meier 4551879b55 Improved GIT submodule check 2016-03-11 11:59:13 +01:00
Julian Oes 881a2a5860 param_shmem: make all params used
This is a workaround for the fact that the used information is not
shared between the ADSP and the Linux side on the Snapdragon. By
flagging all params used, we can at least receive them on QGC.
2016-03-10 22:26:31 +01:00
Andreas Antener 55e1259f59 prevent vtol from entering ACRO (temporary) 2016-03-10 21:43:47 +01:00
Lorenz Meier ceeedd739f Fix UART formatting 2016-03-10 19:18:24 +01:00
tumbili 030b544dd7 removed UART read experiment for now 2016-03-10 17:06:01 +01:00
tumbili e80fb86b42 uart_esc: made sending motor commands to pixhawk work
- experimented with reading rc data from uart but this fails
- mixer loading works
2016-03-10 16:41:48 +01:00
tumbili 3867e7709d added uart_esc app to dsp startup script, this will output
serial data on the snapdragon ESC connector (J13)
2016-03-10 16:31:51 +01:00
tumbili 8463dddb8c strip comments from quad x mixer file because else it fails to load on Snapdragon 2016-03-10 16:31:34 +01:00
Lorenz Meier 7e086a2a04 UART ESC: Fix syntax 2016-03-10 10:09:23 +01:00
Lorenz Meier 4fb97de4e4 Enable UART ESC driver in QuRT 2016-03-10 10:02:55 +01:00
Lorenz Meier 5d35dc4331 Re-introduce UART ESC driver 2016-03-10 10:02:36 +01:00
Lorenz Meier 6b89ce0b7f Fix decimal places in att control params 2016-03-10 09:15:49 +01:00
Julian Oes 9aab96a4e5 DriverFramework: update submodule
This should fix includes, as well as the gyro scaling.
2016-03-09 14:48:20 -08:00
Julian Oes ef8d074e23 shmem_qurt: remove leftover printf 2016-03-09 11:10:19 -08:00
Julian Oes 022ced3648 shmem: don't do locking for now
The locking seems to be broken, therefore refrain from using it.
2016-03-09 11:07:34 -08:00
Julian Oes 070e71ed55 px4_layer: astyle 2016-03-09 09:53:27 -08:00
Julian Oes 8b19d249b2 px4_layer: better printfs for shmem_posix.c 2016-03-09 09:53:27 -08:00
Julian Oes f2b906d7af posix-configs: start mavlink on mainapp 2016-03-09 09:53:27 -08:00
Julian Oes 3e964ef85d POSIX config: param shem define was lost 2016-03-09 09:53:27 -08:00
MaEtUgR 4f29c7c4db switch the modules implementing the block structure to px4_poll such that in posix_sitl simulation the poll works as expected, blocks the module and doesn't overload the CPU 2016-03-09 09:38:32 +01:00
James Goppert 613ec40d86 LPE: comment out gps delay handling, too much memory required. 2016-03-08 11:48:20 -05:00
James Goppert d37ddb6102 Work on LPE GPS delay. 2016-03-08 09:38:31 -05:00
James Goppert ac66050cd6 LPE tuning for GPS delay in sim. 2016-03-08 08:56:33 -05:00
James Goppert 12489654ea GPS delay compensation for LPE. 2016-03-08 08:23:02 -05:00
James Goppert 02454d0cdc Improved controllib delay block. 2016-03-08 07:28:36 -05:00
James Goppert 5c09c8ede7 Add delay block to controllib. 2016-03-08 06:08:30 -05:00
James Goppert c677d446d3 LPE SITL script updates. 2016-03-08 05:07:27 -05:00
James Goppert 078628e74f Merge pull request #3748 from jgoppert/lpe-improvements
improved position based flow correction for lpe
2016-03-08 04:06:56 -05:00
James Goppert baed2c0255 Updated lpe. 2016-03-08 03:47:12 -05:00
James Goppert e33fd3d815 Added controllib statistics block. 2016-03-08 03:33:42 -05:00
Mark Charlebois 6f01c48ca7 Use consolidated MPU driver
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-03-08 09:30:36 +01:00
Lorenz Meier 55e5956f75 Fix mode for mag file 2016-03-08 09:29:17 +01:00
Lorenz Meier 7a6c2ed6f4 Fix mode changes 2016-03-08 09:29:17 +01:00
Robert Dickenson 481e28aae1 Minor format/whitespace changes courtesy of AStyle 2016-03-08 09:29:17 +01:00
Robert Dickenson 76e3f92fb4 Remove execute mode from cmake file which was accidently committed earlier 2016-03-08 09:29:17 +01:00
Robert Dickenson abeb2b9c7e Hopefully the last of the trivial minor fixups before being able to PR 2016-03-08 09:29:17 +01:00
Robert Dickenson 198a85a72e Undo a local change to quiet some debug noise when running on an XRacer rev7 board 2016-03-08 09:29:17 +01:00
Robert Dickenson d65bd3f1bd Add magnetometer range and temperature to the 'test' output report 2016-03-08 09:29:17 +01:00
Robert Dickenson 7061bc804a Remove file with only whitespace change as not required in PR 2016-03-08 09:29:17 +01:00
Robert Dickenson 044a139a2f Remove deprecated target from the module list which was deleted in previous commit 2016-03-08 09:29:17 +01:00
Robert Dickenson 95e51ed8c6 Cleanup mpu9250 driver in preparation for PR 2016-03-08 09:29:17 +01:00
Robert Dickenson 4ef9148517 Preparing MPU9250 driver for PR
Corrected magnetometer gain and alignment, added support for sensitivity adjustment values, cleaned up debugging messages and removed dead code.
2016-03-08 09:29:17 +01:00
Robert Dickenson 0a33ca6e57 Align the magnetometer axis with the accel/gyro 2016-03-08 09:29:17 +01:00
Robert Dickenson 2f69afb738 Temporarily quiet a noisy timeout warning on pixracer board. 2016-03-08 09:29:17 +01:00
Robert Dickenson 5903891213 Significant work on mpu9250 driver to get magnetometer updates happening reliably. Improved 'mag' utility to aid driver development and testing. 2016-03-08 09:29:17 +01:00
Robert Dickenson 505f331c36 Add the new mag system command to the px4fmu build 2016-03-08 09:29:17 +01:00
Robert Dickenson c861e6ee16 Add new system command to monitor the magnetometer uORB publication, in order to see MPU9250 driver mag output 2016-03-08 09:29:17 +01:00
Robert Dickenson bad571ebab Add required define for the new MPU9250 magnetometer 2016-03-08 09:29:17 +01:00
Robert Dickenson 0050057392 Add internal AK8963 magnetometer support to the MPU9250 device driver 2016-03-08 09:29:17 +01:00
James Goppert 6b62c032d6 Matrix update. 2016-03-08 03:18:19 -05:00
Kabir Mohammed 309212b52b px4flow : rotate gyro readings as well 2016-03-08 08:52:08 +01:00
sander f33c5a0e7f Initialize abort_transition bool 2016-03-08 08:46:48 +01:00
Roman a62046625b mc_pos_control: only reset position setpoint if we are not in rotary wing mode 2016-03-07 21:14:41 +01:00
Lorenz Meier 17b86d97e2 System lib format fixes 2016-03-06 18:05:45 +01:00
David Sidrane f0b770a3ce Use correct CS defines to disable chip selects
Repair one more cut and past mistake I made.
 
https://github.com/dipspb/PX4Firmware/blob/px4-master-sensor_reset_fix/src/drivers/px4fmu/fmu.cpp#L2167-L2170

Should not have OFF
2016-03-06 18:04:25 +01:00
Julian Oes e4d71ec682 configs: compile and start the gps driver on QURT 2016-03-06 18:02:50 +01:00
Julian Oes 1cebfde840 gps: make the driver compile and run on QURT 2016-03-06 18:02:50 +01:00
Julian Oes bc9e24102d DriverFramework: update submodule
This fixes a missing include.
2016-03-06 18:02:50 +01:00
Lorenz Meier 2e63cfbcfc Do not check for RC map 2016-03-06 17:55:45 +01:00
Lorenz Meier 98e65a2c3a Do not check mode switch for now 2016-03-06 17:54:11 +01:00
Lorenz Meier ad58fc7458 Bump param version 2016-03-06 17:38:08 +01:00
Lorenz Meier 9e7837fc31 Update sensor meta data 2016-03-06 16:28:42 +01:00
Lorenz Meier 8a91ce65e8 Ensure RC switches get evaluated on first run 2016-03-06 14:56:25 +01:00
Lorenz Meier b338ba439c Sensors: Update param meta data 2016-03-06 14:27:05 +01:00
Lorenz Meier b766213b20 Format fix for sensors 2016-03-06 12:57:39 +01:00
Lorenz Meier 82a390c125 Commander: Better user feedback for kill switch 2016-03-06 12:48:28 +01:00
Lorenz Meier 351ab38179 Fix additional switch eval 2016-03-06 12:48:14 +01:00
Lorenz Meier 74694e3c77 Commander: Support fallback strategies for rejected control modes 2016-03-06 12:34:31 +01:00
Lorenz Meier 2e5a41e8c9 Sensors: Use correct ranges for mode slots 2016-03-06 12:34:07 +01:00
Lorenz Meier ffd24e8cf0 Commander: Support single channeel flight mode selection 2016-03-05 20:41:02 +01:00
Lorenz Meier 1c21a63101 Sensors: Support single channel flight mode selection 2016-03-05 20:41:02 +01:00
Lorenz Meier 4e36973cee Manual control: Prep single channel flight mode selection 2016-03-05 20:41:02 +01:00
Don Gagne 07775f7629 Add initial version stamps to meta data 2016-03-05 20:33:16 +01:00
Don Gagne 29af484685 Add firmware type to .px4 2016-03-05 20:33:16 +01:00
sander d832e325c1 Remove debug output 2016-03-05 18:05:19 +01:00
sander 00c9c7fdff VTOL Front transition minimum time 2016-03-05 18:05:19 +01:00
Daniel Agar 4d82cf7224 fix TECS comment typo 2016-03-04 17:30:50 -05:00
David Sidrane 65696acf6a Merge pull request #3920 from dipspb/px4-master-sensor_reset_fix
Fix sensor_reset method for PX4FMU_V4
2016-03-04 04:52:28 -10:00
Dmitry Prokhorov 6f2a4f3d82 Fix sensor_reset method for PX4FMU_V4 2016-03-04 14:19:03 +03:00
tumbili 2d2b0a2d43 mc pos: in auto mode reset the position to current position. Velocity controller ensures continuous attitude setpoint 2016-03-04 08:45:13 +01:00
tumbili 9297a02ac2 move code which clears the pos and alt hold flags to the correct place.
this should fix the problem of the jump in the altitude setpoint when
switching into altitude hold mode.
2016-03-04 08:45:13 +01:00
tumbili 989a4a0984 mc pos control:
-when switching into vel control mode (xy) choose vel sp such that attitude
setpoint is continuous
2016-03-04 08:45:13 +01:00
Julian Oes dcf022f480 Submodules: use submodule sync --recursive
This should make changes where the submodule repository changes trouble
free for users.
2016-03-03 14:22:37 +01:00
tumbili b1a890f0cd updated ecl 2016-03-03 10:56:23 +01:00
Lorenz Meier e73ae292dc Fix unit tests 2016-03-03 10:46:45 +01:00
Julian Oes e6b9712ff5 DriverFramework: update submodule
This update sets the HMC5883 into single measurement mode at 150 Hz
instead of continuous measurement mode at 75 Hz because the I2C write
issue on Snapdragon has been resolved.
2016-03-03 10:16:33 +01:00
Daniel Agar 6bb3d5f47b fw_pos_control only use const position_setpoint_triplet within control_position() 2016-03-03 10:15:40 +01:00
Daniel Agar 2eea0af843 navigator only accept waypoints if !landed 2016-03-03 10:15:35 +01:00
Daniel Agar 0cbb2c7f23 FW ALTCTL/POSCTL remove 0 throttle threshold when not landed 2016-03-03 10:14:19 +01:00
Daniel Agar 9ab0674107 TECS fix typo 2016-03-03 10:13:47 +01:00
Daniel Agar d1e096abc7 more consistent naming for LND params 2016-03-03 10:13:40 +01:00
Lorenz Meier f34f5c4f5a Mag: Shift output argument 2016-03-02 02:37:23 +01:00
Lorenz Meier 4185d0ae41 Better error reporting on mag failure 2016-03-02 02:12:48 +01:00
Lorenz Meier 984f07d8c4 Commander: Relax mag offset to maximum 2016-03-02 02:03:12 +01:00
Roman 68e45057a0 sdlog: compute logging rate correctly 2016-03-01 21:35:36 +01:00
tumbili 7d893703d7 ensure suitable PWM min/max/disarmed param values for multirotor and vtol 2016-03-01 09:45:42 +01:00
tumbili 457dc6a0a4 vtol defaults: use parameters for pwm values 2016-03-01 09:36:23 +01:00
tumbili 413f63ab93 Caipiroshka: set correct MAV_TYPE, set correct pwm output channels 2016-03-01 09:21:59 +01:00
Mark Whitehorn c49e576d60 reduce output scaling as workaround for broken output limits 2016-03-01 09:21:58 +01:00
Mark Whitehorn b57e8793f5 clarify left/right and elevon assignments 2016-03-01 09:21:58 +01:00
Mark Whitehorn d61f935bb1 fix sign of roll in elevons mixer 2016-03-01 09:21:58 +01:00
Mark Whitehorn beab5ec3d7 reduce output scaling as workaround for broken output limits 2016-03-01 09:21:58 +01:00
Mark Whitehorn 1551898f5a fix typo in comment 2016-03-01 09:21:58 +01:00
Mark Whitehorn 53ed61790d fix typo in comment 2016-03-01 09:21:58 +01:00
Mark Whitehorn 5ee6dad7ea clarify left/right and elevon assignments 2016-03-01 09:21:58 +01:00
Mark Whitehorn ad54f0149c fix sign of roll in elevons mixer 2016-03-01 09:21:58 +01:00
Daniel Agar 5a167ea99d reorder compiler options to respect -Wno-sign-compare
-closes #3867
2016-03-01 09:15:16 +01:00
Mark Whitehorn 98a4dd6a4a run astyle 2016-03-01 09:02:14 +01:00
Mark Whitehorn bebe8b0a78 init frsky_state properly 2016-03-01 09:02:14 +01:00
Mark Whitehorn ab596e3711 scan indefinitely for FrSky RX, report state in status 2016-03-01 09:02:14 +01:00
Mark Whitehorn 607053cfbc decrease stack allocation to 1100 2016-03-01 09:02:14 +01:00
Mark Whitehorn 52465d07b9 run astyle 2016-03-01 09:02:14 +01:00
Mark Whitehorn 8186139dad reduce D-type stack usage and static allocations 2016-03-01 09:02:14 +01:00
Mark Whitehorn 6d2927cd7a allocate structs on the heap; exit daemon if no FrSky receiver detected 2016-03-01 09:02:14 +01:00
Mark Whitehorn 95d328f57c remove commented code and change to sensor_baro topic to filter altitude 2016-03-01 09:02:14 +01:00
Mark Whitehorn 6d509835eb clean up uORB code 2016-03-01 09:02:14 +01:00
Mark Whitehorn 0960e1a820 make structs static and decrease stack size, run astyle 2016-03-01 09:02:14 +01:00
Mark Whitehorn 6fa6e72250 add sPort GPS telemetry 2016-03-01 09:02:14 +01:00
Daniel Agar 584165def2 travis-ci use both gcc 4.8 and 4.9 2016-02-29 23:49:10 +01:00
Mark Whitehorn fcfe64ee5a enable disarmed PWM and rework safety switch disable logic 2016-02-29 12:29:30 -07:00
Mark Whitehorn 29b0520263 enable PWM with safety switch off 2016-02-29 12:29:30 -07:00
Lorenz Meier 7adaccfe67 Higher default gains for multicopter position control 2016-02-29 15:17:12 +01:00
Lorenz Meier 9d35b05889 FMUv4: Safe RAM 2016-02-29 14:06:48 +01:00
tumbili b88a8baa76 log replay topic correctly 2016-02-29 10:27:05 +01:00
tumbili f25702c29f increased default logging to 100Hz 2016-02-29 09:51:55 +01:00
tumbili aa130b1b03 added missing parenthesis to fix logging 2016-02-29 09:51:36 +01:00
Lorenz Meier 3001d08df6 Commander params for single switch flight mode selection 2016-02-28 20:50:47 +01:00
Lorenz Meier 3af73e4022 More commander meta data 2016-02-28 19:53:23 +01:00
Lorenz Meier d6f7ced274 Commander: Add param meta data 2016-02-28 19:48:43 +01:00
Lorenz Meier e3853ed4e5 MC att control: Support increment meta data 2016-02-28 19:42:34 +01:00
Lorenz Meier 9415dd8cd3 Add support for increment tag 2016-02-28 19:42:19 +01:00
Lorenz Meier 3efd0ff686 Gazebo: Better physics tuning 2016-02-28 17:18:45 +01:00
Lorenz Meier 8f46c07249 Sim: Do not drain the battery all the way to zero yet 2016-02-28 17:17:59 +01:00
Lorenz Meier 730ce4535f Switch all SITL configs to EKF2 2016-02-28 16:36:56 +01:00
Lorenz Meier 2a521345dc Update SITL gazebo 2016-02-28 16:36:43 +01:00
sander 9b03854fda Change MPC_ACC_HOR_MAX default to 2.0 2016-02-28 15:57:21 +01:00
Lorenz Meier ba79b32b30 Fix FMU output on non-Pixracer boards 2016-02-28 12:11:47 +01:00
Lorenz Meier ef07fdf9c7 Fix camera trigger logging ID 2016-02-28 11:19:23 +01:00
Lorenz Meier 509be82081 Navigator: Show feedback on pause / continue command 2016-02-28 11:17:27 +01:00
Lorenz Meier 3fa3158ca2 sdlog2: Ensure sensor combined gets written 2016-02-27 14:58:53 +01:00
Lorenz Meier df4d63dd07 SDLOG2: Always copy the topic, even if not using it right away 2016-02-27 14:52:05 +01:00
Lorenz Meier 473eea154f MC position control: Hold position more aggressively 2016-02-27 12:12:26 +01:00
Lorenz Meier 5c7f8ca12e Update MAVLink submodule 2016-02-27 11:56:30 +01:00
Lorenz Meier c161248e71 Fix reposition vehicle command 2016-02-27 11:55:20 +01:00
Roman bdf373c897 final cleanup 2016-02-27 11:51:05 +01:00
tumbili 3ab6fe7edd do not allocate unnecessary memory in logging app 2016-02-27 11:51:05 +01:00
tumbili 36e3600809 take into account laneded and armed flag for ekf2 replay 2016-02-27 11:51:05 +01:00
tumbili 2e40d4d4fd sdlog2: log attitude in replay mode for consistency checks 2016-02-27 11:51:05 +01:00
tumbili b98602df8b sdlog2:
increase stack size and fix indentation
2016-02-27 11:51:05 +01:00
tumbili 527f9886f9 ekf2 app:
- support use of replay
2016-02-27 11:51:05 +01:00
tumbili d73e3a7318 start sdlog2 app with different arguments in replay mode 2016-02-27 11:51:05 +01:00
tumbili e0a489a749 added ekf2 replay message 2016-02-27 11:51:05 +01:00
tumbili ec803a650e sdlog2 replay:
- added PRIO_BOOST parameter to avoid log data loss
- added replay mode which disabled logging of uneeded topics
- run mainloop based on polling of either sensor_combined or replay topic
depending on mode
- log ekf2_replay topic
2016-02-27 11:51:05 +01:00
tumbili 7da3c6ceaa sdlog2 messages:
- added ekf2 replay message
2016-02-27 11:49:49 +01:00
tumbili 652fb5e99e ekf2 app:
- support use of replay
2016-02-27 11:48:31 +01:00
tumbili 35d573e12a added ekf2 replay module 2016-02-27 11:48:31 +01:00
Lorenz Meier 34b6354fa6 Expand SITL run 2016-02-27 11:48:31 +01:00
Lorenz Meier fcb70d1e21 Enable replay target 2016-02-27 11:48:31 +01:00
Lorenz Meier d7c8acd15c CMake: Add replay config 2016-02-27 11:48:31 +01:00
Lorenz Meier e5c53f2755 Ignore PX4 log files 2016-02-27 11:48:31 +01:00
Andreas Bircher 261ddb8e21 online command support to enable/disable distance based triggering 2016-02-27 11:41:57 +01:00
Andreas Bircher 4bf11ca06b adding the timestamp logging 2016-02-27 11:41:57 +01:00
Andreas Bircher e695af2100 fixing the logging of trigger information 2016-02-27 11:41:57 +01:00
Andreas Bircher 7abb699bc4 adding the camera trigger logging to sd card 2016-02-27 11:41:57 +01:00
Andreas Bircher 2cce938980 implementing @LorenzMeier comments 2016-02-27 11:41:57 +01:00
Andreas Bircher 8959954d37 adding third camera triggering mode to trigger based on covered horizontal distance. bench-tested. 2016-02-27 11:41:57 +01:00
Lorenz Meier 11da8df84a FMUv4: Disable safety on all current boards and in the future for all racing configs 2016-02-27 11:26:49 +01:00
Mark Whitehorn 04a9eada1e disable safety switch if CBRK_IO_SAFETY is on 2016-02-27 11:25:56 +01:00
Mark Whitehorn beb9707933 fix fmuv1 compile error 2016-02-27 11:25:56 +01:00
Mark Whitehorn 426903c617 run astyle 2016-02-27 11:25:56 +01:00
Mark Whitehorn b6231c718b reduce safety switch sampling to ~10Hz and clean up 2016-02-27 11:25:56 +01:00
Mark Whitehorn ef2a7bda53 add fmuv4 safety switch handling 2016-02-27 11:25:56 +01:00
Mark Whitehorn 5a7d31f7a9 fix typo in comment 2016-02-27 11:25:56 +01:00
Lorenz Meier 17358ffbff Changed permissions, added Python shebang 2016-02-27 11:24:05 +01:00
sander fa590bbe80 Correct float parsing args and increase altitude monitoring frequency 2016-02-27 11:24:05 +01:00
sander b9ae592e2b Altitude monitoring and wait for home lock 2016-02-27 11:24:05 +01:00
sander 14f358a975 Argument parsing and copyright 2016-02-27 11:24:05 +01:00
sander e38b8d93ea Fix failure message 2016-02-27 11:24:05 +01:00
sander f425068926 Comment update 2016-02-27 11:24:05 +01:00
sander 35044273a2 Fixed connection string, added constants 2016-02-27 11:24:05 +01:00
sander 96d7036b09 Initial mission check script using dronekit 2016-02-27 11:24:05 +01:00
Lorenz Meier 5aaf74bbe6 MC pos control: Allow higher yaw rate by default 2016-02-27 11:23:40 +01:00
Lorenz Meier 44e885f3c3 Att control: Allow higher yaw rate by default 2016-02-27 11:23:24 +01:00
Lorenz Meier e9d778fd24 Vehicle command: Add reposition 2016-02-27 11:22:57 +01:00
Lorenz Meier 64a6c16fb6 Add reposition command support 2016-02-27 11:22:39 +01:00
Lorenz Meier 326389d04b Add sensor meta data for RC mapping 2016-02-27 00:42:46 +01:00
sander b513edffcd Add vtol states to sdlog2 2016-02-26 22:51:11 +01:00
sander 1165e0a946 New params for quadranger 2016-02-26 16:17:06 +01:00
sander b4d95a7a48 Bump gazebo_standard_vtol to ekf2 2016-02-26 09:42:08 +01:00
Lorenz Meier 3575984f59 Mag cal: Be more specific which unit failed 2016-02-26 09:24:18 +01:00
Lorenz Meier 159da5442e Mag msg: Remove unused field 2016-02-26 09:24:00 +01:00
Lorenz Meier a2c4c094e6 HoTT stack size adjustments 2016-02-25 22:20:42 +01:00
Lorenz Meier 4ca91583b4 Updated ECL 2016-02-25 17:25:14 +01:00
Lorenz Meier d83823398e Merge pull request #3859 from PX4/pwm_min_250
better PWM_MIN defaults for 250 airframes
2016-02-25 17:17:44 +01:00
tumbili 3e8b2c4ad1 better PWM_MIN defaults for 250 airframes 2016-02-25 17:04:51 +01:00
Lorenz Meier a516450868 MAVLink: Send vibration status message 2016-02-25 15:57:53 +01:00
Lorenz Meier 29d417beb7 Messages: Add vibration levels and onboard / offboard sensors 2016-02-25 15:57:37 +01:00
Lorenz Meier 03657931c8 Attitude estimator Q: Publish vibration levels 2016-02-25 15:57:14 +01:00
Lorenz Meier 94353a9d40 Commander: Allow arming in MANUAL, STAB, ACRO, ALTCTL 2016-02-25 14:12:08 +01:00
Lorenz Meier 755569ac12 HDOP / VDOP correctly reporting 2016-02-25 13:45:34 +01:00
Lorenz Meier fdff16c3cb Always enable nav sol 2016-02-25 13:45:34 +01:00
Lorenz Meier 8fcf24f23f GPS driver UBX: Support hdop and vdop 2016-02-25 13:45:34 +01:00
Lorenz Meier 6f484c04bd Ashtech GPS driver: Fix code style 2016-02-25 13:45:34 +01:00
Lorenz Meier cd583e054e MAVLink app: Use HDOP / PDOP 2016-02-25 13:45:34 +01:00
Lorenz Meier 56c95dc9c8 GPS driver: Populate HDOP / VDOP fields 2016-02-25 13:45:34 +01:00
Lorenz Meier 9b5c9b0c8a Add HDOP / VDOP fields 2016-02-25 13:45:34 +01:00
Lorenz Meier c6a30d74c1 Bump VFR HUD rate for OSD 2016-02-25 11:14:15 +01:00
Lorenz Meier 1d0c968a88 Widen rate gains 2016-02-25 10:50:45 +01:00
Lorenz Meier ae90084977 Fix build error 2016-02-25 02:17:00 +01:00
Lorenz Meier 0a8a75af1f Commander: Provide better calibration errors 2016-02-25 01:56:17 +01:00
Lorenz Meier 4f666cebe7 Commander: RRelax mag cal requirements and report offsets on failure 2016-02-25 01:49:59 +01:00
Lorenz Meier c5b0650c23 Sim: Add batttery sim 2016-02-24 12:31:24 +01:00
Sander Smeets 43f75c2c4e Merge pull request #3837 from PX4/readme_link
Link reversed in readme
2016-02-24 02:04:30 +01:00
sander 376cdc78c8 Link reversed in readme 2016-02-24 00:07:48 +01:00
Julian Oes 23171b97fb Makefile: don't do any git submodule magic
Let's do all the submodule stuff in check_submodules.sh
2016-02-23 17:03:30 +01:00
Julian Oes 5af9dc280f check_submodules: Don't override submodule
Previously make would override a submodule, now it only does submodule
init and override if the submodule is not already checked out.
2016-02-23 17:03:30 +01:00
Lorenz Meier 9a32c08cff Complete log buffer patch set 2016-02-23 16:06:11 +01:00
Lorenz Meier daeb4a24f3 Fix code style 2016-02-23 13:17:30 +01:00
Lorenz Meier 9172bf7271 MPU6K: Report start scan not as failure, but as not found if sensor is not around 2016-02-23 13:09:06 +01:00
Lorenz Meier a14e083728 sdlog2: Free log buffer on log stop 2016-02-23 13:09:06 +01:00
Lorenz Meier c8492454e9 commander: Support enabling and disabling lockdown 2016-02-23 13:09:06 +01:00
Lorenz Meier 168f955e0c IO firmware: Ensure that in case of lockdown only the lockdown code writes servo outputs 2016-02-23 13:09:06 +01:00
Lorenz Meier 738d3cb123 IO driver: Fixx lockdown flag handling 2016-02-23 13:09:06 +01:00
Lorenz Meier 5dfd9dd68b Add a test command from commander 2016-02-23 13:09:06 +01:00
Lorenz Meier 3854eae3ec FMU: Send disarmed pulse if in lockdown 2016-02-23 13:09:06 +01:00
Lorenz Meier 59c30a4cbf IO firmware: Output a disarmed pulse on lockdown 2016-02-23 13:09:06 +01:00
Lorenz Meier 362e0316f7 Navigator: Forward trigger distance commands 2016-02-23 09:25:47 +01:00
Lorenz Meier 04ae52447e Commander: Ignore trigger commands 2016-02-23 09:25:29 +01:00
Lorenz Meier be3863d99f Fix formatting 2016-02-21 20:41:00 +01:00
Lorenz Meier 9f5469ab1f Workaround for stack size setting on OS X 2016-02-21 20:28:24 +01:00
Daniel Agar 80f3fefcc3 FW adjust throttle to airspeed mapping for ALTCTL 2016-02-20 14:39:59 +01:00
Daniel Agar 4c8e9265c4 FW update position control param metadata 2016-02-20 14:37:19 +01:00
Lorenz Meier d2575c2556 ESC cal: Increase timeouts 2016-02-19 22:31:24 +01:00
Lorenz Meier 82bc110c79 Harmonize Pixracer and Pixhawk OSD API 2016-02-19 21:37:36 +01:00
Lorenz Meier 73125b52d6 More autostart items for serial link 2016-02-19 20:36:04 +01:00
stmoon ca11f76842 add utc offset for sdlog filename 2016-02-19 20:15:06 +01:00
Julian Oes 30580a661c DriverFramework: updated to latest merge 2016-02-19 18:48:58 +01:00
Julian Oes 991bc54626 DriverFramework: updated submodule
This enables continuous mode for the HMC5883 instead of single
measurement mode, therefore working around a ADSP crash.
2016-02-19 16:59:49 +01:00
Julian Oes 46a6176e2a px4_layer: astyle 2016-02-19 16:59:49 +01:00
Julian Oes 0287ff9e13 sensors: astyle 2016-02-19 16:59:49 +01:00
Julian Oes c99402b04c sensors: get it to compile on NuttX and POSIX 2016-02-19 16:59:49 +01:00
jwilson ebfcf32323 Added build specific sensor initialization. 2016-02-19 16:59:49 +01:00
jwilson 75fad09263 Fixed problem causing a failure to obtain the shared memory lock on the AppsProc. 2016-02-19 16:59:49 +01:00
jwilson 4adfea7fa9 Resolved shared memory parameter problems and removed additional debug code. 2016-02-19 16:59:49 +01:00
jwilson d84639f8c4 This code is flyable, but a few problems exist which cause values in the .config files to be overwritten by the defaults in the .XML file. 2016-02-19 16:59:49 +01:00
jwilson 8cc37db595 Removing unneeded debug statements. 2016-02-19 16:59:49 +01:00
jwilson 9f173b5659 Debug statements included in the code. 2016-02-19 16:59:49 +01:00
jwilson 80a2eb9dff Adding additional warnings to indicate that the secondary and tertiary gyros are unavailable. 2016-02-19 16:59:49 +01:00
jwilson 9955c08d16 Removing changes made inadvertantly to the make file. 2016-02-19 16:59:49 +01:00
jwilson fcb614a6a2 Removing test code. 2016-02-19 16:59:49 +01:00
jwilson 9a97140ad8 Removing test code. 2016-02-19 16:59:49 +01:00
jwilson 8625641638 Removing test code. 2016-02-19 16:59:49 +01:00
jwilson b31472af0c Cherry-picked i22438c8
Original description:
Modified the sensor module to prevent the selection of an invalid
secondary/tertiary gyro if the primary gyro times out
2016-02-19 16:59:49 +01:00
jwilson e26cca760a StubSensor template class implemented to allow registration with the DevMgr. 2016-02-19 16:59:49 +01:00
jwilson aec31c5904 Defining Eagle Board specific device paths, still in progress. 2016-02-19 16:59:49 +01:00
jwilson 39daea103b Removing unneeded debug statements. 2016-02-19 16:59:49 +01:00
jwilson 2b4b9aa103 Debug statements included in the code. 2016-02-19 16:59:49 +01:00
Julian Oes 8f26735255 POSIX: add px4_clock_settime stub for Mac 2016-02-19 16:59:48 +01:00
Julian Oes 740b4556a0 Tools: revived posix_apps.py and qurt_apps.py
Not sure why they got removed in the first place in the merge.
I also don't know how they are used and what they are for, comments
welcome.
2016-02-19 16:59:48 +01:00
Julian Oes e0db3c7411 POSIX main: astyle 2016-02-19 16:59:48 +01:00
Julian Oes 7fc8a213ac df_mpu9250_wrapper: astyle 2016-02-19 16:59:48 +01:00
Julian Oes 10f1ff46f0 df_hmc5883_wrapper: astyle 2016-02-19 16:59:48 +01:00
Julian Oes b41fbe49f3 df_bmp280_wrapper: astyle 2016-02-19 16:59:48 +01:00
Julian Oes 68a85a7215 px4_layer: astyle 2016-02-19 16:59:48 +01:00
Julian Oes 2dd2c9143a uORB: astyle 2016-02-19 16:59:48 +01:00
Julian Oes fcf98d07e0 sensors: astyle 2016-02-19 16:59:48 +01:00
Julian Oes 51ff00b786 muorb: astyle 2016-02-19 16:59:48 +01:00
Julian Oes 028f5b3392 attitude_estimator_q: astyle 2016-02-19 16:59:48 +01:00
Julian Oes 2dfd13e2cb DriverFramework: updated submdule 2016-02-19 16:59:48 +01:00
Julian Oes 3cda3610d0 param: workaround for QURT
There is no such thing as set_param_no_autosave on QURT, therefore just
save it anyway. On the Snapdragon the overhead should not be a problem.
2016-02-19 16:59:48 +01:00
Julian Oes 10afd4abb4 posix main: tell us which command failed 2016-02-19 16:59:48 +01:00
Julian Oes adf9647aab barosim: corrected wrong return value 2016-02-19 16:59:48 +01:00
Julian Oes 4e4f22428e sensors: use QURT ifdefs instead of commenting out 2016-02-19 16:59:48 +01:00
Julian Oes 3a8feaf617 muorb: clean up of forgotton merge conflict 2016-02-19 16:59:48 +01:00
Julian Oes d3fc3b6c23 muorb: merge leftover in Makefile 2016-02-19 16:59:48 +01:00
Julian Oes 341004f460 commander: added some comments 2016-02-19 16:59:48 +01:00
Julian Oes 951b97baac commander: small comment fix 2016-02-19 16:59:48 +01:00
Julian Oes dd960565e8 DriverFramework: updated submodule 2016-02-19 16:59:48 +01:00
Julian Oes fbac24ad28 vdev_posix: switch back to CLOCK_REALTIME
Otherwise SITL doesn't work anymore, at least on Linux
2016-02-19 16:59:48 +01:00
Julian Oes ebeed9df65 qurt_eagle_default: don't build the gps driver yet 2016-02-19 16:59:48 +01:00
Julian Oes 975e38a350 check_submodules: submodule was lost in the merge 2016-02-19 16:59:47 +01:00
Julian Oes 1cd49a6dd5 vfile.cpp: added file that got removed in merge 2016-02-19 16:59:47 +01:00
Julian Oes 5feae43682 DriverFramework: updated submodule
This mainly fixes the NuttX build.
2016-02-19 16:59:47 +01:00
Julian Oes 7a42b259b2 device.h: add file which got lost in merge 2016-02-19 16:59:47 +01:00
Julian Oes 0c37716c18 sensors: remove merge leftover 2016-02-19 16:59:47 +01:00
Julian Oes 1524ff7f80 HMC5883: added wrapper for DriverFramework 2016-02-19 16:59:47 +01:00
Julian Oes 4c288eaa97 posix drivers: comment file name update 2016-02-19 16:59:47 +01:00
Julian Oes 0d615c80b4 attitude_estimator_q: no mavlink_log for QURT
Don't try to open the mavlink_fd on QURT because the px4_ioctl leads to
timeouts of the attitude_estimator_q loop.
2016-02-19 16:59:47 +01:00
Mark Charlebois a844619b35 Fixed terminal when exiting mainapp
mainapp was not restoring the original terminal setttings on exit

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:47 +01:00
Julian Oes 928a31b59a QURT: use drv_hrt.c from POSIX 2016-02-19 16:59:47 +01:00
Julian Oes b2ad3f5fbd POSIX: get px4_poll right
Like this the timeouts are going through instead of hanging everything.
2016-02-19 16:59:47 +01:00
Julian Oes 9e77f554d2 px4_qurt_tasks: fix timeout calculation
It was wrong to subtract seconds and nanoseconds from each other. This
will wrap, therefore use ts_to_abstime and do the subtraction
afterwards.
2016-02-19 16:59:47 +01:00
Julian Oes dbd89fe584 px4_qurt_tasks: fix hang because of absolute time
The timeout was triggered using absolute time instead of a delay in
usec. This lead to the system hanging. With the fix it continues after
the timeout, however, the rates still don't seem right.
2016-02-19 16:59:47 +01:00
Julian Oes c726e2b807 px4_qurt_tasks: fix header 2016-02-19 16:59:47 +01:00
Julian Oes f7697eec66 BMP280: added the baro driver 2016-02-19 16:59:47 +01:00
Mark Charlebois 5e64557e05 FIxed travis build to resolve link symbols
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:47 +01:00
Mark Charlebois d29a2ecfac Set stack size to minimum valid size if less requested
The stack size cannot be less than PTHREAD_STACK_MIN.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:47 +01:00
Julian Oes e57d936d8b attitude_estimator_q: be specific about the error 2016-02-19 16:59:47 +01:00
Julian Oes 67597a604e Rename DfImu to DfMpu9250Wrapper 2016-02-19 16:59:47 +01:00
Julian Oes 8794aacf59 sensors: HACK to stop init calls for sensors 2016-02-19 16:59:47 +01:00
Julian Oes 160400c611 sensors: don't just blindly switch to another gyro
Failover is good but failover to garbage doesn't help.
2016-02-19 16:59:47 +01:00
Julian Oes e8402f0f78 uORB: fix off-by-one bug in topic count 2016-02-19 16:59:47 +01:00
Julian Oes 9c18c9aea4 sensors: header comment changes 2016-02-19 16:59:46 +01:00
Julian Oes 41269468f2 POSIX main: get rid of some leftover printfs 2016-02-19 16:59:46 +01:00
Julian Oes bfd37c4458 POSIX main: set exit flag and exit gracefully
On Control+C, 'muorb stop' is now always executed, however this
shouldn't break POSIX SITL where the command is just not available.
2016-02-19 16:59:46 +01:00
Julian Oes e4398bc87c muorb: don't start muorb with stop command
Previously using 'muorb stop' would in fact start at least part of the
muorb which is not what it's expected to do.
2016-02-19 16:59:46 +01:00
Julian Oes 338ccb34f5 apps.h_in: fixed what is presumably a typo 2016-02-19 16:59:46 +01:00
Julian Oes 9d875a7e67 POSIX main: always add newline after a command 2016-02-19 16:59:46 +01:00
Julian Oes 8fd4b80eed uORB: improve console output and status 2016-02-19 16:59:46 +01:00
Julian Oes adb44c2918 df_imu: added gyro publishing, cleanup 2016-02-19 16:59:46 +01:00
Julian Oes 507b9130fd df_imu: remove debug relict 2016-02-19 16:59:46 +01:00
Julian Oes ec8a58a9ac df_imu: get the accel to publish to uORB 2016-02-19 16:59:46 +01:00
Julian Oes 4b2be9c9d4 param_shmem: remove debug noise 2016-02-19 16:59:46 +01:00
Mark Charlebois 98a6facd55 Fixed order of processing df libs
df libs were being defined after firmware directory was added and so
were not defined yet

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:46 +01:00
Mark Charlebois 8fb8260bd4 Added link of df driver libs
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:46 +01:00
Mark Charlebois 53c0bccf19 Fixed build for GCC and clang on Linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:46 +01:00
Mark Charlebois d8dd8ab67d Fixed SITL build (and clang posix build)
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:46 +01:00
Mark Charlebois 791ec37f43 Code formatter fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:46 +01:00
Mark Charlebois 419f4c49ce Added new config entry for DF driver entries
DF drivers can now be added in each config file by adding

set(config_df_driver_list
	bmp280
	...
	)

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:46 +01:00
Julian Oes 7ed6506406 posix-configs: current configs which run on qurt 2016-02-19 16:59:46 +01:00
Julian Oes 3525b62651 posix_eagle_default: add listener 2016-02-19 16:59:46 +01:00
Julian Oes f1cc0d522c New lightweight class to connect to the MPU9250
It needs to be determined if this class should be for any imu sensor or
if it is specific to the MPU9250.
Also, the callback doesn't publish anything just yet.
2016-02-19 16:59:46 +01:00
Julian Oes 5cf3215e38 cmake: try to compile and link everything for MPU
Unfortunately this still gives linking errors.
2016-02-19 16:59:46 +01:00
Mark Charlebois caa94d58a6 Manually integrated Jim's changes from integrate2_jim branch
Signed-off-by: Jim Wilson <jywilson99@hotmail.com>
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:46 +01:00
Mark Charlebois a1a615b907 Added param shared memory support
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:46 +01:00
Mark Charlebois ac0d35d28e Added ecl lib for qurt build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois bd76042de2 Added muorb to posix eagle build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois ff0618a8ff Set the stack size for qurt
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois d4811bc108 Added dspal submodule to check_submodules.sh
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 897b2a6e46 Commented out CONFIG_SMEM until it is working again
There is an unresolved symbol when building with CONFIG_SMEM enabled

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois aa8117e9e4 Removed stubs now resolved in adsp static image
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 2e0ecc930f Added missing stub functions for qurt build
No wchar support in current aDSP image.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois c15e042741 Added missing apps.h include
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 1c5bfd28f0 Added fprintf fputc and _StdErr definitions
PX4 uses fprintf in numerous places but it is not supported by qurt.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 2c4187f21f Resolved missing symbols for qurt build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois f59d6b13b5 Removed FC_ADD_ON dependency for qurt release build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 7142d3850b Removed EAGLE_ADD_ON dependency
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois f5211030dc Changes to improve performance
The work queue processing was causing too much overhead so a more
efficient check was implemented.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois dab1f835c7 Code cleanup and ifdefs required for qurt build
Code that was previously out of tree that was #if 0, is now #ifdef __PX4_QURT.
These changes were required for flight using the qurt build.

Changes include code cleanup for shmem_posix.c.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois ff649083e7 Updated cmake/cmake_hexagon 2016-02-19 16:59:45 +01:00
Mark Charlebois c19784339b Reverted to older version
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 8ed263eda7 Removed load of string vs file for qurt build
DSPAL now supports reading from a file so the change is no longer
required.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois cb788d2c4f Removed extra carriage return
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 267158751e Reverted change to src/modules/mc_pos_control/mc_pos_control_main.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 4c7ec2b0ff Reverted change to src/modules/simulator/simulator_mavlink.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois ae0d0e67cc Added rpcmem.a to posix_eagle_release build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 8b22bde071 Code format fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:45 +01:00
Mark Charlebois 3b58cfb89d Added back ending carriage return
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 3dbb4fb34f Backed out change to uORBDevices_posix.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois d56459bd17 Backed out bad merge change in commander.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 3c700dfca3 Backed out change to attitude_estimator_q_main.cpp introduced in merge
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 3e2555f590 Backed out commented out line
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 94a1332cfa Removed extraneous ifdef __PX4_QURT
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 0637437d8d Backed out added code from bad merge
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 0d62646ecb More bad merge fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 7fb5f4d45c Whitespace fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 304caead99 Fixed bad merge artifacts
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois f25613ebeb Removed extra returns
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 473fe773b4 Provide impelmentation of px4muorb_KraitRpcWrapper
The Terminate function is not properly implemented yet.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 42baeeb999 Merge fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 16a7597a16 Removed duplicate target in Makefile
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois d4bb010f47 Whitespace fix
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 1d59e2c6fb Whitespace fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 8c4064e346 Removed bad integration changes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 4c9492e10f Rebase changes on upstream master
This brings in many of the changes from the PX4 fork on ATLFLight.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois b24d29e1eb Made generic external module support
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois ef88706fa6 Generalized use of external modules
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 957e67ed85 Removed duplicate target in Makefile
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois d3d231e8b6 Whitespace fix
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois ba282bd30d Require HEXAGON_ARM_SYSROOT for arm-linux-gnueabihf
The Toolchain-arm-linux-gnueabihf.cmake is currently used for
the SnapdragonFlight Apps processor.

The sysroot is required for cross building for Ubuntu 14.04 armhf.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:44 +01:00
Mark Charlebois 50d0771dc0 Whitespace fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 4d56909088 Removed dspal submodule, added px4muorb.idl
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 9f1aca90b3 Removed bad integration changes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 014f15d8b0 Rebase changes on upstream master
This brings in many of the changes from the PX4 fork on ATLFLight.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 2938d23c6c Removed stubs now resolved in adsp static image
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 801affd761 Added define for qurt build so the _skel library works
The _skel lib created for the qurt build was failaing because
the loader could not find the un-exported global symbol because
default visibility was set to hidden. The define is used to
explicitly export the QAIC function needed bu the loader.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois e6d27f019e Added missing stub functions for qurt build
No wchar support in current aDSP image.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 4f84a6d81e Added missing apps.h include
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 1fff0d6d55 Added fprintf fputc and _StdErr definitions
PX4 uses fprintf in numerous places but it is not supported by qurt.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois a495e3442c Resolved missing symbols for qurt build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois b9fb4c48ad Fixed unresolved symbols
ecl module was missing for release build
qurt_external_hook() was missing.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 9a1daac639 Removed FC_ADD_ON dependency for qurt release build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 7b6811ca54 Removed EAGLE_ADD_ON dependency
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois ee34207fdd Added param module back for nuttx build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois e775e7bd05 Fixed copyright header
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 63620afead Added -fPIC flag for only qurt build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 80b44478e5 Updated cmake_hexagon
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 9516e2559a Changes to improve performance
The work queue processing was causing too much overhead so a more
efficient check was implemented.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois fea910d45a Code cleanup and ifdefs required for qurt build
Code that was previously out of tree that was #if 0, is now #ifdef __PX4_QURT.
These changes were required for flight using the qurt build.

Changes include code cleanup for shmem_posix.c.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 8634452d6d Fixed logic for posix SITL build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:43 +01:00
Mark Charlebois 49eacbf6b0 Updated src/lib/DriverFramework 2016-02-19 16:59:43 +01:00
Mark Charlebois a356e845dc Updated cmake/cmake_hexagon 2016-02-19 16:59:43 +01:00
Mark Charlebois 62635fe37d Reverted to older version
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois d7505af067 Removed load of string vs file for qurt build
DSPAL now supports reading from a file so the change is no longer
required.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 4e79300bdb Removed extra carriage return
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 29f8409445 Reverted change to src/modules/mc_pos_control/mc_pos_control_main.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois a996b94c41 Reverted change to src/modules/simulator/simulator_mavlink.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois a002d6eabd Added rpcmem.a to posix_eagle_release build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 5846a22a8f Code format fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois d6a99c79c1 Added back ending carriage return
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois fa4434ad96 Backed out change to uORBDevices_posix.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois d079c1a33e Backed out bad merge change in commander.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 05580d8d65 Backed out change to attitude_estimator_q_main.cpp introduced in merge
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 8a1335dbd9 Backed out commented out line
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 20bc45f187 Removed extraneous ifdef __PX4_QURT
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 9cf44c0a31 Backed out added code from bad merge
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois c06d51d02a More bad merge fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 7860c959a5 Whitespace fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois ff1a38dba6 Fixed bad merge artifacts
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 0c42c469af Removed extra returns
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 01d0543e0a Provide impelmentation of px4muorb_KraitRpcWrapper
The Terminate function is not properly implemented yet.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 7389ea7648 Merge fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois da8519b44d Removed duplicate target in Makefile
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 87524955b0 Whitespace fix
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois 20f7d3d49f Whitespace fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:42 +01:00
Mark Charlebois b63e29e53d Removed bad integration changes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois 65d89b5b97 Rebase changes on upstream master
This brings in many of the changes from the PX4 fork on ATLFLight.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois a0d91d2225 Made generic external module support
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois 136c6da36d Generalized use of external modules
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois 7d9a14dab5 Removed duplicate target in Makefile
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois b70f87af34 Whitespace fix
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois 252eca9fb5 Require HEXAGON_ARM_SYSROOT for arm-linux-gnueabihf
The Toolchain-arm-linux-gnueabihf.cmake is currently used for
the SnapdragonFlight Apps processor.

The sysroot is required for cross building for Ubuntu 14.04 armhf.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois 53bf98c630 Fixed HEXAGON_ARM_SYSROOT
This was being reset in px4_impl_posix.cmake

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois 8ca3e8e057 Whitespace fixes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois 0e24e808ab Removed dspal submodule, added px4muorb.idl
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois 2a1ec7aad8 Removed bad integration changes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
Mark Charlebois 9f3bf8e9f4 Rebase changes on upstream master
This brings in many of the changes from the PX4 fork on ATLFLight.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2016-02-19 16:59:41 +01:00
tumbili efe9344fc2 removed text from generic quav250 startup script because it was interpreted as a command 2016-02-19 14:37:26 +01:00
Mark Whitehorn 7c91aaee64 add generic 250 quad_x config tuned for acro mode 2016-02-19 08:58:19 +01:00
Daniel Agar 7fbd4a0b5b sensors fix code style 2016-02-18 21:25:49 -05:00
Lorenz Meier eb11c91733 Fix airspeed check in simulation 2016-02-18 22:53:43 +01:00
ksschwabe 4b6d0ef0a6 batt_smbus: Adds check for if the battery detected is a 3DR solo battery
Also, if the battery is a 3DR Solo battery, it checks for the button
press on the battery which sets the is_powering_off flag.

The check for whether the battery is a 3DR Solo battery is based on
whether the Manufacturer Name, Device Name and Device Chemistry all
match the that of the standard 3DR Solo battery.
2016-02-18 21:47:09 +01:00
ksschwabe 27a645353b batt_smbus: Adds functions for reading out the SBS Info
Functions added for reading out the following info:
 - Manufacturer Name
 - Device Name
 - Serial Number
 - Device Chemistry
2016-02-18 21:47:09 +01:00
ksschwabe e3f2467b91 batt_smbus: Commentted out button press detection
The button press detection relies on reading the MANUFACTURER_DATA
register. The implementation of what information is returned when reading
this register differs from manufacturer to manufacturer.

This has been commented out until an elegant solution can be found to detect
the battery shutdown on different batteries manufactured by different
manufacturers.
2016-02-18 21:47:09 +01:00
Angus Peart 6ac26c680d batt_smbus: read button status from the smart battery
This is a cherry-pick of commit 8bd17a4b0cd9c1432cb57a9a80a215692f532370
in 3drobotics/PX4Firmware-solo

Conflicts:
	src/drivers/batt_smbus/batt_smbus.cpp
	src/drivers/drv_irlock.h
	src/lib/ecl
2016-02-18 21:47:09 +01:00
ksschwabe 7fc0b0925c batt_smbus: Adds ManufacturerAccess, write_reg, and write_block functions
Also fixes the the PEC calculation for writing. See
http://cache.freescale.com/files/32bit/doc/app_note/AN4471.pdf and
http://www.ti.com/lit/an/sloa132/sloa132.pdf for more details for more
details on SMBus reading and writing including with and without PECs.
2016-02-18 21:47:09 +01:00
sander 90276fa3a7 VTOL: check feasibility as rotary wing 2016-02-18 21:42:37 +01:00
Lorenz Meier 8007a84ab3 FMU: Ensure an all-low output set on boot with direct start of the PWM sequence 2016-02-18 19:01:44 +01:00
Lorenz Meier c26b18c153 IO: Initialize PWM pins first 2016-02-18 19:01:44 +01:00
Lorenz Meier 9c08872b61 IO: Initialize PWM pins to low state 2016-02-18 19:01:44 +01:00
Lorenz Meier 19151e93e1 FMUv4: Initialize PWM pins to low state 2016-02-18 19:01:44 +01:00
Lorenz Meier ed134da8e0 FMUv2: Initialize PWM pins to low state 2016-02-18 19:01:44 +01:00
Andreas Antener 6eb2e62306 temporarily use indicated airspeed for transitions so we're consistent with tecs until we move tecs to true airspeed 2016-02-18 18:55:56 +01:00
tumbili 228a54fd51 - fixed bad pitch setpoint in fw pos controller for tailsitter
- created enum for vtol types
- minor cleanup and fixes
2016-02-18 18:55:56 +01:00
tumbili 4c61b05ef3 tailsitter, tiltrotor:
- use the transition trust when waiting for TECS to kick in
after transition
2016-02-18 18:55:56 +01:00
Andreas Antener 0ccf0ce747 only run FW posctl in FW mode and ramp up desired airspeed for tecs after transition 2016-02-18 18:55:56 +01:00
Roman 59a571d22f TECS:
- do not run TECS for VTO which are in rotary wing mode
- reinitialise TECS the first time we start using it again
2016-02-18 18:55:56 +01:00
Andreas Antener fe89bee02a using 0 pitch and thrust FW attitude SP when TECS isn't running 2016-02-18 18:55:56 +01:00
Andreas Antener 3773eaad99 VTOL/TECS: publish transition throttle after transition until tecs is initialized and fw pos ctl is publishing att setpoint 2016-02-18 18:55:56 +01:00
tumbili fa52aa322a VTOL: pull up generic setpoint publishing 2016-02-18 18:55:56 +01:00
Andreas Antener 967b404de8 only run FW posctl in FW mode and ramp up desired airspeed for tecs after transition 2016-02-18 18:55:56 +01:00
Roman 1da686b125 TECS:
- do not run TECS for VTO which are in rotary wing mode
- reinitialise TECS the first time we start using it again
2016-02-18 18:55:56 +01:00
Julian Oes 1bbfb02430 position_estimator_inav: fix function declaration 2016-02-18 18:53:00 +01:00
Nate Weibley a1c9dc1f68 When restarting listing all parameters, skip sending hash on subsequent request
This change fixes a bug where hash-aware QGC using the old spec would continuously request the parameter list every time it received a mismatched hash.
2016-02-18 18:51:17 +01:00
Nate Weibley ae3838ff2e Remove superfluous parameter cache load message 2016-02-18 18:51:17 +01:00
Nate Weibley 0419a99f00 New param hashing spec
- When listing all params, lead with _HASH_CHECK value for cache load
 - When set value on _HASH_CHECK is rx'd, stop any ongoing listing req
2016-02-18 18:51:17 +01:00
Lorenz Meier 854660bd36 Sensors: Fix code style 2016-02-18 18:48:50 +01:00
Lorenz Meier 345246953b Airspeed pre-flight check: do not arm if sensor data is stuck or bus errors are high 2016-02-18 18:48:50 +01:00
Lorenz Meier 2aad0c079e airspeed: Populate confidence field 2016-02-18 18:48:50 +01:00
Lorenz Meier e290bd4ebe Update to latest ECL 2016-02-18 18:48:50 +01:00
Lorenz Meier 3f9fc625f9 Airspeed: Add confidence estimate 2016-02-18 18:48:50 +01:00
tumbili b7919e0039 initialise all tecs class members 2016-02-18 17:07:09 +01:00
tumbili c1e1d0b031 put TECS init bug to rest:
the uncostrained demanded pitch was never initialized which
could lead to large initial pitch integral values
2016-02-18 16:29:04 +01:00
Daniel Agar dd6549e1a2 travis-ci only build sitl on OSX 2016-02-17 23:12:26 -05:00
Lorenz Meier f10770a4a4 FW pos ctrl: Fix build error 2016-02-17 19:31:01 +01:00
Lorenz Meier bd606b05df Launch detector: Use idle throttle param 2016-02-17 19:31:01 +01:00
Lorenz Meier e98cd6c746 FW pos control: Set idle throttle on ground in all modes 2016-02-17 19:31:01 +01:00
Mark Whitehorn d5d3b63dc8 delete parameter MPC_HOLD_Z_DZ 2016-02-17 15:23:16 +01:00
Mark Whitehorn 8cd4b57c6b add parameters for adjusting ALTCTL deadband 2016-02-17 15:22:28 +01:00
Mark Whitehorn ead3eeda6c expand description of MPC_THR_HOVER parameter 2016-02-17 15:22:28 +01:00
Mark Whitehorn 5de7c7e426 zero altctl deadband 2016-02-17 15:22:28 +01:00
Mark Whitehorn 159abb9b00 add parameter for hover throttle setting
and tighten z deadband
2016-02-17 15:22:28 +01:00
Mark Whitehorn 101ac63737 change altctl throttle deadband to 2 point curve 2016-02-17 15:21:37 +01:00
Andreas Antener 770c020117 removed lower default from vtol config, added flight tested Fun Cub parameters 2016-02-17 10:49:28 +01:00
sander 03e71c47b6 New params for QuadRanger 2016-02-17 09:00:38 +01:00
stmoon fb131f43c3 fix the bug ( error: array subscript is above array bounds [-Werror=array-bounds] ) 2016-02-17 08:47:03 +01:00
Roman 2a556f91ed added autoconfig gains for caipiroshka 2016-02-16 22:57:09 +01:00
James Goppert f9a11b7a2f Merge pull request #3779 from jgoppert/matrix_update
Updated matrix lib to get slice.
2016-02-16 16:28:05 -05:00
James Goppert 30cb1e6976 Updated matrix lib to get slice. 2016-02-16 14:59:18 -05:00
Lorenz Meier a85939f66b Merge pull request #3780 from kd0aij/frsky_stack
increase stack size for frsky telemetry daemon
2016-02-16 19:22:29 +01:00
Mark Whitehorn 12437f1fc6 increase stack size for frsky telemetry daemon 2016-02-16 10:39:30 -07:00
James Goppert a2de2bb9cb Merge pull request #3777 from jgoppert/matrix-update
Updated matrix lib.
2016-02-16 11:35:41 -05:00
James Goppert 59781167a2 Updated matrix lib. 2016-02-16 10:58:39 -05:00
Andreas Antener 48e2053f98 fixed code style 2016-02-16 10:26:13 +01:00
Roman f11a619bf8 multirotor landing:
prevent sudden thrust setpoints when vehicle has reached ground
after landing
2016-02-16 10:26:13 +01:00
Andreas Antener 570fb97163 updated timeout logic to work only on waypoints with forced headings, updated param docs accordingly 2016-02-15 23:29:47 +01:00
Andreas Antener eb5b8a32ee transition alignment will force heading now and go to RTL if it cannot reach it in time, handle mission failure correctly, reset after mission update, issue message with actual problem 2016-02-15 23:29:38 +01:00
Andreas Antener bb4decfa8b implemented basic heading timeout for waypoint acceptance, added parameter for yaw error on waypoint heading acceptance, set yaw timeout for vtol default 2016-02-15 23:26:28 +01:00
Lorenz Meier 0a4d0f6eae Reaper config: Provide standby pulse 2016-02-15 16:33:13 +01:00
Lorenz Meier a3b57c6820 Add REAPER frame 2016-02-15 16:03:22 +01:00
Lorenz Meier 4207213fc3 Set correct MAV type for quad_h mixer 2016-02-15 15:58:01 +01:00
Andreas Antener 8dbbe1b1f3 fixed code style in px4io.cpp 2016-02-15 15:55:14 +01:00
Andreas Antener 9e2e78c9ed only set PWM AUX values where necessary so the surfaces don't move to extreme positions on boot 2016-02-15 13:29:26 +01:00
Lorenz Meier cd7001fd2f Sensors: Fix code style 2016-02-15 13:20:20 +01:00
Roman 15b0baf555 ekf2: fixed call to save parameter 2016-02-15 12:52:49 +01:00
Paul Riseborough af5bbc916c ekf2: Enable user defeatible saving of declination for next startup 2016-02-15 12:52:49 +01:00
Paul Riseborough 2ca48037fd ekf2: Add mavlink adjustable parameters for control of magnetometer fusion 2016-02-15 12:52:49 +01:00
Paul Riseborough 384ab209fc ecl: update library reference 2016-02-15 12:52:49 +01:00
Lorenz Meier be6278a1ba IO: Avoid param writes which do not change a value 2016-02-15 12:44:07 +01:00
Lorenz Meier c3529d353d sensors: Do not change parameter if it already has the right default 2016-02-15 12:43:11 +01:00
Lorenz Meier 230db2e050 VTOL control: Do not spam the console 2016-02-15 12:42:20 +01:00
Lorenz Meier 2fd89ea904 ROMFS: Remove calls which messed with params 2016-02-15 12:40:57 +01:00
Lorenz Meier 17e77535bf Enable new PWM disarmed setting which allows to pick the single throttle channel. Servos stay unpowered until safety is disabled, ESC gets a standby pulse 2016-02-15 12:06:27 +01:00
Roman 1d5cf70e83 implemented vtol weathervane yaw control for landing and loiter mission item 2016-02-15 09:49:24 +01:00
sander dc7077b125 Move constraint after feed forward 2016-02-15 09:48:37 +01:00
Andreas Antener 7db35337da use control flag to decide if we enable wv or not 2016-02-15 09:48:37 +01:00
Roman 8c2eec6161 use correct struct names for virtual topics 2016-02-15 09:48:37 +01:00
Roman 80f8fcbdf6 implemented vtol weathervane yaw control for landing and loiter mission item 2016-02-15 09:48:37 +01:00
Roman be0f680863 orb topic messages:
-added flag to enable weathervane yaw control for vtol
-added comment to keep virtual topics and original topic identical
2016-02-15 09:48:37 +01:00
Roman 11df8168ee provide ekf2 with landed flag from landing detector 2016-02-14 21:26:47 +01:00
Roman 2177c0e18a ekf2: remove unused print functions 2016-02-14 20:51:01 +01:00
Lorenz Meier e46824e784 MC pos control: Param meta data 2016-02-14 18:43:58 +01:00
Lorenz Meier 9cb82e93be MC att control: Param meta data 2016-02-14 18:43:58 +01:00
Lorenz Meier 6d75f11d3c Commander param meta data 2016-02-14 18:43:58 +01:00
Lorenz Meier d2041b0ef3 Fix initial build error for new users 2016-02-14 17:37:28 +01:00
Andreas Antener b9b05dcc03 updated docs for FW_AIRSPD_SCALE param 2016-02-14 13:24:58 +01:00
Lorenz Meier de8c4c9901 Pixracer: Increase streams and data rate via Wifi 2016-02-13 23:32:22 +01:00
Lorenz Meier 07a0da9114 jMAVSim: Update to fixed version with declination support 2016-02-13 11:41:05 +01:00
Lorenz Meier f53b3ae49d Commander: Fix comment 2016-02-13 11:40:41 +01:00
Lorenz Meier df28f970fa CMake: Fix submodule init 2016-02-13 11:40:24 +01:00
Lorenz Meier fbb201845b Fix check submodules 2016-02-13 11:39:51 +01:00
Lorenz Meier f577f2efb0 Updated check submodules 2016-02-13 11:15:13 +01:00
Lorenz Meier ee4784ab25 Updated DriverFramework 2016-02-13 11:15:04 +01:00
Lorenz Meier c5b1e791bd Update git check script. Fixes #3733 2016-02-13 00:50:06 +01:00
Andreas Antener f8915104e0 use multi subscribe to get topics for sdlog 2016-02-12 13:56:03 +01:00
Lorenz Meier 590e8df8d0 Fix actuator output logging for good 2016-02-12 10:50:10 +01:00
sander 581623cd48 Fix for transition failsafe 2016-02-11 23:38:30 +01:00
Lorenz Meier 6e8f563d27 dataman: Do not reset mission file on each reboot 2016-02-11 18:40:18 +01:00
James Goppert 612d80a59a Removed inav from startup. 2016-02-11 17:31:38 +01:00
James Goppert 9172c7c491 Added lpe flow gazebo config. 2016-02-11 17:31:38 +01:00
Andreas Antener 2ff9fd64b1 increased stack sizes for mc and fw pos ctl 2016-02-11 16:53:35 +01:00
Roman 38ecec86f7 mc pos control:
do not run takeoff code when disarmed
2016-02-11 16:53:35 +01:00
Andreas Antener ff43c1ab6a disable yaw on takeoff wp before heading update 2016-02-11 16:53:35 +01:00
Lorenz Meier 6d32b8f41d Fixed camera trigger code style 2016-02-11 14:09:13 +01:00
Lorenz Meier 6ee8e148a2 Camera trigger: ensure it executes with minimal latency 2016-02-11 14:09:13 +01:00
Lorenz Meier 41883a08d8 camera_trigger: Add one-shot operation 2016-02-11 14:09:13 +01:00
Lorenz Meier 32d9bae44d Pos control FW: Update comment 2016-02-11 14:08:58 +01:00
Lorenz Meier ebeb9eba4b Cleaned up target system handling for some commands 2016-02-11 11:58:06 +01:00
Andreas Antener a8e3194dfa reset transition failsafe state after switching out of failed transition mode 2016-02-10 19:03:24 +01:00
Andreas Antener 5b8b445425 consider transition command for the correct state 2016-02-10 18:36:38 +01:00
sander d5eae460c0 VTOL transition failsafe RTL 2016-02-10 16:30:57 +01:00
sander 2fa7380246 Front transition timeout 2016-02-10 16:15:15 +01:00
ChristophTobler 519a7e2c8e added different distance_sensor_pub pointers for flow, hil and lidar 2016-02-10 09:24:39 +01:00
ChristophTobler f2af55d92f changed min/max distance for ll40ls (lidar) 2016-02-10 09:24:39 +01:00
ChristophTobler 19bc39e7ad added a offset parameter for lidar in inav 2016-02-10 09:24:39 +01:00
ChristophTobler 0a76347c9d Changed min/max distance with distance topic params. Added a check for mocap: mocap estimation requires heading from mocap 2016-02-10 09:24:39 +01:00
Lorenz Meier e8344de38a Iris: Add custom startup script 2016-02-10 09:24:39 +01:00
Lorenz Meier b4b385cc13 Add Iris optical flow SITL config 2016-02-10 09:24:39 +01:00
ChristophTobler c7640723c9 change std::fabs to fabs and rate_threshold to double 2016-02-10 09:24:39 +01:00
ChristophTobler c7ff253a6d change abs to std::fabs 2016-02-10 09:24:39 +01:00
ChristophTobler e7cdb19424 gyro threshold for optical flow and lidar min/max parameter 2016-02-10 09:24:39 +01:00
ChristophTobler a78d732957 change lidar altitude correction threshold 2016-02-10 09:24:39 +01:00
ChristophTobler e2c04b7fa7 replaced lidar min/max distances with parameters 2016-02-10 09:24:39 +01:00
ChristophTobler 1a6c4e123c formatting 2016-02-10 09:24:39 +01:00
ChristophTobler f822b136dc change optical flow weight and scale 2016-02-10 09:24:39 +01:00
ChristophTobler 82be3d09d6 added optical flow scale and removed blanks 2016-02-10 09:24:39 +01:00
ChristophTobler f32021f856 remove lidar filter value from qgc params 2016-02-10 09:24:39 +01:00
ChristophTobler 23f428d639 removed lowpass for lidar correction 2016-02-10 09:24:39 +01:00
ChristophTobler 42131e817d changed value for lidar filter 2016-02-10 09:24:39 +01:00
ChristophTobler b54bc23550 fix in flow yaw compensation 2016-02-10 09:24:39 +01:00
ChristophTobler 6650bca35b decoupled lidar from flow and used it for altitude estimation. qgc params added to enable it. 2016-02-10 09:24:39 +01:00
Mark Whitehorn 42e8fe159f run astyle 2016-02-10 09:23:30 +01:00
Mark Whitehorn cca2807ff0 apply 1st order lowpass filter to baro alt 2016-02-10 09:23:30 +01:00
Mark Whitehorn b25a9a45b5 initial add of Vario sensor. 1st difference of baro_alt... need to add a
LPF in front of the difference
2016-02-10 09:23:30 +01:00
Mark Whitehorn 403810c688 disable console print of incoming telemetry data 2016-02-10 09:21:52 +01:00
Mark Whitehorn e25b26e2a8 fix format 2016-02-10 09:21:52 +01:00
Mark Whitehorn de39b63402 fix bug in rssi assignment 2016-02-10 09:21:52 +01:00
Mark Whitehorn 8116f15d95 enable print of incoming telemetry 2016-02-10 09:21:52 +01:00
Mark Whitehorn 47337eb4a5 add parsing of host frames for D type telemetry 2016-02-10 09:21:52 +01:00
Lorenz Meier 3edf304e55 EKF2: Fix home altitude reporting 2016-02-10 08:38:03 +01:00
Lorenz Meier aab63c78f9 Update ECL to include global alt fix 2016-02-10 08:30:19 +01:00
Lorenz Meier 419fa45657 Change SDLOG2 to blackbox in user-facing output 2016-02-10 08:29:26 +01:00
Lorenz Meier 84552d475e jMAVSim: Enable Zurich as location, enable mag decl lookup 2016-02-10 08:29:26 +01:00
Lorenz Meier 62d685440a Posix: Do not spam console with tone alarm 2016-02-09 21:46:10 +01:00
Lorenz Meier e59323c7d7 Commander: Do not announce home via MAVLink 2016-02-09 21:45:56 +01:00
Lorenz Meier 3e02bb1070 MAVLink: Improve network handling 2016-02-09 12:51:05 +01:00
Andreas Antener fb8b981015 make FOH and yaw mode work in parallel 2016-02-08 23:36:07 +01:00
Andreas Antener a63197b82b prevent home yaw mode for vtol during transitions 2016-02-08 11:09:12 +01:00
Andreas Antener e60cd46ad0 removed duplicate and unused flag vtol_in_transition 2016-02-08 11:09:12 +01:00
Andreas Antener 7af0816570 fixed yaw calculation for all yaw modes and stay during loiter items 2016-02-08 11:09:12 +01:00
Andreas Antener 20ef3adb1f set relative altitude to false when using the feedback for the landing waypint 2016-02-08 11:09:12 +01:00
Andreas Antener baa11e357d refactored do_set_servo handling and generalized formatting of CMD mavlink mission items, fixes #3644 2016-02-08 11:09:12 +01:00
Andreas Antener 46bd1cbacf only update previous setpoint if we read a new actual position setpoin, prevent yawing between waypoints inside the acceptance radius 2016-02-08 11:09:12 +01:00
Andreas Antener 4e0559eacf updated mpc parameters for sitl standard vtol 2016-02-08 11:09:12 +01:00
Andreas Antener 134e95efda don't use waypoint heading for landing descent 2016-02-08 11:09:12 +01:00
Andreas Antener b05465470a ignore wp altitude for intermediate landing wp so it doesn't descent before it is in landing mode 2016-02-08 11:09:12 +01:00
Andreas Antener fec7950424 prevent yaw setpoint from changeing constantly when we're over it 2016-02-08 11:09:12 +01:00
Andreas Antener 26c635359e updated some message severities and clarified reset in pos controller 2016-02-08 11:09:11 +01:00
Andreas Antener e2328fcd72 use default acceptance radius for takeoff in MC case, set VTOL radius to 3 2016-02-08 11:09:11 +01:00
Andreas Antener e32ec2a29a wait until until vehicle enters transition before continuing after transition command 2016-02-08 11:09:11 +01:00
Andreas Antener 1351c6f68c small fixes 2016-02-08 11:09:11 +01:00
tumbili f8f208dbe6 vtol: reset multirotor positon and altitude
when not in rotary wing mode
2016-02-08 11:09:11 +01:00
Andreas Antener dfb31f2252 finish moving to waypoint after a back transition 2016-02-08 11:09:11 +01:00
Andreas Antener 0bdfb465cf set correct mission item type for aligning before transition 2016-02-08 11:09:11 +01:00
Andreas Antener c11a677207 directly issue status update after vtol update 2016-02-08 11:09:11 +01:00
Andreas Antener ff47cae7c1 removed warning 2016-02-08 11:09:11 +01:00
Andreas Antener 02aa0eacd5 align towards next waypoint before MC to FW transition 2016-02-08 11:09:11 +01:00
Andreas Antener b75eaf3c4a implemented takeoff before WP and move to WP before land 2016-02-08 11:09:10 +01:00
Andreas Antener ac985ee1c7 fixed mission item iteration 2016-02-08 11:09:10 +01:00
Andreas Antener 93bc018c93 read current and next mission item at the same time, issue item commands while processing items, guarding setpoint from non-position items 2016-02-08 11:09:10 +01:00
sander 9e0c636b97 RTL transition set constant 2016-02-07 18:19:32 +01:00
sander 9ad39fec67 If VTOL then transition to RW before landing in RTL 2016-02-07 18:19:32 +01:00
sander 949b0738e1 Remove run-once procedure on check_dist_1wp 2016-02-07 17:56:10 +01:00
Lorenz Meier a8d00ee46f Update mag declination code in SITL Gazebo 2016-02-07 15:06:58 +01:00
Lorenz Meier f91520730b Correct declination math. Allows to properly simulate declination in various locations 2016-02-07 12:30:28 +01:00
Lorenz Meier 630ad18c8d Update SITL gazebo 2016-02-07 12:10:46 +01:00
Lorenz Meier 8a42b312ef Add Gazebo version with mag declination 2016-02-07 12:00:59 +01:00
Andreas Antener 7a592d56a2 initialize mission item struct 2016-02-07 11:36:03 +01:00
Andreas Antener 48ea0230e1 minimum clearance for separate takeoff item needs to be bigger than acceptance radius 2016-02-07 01:32:34 +01:00
Andreas Antener 248bbcb520 use system specific acceptance radius for multirotor takeoff, ignore mission item 2016-02-07 01:32:34 +01:00
Lorenz Meier 9583ff1b8b Add memory debugging switch support 2016-02-07 01:32:03 +01:00
Lorenz Meier 3bdcb203f4 SITL: Fix compile errors 2016-02-06 17:03:24 +01:00
Lorenz Meier 336a464ed3 Updated SITL Gazebo to master merged with VTOL 2016-02-06 16:42:36 +01:00
Lorenz Meier 8c56f38ea6 Add missing reboot required flag 2016-02-06 16:25:52 +01:00
Lorenz Meier b1a16c711e Param meta data: Validate new enum value entries 2016-02-06 16:19:46 +01:00
Lorenz Meier 8ba1132660 Companion link: Support enums 2016-02-06 16:12:19 +01:00
Lorenz Meier 203416f136 PX4 params: Support enum values 2016-02-06 16:11:58 +01:00
Lorenz Meier 1aff724ee2 Reject loiter turns 2016-02-06 13:42:03 +01:00
Lorenz Meier 7345440a1a Enable TELEM2 in OSD mode by default 2016-02-06 13:41:48 +01:00
Lorenz Meier 45ea58d451 FMUv4: Increase USB and UART buffers to speed up log transfers 2016-02-06 12:23:04 +01:00
Lorenz Meier 65081ca681 FMUv2: Increase USB buffer to speed up log transfers 2016-02-06 12:22:40 +01:00
Roman fcf642fe4e fixed bad formating of ekf2 CMakeFile 2016-02-05 18:28:32 +01:00
Paul Riseborough 371e5f70b1 ekf2: fix formatting 2016-02-05 18:28:32 +01:00
Paul Riseborough 2db2d8f6f4 lib: update ecl reference 2016-02-05 18:28:32 +01:00
Paul Riseborough a37daf4cec ekf2: Add position observation noise parameter for flying without GPS
A larger position uncertainty is required when flying without GPS to reduce tilt attitude estimation errors caused by vehicle manoeuvring. This needs to be tuneable to allow optimisation for different use cases (e.g. outdoor vs indoor).
2016-02-05 18:28:32 +01:00
Paul Riseborough 8f020d5a8f ekf2: Update tuning parameters
Set conservative defaults as a baseline for tuning
Add a missing parameter for magnetometer observation noise.
Correct error in definition of magnetic heading observations noise (previous parameter defined the variance directly, not the noise).
Update documentation and display names for consistency.
2016-02-05 18:28:32 +01:00
Lorenz Meier 4123da4963 SF10a: Run driver at the default max rate 2016-02-05 18:24:24 +01:00
ecmnet 9eb46fa7a0 Conversion rate comment added 2016-02-05 18:23:39 +01:00
ecmnet 497982aa4a Overclocking comment added 2016-02-05 18:23:32 +01:00
ecmnet f725ded9d4 Fixing code styles 2016-02-05 18:23:22 +01:00
ecmnet edfbb90656 Initial commit SF10x driver 2016-02-05 18:23:13 +01:00
Roman fdc0ef00b3 fix TECS logging 2016-02-05 17:14:10 +01:00
Lorenz Meier 15e7b19991 uORB: Block on simulation delay for orb_check() calls as well 2016-02-05 16:36:43 +01:00
Lorenz Meier 39ee36a8ea Pre-empt HRT execution in SITL if simulator is slow 2016-02-05 09:24:59 +01:00
Lorenz Meier 5f93f04627 HRT: Fix code style 2016-02-05 09:16:53 +01:00
Lorenz Meier ac788ad5dc MAVLink: Fix code style 2016-02-05 09:16:41 +01:00
Lorenz Meier f5c5f4757d sensors: Fix code style 2016-02-05 09:16:28 +01:00
Lorenz Meier 9f2498af94 Attitude controller: Include process name in poll error message 2016-02-05 00:54:40 +01:00
Lorenz Meier 14946f11c1 Commander: Include process name in poll error message 2016-02-05 00:54:19 +01:00
Lorenz Meier 443a58cafe px4_poll() on POSIX: Block execution in simulation if required 2016-02-05 00:53:58 +01:00
Lorenz Meier 8e62c9eb8d Use delay API 2016-02-05 00:53:22 +01:00
Lorenz Meier 61fac4a127 HRT: Support delay API 2016-02-05 00:53:08 +01:00
Lorenz Meier d8892eb86d Navigator: Announce app name in poll error return 2016-02-05 00:52:35 +01:00
Lorenz Meier 4990272b19 Sensors: Do not fail over to non-existent gyro sub. Do not fail over on POSIX / sim 2016-02-05 00:52:12 +01:00
sander fdcfb7c7c6 Mission feasibility fixes
- Fixes https://github.com/PX4/Firmware/issues/3656
- Fixes https://github.com/PX4/Firmware/issues/3648
- Corrected spelling on method
2016-02-04 20:44:35 +01:00
David Sidrane 0bde2b6fa3 Fixed Channel mapping 2016-02-04 08:56:07 +01:00
David Sidrane 7541aecd18 Fixed Isr restore (moved out of loop) 2016-02-04 08:56:07 +01:00
Lorenz Meier 80c532acf1 Merge pull request #3660 from PX4/mavlink_frame_fix
Mavlink read back frame fix
2016-02-03 13:09:06 +01:00
sander f0bad06bfd Fixes https://github.com/PX4/Firmware/issues/3658 2016-02-03 11:48:42 +01:00
Andreas Antener 0aff2e6c09 limit takeoff and land velocity to max z velocity 2016-02-02 21:35:18 +01:00
Lorenz Meier 6a98c6ca63 Airframes XML generator: Add support for Octo Coax Wide 2016-02-02 08:31:32 +01:00
Simon Wilks 9a8050cc11 Add Steadidrone MAVRIK mixer and gains. 2016-02-02 08:31:08 +01:00
Lorenz Meier 86c8308e98 POSIX configs: Send to port 14540 for onboard links 2016-02-01 11:20:04 +01:00
Lorenz Meier b7470794c7 MAVLink: Send to first target system by default 2016-02-01 11:19:46 +01:00
Julian Oes b44f20d705 mavlink: option to specify the UDP remote port
This enables using several mavlink instances for SITL.
2016-02-01 11:15:21 +01:00
Lorenz Meier 3d282e4ee8 Flag locations in PWM input driver needing refactoring 2016-02-01 10:10:36 +01:00
Lorenz Meier 61bb8ac603 FMUv4: Do not mess with GPIO5 during startup 2016-02-01 10:10:36 +01:00
Lorenz Meier f2a6645cc9 FMUv2: Do not mess with GPIO5 during startup 2016-02-01 10:10:35 +01:00
David Sidrane 7edd07f8cb Rebased on master, removing the default_rate field and using default to 0 for rates 2016-02-01 10:10:35 +01:00
David Sidrane 0d13c41108 Ran Astyle 2016-02-01 10:10:35 +01:00
David Sidrane 8268161b18 Fmu interface to Capture 2016-02-01 10:10:35 +01:00
David Sidrane b3af469e80 IO Timer Changes for Capture 2016-02-01 10:10:35 +01:00
David Sidrane 0397537cf0 Adding input capture driver 2016-02-01 10:10:35 +01:00
David Sidrane f3c22d3334 Refactored pwm servo to use drv_io_timer 2016-02-01 10:10:35 +01:00
David Sidrane 2949578832 Renamed pwm_timers to more appropriate io timers for use in pwm in/out and capture 2016-02-01 10:10:34 +01:00
David Sidrane 019e197714 Change pin init state to 1 to uses late pwm init with not pulses 2016-02-01 10:10:34 +01:00
David Sidrane 5e47ffdaf9 Moved Switching IO to the point of ARMing 2016-02-01 10:10:34 +01:00
David Sidrane 1843eea917 Reverting 2e8accc6ff infavor of IO init changes 2016-02-01 10:10:34 +01:00
Pavel Kirienko 1454e2acba Libuavcan update: Reduces STM32 CAN IRQ overhead with new error handling logic 2016-02-01 08:16:11 +01:00
nephne 43553eacce add cscope.in.out cscopte.po.out to .gitignore 2016-02-01 08:15:29 +01:00
Lorenz Meier c8bd81b739 Updated ECL to use standard C++ initializers 2016-01-31 23:25:27 +01:00
Roman c75cc75d25 ekf2 module: be consistent in constructor 2016-01-31 22:28:19 +01:00
Paul Riseborough 904319f889 lib: update ecl reference 2016-01-31 22:12:11 +01:00
bugobliterator 0f43a1ebbb ekf2: fix code style 2016-01-31 22:12:11 +01:00
bugobliterator 04ad8ca594 ekf: change the name of estimatorr interface class 2016-01-31 22:12:11 +01:00
Paul Riseborough 92f0032475 ekf2: Add tuning parameters for GPS and Baro innovation gates 2016-01-31 22:12:11 +01:00
bugobliterator 6ffcca4b8f ekf2_main: fix variable pass type 2016-01-31 22:12:11 +01:00
Paul Riseborough 92f2492fff ekf2: update interface method for vehicle arm status and NED origin 2016-01-31 22:12:11 +01:00
Paul Riseborough 4594b3c69d ekf2: Add parameters for magnetometer error checks 2016-01-31 22:12:11 +01:00
Paul Riseborough 5e4f76d844 ekf2: Add parameters and support for GPS quality checks 2016-01-31 22:12:11 +01:00
Paul Riseborough bfd182d12e msg: Add GPS check status to estimator_status uORB topic 2016-01-31 22:12:11 +01:00
Lorenz Meier 8167f729ad MAVLink app: Fix NuttX compilation error 2016-01-31 22:04:39 +01:00
Lorenz Meier c78fd7014d MC: Only use auto yaw limits if manual control is off 2016-01-31 20:18:12 +01:00
Lorenz Meier 7455a833d0 MC: Split yaw speed limiting between manual and velocity control modes 2016-01-31 20:18:12 +01:00
Lorenz Meier 56cd54ab71 MAVLink app: Fix network code to always prefer localhost, work still with remote targets 2016-01-31 20:16:26 +01:00
Lorenz Meier 5f8ee1ea1a Update caipirinha config 2016-01-31 15:14:34 +01:00
Lorenz Meier 069471a62c Commander: Indicate error number on failure 2016-01-31 14:53:54 +01:00
Lorenz Meier 260b77dd78 MPU9250: Make check return values more discriminative 2016-01-31 14:53:40 +01:00
Holger Steinhaus 1245b50ef5 fix typo 2016-01-31 14:53:04 +01:00
Lorenz Meier f50aba844f CAN config: Drop default D gains 2016-01-29 11:40:37 +01:00
Lorenz Meier 7104a853c9 Firefly: drop D gain 2016-01-29 11:40:17 +01:00
Lorenz Meier 6a74f2c69d F450: Fix default gain 2016-01-29 11:40:04 +01:00
Holger Steinhaus 76da9ab82b Set default node id to 1, default bitrate to 1M 2016-01-29 09:19:57 +01:00
Holger Steinhaus 8d66e1c0ef Renamed shadowed variable 2016-01-29 09:06:33 +01:00
Mark Whitehorn 7b7da618b8 format and disable some warnx output 2016-01-29 09:02:34 +01:00
Mark Whitehorn 81ae5cbd0d check for incoming D type telemetry packet (RX also connected to telemetry port) 2016-01-29 09:02:22 +01:00
Andrew Tridgell b8a60f2501 pwm: change default_value for all boards from 1000 to 0
the value '1000' is not really magic, and it was resulting in sending
a single 1ms pulse on all IO channels for a brief instant on
startup. With some servos this led to the control surfaces being at
extremes (and straining) on startup. It may also contribute to making
ESC calibration harder on multi-rotors

In the worst case it could cause a IC motor with reverse throttle to
go full throttle on startup

A logic analyser shows the problem very clearly. Changing the
default_value fields to 0 from 1000 fixes the issue and no pulses are
generated until an explicit value suitable for the airframe is
provided via one of the many methods PWM output values can be
generated

Conflicts:
	src/drivers/boards/px4fmu-v4/px4fmu_pwm_servo.c
	src/lib/ecl
2016-01-29 08:57:20 +01:00
Andreas Antener e6db5e2db1 set all outputs for firefly 2016-01-27 15:07:11 +01:00
Andreas Antener 1363e4aa8f use 400Hz for motor outs in vtol configs, fixes #3609 2016-01-27 15:06:58 +01:00
Roman f35e3335be - only use takeoff strategy when in auto mode
- after jumped takeoff set previous vel setpoint such
that thrust setpoint is continuous
2016-01-27 11:47:41 +01:00
Lorenz Meier f2af8a5a5d IO Firmware: Reduce unnecessary buffer space 2016-01-27 09:56:20 +01:00
Lorenz Meier b54a0308a7 IO: Do not allocate excessive UART buffers 2016-01-27 09:56:20 +01:00
Roman ba169ce0b5 do not do jumped takeoff if already in air 2016-01-27 09:55:47 +01:00
Andreas Antener 3928924c43 RTL was broken by a recent change, revert
Revert "for multicopter landings make sure that the copter moves"

This reverts commit ad1058d3742bbfa9cbd16648aa2925fa1e618a55.
2016-01-26 15:53:52 +01:00
Lorenz Meier 5ea5ecf32b Limit manual yaw command properly. Fixes #3600 2016-01-26 14:08:43 +01:00
Roman c9b1fb154d hotfix:
multirotors shouldn't use tailsitter recovery code.
2016-01-26 13:29:53 +01:00
Lorenz Meier e11fff3011 Fix tests stack space 2016-01-26 12:58:17 +01:00
Lorenz Meier 17c3aa3bac MC att control: Slightly increase max yaw rate 2016-01-26 12:32:26 +01:00
Lorenz Meier fcbd717200 Switch POSIX sitl to EKF2 per default 2016-01-25 22:42:53 +01:00
Lorenz Meier 6c13cef85e Lister: Add missing uint16 2016-01-25 21:46:07 +01:00
James Goppert 4cb1f8a440 Updated matrix for euler wrap fix. 2016-01-25 21:23:11 +01:00
Julian Oes 166f6e2e7a posix sitl: bring the pxh back 2016-01-25 21:22:10 +01:00
Julian Oes 6ce5e1be49 posix sitl: don't exit if a command fails 2016-01-25 19:03:48 +01:00
Julian Oes 563460444a ekf2: get the rad to deg conversion right 2016-01-25 19:03:16 +01:00
Julian Oes 28754d3f58 ekf2: don't reset GPS position in every loop 2016-01-25 19:03:16 +01:00
Lorenz Meier 9d5728b96f FMU: Default to 900 us pulses 2016-01-25 12:08:26 +01:00
Lorenz Meier 2e8accc6ff FMU driver: Only init pins right before using the for PWM. Prevents accidental pulses 2016-01-25 12:08:08 +01:00
Lorenz Meier d32d533d11 FMUv4: Disable unused ADC channels 2016-01-25 12:07:38 +01:00
Lorenz Meier 9cccc0ec76 GPS: Do initial zero value publication to avoid corner cases 2016-01-25 09:30:45 +01:00
Lorenz Meier 6eac78d675 Sensors: Code style fix 2016-01-24 16:34:49 +01:00
Lorenz Meier 081da8bb7f Navigator: Force yaw pointing towards waypoint for all cases 2016-01-24 16:34:36 +01:00
Lorenz Meier 737fe1fc7f Always perform yaw SP generation, not only in multicopter mode 2016-01-24 16:30:21 +01:00
Lorenz Meier b2237ce525 Current scaling: Employ per-board defaults 2016-01-24 16:02:21 +01:00
Julian Oes 4b55c5276e px_romfs_pruner.py: fix indenting 2016-01-24 15:46:29 +01:00
Julian Oes 443592136b px_romfs_pruner.py: PEP8ify and whitespace
- Changed from 8 spaces indent back to 4 which I find appropriate for
  Python.
- Fixed linelength to 80 chars.
2016-01-24 15:46:29 +01:00
Julian Oes 6e26d1b8dc px_romfs_pruner.py: ignore files starting with . 2016-01-24 15:46:29 +01:00
Lorenz Meier 9169a585bf Deprecate ROS target 2016-01-24 15:21:17 +01:00
Artem Sabadyr a284b77c7b gps advertise fix 2016-01-24 15:03:41 +01:00
Lorenz Meier 06b496e257 Navigator: Only set acceptance radius based on navigation capabilities for fixed wing flight. 2016-01-24 14:08:41 +01:00
Lorenz Meier fb21654807 PX4 airframes: Fix XML parser 2016-01-24 13:22:45 +01:00
Lorenz Meier 69d4b1b692 Fix config meta data 2016-01-24 13:22:25 +01:00
Mark Whitehorn d96a17adfb missed some name changes from sPort to frsky 2016-01-24 11:22:18 +01:00
Mark Whitehorn cfc3af8374 update fmu-v4 cmake config 2016-01-24 11:22:18 +01:00
Mark Whitehorn 527fe4b374 remove sPort_telemetry directory 2016-01-24 11:22:18 +01:00
Mark Whitehorn c81c34b147 add sPort telemetry handling into frsky_telemetry daemon 2016-01-24 11:22:18 +01:00
Mark Whitehorn 8f8b4485f1 change rcS to start frsky_telemetry daemon for FMUv4 2016-01-24 11:22:18 +01:00
Mark Whitehorn 29d759768e clean up structure 2016-01-24 11:22:18 +01:00
Mark Whitehorn 42f9079683 move sPort_telemetry.c to src/drivers/frsky_telemetry and rename daemon
to frsky_telemetry
2016-01-24 11:22:18 +01:00
Mark Whitehorn 528e2826d5 run astyle 2016-01-24 11:22:18 +01:00
Mark Whitehorn 3b9ef1cef5 reduce reporting frequency for smartport sensors. reduces CPU load to
approx. 1%
2016-01-24 11:22:18 +01:00
Mark Whitehorn 4f55ae5306 add D type telemetry fallback to sPort_telemetry daemon 2016-01-24 11:22:18 +01:00
Mark Whitehorn a402b3beeb change frsky_telemetry default port to USART8 for pixracer
add a 50msec timeout to poll calls in sPort_telemetry to prevent hangs
2016-01-24 11:22:18 +01:00
Mark Whitehorn 8d089d95d4 change baro altitude scaling to 100 to match OpenTX "custom" altitude
mode
2016-01-24 11:22:18 +01:00
Mark Whitehorn 52ebbda5ac add conditional start of sPort_telemetry daemon for FMUv4 to rcS 2016-01-24 11:22:18 +01:00
Mark Whitehorn 99286db832 running astyle inside QtCreator doesn't guarantee that travis will pass
format checks
2016-01-24 11:22:18 +01:00
Mark Whitehorn 6cb631716a corrected scales for OpenTX 2.1.7 as specified in the comments 2016-01-24 11:22:18 +01:00
Mark Whitehorn 4e4d1a98f6 update comments on scale factors 2016-01-24 11:22:18 +01:00
Mark Whitehorn ea4937491b fix scale factor for VFAS: battery voltage report 2016-01-24 11:22:18 +01:00
Mark Whitehorn bbc03731c7 initial implementation of 5 virtual sensors for Bat V,I, Baro alt, Fuel
and GPS speed. Voltage and current scaling can be set in OpenTX. Fuel is
in percent. Alt in meters. Need to look at what OpenTX wants for speed.
2016-01-24 11:22:18 +01:00
Mark Whitehorn 82bb0564e2 fix byte stuffing typo and add comments 2016-01-24 11:22:18 +01:00
Mark Whitehorn 8949a88f25 fix CRC calc and add battery voltage report 2016-01-24 11:22:18 +01:00
Mark Whitehorn ff690dda80 increase priority of sPort_telemetry to 200 2016-01-24 11:22:18 +01:00
Mark Whitehorn bb565f5d6a add sPort_telemetry cmd to fmu-v4 module list and change default port to ttyS6/usart8 2016-01-24 11:22:18 +01:00
Mark Whitehorn 214709dc89 move smartport telemetry to new module 2016-01-24 11:22:18 +01:00
Mark Whitehorn 47dcf71554 initial test of FrSky SmartPort telemetry 2016-01-24 11:22:18 +01:00
sander 9a8e94bb68 Reject mission when starting with LAND and vehicle is landed 2016-01-24 11:19:00 +01:00
James Goppert 759b107468 Update LPE sitl init script. 2016-01-24 05:16:02 -05:00
Lorenz Meier bf03b8cb18 Yaw rate limit: use a lower limit for less twitching 2016-01-24 11:13:47 +01:00
Lorenz Meier e2fd2f466e UDP testing for Linux folks 2016-01-24 11:13:47 +01:00
James Goppert cfd8173687 Merge pull request #3574 from PX4/matrix_update
Matrix update.
2016-01-24 03:16:01 -05:00
James Goppert c6d30315d9 Matrix update. 2016-01-24 02:45:24 -05:00
Lorenz Meier 03434a0b9e Start 3rd MAVLink instance on OSD port 2016-01-23 18:25:19 +01:00
Lorenz Meier e17f344119 MAVLink: Enable 4 streams and fix OSD rate configuration 2016-01-23 18:25:19 +01:00
Lorenz Meier c2aaeefa6c sdlog2: Log actuator output group 1 as well 2016-01-23 16:02:18 +01:00
Lorenz Meier f52ce2001d Param lib: fix code style 2016-01-23 14:29:15 +01:00
Lorenz Meier 4b893053a0 param: Lock read operation 2016-01-23 13:32:52 +01:00
Lorenz Meier b37082e390 MS5611: Run SPI bus faster 2016-01-23 13:32:42 +01:00
Lorenz Meier 99068aebac FMUv4: Run FRAM bus faster 2016-01-23 13:32:32 +01:00
Lorenz Meier c18d31ce41 Param write: Support locking the bus 2016-01-23 13:23:53 +01:00
Lorenz Meier 1474ddbb78 MS5611: Ensure to set the lockmode at the right location 2016-01-23 13:23:32 +01:00
Roman 0102e47708 for multicopter landings make sure that the copter moves
to the landing waypoint first before the descending phase starts
2016-01-22 18:27:13 +01:00
Lorenz Meier 871b4b482e Do not enable new bus sync yet 2016-01-22 18:07:27 +01:00
Lorenz Meier c659d7851f MS5611: Use the right locking mechanism on Pixracer 2016-01-22 17:12:13 +01:00
Lorenz Meier e88367d722 SPI: Support setting the lock mode 2016-01-22 17:11:46 +01:00
tumbili 7a8ef6c0e4 elc ekf2:
support logging
2016-01-22 14:24:36 +01:00
Roman c185a12c8e log ekf2 innovations and innovation variances 2016-01-22 14:24:36 +01:00
Roman 21f7641e8d log ekf2 estimator status 2016-01-22 14:24:36 +01:00
Roman 67eed88767 added message for ekf2 innovations message 2016-01-22 14:24:36 +01:00
Lorenz Meier 7452cfdf63 EKF2: Fix polling code 2016-01-22 14:21:19 +01:00
Lorenz Meier f460e95554 Param: Increase robustness of default save command 2016-01-22 14:21:09 +01:00
Lorenz Meier 1cfa9d924d Fixed ekf2 stop / start routine 2016-01-22 12:07:17 +01:00
Lorenz Meier 08ef2e8a1c Param command: Increase stack as needed 2016-01-22 11:58:18 +01:00
Andreas Antener 9e2dd7aab6 landing without thrust limiting 2016-01-22 11:51:38 +01:00
Roman 7a8adaa591 multirotor landinging sudden fall protection:
remove condition which made activation of the protection
very unlikely
2016-01-22 11:51:38 +01:00
Lorenz Meier c32938d2a8 EKF2: Update params only as they change 2016-01-22 11:45:29 +01:00
tumbili 93a9032f87 ekf2: parameter cleanup 2016-01-22 11:40:35 +01:00
tumbili b6cf1b54f9 ecl ekf2: added default parameter values 2016-01-22 11:40:35 +01:00
Lorenz Meier 15b72045ce Param command: Auto-save after set 2016-01-22 11:36:14 +01:00
Lorenz Meier 3a43038583 Params: Provide set and save API 2016-01-22 11:35:56 +01:00
Lorenz Meier 85c49ff642 Commander: Do not save params on already saved param update 2016-01-22 11:33:40 +01:00
Lorenz Meier 19b81b9ab2 Commander: Rate-limit preflight check 2016-01-22 11:31:39 +01:00
David Sidrane 9c6f4de753 Fixes buffer overwrite on CONFIG_ARCH_BOARD_AEROCORE 2016-01-22 00:22:26 +01:00
Andreas Antener 4614511474 use set takeoff speed 2016-01-21 10:18:13 +01:00
Roman 7817924aef multirotor takeoff:
instead of altering the velocity setpoint for the vehicle to takeoff
use the thrust setpoint directly. this does not depend on the tuning of
the velocity loop.
2016-01-21 10:18:13 +01:00
Lorenz Meier f918b0c992 Uploader: Make sure to warn about wrong board type 2016-01-21 09:34:54 +01:00
Roman e6d2d17109 initialise topic structs properly 2016-01-21 07:25:18 +01:00
Lorenz Meier 4ce5d4e3e3 Make LPE_ENABLED available as default 2016-01-20 23:54:12 +01:00
Roman Bapst 93042eccb6 Merge pull request #3550 from PX4/level_horizon
fix level horizon feature:
2016-01-20 15:22:39 +01:00
tumbili afb01e6d9a fix level horizon feature:
allow attitude to settle for a while if changes to the board rotation
parameters are done
2016-01-20 13:46:50 +01:00
Lorenz Meier 619548b10a MAVLink: Send for the first 4 seconds to localhost on UDP to not interfere with the network 2016-01-20 11:53:58 +01:00
Lorenz Meier 883148d3d1 Revert "Adjust to AUAV screwup on voltage / current pins"
This reverts commit 3c401c396c.
2016-01-20 11:13:24 +01:00
Lorenz Meier a49dbbc9a8 Lister: Fix Clang compile error 2016-01-20 11:01:31 +01:00
Lorenz Meier b8f11dee99 MAVLink: Code style 2016-01-20 10:59:39 +01:00
Lorenz Meier 83e45a1564 Re-instate UDP handling for MAVLink app 2016-01-20 10:59:25 +01:00
Lorenz Meier 3c401c396c Adjust to AUAV screwup on voltage / current pins 2016-01-20 10:47:50 +01:00
Lorenz Meier cbde246f0a FMUv4: Remove non-existent airspeed sensing channel 2016-01-20 10:09:07 +01:00
sander 92c946dae1 New default PID's for QuadRanger 2016-01-19 22:14:46 +01:00
Lorenz Meier 0025ab7258 Sensors: Code style 2016-01-19 22:00:20 +01:00
Lorenz Meier 751a95deb8 Commander: Operate blue led on pixracer 2016-01-19 19:27:36 +01:00
Lorenz Meier a76ecf3821 Remove differential pressure ADC 2016-01-19 19:27:21 +01:00
Lorenz Meier cd37ffd0bf Do not sample pressure ADC if not configured 2016-01-19 19:27:05 +01:00
Lorenz Meier d1cf8df2ad Initialize system power struct 2016-01-19 19:26:50 +01:00
Lorenz Meier 56957e7ee4 Improved listener tool 2016-01-19 19:26:31 +01:00
Lorenz Meier 9d239c10e5 Restore MAVLink network behaviour with fixed remote system approach 2016-01-18 23:19:51 +01:00
Kabir Mohammed 37cbb90930 Crosscompiler support 2016-01-18 22:42:42 +01:00
Mohammed Kabir 37ffb61afd changes to rpi2 configs 2016-01-18 22:42:35 +01:00
Mohammed Kabir 4351eb147c Add native RPi2 build config 2016-01-18 22:42:29 +01:00
Lorenz Meier de88892f99 Update Matrix to fix QuRT build 2016-01-18 13:40:30 -08:00
Lorenz Meier 7ead4050d6 Hotfix for sock addr, but this is merely a workaround 2016-01-18 13:08:35 +01:00
Lorenz Meier 803f2ce035 Fix threshold param comment 2016-01-18 11:36:11 +01:00
Lorenz Meier ab65a55fbf Change arming transfer to only set the register if the local configuration changed. Move its write operation to the fast rate so that arming / disarming is instantaneous 2016-01-18 11:36:11 +01:00
Lorenz Meier f485b60f57 Kill switch: Fix logic to only trigger on on/off state of switch, not on/undefined. Remove debug output. 2016-01-18 11:36:11 +01:00
Lorenz Meier cb2c8a1390 Fix list of files to check for code style 2016-01-18 11:36:11 +01:00
Mark Whitehorn 8cb472af31 add RC kill switch 2016-01-18 11:36:11 +01:00
Lorenz Meier c802b86acc Sensors: Fix FMUv4 voltage 2016-01-18 10:24:10 +01:00
Lorenz Meier bafa9bb6bb MAVLink: Fall back in altitude indication to baro if estimate is not available 2016-01-17 16:30:02 +01:00
Lorenz Meier 57b95916f5 MAVLink: Add stack space for interface 2016-01-17 16:29:36 +01:00
Roman Bapst efd7e202f7 Merge pull request #3518 from PX4/mc_checks
multirotor mission feasibility checks:
2016-01-17 15:43:53 +01:00
tumbili 07fafc4913 multirotor mission feasibility checks:
make sure that the relative altitude of the takeoff waypoint is
at least one meter higher than the acceptance radius of the waypoint.
This makes sure that the takeoff waypoint is not reached before the vehicle
is at least one meter in the air.
2016-01-17 13:09:28 +01:00
Lorenz Meier 170f9aec49 Update standard VTOL model 2016-01-16 14:38:12 +01:00
788 changed files with 51980 additions and 29231 deletions
+1
View File
@@ -0,0 +1 @@
--ignore-dir=Documentation
+12
View File
@@ -2,6 +2,7 @@
!ROMFS/*/*.d
!ROMFS/*/*/*.d
!ROMFS/*/*/*/*.d
*.px4log
*.dSYM
*.o
*.pyc
@@ -22,6 +23,8 @@ build/*
build_*/
core
cscope.out
cscope.in.out
cscope.po.out
Firmware.sublime-workspace
user.sublime*
Images/*.bin
@@ -61,3 +64,12 @@ CMakeLists.txt.user
GPATH
GRTAGS
GTAGS
*.config
*.creator
*.creator.user
*.files
*.includes
# uavcan firmware
ROMFS/px4fmu_common/uavcan/
vectorcontrol/
+4 -3
View File
@@ -13,9 +13,6 @@
[submodule "Tools/gencpp"]
path = Tools/gencpp
url = https://github.com/ros/gencpp.git
[submodule "src/lib/dspal"]
path = src/lib/dspal
url = https://github.com/ATLFlight/dspal.git
[submodule "Tools/jMAVSim"]
path = Tools/jMAVSim
url = https://github.com/PX4/jMAVSim.git
@@ -25,6 +22,7 @@
[submodule "unittests/googletest"]
path = unittests/googletest
url = https://github.com/google/googletest.git
ignore = untracked
[submodule "src/lib/matrix"]
path = src/lib/matrix
url = https://github.com/PX4/Matrix.git
@@ -37,3 +35,6 @@
[submodule "cmake/cmake_hexagon"]
path = cmake/cmake_hexagon
url = https://github.com/ATLFlight/cmake_hexagon
[submodule "src/drivers/gps/devices"]
path = src/drivers/gps/devices
url = https://github.com/PX4/GpsDrivers.git
+29 -35
View File
@@ -8,6 +8,10 @@ matrix:
include:
- os: linux
sudo: false
env: GCC_VER=4.8
- os: linux
sudo: false
env: GCC_VER=4.9
- os: osx
osx_image: xcode7
sudo: true
@@ -35,7 +39,6 @@ addons:
- ninja-build
- python-argparse
- python-empy
- python-serial
- s3cmd
- texinfo
- zlib1g-dev
@@ -43,10 +46,12 @@ addons:
before_install:
- if [ "${TRAVIS_OS_NAME}" = "linux" ]; then
pushd .
&& cd ~
&& wget https://launchpadlibrarian.net/186124160/gcc-arm-none-eabi-4_8-2014q3-20140805-linux.tar.bz2
&& tar -jxf gcc-arm-none-eabi-4_8-2014q3-20140805-linux.tar.bz2
&& exportline="export PATH=$HOME/gcc-arm-none-eabi-4_8-2014q3/bin:\$PATH"
&& cd ~ && mkdir gcc && cd gcc
&& if [ "$GCC_VER" = "4.8" ]; then GCC_URL="https://launchpadlibrarian.net/186124160/gcc-arm-none-eabi-4_8-2014q3-20140805-linux.tar.bz2" ; fi
&& if [ "$GCC_VER" = "4.9" ]; then GCC_URL="https://launchpad.net/gcc-arm-embedded/4.9/4.9-2014-q4-major/+download/gcc-arm-none-eabi-4_9-2014q4-20141203-linux.tar.bz2" ; fi
&& wget -O gcc.tar.bz2 ${GCC_URL}
&& tar -jxf gcc.tar.bz2 --strip 1
&& exportline="export PATH=$HOME/gcc/bin:\$PATH"
&& if grep -Fxq "$exportline" ~/.profile; then echo nothing to do ; else echo $exportline >> ~/.profile; fi
&& . ~/.profile
&& popd
@@ -60,11 +65,10 @@ before_install:
elif [ "${TRAVIS_OS_NAME}" = "osx" ]; then
brew tap PX4/homebrew-px4
&& brew update; brew update
&& brew install cmake ninja astyle gcc-arm-none-eabi
&& brew install cmake ninja
&& brew install genromfs
&& brew install kconfig-frontends
&& sudo easy_install pip
&& sudo pip install pyserial empy
&& sudo pip install empy
;
fi
@@ -93,40 +97,25 @@ env:
- PX4_AWS_BUCKET=px4-travis
script:
- git submodule update --init --recursive
- make check_format
- arm-none-eabi-gcc --version
- echo 'Building POSIX Firmware..' && make posix_sitl_default
- echo 'Running Tests..' && make posix_sitl_default test
- echo 'Running Unittests..' && cd unittests && ./run_tests.sh
- cd ..
- echo 'Building NuttX px4fmu-v1 Firmware..' && make px4fmu-v1_default
- echo 'Building NuttX px4fmu-v2 Firmware..' && make px4fmu-v2_default
# Only provide UAVCAN firmware binaries for Pixracer and Pixhawk 3
- echo 'Building UAVCAN node firmware..' && git clone https://github.com/thiemar/vectorcontrol
- cd vectorcontrol
- BOARD=s2740vc_1_0 make && BOARD=px4esc_1_6 make
- ../Tools/uavcan_copy.sh
- cd ..
- echo 'Building NuttX px4fmu-v4 Firmware..' && make px4fmu-v4_default
- echo 'Building NuttX px4-stm32f4discovery Firmware..' && make px4-stm32f4discovery_default
- echo 'Running Tests..' && make px4fmu-v2_default test
- git submodule update --quiet --init --recursive
- if [ "${TRAVIS_OS_NAME}" = "linux" ]; then
arm-none-eabi-gcc --version && make check VECTORCONTROL=1;
elif [ "${TRAVIS_OS_NAME}" = "osx" ]; then
make check_posix_sitl_default;
fi
after_success:
- if [ "${TRAVIS_OS_NAME}" = "linux" ]; then
cp build_px4fmu-v1_default/src/firmware/nuttx/nuttx-px4fmu-v1-default.px4 px4fmu-v1_default.px4
&& cp build_px4fmu-v2_default/src/firmware/nuttx/nuttx-px4fmu-v2-default.px4 px4fmu-v2_default.px4
&& cp build_px4fmu-v4_default/src/firmware/nuttx/nuttx-px4fmu-v4-default.px4 px4fmu-v4_default.px4
&& cp build_px4-stm32f4discovery_default/src/firmware/nuttx/nuttx-px4-stm32f4discovery-default.px4 px4-stm32f4discovery-default.px4
&& zip Firmware.zip px4fmu-v1_default.px4 px4fmu-v2_default.px4 px4fmu-v4_default.px4 px4-stm32f4discovery-default.px4
&& ./CI-Tools/s3cmd-put px4fmu-v1_default.px4 px4fmu-v2_default.px4 px4fmu-v4_default.px4 px4-stm32f4discovery-default.px4 build_px4fmu-v2_default/parameters.xml build_px4fmu-v2_default/airframes.xml CI-Tools/directory/index.html Firmware/$TRAVIS_BRANCH/
- if [[ "${TRAVIS_OS_NAME}" = "linux" && "${GCC_VER}" = "4.8" ]]; then
make package_firmware
&& find . -name \*.px4 -exec cp "{}" . \;
&& find . -maxdepth 1 -mindepth 1 -type f -name 'nuttx-*-default.px4' | sed 's/.\/nuttx-//' | sed 's/-default.px4//' | xargs -I{} mv nuttx-{}-default.px4 {}_default.px4
&& ./CI-Tools/s3cmd-put `find . -maxdepth 1 -mindepth 1 -type f -name '*_default.px4'` build_px4fmu-v2_default/parameters.xml build_px4fmu-v2_default/airframes.xml CI-Tools/directory/index.html Firmware/$TRAVIS_BRANCH/
&& ./CI-Tools/s3cmd-put Firmware.zip archives/Firmware/$TRAVIS_BRANCH/$TRAVIS_BUILD_ID/
&& ./CI-Tools/s3cmd-put CI-Tools/directory/index.html archives/Firmware/$TRAVIS_BRANCH/
&& ./CI-Tools/s3cmd-put CI-Tools/index.html index.html
&& ./CI-Tools/s3cmd-put CI-Tools/timestamp.html timestamp.html
&& echo ""
&& echo "Binaries have been posted to:"
&& echo https://px4-travis.s3.amazonaws.com/archives/Firmware/$TRAVIS_BRANCH/$TRAVIS_BUILD_ID/Firmware.zip
&& echo "Binaries have been posted to:" https://px4-travis.s3.amazonaws.com/archives/Firmware/$TRAVIS_BRANCH/$TRAVIS_BUILD_ID/Firmware.zip
;
fi
@@ -140,6 +129,7 @@ deploy:
tags: true
all_branches: true
repo: PX4/Firmware
condition: $GCC_VER = 4.8
notifications:
webhooks:
@@ -147,3 +137,7 @@ notifications:
- https://webhooks.gitter.im/e/2b9c4a4cb2211f8befba
on_success: always # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
slack:
secure: "QKw73Zel/s3JAbe/7XyO9tPnJwiiGFpYzSjdR8lG3tYFjRdXZnhxG4c+G7bkgkaPTS4Hult33VXE3kcEqOI7+C+eRwRlZhDfL0knQbXVCxjcLjzmUFdoPOwurlgZDw66PFWCi5tZcLKSRo3u4U8ibT4WKi3jm9sDSyOcfBAucMU="
on_success: change # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
+26 -14
View File
@@ -85,7 +85,7 @@
# * If a target from add_custom_* is set in a function, explicitly pass it
# as an output argument so that the target name is clear to the user.
#
# * Avoid use of global variables in functions. Functions in a nested
# * Avoid use of global variables in functions. Functions in a nested
# scope may use global variables, but this makes it difficult to
# resuse functions.
#
@@ -150,16 +150,6 @@ list(GET config_args 1 BOARD)
list(GET config_args 2 LABEL)
set(target_name "${OS}-${BOARD}-${LABEL}")
if("${OS}" STREQUAL "posix")
if (APPLE)
set(DF_TARGET darwin)
else()
set(DF_TARGET linux)
endif()
else()
set(DF_TARGET ${OS})
endif()
message(STATUS "${target_name}")
# switch to ros CMake file if building ros
@@ -193,6 +183,11 @@ foreach(conf ${px4_required_config})
endif()
endforeach()
# List the DriverFramework drivers
if(DEFINED config_df_driver_list)
message("DF Drivers: ${config_df_driver_list}")
endif()
#=============================================================================
# project definition
#
@@ -243,12 +238,12 @@ px4_add_git_submodule(TARGET git_mavlink PATH "mavlink/include/mavlink/v1.0")
px4_add_git_submodule(TARGET git_gtest PATH "unittets/gtest")
px4_add_git_submodule(TARGET git_uavcan PATH "src/modules/uavcan/libuavcan")
px4_add_git_submodule(TARGET git_nuttx PATH "NuttX")
px4_add_git_submodule(TARGET git_dspal PATH "src/lib/dspal")
px4_add_git_submodule(TARGET git_driverframework PATH "src/lib/DriverFramework")
px4_add_git_submodule(TARGET git_ecl PATH "src/lib/ecl")
px4_add_git_submodule(TARGET git_jmavsim PATH "Tools/jMAVSim")
px4_add_git_submodule(TARGET git_gazebo PATH "Tools/sitl_gazebo")
px4_add_git_submodule(TARGET git_matrix PATH "src/lib/matrix")
px4_add_git_submodule(TARGET git_cmake_hexagon PATH "cmake/cmake_hexagon")
add_custom_target(submodule_clean
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
@@ -293,6 +288,7 @@ px4_join(OUT CMAKE_C_FLAGS LIST "${c_flags}" GLUE " ")
px4_join(OUT CMAKE_CXX_FLAGS LIST "${cxx_flags}" GLUE " ")
include_directories(${include_dirs})
#message("INCLUDE_DIRS=${include_dirs}")
link_directories(${link_dirs})
add_definitions(${definitions})
@@ -324,12 +320,29 @@ include_directories(${ep_base}/Install/include)
execute_process(COMMAND cmake -E make_directory ${ep_base}/Install/lib)
execute_process(COMMAND cmake -E make_directory ${ep_base}/Install/include)
#=============================================================================
# DriverFramework Drivers
#
set(df_driver_libs)
foreach(driver ${config_df_driver_list})
add_subdirectory(src/lib/DriverFramework/drivers/${driver})
list(APPEND df_driver_libs df_${driver})
message("Adding DF driver: ${driver}")
endforeach()
#=============================================================================
# subdirectories
#
set(module_libraries)
foreach(module ${config_module_list})
add_subdirectory(src/${module})
string(REGEX MATCH "^[./]" external_module ${module})
if(external_module)
STRING(REGEX REPLACE "//" "/" EXT_MODULE ${module})
STRING(REGEX REPLACE "/" "__" EXT_MODULE_PREFIX ${EXT_MODULE})
add_subdirectory(${module} ${CMAKE_BINARY_DIR}/${EXT_MODULE_PREFIX})
else()
add_subdirectory(src/${module})
endif()
px4_mangle_name(${module} mangled_name)
list(APPEND module_libraries ${mangled_name})
#message(STATUS "adding module: ${module}")
@@ -337,7 +350,6 @@ endforeach()
add_subdirectory(src/firmware/${OS})
add_subdirectory(src/lib/DriverFramework/framework/src)
#add_dependencies(df_driver_framework nuttx_export_${CONFIG}.stamp)
if (NOT "${OS}" STREQUAL "nuttx")
endif()
+1 -2
View File
@@ -599,8 +599,7 @@ RECURSIVE = YES
# excluded from the INPUT source files. This way you can easily exclude a
# subdirectory from a directory tree whose root is specified with the INPUT tag.
EXCLUDE = ../src/lib/mathlib/CMSIS \
../src/modules/attitude_estimator_ekf/codegen
EXCLUDE = ../src/modules/attitude_estimator_ekf/codegen
# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
# directories that are symbolic links (a Unix filesystem feature) are excluded
@@ -9,7 +9,7 @@ http://www.stack.nl/~dimitri/doxygen/download.html for the correct download.
Then go to the following website for inforamtion on the install:
http://www.stack.nl/~dimitri/doxygen/install.html
Then to generate the html, run the following code while you are in the qgroundcontrol/doc directory:
Then to generate the html, run the following code while you are in this directory:
$doxygen Doxyfile
The html file index.html should be in doc/html unless you changed the output directory.
+7
View File
@@ -70,6 +70,13 @@
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"cmd": ["make posix"],
"shell": true
},
{
"name": "MindPX_V2: make and upload",
"working_dir": "${project_path}",
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"cmd": ["make upload mindpx-v2_default -j8"],
"shell": true
}
]
}
+12
View File
@@ -0,0 +1,12 @@
{
"board_id": 9,
"magic": "PX4FWv2",
"description": "Firmware for the MindPx-V2 board",
"image": "",
"build_time": 0,
"summary": "MindPx-v2",
"version": "2.1",
"image_size": 0,
"git_identity": "",
"board_revision": 0
}
+90 -28
View File
@@ -1,6 +1,6 @@
############################################################################
#
# Copyright (c) 2015 PX4 Development Team. All rights reserved.
# Copyright (c) 2015 - 2016 PX4 Development Team. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
@@ -109,10 +109,9 @@ endif
# describe how to build a cmake config
define cmake-build
+@if [ $(PX4_CMAKE_GENERATOR) = "Ninja" ] && [ -e $(PWD)/build_$@/Makefile ]; then rm -rf $(PWD)/build_$@; fi
+git submodule init
+Tools/check_submodules.sh
+@if [ ! -e $(PWD)/build_$@/CMakeCache.txt ]; then git submodule sync && git submodule init && mkdir -p $(PWD)/build_$@ && cd $(PWD)/build_$@ && cmake .. -G$(PX4_CMAKE_GENERATOR) -DCONFIG=$(1); fi
+$(PX4_MAKE) -C $(PWD)/build_$@ $(PX4_MAKE_ARGS) $(ARGS)
+@if [ ! -e $(PWD)/build_$@/CMakeCache.txt ]; then Tools/check_submodules.sh && mkdir -p $(PWD)/build_$@ && cd $(PWD)/build_$@ && cmake .. -G$(PX4_CMAKE_GENERATOR) -DCONFIG=$(1) || (cd .. && rm -rf $(PWD)/build_$@); fi
+@Tools/check_submodules.sh
+@(echo "PX4 CONFIG: $@" && cd $(PWD)/build_$@ && $(PX4_MAKE) $(PX4_MAKE_ARGS) $(ARGS))
endef
# create empty targets to avoid msgs for targets passed to cmake
@@ -122,6 +121,12 @@ $(1):
.PHONY: $(1)
endef
define colorecho
@tput setaf 6
@echo $1
@tput sgr0
endef
# ADD CONFIGS HERE
# --------------------------------------------------------------------
# Do not put any spaces between function arguments.
@@ -141,8 +146,8 @@ px4-stm32f4discovery_default:
px4fmu-v2_ekf2:
$(call cmake-build,nuttx_px4fmu-v2_ekf2)
px4fmu-v2_lpe:
$(call cmake-build,nuttx_px4fmu-v2_lpe)
mindpx-v2_default:
$(call cmake-build,nuttx_mindpx-v2_default)
posix_sitl_default:
$(call cmake-build,$@)
@@ -153,26 +158,50 @@ posix_sitl_lpe:
posix_sitl_ekf2:
$(call cmake-build,$@)
ros_sitl_default:
posix_sitl_replay:
$(call cmake-build,$@)
posix_sitl_broadcast:
$(call cmake-build,$@)
ros_sitl_default:
@echo "This target is deprecated. Use make 'posix_sitl_default gazebo' instead."
qurt_eagle_travis:
$(call cmake-build,$@)
qurt_eagle_release:
$(call cmake-build,$@)
posix_eagle_release:
$(call cmake-build,$@)
qurt_eagle_default:
$(call cmake-build,$@)
posix_eagle_default:
$(call cmake-build,$@)
eagle_default: posix_eagle_default qurt_eagle_default
qurt_eagle_legacy_driver_default:
$(call cmake-build,$@)
posix_eagle_legacy_driver_default:
$(call cmake-build,$@)
qurt_excelsior_default:
$(call cmake-build,$@)
posix_excelsior_default:
$(call cmake-build,$@)
excelsior_default: posix_excelsior_default qurt_excelsior_default
posix_rpi2_default:
$(call cmake-build,$@)
posix_rpi2_release:
$(call cmake-build,$@)
posix: posix_sitl_default
broadcast: posix_sitl_broadcast
sitl_deprecation:
@echo "Deprecated. Use 'make posix_sitl_default jmavsim' or"
@echo "'make posix_sitl_default gazebo' if Gazebo is preferred."
@@ -183,34 +212,67 @@ run_sitl_ros: sitl_deprecation
# Other targets
# --------------------------------------------------------------------
.PHONY: uavcan_firmware check check_format unittest tests package_firmware clean submodulesclean distclean
.NOTPARALLEL: uavcan_firmware check check_format unittest tests package_firmware clean submodulesclean distclean
uavcan_firmware:
ifeq ($(VECTORCONTROL),1)
$(call colorecho,"Downloading and building Vector control (FOC) firmware for the S2740VC and PX4ESC 1.6")
@(rm -rf vectorcontrol && git clone --quiet --depth 1 https://github.com/thiemar/vectorcontrol.git && cd vectorcontrol && BOARD=s2740vc_1_0 make --silent --no-print-directory && BOARD=px4esc_1_6 make --silent --no-print-directory && ../Tools/uavcan_copy.sh)
endif
check: check_px4fmu-v1_default check_px4fmu-v2_default check_px4fmu-v4_default_and_uavcan check_mindpx-v2_default check_px4-stm32f4discovery_default check_posix_sitl_default check_unittest check_format
check_format:
$(call colorecho,"Checking formatting with astyle")
@./Tools/fix_code_style.sh
@./Tools/check_code_style.sh
check_%:
@echo
$(call colorecho,"Building" $(subst check_,,$@))
@$(MAKE) --no-print-directory $(subst check_,,$@)
@echo
check_px4fmu-v4_default: uavcan_firmware
check_px4fmu-v4_default_and_uavcan: check_px4fmu-v4_default
@echo
ifeq ($(VECTORCONTROL),1)
@echo "Cleaning up vectorcontrol firmware"
@rm -rf vectorcontrol
@rm -rf ROMFS/px4fmu_common/uavcan
endif
unittest: posix_sitl_default
@(cd unittests && cmake -G$(PX4_CMAKE_GENERATOR) && $(PX4_MAKE) $(PX4_MAKE_ARGS) && ctest -j2 --output-on-failure)
package_firmware:
@zip --junk-paths Firmware.zip `find . -name \*.px4`
clean:
@rm -rf build_*/
@(cd NuttX && git clean -d -f -x)
@(cd src/modules/uavcan/libuavcan && git clean -d -f -x)
@(git submodule sync)
@(cd NuttX/nuttx && make clean)
submodulesclean:
@git submodule sync
@git submodule deinit -f .
@git submodule update --init --recursive --force
distclean: submodulesclean
@git clean -ff -x -d
# targets handled by cmake
cmake_targets = test upload package package_source debug debug_tui debug_ddd debug_io debug_io_tui debug_io_ddd check_weak \
run_cmake_config config gazebo gazebo_gdb gazebo_lldb jmavsim \
jmavsim_gdb jmavsim_lldb gazebo_gdb_iris gazebo_lldb_tailsitter gazebo_iris gazebo_tailsitter \
gazebo_gdb_standard_vtol gazebo_lldb_standard_vtol gazebo_standard_vtol
run_cmake_config config gazebo gazebo_gdb gazebo_lldb jmavsim replay \
jmavsim_gdb jmavsim_lldb gazebo_gdb_iris gazebo_lldb_tailsitter gazebo_iris gazebo_iris_opt_flow gazebo_tailsitter \
gazebo_gdb_standard_vtol gazebo_lldb_standard_vtol gazebo_standard_vtol gazebo_plane
$(foreach targ,$(cmake_targets),$(eval $(call cmake-targ,$(targ))))
.PHONY: clean
CONFIGS:=$(shell ls cmake/configs | sed -e "s~.*/~~" | sed -e "s~\..*~~")
# Future:
#$(CONFIGS):
## @cd Build/$@ && cmake ../.. -DCONFIG=$@
# @cd Build/$@ && make
#
#clean-all:
# @rm -rf Build/*
#
#help:
# @echo
# @echo "Type 'make ' and hit the tab key twice to see a list of the available"
+1 -1
Submodule NuttX updated: 3009fb230e...f0f4bdc872
+4 -4
View File
@@ -1,17 +1,17 @@
## PX4 Flight Core and PX4 Middleware ##
## PX4 Pro Drone Autopilot ##
[![Build Status](https://travis-ci.org/PX4/Firmware.svg?branch=master)](https://travis-ci.org/PX4/Firmware) [![Coverity Scan](https://scan.coverity.com/projects/3966/badge.svg?flat=1)](https://scan.coverity.com/projects/3966?tab=overview)
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/PX4/Firmware?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
This repository contains the [PX4 Flight Core](http://px4.io), with the main applications located in the src/modules directory. It also contains the PX4 Drone Platform, which contains drivers and middleware to run drones.
This repository holds the [PX4 Pro](http://px4.io) flight control solution for drones, with the main applications located in the src/modules directory. It also contains the PX4 Drone Middleware Platform, which provides drivers and middleware to run drones.
* Official Website: http://px4.io
* License: BSD 3-clause (see [LICENSE.md](https://github.com/PX4/Firmware/blob/master/LICENSE.md))
* Supported airframes (more experimental are supported):
* [Multicopters](http://px4.io/portfolio_category/multicopter/)
* [Fixed wing](http://px4.io/portfolio_category/vtol/)
* [VTOL](http://px4.io/portfolio_category/plane/)
* [Fixed wing](http://px4.io/portfolio_category/plane/)
* [VTOL](http://px4.io/portfolio_category/vtol/)
* Releases
* [Downloads](https://github.com/PX4/Firmware/releases)
@@ -20,7 +20,8 @@ then
param set FW_AIRSPD_MAX 20
param set FW_AIRSPD_MIN 12
param set FW_AIRSPD_TRIM 14
param set FW_ATT_TC 0.3
param set FW_R_TC 0.3
param set FW_P_TC 0.3
param set FW_L1_DAMPING 0.74
param set FW_L1_PERIOD 16
param set FW_LND_ANG 15
@@ -37,9 +38,8 @@ then
param set FW_RR_I 0.1
param set FW_RR_IMAX 0.2
param set FW_RR_P 0.3
param set RWTO_TKOFF 1
fi
param set RWTO_TKOFF 1
set HIL yes
set MIXER AERT
@@ -14,7 +14,8 @@ then
param set FW_AIRSPD_MIN 12
param set FW_AIRSPD_TRIM 25
param set FW_AIRSPD_MAX 40
param set FW_ATT_TC 0.3
param set FW_R_TC 0.3
param set FW_P_TC 0.3
param set FW_L1_DAMPING 0.74
param set FW_L1_PERIOD 15
param set FW_PR_FF 0.8
@@ -0,0 +1,41 @@
#!nsh
#
# @name Steadidrone MAVRIK
#
# @type Octo Coax Wide
#
# @maintainer Simon Wilks <simon@uaventure.com>
#
sh /etc/init.d/rc.mc_defaults
if [ $AUTOCNF == yes ]
then
param set MC_PITCH_P 4.0
param set MC_PITCHRATE_P 0.24
param set MC_PITCHRATE_I 0.09
param set MC_PITCHRATE_D 0.013
param set MC_PITCHRATE_MAX 180.0
param set MC_ROLL_P 4.0
param set MC_ROLLRATE_P 0.16
param set MC_ROLLRATE_I 0.07
param set MC_ROLLRATE_D 0.009
param set MC_ROLLRATE_MAX 180.0
param set MC_YAW_P 3.0
param set MC_YAWRATE_P 0.2
param set MC_YAWRATE_I 0.1
param set MC_YAWRATE_D 0.0
param set MC_YAW_FF 0.5
param set MPC_HOLD_MAX_XY 0.25
param set MPC_THR_MIN 0.15
param set MPC_Z_VEL_MAX 2.0
param set BAT_N_CELLS 4
fi
set MIXER octo_cox_w
set PWM_OUT 12345678
@@ -1,19 +1,44 @@
#!nsh
#
# @name Duorotor Tailsitter
# @name Caipiroshka Duo Tailsitter
#
# @type VTOL Tailsitter
# @type VTOL Duo Tailsitter
#
# @output MAIN1 motor left
# @output MAIN2 motor right
# @output MAIN5 elevon left
# @output MAIN6 elevon right
#
# @maintainer Roman Bapst <roman@px4.io>
#
sh /etc/init.d/rc.vtol_defaults
if [ $AUTOCNF == yes ]
then
param set MC_ROLL_P 6.0
param set MC_ROLLRATE_P 0.12
param set MC_ROLLRATE_I 0.002
param set MC_ROLLRATE_D 0.003
param set MC_ROLLRATE_FF 0.0
param set MC_PITCH_P 4.5
param set MC_PITCHRATE_P 0.3
param set MC_PITCHRATE_I 0.002
param set MC_PITCHRATE_D 0.003
param set MC_PITCHRATE_FF 0.0
param set MC_YAW_P 3.8
param set MC_YAW_FF 0.5
param set MC_YAWRATE_P 0.22
param set MC_YAWRATE_I 0.02
param set MC_YAWRATE_D 0.0
param set MC_YAWRATE_FF 0.0
param set VT_MOT_COUNT 2
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 0
param set MAV_TYPE 19
fi
set MIXER caipirinha_vtol
set PWM_OUT 12
set PWM_MAX 2000
set PWM_RATE 400
param set VT_MOT_COUNT 2
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 0
set PWM_OUT 1234
+8 -12
View File
@@ -14,12 +14,12 @@ then
param set MC_ROLL_P 7.0
param set MC_ROLLRATE_P 0.17
param set MC_ROLLRATE_I 0.002
param set MC_ROLLRATE_D 0.004
param set MC_ROLLRATE_D 0.003
param set MC_ROLLRATE_FF 0.0
param set MC_PITCH_P 7.0
param set MC_PITCHRATE_P 0.14
param set MC_PITCHRATE_I 0.002
param set MC_PITCHRATE_D 0.004
param set MC_PITCHRATE_D 0.003
param set MC_PITCHRATE_FF 0.0
param set MC_YAW_P 3.8
param set MC_YAW_FF 0.5
@@ -31,21 +31,17 @@ then
param set VT_TILT_MC 0.08
param set VT_TILT_TRANS 0.5
param set VT_TILT_FW 0.9
param set VT_MOT_COUNT 6
param set VT_FW_MOT_OFFID 34
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 1
fi
set MIXER firefly6
set PWM_OUT 12345678
set PWM_RATE 400
set MIXER_AUX firefly6
set PWM_AUX_RATE 50
set PWM_AUX_OUT 1234
set PWM_AUX_DISARMED 1000
set PWM_AUX_MIN 1000
set PWM_AUX_MAX 2000
set MAV_TYPE 21
param set VT_MOT_COUNT 6
param set VT_FW_MOT_OFFID 34
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 1
@@ -9,13 +9,17 @@
sh /etc/init.d/rc.vtol_defaults
if [ $AUTOCNF == yes ]
then
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 0
param set VT_ELEV_MC_LOCK 1
fi
set MIXER quad_x_vtol
set PWM_OUT 1234
set PWM_MAX 2000
set PWM_RATE 400
set MAV_TYPE 20
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 0
param set VT_ELEV_MC_LOCK 1
@@ -9,13 +9,17 @@
sh /etc/init.d/rc.vtol_defaults
if [ $AUTOCNF == yes ]
then
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 0
param set VT_ELEV_MC_LOCK 1
fi
set MIXER quad_+_vtol
set PWM_OUT 1234
set PWM_MAX 2000
set PWM_RATE 400
set MAV_TYPE 20
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 0
param set VT_ELEV_MC_LOCK 1
@@ -14,16 +14,18 @@ then
param set VT_TYPE 2
param set VT_MOT_COUNT 4
param set VT_TRANS_THR 0.75
param set VT_ARSP_TRANS 12
param set VT_ARSP_BLEND 6
param set MC_ROLL_P 7.0
param set MC_ROLLRATE_P 0.15
param set MC_ROLL_P 6.0
param set MC_ROLLRATE_P 0.17
param set MC_ROLLRATE_I 0.002
param set MC_ROLLRATE_D 0.003
param set MC_ROLLRATE_D 0.004
param set MC_ROLLRATE_FF 0.0
param set MC_PITCH_P 7.0
param set MC_PITCHRATE_P 0.12
param set MC_PITCH_P 6.0
param set MC_PITCHRATE_P 0.19
param set MC_PITCHRATE_I 0.002
param set MC_PITCHRATE_D 0.003
param set MC_PITCHRATE_D 0.004
param set MC_PITCHRATE_FF 0.0
param set MC_YAW_P 2.8
param set MC_YAW_FF 0.5
@@ -31,20 +33,28 @@ then
param set MC_YAWRATE_I 0.02
param set MC_YAWRATE_D 0.0
param set MC_YAWRATE_FF 0.0
param set FW_PR_FF 0.5
param set FW_PR_I 0.02
param set FW_PR_IMAX 0.4
param set FW_PR_P 0.08
param set FW_RR_FF 0.6
param set FW_RR_I 0.01
param set FW_RR_IMAX 0.2
param set FW_RR_P 0.05
param set FW_THR_CRUISE 0.75
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 2
fi
set MIXER vtol_quad_x
set PWM_OUT 12345678
set PWM_OUT 1234
set PWM_RATE 400
set MIXER_AUX vtol_AAERT
set PWM_AUX_RATE 50
set PWM_AUX_OUT 1234
set PWM_AUX_DISARMED 1000
set PWM_AUX_MIN 1000
set PWM_AUX_MAX 2000
set PWM_ACHDIS 5
set PWM_AUX_DISARMED 950
set MAV_TYPE 22
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 2
@@ -31,20 +31,18 @@ then
param set MC_YAWRATE_I 0.02
param set MC_YAWRATE_D 0.0
param set MC_YAWRATE_FF 0.0
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 2
fi
set MIXER vtol_quad_x
set PWM_OUT 12345678
set PWM_OUT 1234
set PWM_RATE 400
set MIXER_AUX vtol_delta
set PWM_AUX_RATE 50
set PWM_AUX_OUT 1234
set PWM_AUX_DISARMED 1000
set PWM_AUX_MIN 1000
set PWM_AUX_MAX 2000
set PWM_ACHDIS 3
set PWM_AUX_DISARMED 950
set MAV_TYPE 22
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 2
@@ -31,21 +31,18 @@ then
param set MC_YAWRATE_I 0.02
param set MC_YAWRATE_D 0.0
param set MC_YAWRATE_FF 0.0
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 2
fi
set MIXER vtol_quad_x
set PWM_OUT 12345678
set PWM_OUT 1234
set PWM_RATE 400
set MIXER_AUX vtol_AAVVT
set PWM_AUX_RATE 50
set PWM_AUX_OUT 1234
set PWM_AUX_DISARMED 1000
set PWM_AUX_MIN 1000
set PWM_AUX_MAX 2000
set PWM_ACHDIS 5
set PWM_AUX_DISARMED 950
set MAV_TYPE 22
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 2
+37 -22
View File
@@ -18,36 +18,51 @@ then
param set PWM_AUX_REV1 1
param set PWM_AUX_REV2 1
param set MC_ROLL_P 6.5
param set MC_ROLLRATE_P 0.1
param set MC_ROLLRATE_I 0.002
param set MC_ROLLRATE_D 0.003
param set MC_ROLL_P 7.0
param set MC_ROLLRATE_P 0.15
param set MC_ROLLRATE_I 0.1
param set MC_ROLLRATE_D 0.004
param set MC_ROLLRATE_FF 0.0
param set MC_PITCH_P 6.5
param set MC_PITCHRATE_P 0.1
param set MC_PITCHRATE_I 0.002
param set MC_PITCHRATE_D 0.003
param set MC_PITCH_P 7.0
param set MC_PITCHRATE_P 0.15
param set MC_PITCHRATE_I 0.1
param set MC_PITCHRATE_D 0.004
param set MC_PITCHRATE_FF 0.0
param set MC_YAW_P 2.8
param set MC_YAW_FF 0.5
param set MC_YAWRATE_P 0.22
param set MC_YAWRATE_I 0.02
param set MC_YAW_P 3.5
param set MC_YAW_FF 0.7
param set MC_YAWRATE_P 0.6
param set MC_YAWRATE_I 0.04
param set MC_YAWRATE_D 0.0
param set MC_YAWRATE_FF 0.0
param set MPC_ACC_HOR_MAX 2.0
param set MPC_Z_VEL_MAX 1.5
param set MPC_TKO_SPEED 1.5
param set MPC_LAND_SPEED 0.8
param set FW_THR_CRUISE 65.0
param set FW_PR_P 0.08
param set FW_PR_FF 0.5
param set FW_RR_P 0.05
param set FW_RR_FF 0.6
param set MIS_YAW_TMT 10
param set VT_ARSP_TRANS 15.0
param set VT_ARSP_BLEND 8.0
param set VT_B_TRANS_DUR 4.0
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 2
fi
set MIXER vtol_quad_x
set PWM_OUT 12345678
set PWM_OUT 1234
set PWM_RATE 400
set MIXER_AUX vtol_AAERT
set PWM_AUX_RATE 50
set PWM_AUX_OUT 1234
set PWM_AUX_DISARMED 1000
set PWM_AUX_MIN 1000
set PWM_AUX_MAX 2000
set PWM_ACHDIS 5
set PWM_AUX_DISARMED 950
set MAV_TYPE 22
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1080
param set VT_TYPE 2
@@ -0,0 +1,88 @@
#!nsh
#
# @name Sparkle Tech Ranger VTOL
#
# @type Standard VTOL
#
# @maintainer Andreas Antener <andreas@uaventure.com>
#
sh /etc/init.d/rc.vtol_defaults
if [ $AUTOCNF == yes ]
then
param set VT_TYPE 2
param set VT_MOT_COUNT 4
param set VT_IDLE_PWM_MC 1180
param set MAV_TYPE 22
param set VT_ARSP_TRANS 15.0
param set VT_B_TRANS_DUR 4.0
param set VT_TRANS_MIN_TM 5.0
param set VT_TRANS_THR 0.6
param set VT_TRANS_TIMEOUT 30.0
param set FW_AIRSPD_MAX 22.0
param set FW_AIRSPD_MIN 14.0
param set FW_AIRSPD_TRIM 16.0
param set FW_L1_PERIOD 25.0
param set FW_PR_P 0.060
param set FW_P_RMAX_NEG 40.0
param set FW_P_RMAX_POS 40.0
param set FW_RR_FF 0.4
param set FW_RR_P 0.04
param set FW_R_RMAX 40.0
param set MC_PITCHRATE_D 0.004
param set MC_PITCHRATE_I 0.0
param set MC_PITCHRATE_MAX 60.0
param set MC_PITCHRATE_P 0.21
param set MC_PITCH_P 4.0
param set MC_ROLLRATE_D 0.004
param set MC_ROLLRATE_I 0.002
param set MC_ROLLRATE_MAX 60.0
param set MC_ROLLRATE_P 0.24
param set MC_ROLL_P 4.0
param set MC_YAWRATE_I 0.02
param set MC_YAWRATE_MAX 40.0
param set MC_YAWRATE_P 0.18
param set MC_YAWRAUTO_MAX 40.0
param set MIS_TAKEOFF_ALT 2.5
param set MIS_YAW_TMT 20.0
param set MPC_ACC_HOR_MAX 1.0
param set MPC_HOLD_MAX_XY 0.5
param set MPC_HOLD_MAX_Z 0.5
param set MPC_LAND_SPEED 1.0
param set MPC_MANTHR_MIN 0.05
param set MPC_MAN_Y_MAX 120.0
param set MPC_THR_MIN 0.07
param set MPC_TILTMAX_AIR 35.0
param set MPC_TILTMAX_LND 20.0
param set MPC_TKO_SPEED 1.0
param set MPC_XY_FF 0.1
param set MPC_XY_P 0.3
param set MPC_XY_VEL_MAX 3.0
param set MPC_XY_VEL_P 0.05
param set MPC_Z_FF 0.3
param set MPC_Z_P 0.5
param set MPC_Z_VEL_MAX 1.0
param set MPC_Z_VEL_P 0.1
param set NAV_ACC_RAD 3.0
param set PWM_AUX_REV1 1
param set PWM_AUX_REV2 1
param set PWM_AUX_REV3 1
param set PWM_AUX_REV4 1
fi
set MIXER vtol_quad_x
set PWM_OUT 1234
set PWM_RATE 400
set MIXER_AUX vtol_AAERT
set PWM_ACHDIS 5
set PWM_AUX_DISARMED 950
set MAV_TYPE 22
@@ -0,0 +1,12 @@
#!nsh
#
# @name Passthrough mode for Snapdragon
#
# @type custom
#
# @maintainer Julian Oes <julian@oes.ch>
#
# This startup can be used on Pixhawk/Pixfalcon/Pixracer for the
# passthrough of RC input and PWM output.
set VEHICLE_TYPE passthrough
+2 -1
View File
@@ -24,7 +24,8 @@ then
param set FW_AIRSPD_MAX 15
param set FW_AIRSPD_MIN 10
param set FW_AIRSPD_TRIM 13
param set FW_ATT_TC 0.3
param set FW_R_TC 0.3
param set FW_P_TC 0.3
param set FW_L1_DAMPING 0.74
param set FW_L1_PERIOD 16
param set FW_LND_ANG 15
+2 -1
View File
@@ -24,7 +24,8 @@ then
param set FW_AIRSPD_MIN 13
param set FW_AIRSPD_TRIM 15
param set FW_AIRSPD_MAX 25
param set FW_ATT_TC 0.3
param set FW_R_TC 0.3
param set FW_P_TC 0.3
param set FW_L1_DAMPING 0.75
param set FW_L1_PERIOD 15
param set FW_PR_FF 0.2
+2 -1
View File
@@ -24,7 +24,8 @@ then
param set FW_AIRSPD_MIN 15
param set FW_AIRSPD_TRIM 20
param set FW_AIRSPD_MAX 40
param set FW_ATT_TC 0.3
param set FW_R_TC 0.3
param set FW_P_TC 0.3
param set FW_L1_DAMPING 0.74
param set FW_L1_PERIOD 16
param set FW_LND_ANG 15
+2 -1
View File
@@ -25,7 +25,8 @@ then
param set FW_AIRSPD_MAX 15
param set FW_AIRSPD_MIN 10
param set FW_AIRSPD_TRIM 13
param set FW_ATT_TC 0.3
param set FW_R_TC 0.3
param set FW_P_TC 0.3
param set FW_L1_DAMPING 0.74
param set FW_L1_PERIOD 16
param set FW_LND_ANG 15
+55
View File
@@ -0,0 +1,55 @@
#!nsh
#
# @name Sparkle Tech Pigeon
#
# @url http://www.sparkletech.hk/
#
# @type Flying Wing
#
# @output MAIN1 left aileron
# @output MAIN2 right aileron
# @output MAIN4 throttle
#
# @output AUX1 feed-through of RC AUX1 channel
# @output AUX2 feed-through of RC AUX2 channel
# @output AUX3 feed-through of RC AUX3 channel
#
# @maintainer Simon Wilks <simon@px4.io>
#
sh /etc/init.d/rc.fw_defaults
if [ $AUTOCNF == yes ]
then
param set FW_AIRSPD_MIN 15
param set FW_AIRSPD_TRIM 20
param set FW_AIRSPD_MAX 27
param set FW_ATT_TC 0.3
param set FW_L1_DAMPING 0.75
param set FW_L1_PERIOD 15
param set FW_PR_FF 0.35
param set FW_PR_IMAX 0.2
param set FW_PR_P 0.05
param set FW_P_LIM_MAX 45
param set FW_P_LIM_MIN -45
param set FW_P_ROLLFF 1
param set FW_P_TC 0.3
param set FW_RR_FF 0.3
param set FW_RR_IMAX 0.2
param set FW_RR_P 0.03
param set FW_R_LIM 40
param set FW_R_RMAX 50
param set FW_R_TC 0.3
# Bottom of bay and nominal zero-pitch attitude differ
# the payload bay is pitched up about 7 degrees
param set SENS_BOARD_Y_OFF 11.9
param set FW_L1_PERIOD 20.0
fi
set MIXER phantom
# Provide ESC a constant 1000 us pulse
set PWM_OUT 4
set PWM_DISARMED 1000
@@ -14,7 +14,8 @@ then
param set FW_AIRSPD_MAX 20
param set FW_AIRSPD_MIN 12
param set FW_AIRSPD_TRIM 16
param set FW_ATT_TC 0.3
param set FW_R_TC 0.3
param set FW_P_TC 0.3
param set FW_L1_DAMPING 0.74
param set FW_L1_PERIOD 16
param set FW_LND_ANG 15
+14 -14
View File
@@ -15,22 +15,22 @@ sh /etc/init.d/4001_quad_x
if [ $AUTOCNF == yes ]
then
param set MC_ROLL_P 7.0
param set MC_ROLLRATE_P 0.05
param set MC_ROLLRATE_I 0.05
param set MC_ROLLRATE_D 0.002
param set MC_ROLL_P 6.0
param set MC_ROLLRATE_P 0.14
param set MC_ROLLRATE_I 0.23
param set MC_ROLLRATE_D 0.0025
param set MC_PITCH_P 7.0
param set MC_PITCHRATE_P 0.08
param set MC_PITCHRATE_I 0.1
param set MC_PITCHRATE_D 0.003
param set MC_YAW_P 2.8
param set MC_YAWRATE_P 0.2
param set MC_YAWRATE_I 0.1
param set MC_PITCHRATE_P 0.235
param set MC_PITCHRATE_I 0.17
param set MC_PITCHRATE_D 0.004
param set MC_YAW_P 4
param set MC_YAWRATE_P 0.3
param set MC_YAWRATE_I 0.2
param set MC_YAWRATE_D 0.0
param set PWM_MIN 980
param set MC_YAW_FF 0.5
param set PWM_MIN 1075
param set MPC_THR_MIN 0.06
param set MPC_MANTHR_MIN 0.06
param set MC_ROLLRATE_MAX 360.0
param set MC_PITCHRATE_MAX 360.0
param set MC_YAWRATE_MAX 200.0
param set CBRK_IO_SAFETY 22027
param set ATT_BIAS_MAX 0.0
fi
-6
View File
@@ -30,9 +30,3 @@ then
# DJI ESCs do not support calibration and need a higher min
param set PWM_MIN 1230
fi
# Transitional support: ensure suitable PWM min/max param values
if param compare PWM_MIN 1075
then
param set PWM_MIN 1230
fi
+2 -8
View File
@@ -18,11 +18,11 @@ then
param set MC_ROLL_P 7.0
param set MC_ROLLRATE_P 0.15
param set MC_ROLLRATE_I 0.05
param set MC_ROLLRATE_D 0.01
param set MC_ROLLRATE_D 0.003
param set MC_PITCH_P 7.0
param set MC_PITCHRATE_P 0.15
param set MC_PITCHRATE_I 0.05
param set MC_PITCHRATE_D 0.01
param set MC_PITCHRATE_D 0.003
param set MC_YAW_P 2.8
param set MC_YAWRATE_P 0.3
param set MC_YAWRATE_I 0.1
@@ -30,9 +30,3 @@ then
# DJI ESCs do not support calibration and need a higher min
param set PWM_MIN 1230
fi
# Transitional support: ensure suitable PWM min/max param values
if param compare PWM_MIN 1075
then
param set PWM_MIN 1230
fi
+2 -2
View File
@@ -14,11 +14,11 @@ then
param set MC_ROLL_P 7.0
param set MC_ROLLRATE_P 0.16
param set MC_ROLLRATE_I 0.05
param set MC_ROLLRATE_D 0.01
param set MC_ROLLRATE_D 0.003
param set MC_PITCH_P 7.0
param set MC_PITCHRATE_P 0.16
param set MC_PITCHRATE_I 0.05
param set MC_PITCHRATE_D 0.01
param set MC_PITCHRATE_D 0.003
param set MC_YAW_P 2.8
param set MC_YAWRATE_P 0.3
param set MC_YAWRATE_I 0.1
+42
View File
@@ -0,0 +1,42 @@
#!nsh
#
# @name Reaper 500 Quad
#
# @type Quadrotor x
#
# @maintainer Blankered
#
sh /etc/init.d/rc.mc_defaults
if [ $AUTOCNF == yes ]
then
param set MC_ROLL_P 6.5
param set MC_ROLLRATE_P 0.14
param set MC_ROLLRATE_I 0.1
param set MC_ROLLRATE_D 0.004
param set MC_PITCH_P 6.0
param set MC_PITCHRATE_P 0.14
param set MC_PITCHRATE_I 0.09
param set MC_PITCHRATE_D 0.004
param set MC_YAW_P 4
param set NAV_ACC_RAD 2.0
param set RTL_RETURN_ALT 30.0
param set RTL_DESCEND_ALT 10.0
fi
set MIXER quad_h
set PWM_RATE 50
set PWM_OUT 1234
set PWM_MIN 1100
set PWM_MAX 1900
set PWM_DISARMED 1500
set MIXER_AUX pass
set PWM_AUX_RATE 50
set PWM_AUX_OUT 1234
set PWM_AUX_MIN 1000
set PWM_AUX_MAX 2000
set PWM_AUX_DISARMED 950
@@ -0,0 +1,45 @@
#!nsh
#
# @name Generic 250 Racer
#
# @type Quadrotor x
#
# @output AUX1 feed-through of RC AUX1 channel
# @output AUX2 feed-through of RC AUX2 channel
# @output AUX3 feed-through of RC AUX3 channel
#
# @maintainer Mark Whitehorn <kd0aij@gmail.com>
#
sh /etc/init.d/4001_quad_x
if [ $AUTOCNF == yes ]
then
param set MC_ROLL_P 8.0
param set MC_ROLLRATE_P 0.19
param set MC_ROLLRATE_I 0.1
param set MC_ROLLRATE_D 0.0055
param set MC_PITCH_P 8.0
param set MC_PITCHRATE_P 0.24
param set MC_PITCHRATE_I 0.1
param set MC_PITCHRATE_D 0.0065
param set MC_YAW_P 4.0
param set MC_YAWRATE_P 0.2
param set MC_YAWRATE_I 0.1
param set MC_YAWRATE_D 0.0
param set MC_YAW_FF 0.5
param set MC_ROLLRATE_MAX 720.0
param set MC_PITCHRATE_MAX 720.0
param set MC_YAWRATE_MAX 400.0
param set MC_ACRO_R_MAX 360.0
param set MC_ACRO_P_MAX 360.0
param set PWM_MIN 1075
param set MPC_THR_MIN 0.06
param set MPC_MANTHR_MIN 0.06
param set ATT_BIAS_MAX 0.0
param set CBRK_IO_SAFETY 22027
fi
@@ -0,0 +1,23 @@
#!nsh
#
# @name DJI Matrice 100
#
# @type Quadrotor x
#
# @output AUX1 feed-through of RC AUX1 channel
# @output AUX2 feed-through of RC AUX2 channel
# @output AUX3 feed-through of RC AUX3 channel
#
# @maintainer James Goppert <james.goppert@gmail.com>
#
sh /etc/init.d/4001_quad_x
if [ $AUTOCNF == yes ]
then
param set MC_ROLLRATE_P 0.05
param set MC_ROLLRATE_D 0.001
param set MC_PITCHRATE_P 0.05
param set MC_PITCHRATE_D 0.001
param set BAT_N_CELLS 6
fi
+4 -3
View File
@@ -7,9 +7,10 @@ then
#
# Default parameters for FW
#
param set NAV_LAND_ALT 90
param set NAV_RTL_ALT 100
param set NAV_RTL_LAND_T -1
param set RTL_RETURN_ALT 100
param set RTL_DESCEND_ALT 100
param set RTL_LAND_DELAY -1
param set NAV_ACC_RAD 50
param set PE_VELNE_NOISE 0.3
+37 -7
View File
@@ -103,6 +103,12 @@ then
set MIXER_AUX none
fi
#MindPX has not aux mixer
if ver hwcmp MINDPX_V2
then
set MIXER_AUX none
fi
if [ $MIXER_AUX != none -a $AUX_MODE != none ]
then
#
@@ -147,6 +153,7 @@ then
set FAILSAFE_AUX none
fi
# Set min / max for aux out and rates
if [ $PWM_AUX_OUT != none ]
then
#
@@ -157,13 +164,6 @@ then
pwm rate -c $PWM_AUX_OUT -r $PWM_AUX_RATE -d $OUTPUT_AUX_DEV
fi
#
# Set disarmed, min and max PWM_AUX values
#
if [ $PWM_AUX_DISARMED != none ]
then
pwm disarmed -c $PWM_AUX_OUT -p $PWM_AUX_DISARMED -d $OUTPUT_AUX_DEV
fi
if [ $PWM_AUX_MIN != none ]
then
pwm min -c $PWM_AUX_OUT -p $PWM_AUX_MIN -d $OUTPUT_AUX_DEV
@@ -174,6 +174,23 @@ then
fi
fi
# Set disarmed values for aux out
# Transitional support until all configs
# are updated
if [ $PWM_ACHDIS == none ]
then
set PWM_ACHDIS ${PWM_AUX_OUT}
fi
#
# Set disarmed, min and max PWM_AUX values
#
if [ $PWM_AUX_DISARMED != none -a $PWM_ACHDIS != none ]
then
pwm disarmed -c $PWM_ACHDIS -p $PWM_AUX_DISARMED -d $OUTPUT_AUX_DEV
fi
if [ $FAILSAFE_AUX != none ]
then
pwm failsafe -d $OUTPUT_AUX_DEV $FAILSAFE
@@ -181,5 +198,18 @@ then
fi
fi
unset PWM_OUT
unset PWM_RATE
unset PWM_ACHDIS
unset PWM_MIN
unset PWM_MAX
unset PWM_AUX_OUT
unset PWM_AUX_RATE
unset PWM_AUX_DISARMED
unset PWM_AUX_MIN
unset PWM_AUX_MAX
unset FAILSAFE_AUX
unset FAILSAFE
unset OUTPUT_DEV
unset OUTPUT_AUX_DEV
-2
View File
@@ -18,6 +18,4 @@ fi
if px4io limit $PX4IO_LIMIT
then
else
echo "[i] Set PX4IO update rate to $PX4IO_LIMIT Hz failed!"
fi
-18
View File
@@ -1,18 +0,0 @@
#!nsh
#
# Initialize logging services.
#
if [ -d /fs/microsd ]
then
if ver hwcmp PX4FMU_V1
then
if sdlog2 start -r 40 -a -b 3 -t
then
fi
else
if sdlog2 start -r 100 -a -b 12 -t
then
fi
fi
fi
+20 -12
View File
@@ -4,23 +4,31 @@
# att & pos estimator, att & pos control.
#
# The system is defaulting to INAV_ENABLED = 1
# but users can alternatively try the EKF-based
# filter by setting INAV_ENABLED = 0
if param compare INAV_ENABLED 1
#---------------------------------------
# Estimator group selction
#
# INAV
if param compare SYS_MC_EST_GROUP 0
then
attitude_estimator_q start
position_estimator_inav start
else
if param compare LPE_ENABLED 1
then
attitude_estimator_q start
local_position_estimator start
else
ekf2 start
fi
fi
# LPE
if param compare SYS_MC_EST_GROUP 1
then
attitude_estimator_q start
local_position_estimator start
fi
# EKF
if param compare SYS_MC_EST_GROUP 2
then
ekf2 start
fi
#---------------------------------------
if mc_att_control start
then
else
+15 -13
View File
@@ -15,20 +15,8 @@ then
param set PWM_DISARMED 900
param set PWM_MIN 1075
param set PWM_MAX 1950
fi
# Transitional support: ensure suitable PWM min/max param values
if param compare PWM_MIN 1000
then
param set PWM_MIN 1075
fi
if param compare PWM_MAX 2000
then
param set PWM_MAX 1950
fi
if param compare PWM_DISARMED 0
then
param set PWM_DISARMED 900
param set RTL_LAND_DELAY 0
fi
# set environment variables (!= parameters)
@@ -45,3 +33,17 @@ set PWM_AUX_OUT 1234
set PWM_AUX_DISARMED 1500
set PWM_AUX_MIN 1000
set PWM_AUX_MAX 2000
# Transitional support: ensure suitable PWM min/max param values
if param compare PWM_MIN 1000
then
param set PWM_MIN 1075
fi
if param compare PWM_MAX 2000
then
param set PWM_MAX 1950
fi
if param compare PWM_DISARMED 0
then
param set PWM_DISARMED 900
fi
+88 -39
View File
@@ -1,6 +1,6 @@
#!nsh
#
# Standard startup script for PX4FMU v1, v2, v3 onboard sensor drivers.
# Standard startup script for PX4FMU v1, v2, v3, v4 onboard sensor drivers.
#
if ver hwcmp PX4FMU_V1
@@ -9,6 +9,11 @@ then
then
fi
else
# Configure all I2C buses to 100 KHz as they
# are all external or slow
fmu i2c 1 100000
fmu i2c 2 100000
if ms5611 -s start
then
fi
@@ -30,6 +35,11 @@ then
then
fi
# External I2C bus
if lis3mdl -X start
then
fi
# Internal I2C bus
if hmc5883 -C -T -I -R 4 start
then
@@ -64,6 +74,10 @@ then
then
fi
if meas_airspeed start -b 2
then
fi
else
# FMUv2
if mpu6000 start
@@ -78,61 +92,92 @@ then
then
fi
fi
else
if ver hwcmp PX4FMU_V4
fi
if ver hwcmp PX4FMU_V4
then
# External I2C bus
if hmc5883 -C -T -X start
then
# External I2C bus
if hmc5883 -C -T -X start
then
fi
fi
# Internal SPI bus is rotated 90 deg yaw
if hmc5883 -C -T -S -R 2 start
then
fi
if lis3mdl -R 2 start
then
fi
# Internal SPI bus ICM-20608-G is rotated 90 deg yaw
if mpu6000 -R 2 -T 20608 start
then
fi
# Internal SPI bus is rotated 90 deg yaw
if hmc5883 -C -T -S -R 2 start
then
fi
# Internal SPI bus mpu9250 is rotated 90 deg yaw
if mpu9250 -R 2 start
# Internal SPI bus ICM-20608-G is rotated 90 deg yaw
if mpu6000 -R 2 -T 20608 start
then
fi
# Internal SPI bus mpu9250 is rotated 90 deg yaw
if mpu9250 -R 2 start
then
fi
fi
if ver hwcmp PX4FMU_V1
then
# FMUv1
if mpu6000 start
then
fi
if l3gd20 start
then
fi
# MAG selection
if param compare SENS_EXT_MAG 2
then
if hmc5883 -C -I start
then
fi
else
# FMUv1
if mpu6000 start
# Use only external as primary
if param compare SENS_EXT_MAG 1
then
fi
if l3gd20 start
then
fi
# MAG selection
if param compare SENS_EXT_MAG 2
then
if hmc5883 -C -I start
if hmc5883 -C -X start
then
fi
else
# Use only external as primary
if param compare SENS_EXT_MAG 1
# auto-detect the primary, prefer external
if hmc5883 start
then
if hmc5883 -C -X start
then
fi
else
# auto-detect the primary, prefer external
if hmc5883 start
then
fi
fi
fi
fi
fi
if ver hwcmp MINDPX_V2
then
if mpu6500 start
then
fi
if lsm303d start
then
fi
if l3gd20 start
then
fi
# External I2C bus
if hmc5883 -C -T -X start
then
fi
if lis3mdl -R 2 start
then
fi
fi
if meas_airspeed start
then
else
@@ -145,6 +190,10 @@ else
fi
fi
if sf10a start
then
fi
# Wait 20 ms for sensors (because we need to wait for the HRT and work queue callbacks to fire)
usleep 20000
if sensors start
+26 -3
View File
@@ -3,10 +3,33 @@
# Standard apps for vtol:
# att & pos estimator, att & pos control.
#
#
#---------------------------------------
# Estimator group selction
#
# INAV
if param compare SYS_MC_EST_GROUP 0
then
attitude_estimator_q start
position_estimator_inav start
fi
# LPE
if param compare SYS_MC_EST_GROUP 1
then
attitude_estimator_q start
local_position_estimator start
fi
# EKF
if param compare SYS_MC_EST_GROUP 2
then
ekf2 start
fi
#---------------------------------------
attitude_estimator_q start
#ekf_att_pos_estimator start
position_estimator_inav start
vtol_att_control start
mc_att_control start
+32 -28
View File
@@ -4,42 +4,46 @@ set VEHICLE_TYPE vtol
if [ $AUTOCNF == yes ]
then
#
#Default controller parameters for MC
#
param set MC_ROLL_P 6.0
param set MC_ROLLRATE_P 0.1
param set MC_ROLLRATE_I 0.0
param set MC_ROLLRATE_D 0.003
param set MC_PITCH_P 6.0
param set MC_PITCHRATE_P 0.2
param set MC_PITCHRATE_I 0.0
param set MC_PITCHRATE_D 0.003
param set MC_YAW_P 4
param set MC_YAWRATE_P 0.2
param set MC_YAWRATE_I 0.0
param set MC_YAWRATE_D 0.0
param set MC_YAW_FF 0.3
#
# Default parameters for FW
#
param set FW_PR_FF 0.3
param set FW_PR_I 0.000
param set FW_PR_IMAX 0.2
param set FW_PR_P 0.02
param set FW_RR_FF 0.3
param set FW_RR_I 0.00
param set FW_RR_IMAX 0.2
param set FW_RR_P 0.02
param set PE_VELNE_NOISE 0.5
param set PE_VELD_NOISE 0.3
param set PE_POSNE_NOISE 0.5
param set PE_POSD_NOISE 1.25
param set PE_ABIAS_PNOISE 0.0001
#
# Default parameters for mission and position handling
#
param set NAV_ACC_RAD 3
param set MPC_TKO_SPEED 1.0
param set MPC_LAND_SPEED 0.7
param set MPC_Z_VEL_MAX 1.5
param set MPC_XY_VEL_MAX 4.0
param set MIS_YAW_TMT 10
param set MPC_ACC_HOR_MAX 2.0
param set RTL_LAND_DELAY 0
fi
set PWM_DISARMED 900
set PWM_MIN 1000
set PWM_MAX 2000
# set environment variables (!= parameters)
set PWM_RATE 400
# tell the mixer to use parameters for these instead
set PWM_DISARMED p:PWM_DISARMED
set PWM_MIN p:PWM_MIN
set PWM_MAX p:PWM_MAX
# Transitional support: ensure suitable PWM min/max param values
if param compare PWM_MIN 1000
then
param set PWM_MIN 1075
fi
if param compare PWM_MAX 2000
then
param set PWM_MAX 1950
fi
if param compare PWM_DISARMED 0
then
param set PWM_DISARMED 900
fi
+214 -180
View File
@@ -15,8 +15,6 @@ sercon
#
set MODE autostart
set FRC /fs/microsd/etc/rc.txt
set FCONFIG /fs/microsd/etc/config.txt
set TUNE_ERR ML<<CP4CP4CP4CP4CP4
set LOG_FILE /fs/microsd/bootlog.txt
@@ -26,7 +24,6 @@ set LOG_FILE /fs/microsd/bootlog.txt
# REBOOTWORK this needs to start after the flight control loop
if mount -t vfat /dev/mmcsd0 /fs/microsd
then
echo "[i] microSD mounted: /fs/microsd"
# Start playing the startup tune
tone_alarm start
else
@@ -50,6 +47,7 @@ fi
# Look for an init script on the microSD card.
# Disable autostart if the script found.
#
set FRC /fs/microsd/etc/rc.txt
if [ -f $FRC ]
then
echo "[i] Executing script: $FRC"
@@ -78,78 +76,12 @@ then
param select $PARAM_FILE
if param load
then
echo "[param] Loaded: $PARAM_FILE"
else
echo "[param] FAILED loading $PARAM_FILE"
if param reset
then
fi
fi
# Compare existing params and save defaults
# this only needs to be in for 1-2 releases
if param compare RC_MAP_THROTTLE 0
then
# So this is a default setup,
# now lets find out if channel 3
# is calibrated
if param compare RC3_MIN 1000
then
# This is default, do nothing
else
# Set old default
param set RC_MAP_THROTTLE 3
fi
fi
# Compare existing params and save defaults
# this only needs to be in for 1-2 releases
if param compare RC_MAP_ROLL 0
then
# So this is a default setup,
# now lets find out if channel 1
# is calibrated
if param compare RC1_MIN 1000
then
# This is default, do nothing
else
# Set old default
param set RC_MAP_ROLL 1
fi
fi
# Compare existing params and save defaults
# this only needs to be in for 1-2 releases
if param compare RC_MAP_PITCH 0
then
# So this is a default setup,
# now lets find out if channel 2
# is calibrated
if param compare RC2_MIN 1000
then
# This is default, do nothing
else
# Set old default
param set RC_MAP_PITCH 2
fi
fi
# Compare existing params and save defaults
# this only needs to be in for 1-2 releases
if param compare RC_MAP_YAW 0
then
# So this is a default setup,
# now lets find out if channel 4
# is calibrated
if param compare RC4_MIN 1000
then
# This is default, do nothing
else
# Set old default
param set RC_MAP_YAW 4
fi
fi
#
# Start system state indicator
#
@@ -167,6 +99,18 @@ then
#then
#fi
#
# Set AUTOCNF flag to use it in AUTOSTART scripts
#
if param compare SYS_AUTOCONFIG 1
then
# Wipe out params except RC*
param reset_nostart RC*
set AUTOCNF yes
else
set AUTOCNF no
fi
#
# Set default values
#
@@ -182,6 +126,7 @@ then
set PWM_MAX none
set PWM_AUX_OUT none
set PWM_AUX_RATE none
set PWM_ACHDIS none
set PWM_AUX_DISARMED none
set PWM_AUX_MIN none
set PWM_AUX_MAX none
@@ -192,22 +137,8 @@ then
set MAVLINK_F default
set EXIT_ON_END no
set MAV_TYPE none
set LOAD_DAPPS yes
set GPS yes
set GPS_FAKE no
set FAILSAFE none
#
# Set AUTOCNF flag to use it in AUTOSTART scripts
#
if param compare SYS_AUTOCONFIG 1
then
# Wipe out params except RC*
param reset_nostart RC*
set AUTOCNF yes
else
set AUTOCNF no
fi
set USE_IO yes
#
# Set USE_IO flag
@@ -217,13 +148,26 @@ then
if ver hwcmp PX4FMU_V4
then
set USE_IO no
else
set USE_IO yes
fi
if ver hwcmp MINDPX_V2
then
set USE_IO no
fi
else
set USE_IO no
fi
# should set to 0.8 for mindpx-v2 borad.
if param compare INAV_LIDAR_ERR 0.5
then
if ver hwcmp MINDPX_V2
then
param set INAV_LIDAR_ERR 0.8
param save
fi
fi
#
# Set parameters and env variables for selected AUTOSTART
#
@@ -245,9 +189,10 @@ then
#
# Override parameters from user configuration file
#
set FCONFIG /fs/microsd/etc/config.txt
if [ -f $FCONFIG ]
then
echo "[i] Custom config: $FCONFIG"
echo "[i] Custom: $FCONFIG"
sh $FCONFIG
fi
unset FCONFIG
@@ -282,8 +227,6 @@ then
set IO_PRESENT yes
else
echo "PX4IO Trying to update" >> $LOG_FILE
tone_alarm MLL32CP8MB
if px4io start
@@ -308,11 +251,11 @@ then
set IO_PRESENT yes
else
echo "ERROR: PX4IO update failed" >> $LOG_FILE
echo "PX4IO update failed" >> $LOG_FILE
tone_alarm $TUNE_ERR
fi
else
echo "ERROR: PX4IO update failed" >> $LOG_FILE
echo "PX4IO update failed" >> $LOG_FILE
tone_alarm $TUNE_ERR
fi
fi
@@ -320,7 +263,6 @@ then
if [ $IO_PRESENT == no ]
then
echo "[i] ERROR: PX4IO not found"
echo "ERROR: PX4IO not found" >> $LOG_FILE
tone_alarm $TUNE_ERR
fi
@@ -343,7 +285,6 @@ then
then
# Need IO for output but it not present, disable output
set OUTPUT_MODE none
echo "[i] ERROR: PX4IO not found, disabling output"
# Avoid using ttyS0 for MAVLink on FMUv1
if ver hwcmp PX4FMU_V1
@@ -360,13 +301,15 @@ then
if [ $HIL == yes ]
then
set OUTPUT_MODE hil
set GPS no
if ver hwcmp PX4FMU_V1
then
set FMU_MODE serial
fi
unset HIL
else
unset HIL
gps start
fi
unset HIL
# waypoint storage
# REBOOTWORK this needs to start in parallel
@@ -378,22 +321,14 @@ then
# Sensors System (start before Commander so Preflight checks are properly run)
#
sh /etc/init.d/rc.sensors
if [ $GPS == yes ]
then
if [ $GPS_FAKE == yes ]
then
echo "[i] Faking GPS"
gps start -f
else
gps start
fi
fi
unset GPS
unset GPS_FAKE
# Needs to be this early for in-air-restarts
commander start
if [ $OUTPUT_MODE == hil ]
then
commander start -hil
else
commander start
fi
#
# Start primary output
@@ -426,7 +361,7 @@ then
then
sh /etc/init.d/rc.io
else
echo "ERROR: PX4IO start failed" >> $LOG_FILE
echo "PX4IO start failed" >> $LOG_FILE
tone_alarm $TUNE_ERR
fi
fi
@@ -435,10 +370,8 @@ then
then
if fmu mode_$FMU_MODE
then
echo "[i] FMU mode_$FMU_MODE started"
else
echo "[i] ERROR: FMU mode_$FMU_MODE start failed"
echo "ERROR: FMU start failed" >> $LOG_FILE
echo "FMU start failed" >> $LOG_FILE
tone_alarm $TUNE_ERR
fi
@@ -469,9 +402,7 @@ then
if mkblctrl $MKBLCTRL_ARG
then
echo "[i] MK started"
else
echo "[i] ERROR: MK start failed"
echo "ERROR: MK start failed" >> $LOG_FILE
tone_alarm $TUNE_ERR
fi
@@ -483,10 +414,8 @@ then
then
if pwm_out_sim mode_port2_pwm8
then
echo "[i] PWM SIM output started"
else
echo "[i] ERROR: PWM SIM output start failed"
echo "ERROR: PWM SIM output start failed" >> $LOG_FILE
echo "PWM SIM start failed" >> $LOG_FILE
tone_alarm $TUNE_ERR
fi
fi
@@ -500,11 +429,9 @@ then
then
if px4io start
then
echo "[i] PX4IO started"
sh /etc/init.d/rc.io
else
echo "[i] ERROR: PX4IO start failed"
echo "ERROR: PX4IO start failed" >> $LOG_FILE
echo "PX4IO start failed" >> $LOG_FILE
tone_alarm $TUNE_ERR
fi
fi
@@ -513,10 +440,8 @@ then
then
if fmu mode_$FMU_MODE
then
echo "[i] FMU mode_$FMU_MODE started"
else
echo "[i] ERROR: FMU mode_$FMU_MODE start failed"
echo "ERROR: FMU mode_$FMU_MODE start failed" >> $LOG_FILE
echo "FMU mode_$FMU_MODE start failed" >> $LOG_FILE
tone_alarm $TUNE_ERR
fi
@@ -550,9 +475,9 @@ then
# Avoid using ttyS1 for MAVLink on FMUv4
if ver hwcmp PX4FMU_V4
then
set MAVLINK_F "-r 1200 -d /dev/ttyS2"
set MAVLINK_F "-r 1200 -d /dev/ttyS1"
# Start MAVLink on Wifi (ESP8266 port)
mavlink start -r 800000 -b 921600 -d /dev/ttyS0
mavlink start -r 20000 -m config -b 921600 -d /dev/ttyS0
fi
fi
fi
@@ -563,10 +488,15 @@ then
#
# MAVLink onboard / TELEM2
#
if ver hwcmp PX4FMU_V2
if ver hwcmp PX4FMU_V1
then
else
# XXX We need a better way for runtime eval of shell variables,
# but this works for now
if param compare SYS_COMPANION 10
then
frsky_telemetry start -d /dev/ttyS2
fi
if param compare SYS_COMPANION 921600
then
mavlink start -d /dev/ttyS2 -b 921600 -m onboard -r 80000 -x
@@ -583,6 +513,14 @@ then
then
mavlink start -d /dev/ttyS2 -b 57600 -m magic -r 5000 -x
fi
if param compare SYS_COMPANION 357600
then
mavlink start -d /dev/ttyS2 -b 57600 -r 1000
fi
if param compare SYS_COMPANION 1921600
then
mavlink start -d /dev/ttyS2 -b 921600 -r 20000
fi
# Sensors on the PWM interface bank
# clear pins 5 and 6
if param compare SENS_EN_LL40LS 1
@@ -598,15 +536,107 @@ then
fi
fi
# Transitional support: Disable safety on all Pixracer boards
if ver hwcmp PX4FMU_V4
then
if param set CBRK_IO_SAFETY 22027
then
fi
fi
#
# UAVCAN
# Starting stuff according to UAVCAN_ENABLE value
#
sh /etc/init.d/rc.uavcan
if param greater UAVCAN_ENABLE 0
then
if uavcan start
then
else
tone_alarm $TUNE_ERR
fi
fi
if param greater UAVCAN_ENABLE 1
then
if uavcan start fw
then
else
tone_alarm $TUNE_ERR
fi
fi
#
# Optional drivers
#
# Sensors on the PWM interface bank
if param compare SENS_EN_LL40LS 1
then
if pwm_input start
then
if ll40ls start pwm
then
fi
fi
fi
# sf0x lidar sensor
if param compare SENS_EN_SF0X 1
then
sf0x start
fi
if ver hwcmp PX4FMU_V4
then
frsky_telemetry start -d /dev/ttyS6
fi
if ver hwcmp PX4FMU_V2
then
# Check for flow sensor - as it is a background task, launch it last
px4flow start &
fi
if ver hwcmp MINDPX_V2
then
#mindxp also need flow
px4flow start &
fi
# Start USB shell if no microSD present, MAVLink else
if [ $LOG_FILE == /dev/null ]
then
# Try to get an USB console
nshterm /dev/ttyACM0 &
else
mavlink start -r 800000 -d /dev/ttyACM0 -m config -x
fi
#
# Logging
#
sh /etc/init.d/rc.logging
if [ -d /fs/microsd ]
then
if ver hwcmp PX4FMU_V1
then
if sdlog2 start -r 30 -a -b 2 -t
then
fi
else
# check if we should increase logging rate for ekf2 replay message logging
if param greater EKF2_REC_RPL 0
then
if sdlog2 start -r 500 -e -b 20 -t
then
fi
else
if sdlog2 start -r 100 -a -b 12 -t
then
fi
fi
fi
fi
#
# Start up ARDrone Motor interface
@@ -621,7 +651,7 @@ then
#
if [ $VEHICLE_TYPE == fw ]
then
echo "[i] FIXED WING"
echo "FIXED WING"
if [ $MIXER == none ]
then
@@ -641,10 +671,7 @@ then
sh /etc/init.d/rc.interface
# Start standard fixedwing apps
if [ $LOAD_DAPPS == yes ]
then
sh /etc/init.d/rc.fw_apps
fi
sh /etc/init.d/rc.fw_apps
fi
#
@@ -652,7 +679,7 @@ then
#
if [ $VEHICLE_TYPE == mc ]
then
echo "[i] MULTICOPTER"
echo "MULTICOPTER"
if [ $MIXER == none ]
then
@@ -670,6 +697,10 @@ then
then
set MAV_TYPE 2
fi
if [ $MIXER == quad_h ]
then
set MAV_TYPE 2
fi
if [ $MIXER == tri_y_yaw- -o $MIXER == tri_y_yaw+ ]
then
set MAV_TYPE 15
@@ -686,7 +717,7 @@ then
then
set MAV_TYPE 14
fi
if [ $MIXER == octo_cox ]
if [ $MIXER == octo_cox -o $MIXER == octo_cox_w ]
then
set MAV_TYPE 14
fi
@@ -705,10 +736,7 @@ then
sh /etc/init.d/rc.interface
# Start standard multicopter apps
if [ $LOAD_DAPPS == yes ]
then
sh /etc/init.d/rc.mc_apps
fi
sh /etc/init.d/rc.mc_apps
fi
#
@@ -716,11 +744,11 @@ then
#
if [ $VEHICLE_TYPE == vtol ]
then
echo "[init] Vehicle type: VTOL"
echo "VTOL"
if [ $MIXER == none ]
then
echo "Default mixer for vtol not defined"
echo "VTOL mixer undefined"
fi
if [ $MAV_TYPE == none ]
@@ -753,10 +781,7 @@ then
sh /etc/init.d/rc.interface
# Start standard vtol apps
if [ $LOAD_DAPPS == yes ]
then
sh /etc/init.d/rc.vtol_apps
fi
sh /etc/init.d/rc.vtol_apps
fi
#
@@ -771,14 +796,51 @@ then
sh /etc/init.d/rc.interface
# Start standard rover apps
if [ $LOAD_DAPPS == yes ]
then
sh /etc/init.d/rc.axialracing_ax10_apps
fi
sh /etc/init.d/rc.axialracing_ax10_apps
param set MAV_TYPE 10
fi
#
# For snapdragon, we need a passthrough mode
# Do not run any mavlink instances since we need the serial port for
# communication with Snapdragon.
#
if [ $VEHICLE_TYPE == passthrough ]
then
mavlink stop-all
commander stop
# Stop multicopter attitude controller if it is running, the controls come
# from Snapdragon.
if mc_att_control stop
then
fi
# Start snapdragon interface on serial port.
if ver hwcmp PX4FMU_V2
then
# On Pixfalcon use the standard telemetry port (Telem 1).
snapdragon_rc_pwm start -d /dev/ttyS1
px4io start
fi
if ver hwcmp PX4FMU_V4
then
# On Pixracer use Telem 2 port (TL2).
snapdragon_rc_pwm start -d /dev/ttyS2
fmu mode_pwm4
fi
pwm failsafe -c 1234 -p 900
pwm disarmed -c 1234 -p 900
# Arm straightaway.
pwm arm
# Use 400 Hz PWM on all channels.
pwm rate -a -r 400
fi
unset MIXER
unset MAV_TYPE
unset OUTPUT_MODE
@@ -794,7 +856,6 @@ then
if [ $VEHICLE_TYPE == none ]
then
echo "[i] No autostart ID found"
fi
# Start any custom addons
@@ -809,7 +870,6 @@ then
# Run no SD alarm
if [ $LOG_FILE == /dev/null ]
then
echo "[i] No microSD card found"
# Play SOS
tone_alarm error
fi
@@ -824,35 +884,9 @@ unset TUNE_ERR
# Boot is complete, inform MAVLink app(s) that the system is now fully up and running
mavlink boot_complete
# Sensors on the PWM interface bank
if param compare SENS_EN_LL40LS 1
then
if pwm_input start
then
if ll40ls start pwm
then
fi
fi
fi
if ver hwcmp PX4FMU_V2
then
# Check for flow sensor - as it is a background task, launch it last
px4flow start &
fi
# Start USB shell if no microSD present, MAVLink else
if [ $LOG_FILE == /dev/null ]
then
# Try to get an USB console
nshterm /dev/ttyACM0 &
else
mavlink start -r 800000 -d /dev/ttyACM0 -m config -x
fi
if [ $EXIT_ON_END == yes ]
then
echo "Exit from nsh"
echo "NSH EXIT"
exit
fi
unset EXIT_ON_END
-21
View File
@@ -62,24 +62,3 @@ range. Inputs below zero are treated as zero.
M: 1
O: 10000 10000 0 -10000 10000
S: 0 3 0 20000 -10000 -10000 10000
Gimbal / flaps / payload mixer for last four channels,
using the payload control group
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 2 0 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 2 1 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 2 2 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 2 3 10000 10000 0 -10000 10000
-20
View File
@@ -58,23 +58,3 @@ range. Inputs below zero are treated as zero.
M: 1
O: 10000 10000 0 -10000 10000
S: 0 3 0 20000 -10000 -10000 10000
Gimbal / flaps / payload mixer for last four channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
-20
View File
@@ -62,23 +62,3 @@ endpoints to suit.
M: 1
O: 10000 10000 0 -10000 10000
S: 0 2 10000 10000 0 -10000 10000
Gimbal / flaps / payload mixer for last four channels,
using the payload control group
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 2 0 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 2 1 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 2 2 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 2 3 10000 10000 0 -10000 10000
View File
-19
View File
@@ -49,22 +49,3 @@ range. Inputs below zero are treated as zero.
M: 1
O: 10000 10000 0 -10000 10000
S: 0 3 0 20000 -10000 -10000 10000
Gimbal / flaps / payload mixer for last four channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
-20
View File
@@ -51,23 +51,3 @@ range. Inputs below zero are treated as zero.
M: 1
O: 10000 10000 0 -10000 10000
S: 0 3 0 20000 -10000 -10000 10000
Gimbal / payload mixer for last four channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
View File
-19
View File
@@ -47,22 +47,3 @@ range. Inputs below zero are treated as zero.
M: 1
O: 10000 10000 0 -10000 10000
S: 0 3 0 20000 -10000 -10000 10000
Gimbal / flaps / payload mixer for last four channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
@@ -1,16 +1,39 @@
#!nsh
# Caipirinha vtol mixer for PX4FMU
#
#===========================
Caipirinha tailsitter mixer
============================
This file defines a mixer for the TBS Caipirinha tailsitter edition. This vehicle
has two motors in total, one attached to each wing. It also has two elevons which
are located in the slipstream of the propellers. This mixer generates 4 PWM outputs
on the main PWM ouput port, two at 400Hz for the motors, and two at 50Hz for the
elevon servos. Channels 1-4 are configured to run at 400Hz, while channels 5-8 run
at the default rate of 50Hz. Note that channels 3 and 4 are assigned but not used.
Motor mixer
------------
Channel 1 connects to the right (starboard) motor.
Channel 2 connects to the left (port) motor.
R: 2- 10000 10000 10000 0
#mixer for the elevons
M: 2
O: 10000 10000 0 -10000 10000
S: 1 0 10000 10000 0 -10000 10000
S: 1 1 10000 10000 0 -10000 10000
Zero mixer (2x)
---------------
Channels 3,4 are unused.
Z:
Z:
Elevons mixer
--------------
Channel 5 connects to the right (starboard) elevon.
Channel 6 connects to the left (port) elevon.
M: 2
O: 10000 10000 0 -10000 10000
S: 1 0 10000 10000 0 -10000 10000
O: 7500 7500 0 -10000 10000
S: 1 0 -10000 -10000 0 -10000 10000
S: 1 1 10000 10000 0 -10000 10000
M: 2
O: 7500 7500 0 -10000 10000
S: 1 0 -10000 -10000 0 -10000 10000
S: 1 1 -10000 -10000 0 -10000 10000
-21
View File
@@ -47,24 +47,3 @@ range. Inputs below zero are treated as zero.
M: 1
O: 10000 10000 0 -10000 10000
S: 0 3 0 20000 -10000 -10000 10000
Gimbal / flaps / payload mixer for last four channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
@@ -0,0 +1,3 @@
# Octo coaxial with wide arms
R: 8cw 10000 10000 10000 0
@@ -46,22 +46,3 @@ range. Inputs below zero are treated as zero.
M: 1
O: 10000 10000 0 -10000 10000
S: 0 3 0 20000 -10000 -10000 10000
Gimbal / flaps / payload mixer for last four channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
@@ -0,0 +1,26 @@
Mixer for SITL plane, using the VTOL airframe for now
=========================================================
Z:
Z:
Z:
Z:
# mixer for the elevons
M: 2
O: 10000 10000 0 -10000 10000
S: 0 0 5000 5000 0 -10000 10000
S: 0 1 -5000 -5000 0 -10000 10000
M: 2
O: 10000 10000 0 -10000 10000
S: 0 0 5000 5000 0 -10000 10000
S: 0 1 5000 5000 0 -10000 10000
# mixer for the pusher/puller throttle
M: 1
O: 10000 10000 0 -10000 10000
S: 0 3 0 20000 -10000 -10000 10000
+3 -12
View File
@@ -6,22 +6,13 @@ are mixed 100%.
R: 4+ 10000 10000 10000 0
Gimbal / payload mixer for last four channels
Gimbal / payload mixer for last two channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
S: 3 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
S: 3 6 10000 10000 0 -10000 10000
+3 -11
View File
@@ -6,21 +6,13 @@ are mixed 100%.
R: 4h 10000 10000 10000 0
Gimbal / payload mixer for last four channels
Gimbal / payload mixer for last two channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
S: 3 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
S: 3 6 10000 10000 0 -10000 10000
+25
View File
@@ -0,0 +1,25 @@
Multirotor mixer for TEST
===========================
This file defines a single mixer for a quadrotor with a wide configuration. All controls are mixed 100%.
R: 4w 10000 10000 10000 0
Gimbal / payload mixer for last four channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
+3 -11
View File
@@ -6,21 +6,13 @@ are mixed 100%.
R: 4v 10000 10000 10000 0
Gimbal / payload mixer for last four channels
Gimbal / payload mixer for last two channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
S: 3 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
S: 3 6 10000 10000 0 -10000 10000
+3 -11
View File
@@ -5,21 +5,13 @@ This file defines a single mixer for a quadrotor with a wide configuration. All
R: 4w 10000 10000 10000 0
Gimbal / payload mixer for last four channels
Gimbal / payload mixer for last two channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
S: 3 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
S: 3 6 10000 10000 0 -10000 10000
+2 -21
View File
@@ -1,26 +1,7 @@
Multirotor mixer for PX4FMU
===========================
This file defines a single mixer for a quadrotor in the X configuration. All controls
are mixed 100%.
R: 4x 10000 10000 10000 0
Gimbal / payload mixer for last four channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
S: 3 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
S: 3 6 10000 10000 0 -10000 10000
@@ -5,21 +5,17 @@ This file defines a single mixer for a quadrotor in SK450 DeadCat configuration.
R: 4dc 10000 10000 10000 0
Gimbal / payload mixer for last four channels
Gimbal / payload mixer for last three channels
-----------------------------------------------------
M: 1
O: 10000 10000 0 -10000 10000
S: 0 4 10000 10000 0 -10000 10000
S: 3 5 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 5 10000 10000 0 -10000 10000
S: 3 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 6 10000 10000 0 -10000 10000
M: 1
O: 10000 10000 0 -10000 10000
S: 0 7 10000 10000 0 -10000 10000
S: 3 7 10000 10000 0 -10000 10000
+296
View File
@@ -0,0 +1,296 @@
#!/usr/bin/env python
################################################################################################
# @File MissionCheck.py
# Automated mission loading, execution and monitoring
# for Continuous Integration
#
# @author Sander Smeets <sander@droneslab.com>
#
# Code partly based on DroneKit (c) Copyright 2015-2016, 3D Robotics.
################################################################################################
################################################################################################
# Settings
################################################################################################
connection_string = '127.0.0.1:14540'
import_mission_filename = 'VTOLmission.txt'
max_execution_time = 250
alt_acceptance_radius = 10
################################################################################################
# Init
################################################################################################
# Import DroneKit-Python
from dronekit import connect, Command
from pymavlink import mavutil
import time, sys, argparse
parser = argparse.ArgumentParser()
parser.add_argument("-c", "--connect", help="connection string")
parser.add_argument("-f", "--filename", help="mission filename")
parser.add_argument("-t", "--timeout", help="execution timeout", type=float)
parser.add_argument("-a", "--altrad", help="altitude acceptance radius", type=float)
args = parser.parse_args()
if args.connect:
connection_string = args.connect
if args.filename:
import_mission_filename = args.filename
if args.timeout:
max_execution_time = args.timeout
if args.altrad:
alt_acceptance_radius = args.altrad
mission_failed = False
MAV_MODE_AUTO = 4
# start time counter
start_time = time.time()
elapsed_time = time.time() - start_time
# Connect to the Vehicle
print "Connecting"
vehicle = connect(connection_string, wait_ready=True)
while not vehicle.system_status.state == "STANDBY" or vehicle.gps_0.fix_type < 3:
if time.time() - start_time > 20:
print "FAILED: SITL did not reach standby with GPS fix within 20 seconds"
sys.exit(98)
print "Waiting for vehicle to initialise... %s " % vehicle.system_status.state
time.sleep(1)
# Display basic vehicle state
print " Type: %s" % vehicle._vehicle_type
print " Armed?: %s" % vehicle.armed
print " System status: %s" % vehicle.system_status.state
print " GPS: %s" % vehicle.gps_0
print " Alt: %s" % vehicle.location.global_relative_frame.alt
################################################################################################
# Functions
################################################################################################
def readmission(aFileName):
"""
Load a mission from a file into a list. The mission definition is in the Waypoint file
format (http://qgroundcontrol.org/mavlink/waypoint_protocol#waypoint_file_format).
This function is used by upload_mission().
"""
cmds = vehicle.commands
missionlist=[]
with open(aFileName) as f:
for i, line in enumerate(f):
if i==0:
if not line.startswith('QGC WPL 110'):
raise Exception('File is not supported WP version')
else:
linearray=line.split('\t')
ln_index=int(linearray[0])
ln_currentwp=int(linearray[1])
ln_frame=int(linearray[2])
ln_command=int(linearray[3])
ln_param1=float(linearray[4])
ln_param2=float(linearray[5])
ln_param3=float(linearray[6])
ln_param4=float(linearray[7])
ln_param5=float(linearray[8])
ln_param6=float(linearray[9])
ln_param7=float(linearray[10])
ln_autocontinue=int(linearray[11].strip())
cmd = Command( 0, 0, 0, ln_frame, ln_command, ln_currentwp, ln_autocontinue, ln_param1, ln_param2, ln_param3, ln_param4, ln_param5, ln_param6, ln_param7)
missionlist.append(cmd)
return missionlist
def upload_mission(aFileName):
"""
Upload a mission from a file.
"""
#Read mission from file
missionlist = readmission(aFileName)
#Clear existing mission from vehicle
cmds = vehicle.commands
cmds.clear()
#Add new mission to vehicle
for command in missionlist:
cmds.add(command)
print ' Uploaded mission with %s items' % len(missionlist)
vehicle.commands.upload()
return missionlist
def download_mission():
"""
Downloads the current mission and returns it in a list.
It is used in save_mission() to get the file information to save.
"""
print " Download mission from vehicle"
missionlist=[]
cmds = vehicle.commands
cmds.download()
cmds.wait_ready()
for cmd in cmds:
missionlist.append(cmd)
return missionlist
def save_mission(aFileName):
"""
Save a mission in the Waypoint file format
(http://qgroundcontrol.org/mavlink/waypoint_protocol#waypoint_file_format).
"""
print "\nSave mission from Vehicle to file: %s" % export_mission_filename
#Download mission from vehicle
missionlist = download_mission()
#Add file-format information
output='QGC WPL 110\n'
#Add home location as 0th waypoint
home = vehicle.home_location
output+="%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n" % (0,1,0,16,0,0,0,0,home.lat,home.lon,home.alt,1)
#Add commands
for cmd in missionlist:
commandline="%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n" % (cmd.seq,cmd.current,cmd.frame,cmd.command,cmd.param1,cmd.param2,cmd.param3,cmd.param4,cmd.x,cmd.y,cmd.z,cmd.autocontinue)
output+=commandline
with open(aFileName, 'w') as file_:
print " Write mission to file"
file_.write(output)
def printfile(aFileName):
"""
Print a mission file to demonstrate "round trip"
"""
print "\nMission file: %s" % aFileName
with open(aFileName) as f:
for line in f:
print ' %s' % line.strip()
################################################################################################
# Listeners
################################################################################################
current_sequence = -1
current_sequence_changed = False
current_landed_state = -1
home_position_set = False
#Create a message listener for mission sequence number
@vehicle.on_message('MISSION_CURRENT')
def listener(self, name, mission_current):
global current_sequence, current_sequence_changed
if (current_sequence <> mission_current.seq):
current_sequence = mission_current.seq;
current_sequence_changed = True
print 'current mission sequence: %s' % mission_current.seq
#Create a message listener for mission sequence number
@vehicle.on_message('EXTENDED_SYS_STATE')
def listener(self, name, extended_sys_state):
global current_landed_state
if (current_landed_state <> extended_sys_state.landed_state):
current_landed_state = extended_sys_state.landed_state;
#Create a message listener for home position fix
@vehicle.on_message('HOME_POSITION')
def listener(self, name, home_position):
global home_position_set
home_position_set = True
################################################################################################
# Start mission test
################################################################################################
while not home_position_set:
if time.time() - start_time > 30:
print "FAILED: getting home position 30 seconds"
sys.exit(98)
print "Waiting for home position..."
time.sleep(1)
#Upload mission from file
missionlist = upload_mission(import_mission_filename)
time.sleep(2)
# set mission mode the hard way
vehicle._master.mav.command_long_send(vehicle._master.target_system, vehicle._master.target_component,
mavutil.mavlink.MAV_CMD_DO_SET_MODE, 0,
MAV_MODE_AUTO,
0, 0, 0, 0, 0, 0)
time.sleep(1)
# Arm vehicle
vehicle.armed = True
while not vehicle.system_status.state == "ACTIVE":
if time.time() - start_time > 30:
print "FAILED: vehicle did not arm within 30 seconds"
sys.exit(98)
print "Waiting for vehicle to arm..."
time.sleep(1)
# Wait for completion of mission items
while (current_sequence < len(missionlist)-1 and elapsed_time < max_execution_time):
time.sleep(.2)
if current_sequence > 0 and current_sequence_changed:
if missionlist[current_sequence-1].z - alt_acceptance_radius > vehicle.location.global_relative_frame.alt or missionlist[current_sequence-1].z + alt_acceptance_radius < vehicle.location.global_relative_frame.alt:
print "waypoint %s out of bounds altitude %s gps altitude: %s" % (current_sequence, missionlist[current_sequence-1].z, vehicle.location.global_relative_frame.alt)
mission_failed = True
current_sequence_changed = False
elapsed_time = time.time() - start_time
if elapsed_time < max_execution_time:
print "Mission items have been executed"
# wait for the vehicle to have landed
while (current_landed_state != 1 and elapsed_time < max_execution_time):
time.sleep(1)
elapsed_time = time.time() - start_time
if elapsed_time < max_execution_time:
print "Vehicle has landed"
# Disarm vehicle
vehicle.armed = False
# count elapsed time
elapsed_time = time.time() - start_time
# Close vehicle object before exiting script
vehicle.close()
time.sleep(2)
# Validate time constraint
if elapsed_time <= max_execution_time and not mission_failed:
print "Mission succesful time elapsed %s" % elapsed_time
sys.exit(0)
if elapsed_time > max_execution_time:
print "Mission FAILED to execute within %s seconds" % max_execution_time
sys.exit(99)
if mission_failed:
print "Mission FAILED out of bounds"
sys.exit(100)
print "Mission FAILED something strange happened"
sys.exit(101)
+9
View File
@@ -0,0 +1,9 @@
QGC WPL 110
0 1 0 16 0 0 0 0 47.3979949951 8.54559612274 25.0 1
1 0 2 3000 4.0 0.0 0.0 0.0 47.3980331421 8.54578971863 25.0 1
2 0 3 16 0.0 0.0 -0.0 0.0 47.399269104 8.54557228088 25.0 1
3 0 3 16 0.0 0.0 -0.0 0.0 47.3992652893 8.54230213165 25.0 1
4 0 3 16 0.0 0.0 -0.0 0.0 47.3974761963 8.54239082336 25.0 1
5 0 3 16 0.0 0.0 -0.0 0.0 47.3976669312 8.54509449005 25.0 1
6 0 2 3000 3.0 0.0 0.0 0.0 47.3977851868 8.54526233673 25.0 1
7 0 3 21 25.0 0.0 -0.0 0.0 47.3979797363 8.54460906982 25.0 1
+25
View File
@@ -0,0 +1,25 @@
#!/bin/bash
if [[ "$#" < 2 ]]; then
echo "usage: adb_upload.sh SRC1 [SRC2 ...] DEST"
exit
fi
echo "Wait for device..."
adb wait-for-device
echo "Uploading..."
# Get last argument
for last; do true; done
# Go through source files and push them one by one.
i=0
for arg
do
if [[ $((i+1)) == "$#" ]]; then
break
fi
# echo "Pushing $arg to $last"
adb push $arg $last
((i+=1))
done
+1 -3
View File
@@ -25,17 +25,15 @@ for fn in $(find src/examples \
src/modules/uORB \
src/modules/bottle_drop \
src/modules/dataman \
src/modules/fixedwing_backside \
src/modules/segway \
src/modules/local_position_estimator \
src/modules/unit_test \
src/modules/systemlib \
src/modules/controllib \
src/lib/controllib \
-path './Build' -prune -o \
-path './mavlink' -prune -o \
-path './NuttX' -prune -o \
-path './src/lib/eigen' -prune -o \
-path './src/lib/mathlib/CMSIS' -prune -o \
-path './src/modules/uavcan/libuavcan' -prune -o \
-path './src/modules/attitude_estimator_ekf/codegen' -prune -o \
-path './src/modules/ekf_att_pos_estimator' -prune -o \
+19 -18
View File
@@ -6,34 +6,29 @@
exit 0
}
if [ -f src/modules/uavcan/libuavcan/CMakeLists.txt ]
then
echo "Git submodule config valid."
else
git submodule update --init --recursive
fi
GITSTATUS=$(git status)
function check_git_submodule {
if [ -d $1 ];
then
# The .git exists in a submodule if init and update have been done.
if [ -f $1"/.git" ] || [ -d $1"/.git" ];
then
SUBMODULE_STATUS=$(git submodule summary "$1")
STATUSRETVAL=$(echo $SUBMODULE_STATUS | grep -A20 -i "$1" | grep "<")
if [ -z "$STATUSRETVAL" ]; then
echo "Checked $1 submodule, correct version found"
else
STATUSRETVAL=$(echo $SUBMODULE_STATUS | grep -A20 -i "$1")
if ! [[ -z "$STATUSRETVAL" ]];
then
echo -e "\033[31mChecked $1 submodule, ACTION REQUIRED:\033[0m"
echo ""
echo -e "New commits required:"
echo -e "Different commits:"
echo -e "$SUBMODULE_STATUS"
echo ""
echo ""
echo -e " *******************************************************************************"
echo -e " * \033[31mIF YOU DID NOT CHANGE THIS FILE (OR YOU DON'T KNOW WHAT A SUBMODULE IS):\033[0m *"
echo -e " * \033[31mHit 'u' and <ENTER> to update ALL submodules and resolve this.\033[0m *"
echo -e " * (performs \033[94mgit submodule update --init --recursive\033[0m) *"
echo -e " * (performs \033[94mgit submodule sync --recursive\033[0m *"
echo -e " * and \033[94mgit submodule update --init --recursive\033[0m ) *"
echo -e " *******************************************************************************"
echo ""
echo ""
@@ -49,6 +44,7 @@ if [ -d $1 ];
else
if [ "$user_cmd" == "u" ]
then
git submodule sync --recursive
git submodule update --init --recursive
echo "Submodule fixed, continuing build.."
else
@@ -58,8 +54,10 @@ if [ -d $1 ];
fi
fi
else
git submodule update --init --recursive;
git submodule update;
echo "REINITIALIZING GIT SUBMODULES"
echo "no git repo found in $1/.git"
git submodule sync --recursive;
git submodule update --init --recursive $1;
fi
}
@@ -72,10 +70,13 @@ check_git_submodule Tools/sitl_gazebo
check_git_submodule cmake/cmake_hexagon
check_git_submodule mavlink/include/mavlink/v1.0
check_git_submodule src/lib/DriverFramework
check_git_submodule src/lib/dspal
check_git_submodule src/lib/DriverFramework/cmake/cmake_hexagon
check_git_submodule src/lib/DriverFramework/dspal
check_git_submodule src/lib/ecl
check_git_submodule src/lib/matrix
check_git_submodule src/modules/uavcan/libuavcan
check_git_submodule unittests/googletest
check_git_submodule src/drivers/gps/devices
exit 0
exit 0
+4
View File
@@ -9,6 +9,10 @@ if [ "$ASTYLE_VER" != "$ASTYLE_VER_REQUIRED" ]; then
exit 1
fi
if [[ $# -eq 0 ]] ; then
exit 0
fi
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
astyle \
--options=$DIR/astylerc \
+31 -8
View File
@@ -106,6 +106,7 @@ print("""
* Tool for listening to topics when running flight stack on linux.
*/
#include <drivers/drv_hrt.h>
#include <px4_middleware.h>
#include <px4_app.h>
#include <px4_config.h>
@@ -125,6 +126,14 @@ print("""
#define PRId64 "lld"
#endif
static bool check_timeout(const hrt_abstime& time) {
if (hrt_elapsed_time(&time) > 2*1000*1000) {
printf("Waited for 2 seconds without a message. Giving up.\\n");
return true;
}
return false;
}
""")
for m in messages:
print("#include <uORB/topics/%s.h>" % m)
@@ -136,12 +145,12 @@ extern "C" __EXPORT int listener_main(int argc, char *argv[]);
int listener_main(int argc, char *argv[]) {
int sub = -1;
orb_id_t ID;
if(argc < 3) {
printf("need at least two arguments: topic name, number of messages to print\\n");
if(argc < 2) {
printf("need at least two arguments: topic name. [optional number of messages to print]\\n");
return 1;
}
""")
print("\tunsigned num_msgs = atoi(argv[2]);")
print("\tunsigned num_msgs = (argc > 2) ? atoi(argv[2]) : 1;")
print("\tif (strncmp(argv[1],\"%s\",50) == 0) {" % messages[0])
print("\t\tsub = orb_subscribe(ORB_ID(%s));" % messages[0])
print("\t\tID = ORB_ID(%s);" % messages[0])
@@ -154,11 +163,15 @@ for index,m in enumerate(messages[1:]):
print("\t\tstruct %s_s container;" % m)
print("\t\tmemset(&container, 0, sizeof(container));")
print("\t\tbool updated;")
print("\t\tfor (unsigned i = 0; i < num_msgs; i++) {")
print("\t\tunsigned i = 0;")
print("\t\thrt_abstime start_time = hrt_absolute_time();")
print("\t\twhile(i < num_msgs) {")
print("\t\t\torb_check(sub,&updated);")
print("\t\t\tupdated = true;")
print("\t\t\tif (i == 0) { updated = true; } else { usleep(500); }")
print("\t\t\tif (updated) {")
print("\t\tprintf(\"\\nTOPIC: %s #%%d\\n\", i);" % m)
print("\t\t\tstart_time = hrt_absolute_time();")
print("\t\t\ti++;")
print("\t\t\tprintf(\"\\nTOPIC: %s #%%d\\n\", i);" % m)
print("\t\t\torb_copy(ID,sub,&container);")
for item in message_elements[index+1]:
if item[0] == "float":
@@ -190,11 +203,21 @@ for index,m in enumerate(messages[1:]):
elif item[0] == "int32":
print("\t\t\tprintf(\"%s: %%d\\n\",container.%s);" % (item[1], item[1]))
elif item[0] == "uint32":
print("\t\t\tprintf(\"%s: %%d\\n\",container.%s);" % (item[1], item[1]))
elif item[0] == "uint8":
print("\t\t\tprintf(\"%s: %%u\\n\",container.%s);" % (item[1], item[1]))
elif item[0] == "int16":
print("\t\t\tprintf(\"%s: %%d\\n\",(int)container.%s);" % (item[1], item[1]))
elif item[0] == "uint16":
print("\t\t\tprintf(\"%s: %%u\\n\",(unsigned)container.%s);" % (item[1], item[1]))
elif item[0] == "int8":
print("\t\t\tprintf(\"%s: %%d\\n\",(int)container.%s);" % (item[1], item[1]))
elif item[0] == "uint8":
print("\t\t\tprintf(\"%s: %%u\\n\",(unsigned)container.%s);" % (item[1], item[1]))
elif item[0] == "bool":
print("\t\t\tprintf(\"%s: %%s\\n\",container.%s ? \"True\" : \"False\");" % (item[1], item[1]))
print("\t\t\t} else {")
print("\t\t\t\tif (check_timeout(start_time)) {")
print("\t\t\t\t\tbreak;")
print("\t\t\t\t}")
print("\t\t\t}")
print("\t\t}")
print("\t} else {")
+7 -1
View File
@@ -22,6 +22,10 @@ class XMLOutput():
xml_parameters = ET.Element("airframes")
xml_version = ET.SubElement(xml_parameters, "version")
xml_version.text = "1"
xml_version = ET.SubElement(xml_parameters, "airframe_version_major")
xml_version.text = "1"
xml_version = ET.SubElement(xml_parameters, "airframe_version_minor")
xml_version.text = "1"
last_param_name = ""
board_specific_param_set = False
for group in groups:
@@ -45,6 +49,8 @@ class XMLOutput():
xml_group.attrib["image"] = "OctoRotorX"
elif (group.GetName() == "Octorotor Coaxial"):
xml_group.attrib["image"] = "OctoRotorXCoaxial"
elif (group.GetName() == "Octo Coax Wide"):
xml_group.attrib["image"] = "OctoRotorXCoaxial"
elif (group.GetName() == "Quadrotor Wide"):
xml_group.attrib["image"] = "QuadRotorWide"
elif (group.GetName() == "Quadrotor H"):
@@ -59,7 +65,7 @@ class XMLOutput():
xml_group.attrib["image"] = "VTOLPlane"
elif (group.GetName() == "VTOL Quad Tailsitter"):
xml_group.attrib["image"] = "VTOLQuadRotorTailSitter"
elif (group.GetName() == "VTOLTiltRotor"):
elif (group.GetName() == "VTOL Tiltrotor"):
xml_group.attrib["image"] = "VTOLTiltRotor"
elif (group.GetName() == "Coaxial Helicopter"):
xml_group.attrib["image"] = "HelicopterCoaxial"
+47 -4
View File
@@ -51,6 +51,7 @@ class Parameter(object):
def __init__(self, name, type, default = ""):
self.fields = {}
self.values = {}
self.name = name
self.type = type
self.default = default
@@ -70,6 +71,12 @@ class Parameter(object):
"""
self.fields[code] = value
def SetEnumValue(self, code, value):
"""
Set named enum value
"""
self.values[code] = value
def GetFieldCodes(self):
"""
Return list of existing field codes in convenient order
@@ -87,7 +94,26 @@ class Parameter(object):
if not fv:
# required because python 3 sorted does not accept None
return ""
return self.fields.get(code)
return fv
def GetEnumCodes(self):
"""
Return list of existing value codes in convenient order
"""
keys = self.values.keys()
#keys = sorted(keys)
#keys = sorted(keys, key=lambda x: self.priority.get(x, 0), reverse=True)
return keys
def GetEnumValue(self, code):
"""
Return value of the given enum code or None if not found.
"""
fv = self.values.get(code)
if not fv:
# required because python 3 sorted does not accept None
return ""
return fv
class SourceParser(object):
"""
@@ -107,7 +133,7 @@ class SourceParser(object):
re_remove_dots = re.compile(r'\.+$')
re_remove_carriage_return = re.compile('\n+')
valid_tags = set(["group", "board", "min", "max", "unit", "decimal", "reboot_required"])
valid_tags = set(["group", "board", "min", "max", "unit", "decimal", "increment", "reboot_required", "value", "boolean"])
# Order of parameter groups
priority = {
@@ -118,7 +144,7 @@ class SourceParser(object):
def __init__(self):
self.param_groups = {}
def Parse(self, contents):
def Parse(self, scope, contents):
"""
Incrementally parse program contents and append all found parameters
to the list.
@@ -137,6 +163,7 @@ class SourceParser(object):
short_desc = None
long_desc = None
tags = {}
def_values = {}
elif state is not None and state != "comment-processed":
m = self.re_comment_end.search(line)
if m:
@@ -156,7 +183,12 @@ class SourceParser(object):
m = self.re_comment_tag.match(comment_content)
if m:
tag, desc = m.group(1, 2)
tags[tag] = desc
if (tag == "value"):
# Take the meta info string and split the code and description
metainfo = desc.split(" ", 1)
def_values[metainfo[0]] = metainfo[1]
else:
tags[tag] = desc
current_tag = tag
state = "wait-tag-end"
elif state == "wait-short":
@@ -191,6 +223,7 @@ class SourceParser(object):
defval = ""
# Non-empty line outside the comment
m = self.re_px4_param_default_definition.match(line)
# Default value handling
if m:
name_m, defval_m = m.group(1,2)
default_var[name_m] = defval_m
@@ -208,6 +241,7 @@ class SourceParser(object):
if defval != "" and self.re_is_a_number.match(defval):
defval = self.re_cut_type_specifier.sub('', defval)
param = Parameter(name, tp, defval)
param.SetField("scope", scope)
param.SetField("short_desc", name)
# If comment was found before the parameter declaration,
# inject its data into the newly created parameter.
@@ -226,6 +260,8 @@ class SourceParser(object):
return False
else:
param.SetField(tag, tags[tag])
for def_value in def_values:
param.SetEnumValue(def_value, def_values[def_value])
# Store the parameter
if group not in self.param_groups:
self.param_groups[group] = ParameterGroup(group)
@@ -278,6 +314,13 @@ class SourceParser(object):
if default != "" and float(default) > float(max):
sys.stderr.write("Default value is larger than max: {0} default:{1} max:{2}\n".format(name, default, max))
return False
for code in param.GetEnumCodes():
if not self.IsNumber(code):
sys.stderr.write("Min value not number: {0} {1}\n".format(name, code))
return False
if param.GetEnumValue(code) == "":
sys.stderr.write("Description for enum value is empty: {0} {1}\n".format(name, code))
return False
return True
def GetParamGroups(self):
+3 -1
View File
@@ -33,6 +33,8 @@ class SourceScanner(object):
Scans provided file and passes its contents to the parser using
parser.Parse method.
"""
prefix = ".." + os.path.sep + "src" + os.path.sep
scope = re.sub(prefix, '', os.path.dirname(os.path.relpath(path)))
with codecs.open(path, 'r', 'utf-8') as f:
try:
contents = f.read()
@@ -40,4 +42,4 @@ class SourceScanner(object):
contents = ''
print('Failed reading file: %s, skipping content.' % path)
pass
return parser.Parse(contents)
return parser.Parse(scope, contents)
+11
View File
@@ -22,6 +22,10 @@ class XMLOutput():
xml_parameters = ET.Element("parameters")
xml_version = ET.SubElement(xml_parameters, "version")
xml_version.text = "3"
xml_version = ET.SubElement(xml_parameters, "parameter_version_major")
xml_version.text = "1"
xml_version = ET.SubElement(xml_parameters, "parameter_version_minor")
xml_version.text = "9"
importtree = ET.parse(inject_xml_file_name)
injectgroups = importtree.getroot().findall("group")
for igroup in injectgroups:
@@ -52,6 +56,13 @@ class XMLOutput():
xml_field.text = value
if last_param_name != param.GetName():
board_specific_param_set = False
if len(param.GetEnumCodes()) > 0:
xml_values = ET.SubElement(xml_param, "values")
for code in param.GetEnumCodes():
xml_value = ET.SubElement(xml_values, "value")
xml_value.attrib["code"] = code;
xml_value.text = param.GetEnumValue(code)
indent(xml_parameters)
self.xml_document = ET.ElementTree(xml_parameters)
+99 -6
View File
@@ -1,12 +1,95 @@
#!/usr/bin/env python
import xml.etree.ElementTree as ET
import os
import re
import codecs
if len(os.sys.argv) != 2:
class Scope(object):
"""
Single parameter group
"""
re_deep_lines = re.compile(r'.*\/.*\/')
def __init__(self, ):
self.scope = set()
def __str__(self):
return self.scope.__str__()
def Add(self, scope):
"""
Add Scope to set
"""
self.scope.add(scope)
def Has(self, scope):
"""
Check for existance
"""
if len(self.scope) == 0:
return True
# Anything in the form xxxxx/yyyyy/zzzzz....
# is treated as xxxxx/yyyyy
while (self.re_deep_lines.match(scope)):
scope = os.path.dirname(scope)
return scope in self.scope
class CMakeParser(object):
"""
Parses provided data and stores all found paths in scope.
"""
re_split_lines = re.compile(r'[\r\n]+')
re_comment = re.compile(r'^\#')
re_start = re.compile(r'set\s*\(\s*config_module_list')
re_end = re.compile(r'\)\s*')
def Parse(self, scope, contents):
"""
Incrementally parse cmake file contents and append all found path scope
to scope.
"""
# This code is essentially a comment-parsing grammar. "state"
# represents parser state. It contains human-readable state
# names.
state = None
for line in self.re_split_lines.split(contents):
line = line.strip()
# Ignore empty lines
if line == "":
continue
if self.re_comment.match(line):
continue
elif self.re_start.match(line):
state = "gather"
continue
elif state is not None and state == "gather":
if self.re_end.match(line):
return True
scope.Add(line)
return False
if len(os.sys.argv) < 2:
print("Error in %s" % os.sys.argv[0])
print("Usage: %s <parameters.xml>" % os.sys.argv[0])
print("Usage: %s <parameters.xml> [cmake-file-scoping] " % os.sys.argv[0])
raise SystemExit
scope = Scope()
if len(os.sys.argv) == 3:
with codecs.open(os.sys.argv[2], 'r', 'utf-8') as f:
try:
contents = f.read()
f.close()
parser = CMakeParser()
parser.Parse(scope, contents)
except:
contents = ''
print('Failed reading file: %s, skipping scoping.' % os.sys.argv[2])
pass
fp_header = open("px4_parameters.h", "w")
fp_src = open("px4_parameters.c", "w")
@@ -30,14 +113,19 @@ end_name = ""
for group in root:
if group.tag == "group" and "no_code_generation" not in group.attrib:
header += """
section = """
/*****************************************************************
* %s
****************************************************************/""" % group.attrib["name"]
for param in group:
scope_ = param.find('scope').text
if not scope.Has(scope_):
continue
if not start_name:
start_name = param.attrib["name"]
end_name = param.attrib["name"]
header += section
section =""
header += """
const struct param_info_s __param__%s;""" % param.attrib["name"]
header += """
@@ -63,12 +151,14 @@ struct px4_parameters_t px4_parameters = {
i=0
for group in root:
if group.tag == "group" and "no_code_generation" not in group.attrib:
src += """
section = """
/*****************************************************************
* %s
****************************************************************/""" % group.attrib["name"]
for param in group:
scope_ = param.find('scope').text
if not scope.Has(scope_):
continue
if not start_name:
start_name = param.attrib["name"]
end_name = param.attrib["name"]
@@ -78,6 +168,8 @@ for group in root:
elif (param.attrib["type"] == "INT32"):
val_str = ".val.i = "
i+=1
src += section
section =""
src += """
{
"%s",
@@ -97,4 +189,5 @@ __END_DECLS
fp_header.write(header)
fp_src.write(src)
fp_header.close()
fp_src.close()
+1
View File
@@ -108,6 +108,7 @@ if args.parameter_xml != None:
bytes = f.read()
desc['parameter_xml_size'] = len(bytes)
desc['parameter_xml'] = base64.b64encode(zlib.compress(bytes,9)).decode('utf-8')
desc['mav_autopilot'] = 12 # 12 = MAV_AUTOPILOT_PX4
if args.airframe_xml != None:
f = open(args.airframe_xml, "rb")
bytes = f.read()
+5 -4
View File
@@ -71,6 +71,7 @@ def main():
const="",
metavar="BOARD",
help="Board to create airframes xml for")
parser.add_argument("-v", "--verbose", help="verbose output")
args = parser.parse_args()
# Check for valid command
@@ -84,7 +85,7 @@ def main():
parser = srcparser.SourceParser()
# Scan directories, and parse the files
print("Scanning source path " + args.airframes_path)
if args.verbose: print("Scanning source path " + args.airframes_path)
if not scanner.ScanDir(args.airframes_path, parser):
sys.exit(1)
# We can't validate yet
@@ -94,16 +95,16 @@ def main():
# Output to XML file
if args.xml:
print("Creating XML file " + args.xml)
if args.verbose: print("Creating XML file " + args.xml)
out = xmlout.XMLOutput(param_groups, args.board)
out.Save(args.xml)
if args.start_script:
print("Creating start script " + args.start_script)
if args.verbose: print("Creating start script " + args.start_script)
out = rcout.RCOutput(param_groups, args.board)
out.Save(args.start_script)
print("All done!")
if (args.verbose): print("All done!")
if __name__ == "__main__":
+4 -3
View File
@@ -107,6 +107,7 @@ def main():
metavar="SUMMARY",
default="Automagically updated parameter documentation from code.",
help="DokuWiki page edit summary")
parser.add_argument("-v", "--verbose", help="verbose output")
args = parser.parse_args()
# Check for valid command
@@ -120,7 +121,7 @@ def main():
parser = srcparser.SourceParser()
# Scan directories, and parse the files
print("Scanning source path " + args.src_path)
if (args.verbose): print("Scanning source path " + args.src_path)
if not scanner.ScanDir(args.src_path, parser):
sys.exit(1)
if not parser.Validate():
@@ -129,7 +130,7 @@ def main():
# Output to XML file
if args.xml:
print("Creating XML file " + args.xml)
if args.verbose: print("Creating XML file " + args.xml)
out = xmlout.XMLOutput(param_groups, args.board, os.path.join(args.src_path, args.inject_xml))
out.Save(args.xml)
@@ -147,7 +148,7 @@ def main():
else:
print("Error: You need to specify DokuWiki XML-RPC username and password!")
print("All done!")
#print("All done!")
if __name__ == "__main__":
+37 -33
View File
@@ -1,8 +1,7 @@
#!/usr/bin/env python
############################################################################
#
# Copyright (C) 2014 PX4 Development Team. All rights reserved.
# Author: Julian Oes <joes@student.ethz.ch>
# Copyright (C) 2014-2015 PX4 Development Team. All rights reserved.
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
@@ -37,48 +36,53 @@
"""
px_romfs_pruner.py:
Delete all comments and newlines before ROMFS is converted to an image
@author: Julian Oes <julian@oes.ch>
"""
from __future__ import print_function
import argparse, re
import argparse
import re
import os
def main():
# Parse commandline arguments
parser = argparse.ArgumentParser(description="ROMFS pruner.")
parser.add_argument('--folder', action="store",
help="ROMFS scratch folder.")
args = parser.parse_args()
# Parse commandline arguments
parser = argparse.ArgumentParser(description="ROMFS pruner.")
parser.add_argument('--folder', action="store", help="ROMFS scratch folder.")
args = parser.parse_args()
#print("Pruning ROMFS files.")
print("Pruning ROMFS files.")
# go through
for (root, dirs, files) in os.walk(args.folder):
for file in files:
# only prune text files
if ".zip" in file or ".bin" in file or ".swp" in file \
or ".data" in file or ".DS_Store" in file \
or file.startswith("."):
continue
# go through
for (root, dirs, files) in os.walk(args.folder):
for file in files:
# only prune text files
if ".zip" in file or ".bin" in file or ".swp" in file or ".data" in file or ".DS_Store" in file:
continue
file_path = os.path.join(root, file)
file_path = os.path.join(root, file)
# read file line by line
pruned_content = ""
with open(file_path, "rU") as f:
for line in f:
# handle mixer files differently than startup files
if file_path.endswith(".mix"):
if line.startswith(("Z:", "M:", "R: ", "O:", "S:")):
pruned_content += line
else:
if not line.isspace() and not line.strip().startswith("#"):
pruned_content += line
# overwrite old scratch file
with open(file_path, "wb") as f:
pruned_content = re.sub("\r\n", "\n", pruned_content)
f.write(pruned_content.encode("ascii", errors='strict'))
# read file line by line
pruned_content = ""
with open(file_path, "rU") as f:
for line in f:
# handle mixer files differently than startup files
if file_path.endswith(".mix"):
if line.startswith(("Z:", "M:", "R: ", "O:", "S:")):
pruned_content += line
else:
if not line.isspace() \
and not line.strip().startswith("#"):
pruned_content += line
# overwrite old scratch file
with open(file_path, "wb") as f:
pruned_content = re.sub("\r\n", "\n", pruned_content)
f.write(pruned_content.encode("ascii", errors='strict'))
if __name__ == '__main__':
main()
main()
+2 -1
View File
@@ -449,8 +449,9 @@ class uploader(object):
if self.board_type != fw.property('board_id'):
msg = "Firmware not suitable for this board (board_type=%u board_id=%u)" % (
self.board_type, fw.property('board_id'))
print("WARNING: %s" % msg)
if args.force:
print("WARNING: %s" % msg)
print("FORCED WRITE, FLASHING ANYWAY!")
else:
raise IOError(msg)
if self.fw_maxsize < fw.property('image_size'):
+5
View File
@@ -0,0 +1,5 @@
#!/usr/bin/env bash
make px4fmu-v2_default
cp build_px4fmu-v2_default/parameters.xml ../qgroundcontrol/src/FirmwarePlugin/PX4/PX4ParameterFactMetaData.xml
cp build_px4fmu-v2_default/airframes.xml ../qgroundcontrol/src/AutoPilotPlugins/PX4/AirframeFactMetaData.xml
+187
View File
@@ -0,0 +1,187 @@
#!/usr/bin/env python
#
# __geotagging__
# Tag the images recorded during a flight with geo location extracted from
# a PX4 log file.
#
# This file accepts *.jpg format images and reads position information
# from a *.px4log file
#
# Example Syntax:
# python geotagging.py --logfile=log001.px4log --input=images/
# --output=imagesWithTag/
#
# Author: Andreas Bircher, Wingtra, http://wingtra.com, in 2016
#
import glob
import os
import pyexiv2
import fractions
from PIL import Image
from PIL.ExifTags import TAGS
import sys
from shutil import copyfile
from optparse import OptionParser
from numpy import genfromtxt
import shutil
import csv
class TriggerList( object ):
def __init__( self ):
self.CAMT_seq = []
self.CAMT_timestamp = []
self.GPOS_Lat = []
self.GPOS_Lon = []
self.GPOS_Alt = []
class ImageList( object ):
def __init__( self ):
self.jpg = []
self.raw = []
def to_degree(value, loc):
if value < 0:
loc_value = loc[0]
elif value > 0:
loc_value = loc[1]
else:
loc_value = ""
absolute_value = abs(value)
deg = int(absolute_value)
t1 = (absolute_value-deg)*60
min = int(t1)
sec = round((t1 - min)* 60, 5)
return (deg, min, sec, loc_value)
def SetGpsLocation(file_name, lat, lng, alt):
"""
Adding GPS tag
"""
lat_deg = to_degree(lat, ["S", "N"])
lng_deg = to_degree(lng, ["W", "E"])
exiv_lat = (pyexiv2.Rational(lat_deg[0] * 60 + lat_deg[1], 60), pyexiv2.Rational(lat_deg[2] * 100, 6000), pyexiv2.Rational(0, 1))
exiv_lng = (pyexiv2.Rational(lng_deg[0] * 60 + lng_deg[1], 60), pyexiv2.Rational(lng_deg[2] * 100, 6000), pyexiv2.Rational(0, 1))
exiv_image = pyexiv2.ImageMetadata(file_name)
exiv_image.read()
exiv_image["Exif.GPSInfo.GPSLatitude"] = exiv_lat
exiv_image["Exif.GPSInfo.GPSLatitudeRef"] = lat_deg[3]
exiv_image["Exif.GPSInfo.GPSLongitude"] = exiv_lng
exiv_image["Exif.GPSInfo.GPSLongitudeRef"] = lng_deg[3]
exiv_image["Exif.GPSInfo.GPSAltitude"] = pyexiv2.Rational(alt, 1)
exiv_image["Exif.GPSInfo.GPSAltitudeRef"] = '0'
exiv_image["Exif.Image.GPSTag"] = 654
exiv_image["Exif.GPSInfo.GPSMapDatum"] = "WGS-84"
exiv_image["Exif.GPSInfo.GPSVersionID"] = '2 0 0 0'
exiv_image.write(True)
def LoadPX4log(px4_log_file):
"""
load px4 log file and extract trigger locations
"""
os.system('python sdlog2_dump.py ' + px4_log_file + ' -f log.csv')
f = open('log.csv', 'rb')
reader = csv.reader(f)
headers = reader.next()
line = {}
for h in headers:
line[h] = []
for row in reader:
for h, v in zip(headers, row):
line[h].append(v)
trigger_list = TriggerList()
for seq in range(0, len(line['CAMT_seq']) - 1):
if line['CAMT_seq'][seq] != line['CAMT_seq'][seq + 1]:
trigger_list.CAMT_seq.append(line['CAMT_seq'][seq + 1])
trigger_list.CAMT_timestamp.append(line['CAMT_timestamp'][seq + 1])
trigger_list.GPOS_Lat.append(line['GPOS_Lat'][seq + 1])
trigger_list.GPOS_Lon.append(line['GPOS_Lon'][seq + 1])
trigger_list.GPOS_Alt.append(line['GPOS_Alt'][seq + 1])
return trigger_list
def LoadImageList(input_folder):
"""
load the image list
"""
image_list = ImageList()
for jpg_image in glob.glob(input_folder + "/*.jpg"):
image_list.jpg.append(jpg_image)
for jpg_image in glob.glob(input_folder + "/*.JPG"):
image_list.jpg.append(jpg_image)
for raw_image in glob.glob(input_folder + "/*.RC"):
image_list.raw.append(raw_image)
if len(image_list.jpg) != len(image_list.raw) and len(image_list.jpg) * len(image_list.raw) != 0:
print("Unequal number of jpg and raw images")
if len(image_list.jpg) == 0 and len(image_list.raw) == 0:
print("No images found")
image_list.jpg = sorted(image_list.jpg)
image_list.raw = sorted(image_list.raw)
return image_list
def FilterTrigger(trigger_list, image_list):
"""
filter triggers to allow exact matching with recorded images
"""
if len(image_list.jpg) != len(trigger_list.CAMT_seq) and len(image_list.raw) != len(trigger_list.CAMT_seq):
# filter trigger list to match the number of pics
print("No trigger filter implemented yet.")
return trigger_list
def TagImages(trigger_list, image_list, output_folder):
"""
load px4 log file and extract trigger locations
"""
for image in range(len(image_list.jpg)):
base_path, filename = os.path.split(image_list.jpg[image])
copyfile(image_list.jpg[image], output_folder + "/" + filename)
SetGpsLocation(output_folder + "/" + filename, float(trigger_list.GPOS_Lat[image]), float(trigger_list.GPOS_Lon[image]), float(trigger_list.GPOS_Alt[image]))
for image in range(len(image_list.raw)):
base_path, filename = os.path.split(image_list.raw[image])
copyfile(image_list.raw[image], output_folder + "/" + filename)
SetGpsLocation(output_folder + "/" + filename, float(trigger_list.GPOS_Lat[image]), float(trigger_list.GPOS_Lon[image]), float(trigger_list.GPOS_Alt[image]))
def main():
"""
Main method
"""
parser = OptionParser()
parser.add_option("-l", "--logfile", dest = "LogFile",
help = "PX4 log file containing recorded positions",
metavar = "string")
parser.add_option("-i", "--input", dest = "InputFolder",
help = "Input folder containing untagged images in alphabetical order",
type = "string")
parser.add_option("-o", "--output", dest = "OutputFolder",
help = "Output folder to contain tagged images",
type = "string")
(options, args) = parser.parse_args()
if not options.LogFile:
print "please type python " \
"geotagging.py --logfile=[filename] --intput=[folder] [--output=[folder]]"
elif not options.InputFolder:
print "please type python " \
"geotagging.py --logfile=[filename] --intput=[folder] [--output=[folder]]s"
else:
trigger_list = LoadPX4log(options.LogFile)
image_list = LoadImageList(options.InputFolder)
if not options.OutputFolder:
options.OutputFolder = "imagesWithTag"
if not os.path.exists(options.OutputFolder):
os.makedirs(options.OutputFolder)
trigger_list = FilterTrigger(trigger_list, image_list)
TagImages(trigger_list, image_list, options.OutputFolder)
if __name__ == "__main__":
main()
+1
View File
@@ -48,6 +48,7 @@ class SDLog2Parser:
"i": ("i", None),
"I": ("I", None),
"f": ("f", None),
"d": ("d", None),
"n": ("4s", None),
"N": ("16s", None),
"Z": ("64s", None),
+27 -6
View File
@@ -14,6 +14,10 @@ echo program: $program
echo model: $model
echo build_path: $build_path
mkdir -p $build_path/src/firmware/posix/rootfs/fs/microsd
mkdir -p $build_path/src/firmware/posix/rootfs/eeprom
touch $build_path/src/firmware/posix/rootfs/eeprom/parameters
if [ "$chroot" == "1" ]
then
chroot_enabled=-c
@@ -29,7 +33,7 @@ then
model="iris"
fi
if [ "$#" != 5 ]
if [ "$#" -lt 5 ]
then
echo usage: sitl_run.sh rc_script debugger program model build_path
echo ""
@@ -48,6 +52,7 @@ fi
set -e
cd $build_path/..
cp Tools/posix_lldbinit $build_path/src/firmware/posix/.lldbinit
cp Tools/posix.gdbinit $build_path/src/firmware/posix/.gdbinit
@@ -56,9 +61,11 @@ SIM_PID=0
if [ "$program" == "jmavsim" ] && [ "$no_sim" == "" ]
then
cd Tools/jMAVSim
ant
java -Djava.ext.dirs= -cp lib/*:out/production/jmavsim.jar me.drton.jmavsim.Simulator -udp 127.0.0.1:14560 &
ant create_run_jar copy_res
cd out/production
java -Djava.ext.dirs= -jar jmavsim_run.jar -udp 127.0.0.1:14560 &
SIM_PID=`echo $!`
cd ../..
elif [ "$program" == "gazebo" ] && [ "$no_sim" == "" ]
then
if [ -x "$(command -v gazebo)" ]
@@ -74,6 +81,7 @@ then
cd Tools/sitl_gazebo/Build
cmake -Wno-dev ..
make -j4
make sdf
gzserver --verbose ../worlds/${model}.world &
SIM_PID=`echo $!`
gzclient --verbose &
@@ -82,11 +90,24 @@ then
echo "You need to have gazebo simulator installed!"
exit 1
fi
elif [ "$program" == "replay" ] && [ "$no_sim" == "" ]
then
echo "Replaying logfile: $logfile"
# This is not a simulator, but a log file to replay
# Check if we need to creat a param file to allow user to change parameters
if ! [ -f "${build_path}/src/firmware/posix/rootfs/replay_params.txt" ]
then
touch ${build_path}/src/firmware/posix/rootfs/replay_params.txt
fi
fi
cd $build_path/src/firmware/posix
mkdir -p rootfs/fs/microsd
mkdir -p rootfs/eeprom
touch rootfs/eeprom/parameters
if [ "$logfile" != "" ]
then
cp $logfile rootfs/replay.px4log
fi
# Do not exit on failure now from here on because we want the complete cleanup
set +e
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
EXEDIR=`pwd`
BASEDIR=$(dirname $0)
+126 -44
View File
@@ -90,7 +90,7 @@ include(CMakeParseArguments)
# endfunction()
#
# test(NAME "hello" LIST a b c)
#
#
# OUTPUT:
# name: hello
# list: a b c
@@ -138,13 +138,11 @@ function(px4_add_git_submodule)
string(REPLACE "/" "_" NAME ${PATH})
add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/git_init_${NAME}.stamp
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMAND git submodule init ${PATH}
COMMAND touch ${CMAKE_BINARY_DIR}/git_init_${NAME}.stamp
DEPENDS ${CMAKE_SOURCE_DIR}/.gitmodules
)
add_custom_target(${TARGET}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMAND git submodule update --recursive ${PATH}
DEPENDS ${CMAKE_BINARY_DIR}/git_init_${NAME}.stamp
)
endfunction()
@@ -227,7 +225,9 @@ endfunction()
# Usage:
# px4_add_module(MODULE <string>
# [ MAIN <string> ]
# [ STACK <string> ]
# [ STACK <string> ] !!!!!DEPRECATED, USE STACK_MAIN INSTEAD!!!!!!!!!
# [ STACK_MAIN <string> ]
# [ STACK_MAX <string> ]
# [ COMPILE_FLAGS <list> ]
# [ INCLUDES <list> ]
# [ DEPENDS <string> ]
@@ -236,7 +236,9 @@ endfunction()
# Input:
# MODULE : unique name of module
# MAIN : entry point, if not given, assumed to be library
# STACK : size of stack
# STACK : deprecated use stack main instead
# STACK_MAIN : size of stack for main function
# STACK_MAX : maximum stack size of any frame
# COMPILE_FLAGS : compile flags
# LINK_FLAGS : link flags
# SRCS : source files
@@ -250,7 +252,7 @@ endfunction()
# px4_add_module(MODULE test
# SRCS
# file.cpp
# STACK 1024
# STACK_MAIN 1024
# DEPENDS
# git_nuttx
# )
@@ -259,15 +261,43 @@ function(px4_add_module)
px4_parse_function_args(
NAME px4_add_module
ONE_VALUE MODULE MAIN STACK PRIORITY
ONE_VALUE MODULE MAIN STACK STACK_MAIN STACK_MAX PRIORITY
MULTI_VALUE COMPILE_FLAGS LINK_FLAGS SRCS INCLUDES DEPENDS
REQUIRED MODULE
ARGN ${ARGN})
add_library(${MODULE} STATIC EXCLUDE_FROM_ALL ${SRCS})
# set defaults if not set
set(MAIN_DEFAULT MAIN-NOTFOUND)
set(STACK_MAIN_DEFAULT 1024)
set(PRIORITY_DEFAULT SCHED_PRIORITY_DEFAULT)
# default stack max to stack main
if(NOT STACK_MAIN AND STACK)
set(STACK_MAIN ${STACK})
message(AUTHOR_WARNING "STACK deprecated, USE STACK_MAIN instead!!!!!!!!!!!!")
endif()
foreach(property MAIN STACK_MAIN PRIORITY)
if(NOT ${property})
set(${property} ${${property}_DEFAULT})
endif()
set_target_properties(${MODULE} PROPERTIES ${property}
${${property}})
endforeach()
# default stack max to stack main
if(NOT STACK_MAX)
set(STACK_MAX ${STACK_MAIN})
endif()
set_target_properties(${MODULE} PROPERTIES STACK_MAX
${STACK_MAX})
if(${OS} STREQUAL "qurt" )
set_property(TARGET ${MODULE} PROPERTY POSITION_INDEPENDENT_CODE TRUE)
elseif(${OS} STREQUAL "nuttx" )
list(APPEND COMPILE_FLAGS -Wframe-larger-than=${STACK_MAX})
endif()
if(MAIN)
@@ -292,8 +322,8 @@ function(px4_add_module)
# store module properties in target
# COMPILE_FLAGS and LINK_FLAGS are passed to compiler/linker by cmake
# STACK, MAIN, PRIORITY are PX4 specific
foreach (prop COMPILE_FLAGS LINK_FLAGS STACK MAIN PRIORITY)
# STACK_MAIN, MAIN, PRIORITY are PX4 specific
foreach (prop COMPILE_FLAGS LINK_FLAGS STACK_MAIN MAIN PRIORITY)
if (${prop})
set_target_properties(${MODULE} PROPERTIES ${prop} ${${prop}})
endif()
@@ -347,11 +377,11 @@ function(px4_generate_messages)
list(APPEND msg_files_out ${msg_out_path}/${msg}.h)
endforeach()
add_custom_command(OUTPUT ${msg_files_out}
COMMAND ${PYTHON_EXECUTABLE}
COMMAND ${PYTHON_EXECUTABLE}
Tools/px_generate_uorb_topic_headers.py
${QUIET}
-d msg
-o ${msg_out_path}
-o ${msg_out_path}
-e msg/templates/uorb
-t ${CMAKE_BINARY_DIR}/topics_temporary
DEPENDS ${DEPENDS} ${MSG_FILES}
@@ -368,11 +398,11 @@ function(px4_generate_messages)
list(APPEND msg_multi_files_out ${msg_multi_out_path}/px4_${msg}.h)
endforeach()
add_custom_command(OUTPUT ${msg_multi_files_out}
COMMAND ${PYTHON_EXECUTABLE}
COMMAND ${PYTHON_EXECUTABLE}
Tools/px_generate_uorb_topic_headers.py
${QUIET}
-d msg
-o ${msg_multi_out_path}
-o ${msg_multi_out_path}
-e msg/templates/px4/uorb
-t ${CMAKE_BINARY_DIR}/multi_topics_temporary/${OS}
-p "px4_"
@@ -441,6 +471,26 @@ function(px4_add_upload)
)
endfunction()
function(px4_add_adb_push)
px4_parse_function_args(
NAME px4_add_upload
ONE_VALUE OS BOARD OUT DEST
MULTI_VALUE FILES DEPENDS
REQUIRED OS BOARD OUT FILES DEPENDS DEST
ARGN ${ARGN})
add_custom_target(${OUT}
COMMAND ${CMAKE_SOURCE_DIR}/Tools/adb_upload.sh ${FILES} ${DEST}
DEPENDS ${DEPENDS}
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
COMMENT "uploading ${BUNDLE}"
VERBATIM
USES_TERMINAL
)
endfunction()
#=============================================================================
#
# px4_add_common_flags
@@ -490,9 +540,10 @@ function(px4_add_common_flags)
set(warnings
-Wall
-Werror
-Wno-sign-compare
-Wextra
#-Wshadow # very verbose due to eigen
-Wpacked
-Wno-sign-compare
-Wshadow
-Wfloat-equal
-Wpointer-arith
-Wmissing-declarations
@@ -512,14 +563,11 @@ function(px4_add_common_flags)
# but generates too many false positives
)
if (${OS} STREQUAL "nuttx")
list(APPEND warnings -Wframe-larger-than=1024)
endif()
if (${CMAKE_C_COMPILER_ID} MATCHES ".*Clang.*")
# QuRT 6.4.X compiler identifies as Clang but does not support this option
if (NOT ${OS} STREQUAL "qurt")
list(APPEND warnings
-Qunused-arguments
-Wno-unused-const-variable
-Wno-varargs
)
@@ -534,15 +582,32 @@ function(px4_add_common_flags)
)
endif()
set(max_optimization -Os)
if ($ENV{MEMORY_DEBUG} MATCHES "1")
set(max_optimization -O0)
set(optimization_flags
-fno-strict-aliasing
-fomit-frame-pointer
-funsafe-math-optimizations
-ffunction-sections
-fdata-sections
)
set(optimization_flags
-fno-strict-aliasing
-fno-omit-frame-pointer
-funsafe-math-optimizations
-ffunction-sections
-fdata-sections
-g -fsanitize=address
)
else()
set(max_optimization -Os)
if ("${OS}" STREQUAL "qurt")
set(PIC_FLAG -fPIC)
endif()
set(optimization_flags
-fno-strict-aliasing
-fomit-frame-pointer
-funsafe-math-optimizations
-ffunction-sections
-fdata-sections
${PIC_FLAG}
)
endif()
if (NOT ${CMAKE_C_COMPILER_ID} MATCHES ".*Clang.*")
list(APPEND optimization_flags
@@ -585,6 +650,15 @@ function(px4_add_common_flags)
-D__CUSTOM_FILE_IO__
)
if (NOT (${CMAKE_C_COMPILER_ID} MATCHES ".*Clang.*"))
# -fcheck-new is a no-op for Clang in general
# and has no effect, but can generate a compile
# error for some OS
list(APPEND cxx_compile_flags
-fcheck-new
)
endif()
set(visibility_flags
-fvisibility=hidden
-include visibility.h
@@ -638,14 +712,11 @@ function(px4_add_common_flags)
-DCONFIG_ARCH_BOARD_${board_config}
)
if (NOT ${CMAKE_C_COMPILER_ID} MATCHES ".*Clang.*")
set(added_exe_link_flags
if (NOT (APPLE AND (${CMAKE_C_COMPILER_ID} MATCHES ".*Clang.*")))
set(added_exe_linker_flags
-Wl,--warn-common
-Wl,--gc-sections
)
else()
set(added_exe_link_flags
-Wl,--warn-common
#,--print-gc-sections
)
endif()
@@ -670,7 +741,7 @@ endfunction()
# Input:
# dirname : path to module dir
#
# Output:
# Output:
# newname : module name
#
# Example:
@@ -701,16 +772,23 @@ endfunction()
function(px4_create_git_hash_header)
px4_parse_function_args(
NAME px4_create_git_hash_header
ONE_VALUE HEADER
REQUIRED HEADER
ONE_VALUE HEADER
REQUIRED HEADER
ARGN ${ARGN})
execute_process(
COMMAND git describe --tags
OUTPUT_VARIABLE git_tag
OUTPUT_STRIP_TRAILING_WHITESPACE
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
)
#message(STATUS "GIT_TAG = ${git_tag}")
execute_process(
COMMAND git rev-parse HEAD
OUTPUT_VARIABLE git_desc
OUTPUT_STRIP_TRAILING_WHITESPACE
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
)
message(STATUS "GIT_DESC = ${git_desc}")
#message(STATUS "GIT_DESC = ${git_desc}")
set(git_desc_short)
string(SUBSTRING ${git_desc} 1 16 git_desc_short)
configure_file(${CMAKE_SOURCE_DIR}/cmake/templates/build_git_version.h.in ${HEADER} @ONLY)
@@ -759,22 +837,23 @@ endfunction()
# Generates a source file with all parameters.
#
# Usage:
# px4_generate_parameters_source(OUT <list-source-files> XML <param-xml-file>)
# px4_generate_parameters_source(OUT <list-source-files> XML <param-xml-file> [SCOPE <cmake file for scoping>])
#
# Input:
# XML : the parameters.xml file
# DEPS : target dependencies
# XML : the parameters.xml file
# SCOPE : the cmake file used to limit scope of the paramaters
# DEPS : target dependencies
#
# Output:
# OUT : the generated source files
#
# Example:
# px4_generate_parameters_source(OUT param_files XML parameters.xml)
# px4_generate_parameters_source(OUT param_files XML parameters.xml SCOPE ${OS}_${BOARD}_${LABEL}.cmake )
#
function(px4_generate_parameters_source)
px4_parse_function_args(
NAME px4_generate_parameters_source
ONE_VALUE OUT XML DEPS
ONE_VALUE OUT XML SCOPE DEPS
REQUIRED OUT XML
ARGN ${ARGN})
set(generated_files
@@ -782,9 +861,12 @@ function(px4_generate_parameters_source)
${CMAKE_CURRENT_BINARY_DIR}/px4_parameters.c)
set_source_files_properties(${generated_files}
PROPERTIES GENERATED TRUE)
if ("${config_generate_parameters_scope}" STREQUAL "ALL")
set(SCOPE "")
endif()
add_custom_command(OUTPUT ${generated_files}
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Tools/px_generate_params.py ${XML}
DEPENDS ${XML} ${DEPS}
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/Tools/px_generate_params.py ${XML} ${SCOPE}
DEPENDS ${XML} ${DEPS} ${SCOPE}
)
set(${OUT} ${generated_files} PARENT_SCOPE)
endfunction()
+199
View File
@@ -0,0 +1,199 @@
include(nuttx/px4_impl_nuttx)
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/cmake/toolchains/Toolchain-arm-none-eabi.cmake)
set(config_uavcan_num_ifaces 2)
set(config_module_list
#
# Board support modules
#
drivers/device
drivers/stm32
drivers/stm32/adc
drivers/stm32/tone_alarm
drivers/led
drivers/px4fmu
#drivers/px4io
drivers/test_ppm
drivers/boards/mindpx-v2
#drivers/rgbled
drivers/rgbled_pwm
#drivers/mpu6000
#drivers/mpu6050
drivers/mpu6500
#drivers/mpu9250
drivers/lsm303d
drivers/l3gd20
drivers/hmc5883
drivers/ms5611
#drivers/mb12xx
#drivers/srf02
drivers/srf02_i2c
drivers/hc_sr04
#drivers/sf0x
#drivers/ll40ls
#drivers/trone
drivers/gps
drivers/pwm_out_sim
#drivers/hott
#drivers/hott/hott_telemetry
#drivers/hott/hott_sensors
drivers/blinkm
drivers/airspeed
drivers/ets_airspeed
drivers/meas_airspeed
drivers/frsky_telemetry
modules/sensors
#drivers/mkblctrl
drivers/px4flow
#drivers/oreoled
drivers/gimbal
drivers/pwm_input
drivers/camera_trigger
drivers/bst
drivers/snapdragon_rc_pwm
#
# System commands
#
systemcmds/bl_update
systemcmds/mixer
systemcmds/param
systemcmds/perf
systemcmds/pwm
systemcmds/esc_calib
systemcmds/reboot
#systemcmds/topic_listener
systemcmds/top
systemcmds/config
systemcmds/nshterm
systemcmds/mtd
systemcmds/dumpfile
systemcmds/ver
#
# General system control
#
modules/commander
modules/navigator
modules/mavlink
modules/gpio_led
modules/uavcan
modules/land_detector
#
# Estimation modules (EKF/ SO3 / other filters)
#
# Too high RAM usage due to static allocations
# modules/attitude_estimator_ekf
modules/attitude_estimator_q
modules/ekf_att_pos_estimator
modules/position_estimator_inav
#
# Vehicle Control
#
# modules/segway # XXX Needs GCC 4.7 fix
modules/fw_pos_control_l1
modules/fw_att_control
modules/mc_att_control
modules/mc_pos_control
modules/vtol_att_control
#
# Logging
#
modules/sdlog2
#
# Library modules
#
modules/param
modules/systemlib
modules/systemlib/mixer
modules/uORB
modules/dataman
#
# Libraries
#
lib/controllib
lib/mathlib
lib/mathlib/math/filter
lib/ecl
lib/external_lgpl
lib/geo
lib/geo_lookup
lib/conversion
lib/launchdetection
lib/terrain_estimation
lib/runway_takeoff
lib/tailsitter_recovery
lib/DriverFramework/framework
platforms/nuttx
# had to add for cmake, not sure why wasn't in original config
platforms/common
platforms/nuttx/px4_layer
#
# OBC challenge
#
#modules/bottle_drop
#
# Rover apps
#
examples/rover_steering_control
#
# Demo apps
#
#examples/math_demo
# Tutorial code from
# https://px4.io/dev/px4_simple_app
examples/px4_simple_app
# Tutorial code from
# https://px4.io/dev/daemon
#examples/px4_daemon_app
# Tutorial code from
# https://px4.io/dev/debug_values
#examples/px4_mavlink_debug
# Tutorial code from
# https://px4.io/dev/example_fixedwing_control
#examples/fixedwing_control
# Hardware test
#examples/hwtest
)
set(config_extra_builtin_cmds
serdis
sercon
)
set(config_io_board
px4io-v2
)
set(config_extra_libs
uavcan
uavcan_stm32_driver
)
set(config_io_extra_libs
)
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon" STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis" STACK_MAIN "2048")
@@ -30,19 +30,20 @@ set(config_module_list
modules/param
modules/systemlib
modules/systemlib/mixer
modules/controllib
modules/uORB
#
# Libraries
#
#lib/mathlib/CMSIS
lib/controllib
lib/mathlib
lib/mathlib/math/filter
lib/ecl
lib/external_lgpl
lib/geo
lib/conversion
lib/DriverFramework/framework
platforms/nuttx
# had to add for cmake, not sure why wasn't in original config
@@ -80,8 +81,12 @@ set(config_extra_builtin_cmds
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon"
STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis"
STACK_MAIN "2048")
+10 -7
View File
@@ -36,7 +36,8 @@ set(config_module_list
drivers/meas_airspeed
drivers/frsky_telemetry
modules/sensors
#drivers/mkblctrl
drivers/camera_trigger
drivers/mkblctrl
drivers/px4flow
#
@@ -96,14 +97,13 @@ set(config_module_list
modules/param
modules/systemlib
modules/systemlib/mixer
modules/controllib
modules/uORB
modules/dataman
#
# Libraries
#
#lib/mathlib/CMSIS
lib/controllib
lib/mathlib
lib/mathlib/math/filter
lib/ecl
@@ -115,6 +115,7 @@ set(config_module_list
lib/terrain_estimation
lib/runway_takeoff
lib/tailsitter_recovery
lib/DriverFramework/framework
platforms/nuttx
# had to add for cmake, not sure why wasn't in original config
@@ -165,17 +166,19 @@ set(config_io_board
)
set(config_extra_libs
${CMAKE_SOURCE_DIR}/src/lib/mathlib/CMSIS/libarm_cortexM4lf_math.a
)
set(config_io_extra_libs
#${CMAKE_SOURCE_DIR}/src/lib/mathlib/CMSIS/libarm_cortexM3l_math.a
)
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon"
STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis"
STACK_MAIN "2048")
+12 -10
View File
@@ -41,11 +41,14 @@ set(config_module_list
modules/sensors
#drivers/mkblctrl
drivers/px4flow
drivers/oreoled
#drivers/oreoled
drivers/gimbal
drivers/pwm_input
drivers/camera_trigger
drivers/bst
drivers/snapdragon_rc_pwm
drivers/lis3mdl
drivers/bmi160
#
# System commands
@@ -78,11 +81,10 @@ set(config_module_list
#
# Estimation modules (EKF/ SO3 / other filters)
#
# Too high RAM usage due to static allocations
# modules/attitude_estimator_ekf
modules/attitude_estimator_q
modules/ekf_att_pos_estimator
modules/position_estimator_inav
modules/local_position_estimator
#
# Vehicle Control
@@ -105,14 +107,13 @@ set(config_module_list
modules/param
modules/systemlib
modules/systemlib/mixer
modules/controllib
modules/uORB
modules/dataman
#
# Libraries
#
#lib/mathlib/CMSIS
lib/controllib
lib/mathlib
lib/mathlib/math/filter
lib/ecl
@@ -124,6 +125,7 @@ set(config_module_list
lib/terrain_estimation
lib/runway_takeoff
lib/tailsitter_recovery
lib/DriverFramework/framework
platforms/nuttx
# had to add for cmake, not sure why wasn't in original config
@@ -138,7 +140,7 @@ set(config_module_list
#
# Rover apps
#
examples/rover_steering_control
#examples/rover_steering_control
#
# Demo apps
@@ -174,19 +176,19 @@ set(config_io_board
)
set(config_extra_libs
${CMAKE_SOURCE_DIR}/src/lib/mathlib/CMSIS/libarm_cortexM4lf_math.a
uavcan
uavcan_stm32_driver
)
set(config_io_extra_libs
#${CMAKE_SOURCE_DIR}/src/lib/mathlib/CMSIS/libarm_cortexM3l_math.a
)
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon" STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis" STACK_MAIN "2048")
+6 -6
View File
@@ -105,14 +105,13 @@ set(config_module_list
modules/param
modules/systemlib
modules/systemlib/mixer
modules/controllib
modules/uORB
modules/dataman
#
# Libraries
#
#lib/mathlib/CMSIS
lib/controllib
lib/mathlib
lib/mathlib/math/filter
lib/ecl
@@ -124,6 +123,7 @@ set(config_module_list
lib/terrain_estimation
lib/runway_takeoff
lib/tailsitter_recovery
lib/DriverFramework/framework
platforms/nuttx
# had to add for cmake, not sure why wasn't in original config
@@ -174,19 +174,19 @@ set(config_io_board
)
set(config_extra_libs
${CMAKE_SOURCE_DIR}/src/lib/mathlib/CMSIS/libarm_cortexM4lf_math.a
uavcan
uavcan_stm32_driver
)
set(config_io_extra_libs
#${CMAKE_SOURCE_DIR}/src/lib/mathlib/CMSIS/libarm_cortexM3l_math.a
)
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon" STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis" STACK_MAIN "2048")
-5
View File
@@ -1,5 +0,0 @@
include(cmake/configs/nuttx_px4fmu-v2_default.cmake)
list(APPEND config_module_list
modules/local_position_estimator
)

Some files were not shown because too many files have changed in this diff Show More