Commit Graph

8817 Commits

Author SHA1 Message Date
Jonathan Challinger de600ca3da AP_Compass: configured() only checks compasses with _USE set 2015-09-03 16:59:12 +10:00
Jonathan Challinger 53fe649016 GCS_MAVLink: add MSG_MAG_CAL_PROGRESS and _REPORT 2015-09-03 16:59:11 +10:00
Jonathan Challinger 72c8d0f530 AP_Compass: add samples to calibrator when published 2015-09-03 16:59:11 +10:00
Jonathan Challinger cc36401b7c AP_Compass: add calibration interface 2015-09-03 16:59:11 +10:00
Jonathan Challinger 28ee63c855 AP_Notify: add events.compass_cal_canceled 2015-09-03 16:59:11 +10:00
Jonathan Challinger adef826a42 AP_Notify: play tones for compass cal 2015-09-03 16:59:11 +10:00
Jonathan Challinger 89007c13cb AP_Notify: add compass_cal flags 2015-09-03 16:59:11 +10:00
Jonathan Challinger 05d3616e0d AP_Compass: fix sitl build 2015-09-03 16:59:11 +10:00
Jonathan Challinger 7cb9fa8898 AP_Compass: Correct parameter checks in compass cal 2015-09-03 16:59:11 +10:00
Jonathan Challinger 6d45660568 AP_Compass: refactor run_fit_chunk logic 2015-09-03 16:59:11 +10:00
Jonathan Challinger f2acf2cb88 AP_Compass: more parameter checks in compass calibrator 2015-09-03 16:59:11 +10:00
Jonathan Challinger 929ddb5685 AP_Compass: fix a math error in the compass calibrator 2015-09-03 16:59:10 +10:00
Jonathan Challinger 328cf82c3d CompassCalibrator: update AP_Notify on failure 2015-09-03 16:59:10 +10:00
Jonathan Challinger bfdbb55528 AP_Compass: make compasscalibrator running() public 2015-09-03 16:59:10 +10:00
Jonathan Challinger d31d385490 AP_Compass: changes and fixes to LMA-based compass calibrate 2015-09-03 16:59:10 +10:00
bugobliterator c66bfc95e1 Compass: Add Levenberg-Marquadt for ellipsoid fit 2015-09-03 16:59:10 +10:00
bugobliterator 7711dde2ad Compass: implement 9 parameter ellipsoid fit 2015-09-03 16:59:10 +10:00
bugobliterator 35555c7b21 Compass: Add math for 9 parameter fitting 2015-09-03 16:59:10 +10:00
bugobliterator 7295537e8a Compass: decrease sphere coverage to 1/3rd
for faster sample collection
2015-09-03 16:59:10 +10:00
bugobliterator a2bd4e8997 Compass: Add less complex equations to calculate jacobians 2015-09-03 16:59:10 +10:00
bugobliterator 2ca0e80dc5 Compass: Add conditions to check sanity of results 2015-09-03 16:59:10 +10:00
bugobliterator 54bc28c96d Compass: Add Levenberg-Marquadt optimiser for sphere_fit
increase iterations to get good results from LM
better check for convergence, comparison with initial fitness is a better way to determine if convergence occurs, if fitness has not improved compared to initial fitness it means optimiser has failed.
2015-09-03 16:59:10 +10:00
Jonathan Challinger c0a662c819 AP_Compass: CompassCalibrator initial commit 2015-09-03 16:59:10 +10:00
Jonathan Challinger f20ef69777 Compass: add soft-iron corrections 2015-09-03 16:59:09 +10:00
Jonathan Challinger 5fe6db0dc9 AP_Compass_PX4: use new compass backend interface 2015-09-03 16:59:09 +10:00
Jonathan Challinger ade39abc7f AP_Compass_HMC5843: use new compass backend interface 2015-09-03 16:59:09 +10:00
Jonathan Challinger 8800d03fce AP_Compass_HIL: use new compass backend interface 2015-09-03 16:59:09 +10:00
Jonathan Challinger cd5cf45ba8 AP_Compass_AK8963: use new compass backend interface 2015-09-03 16:59:09 +10:00
Jonathan Challinger add1b8c257 AP_Compass: modify backend interface to push raw samples to frontend 2015-09-03 16:59:09 +10:00
Jonathan Challinger b990eaed68 AP_Compass: add interface for raw and unfiltered field 2015-09-03 16:59:09 +10:00
Jonathan Challinger b2fff2021f GCS_MAVLink: re-generate libraries 2015-09-03 16:59:09 +10:00
Jonathan Challinger 1b485ef6ab GCS_MAVLink: add MAG_CAL messages 2015-09-03 16:59:09 +10:00
Peter Barker 2b02911546 DataFlash: make mode and messages critical 2015-09-03 15:20:20 +10:00
Peter Barker 8f8493225c DataFlash: DFMessageWriter; ability to trickle messages out to DF 2015-09-03 09:54:55 +10:00
Grant Morphett ab35ac41a5 AP_Param: Add parameter to print out all the keys/indexes
For some debugging I was working on I needed to see all the token
indexs and group elements.
2015-09-02 11:12:31 +10:00
mirkix f6f2e901b8 AP_Notify: Disable ToneAlarm for BBBMINI 2015-09-02 11:10:59 +10:00
Andrew Tridgell 2ce0f4c171 AC_Precland: fixed build under cygwin
the IRLock driver only builds on PX4 at the moment
2015-09-02 10:10:04 +10:00
Andrew Tridgell dff235dc36 AP_RangeFinder: support LightWare I2C laser rangefinders
this has been tested with the SF10/C
2015-09-01 21:09:12 +10:00
Gustavo Jose de Sousa bcd5dff774 AP_Baro: MS56XX: do not change change state on error
If we have an error in the SPI or I2C transaction we should not change
the state. Otherwise we might read a temperature when the sensor is
reporting pressure and vice-versa.
2015-09-01 20:26:06 +10:00
Gustavo Jose de Sousa 1f29e18375 AP_Baro: make AP_SerialBus::write() return success or failure for MS56XX 2015-09-01 20:26:05 +10:00
Gustavo Jose de Sousa 458f587656 AP_HAL_FLYMAPLE: SPI: adapt to the new signature of transaction()
A default behaviour was added here.
2015-09-01 20:26:05 +10:00
Gustavo Jose de Sousa 4e27d19107 AP_HAL_Empty: SPI: adapt to the new signature of transaction()
A default behaviour was added here.
2015-09-01 20:26:05 +10:00
Gustavo Jose de Sousa 93f5abb274 AP_HAL_AVR: SPI: adapt to the new signature of transaction()
A default behaviour was added here.
2015-09-01 20:26:05 +10:00
Gustavo Jose de Sousa 4af2a9a9cc AP_HAL_Linux: SPI: adapt to the new signature of transaction() 2015-09-01 20:26:05 +10:00
Gustavo Jose de Sousa e05928a7e8 AP_HAL: make SPIDeviceDriver::transaction() return success or failure 2015-09-01 20:26:05 +10:00
Gustavo Jose de Sousa 53b5b70960 AP_Scheduler: use also task name besides the id for logging
This makes it easier to identify for which task a log line is.
2015-09-01 20:22:19 +10:00
Gustavo Jose de Sousa b59154103f AP_Scheduler: use function name for AP_Scheduler task name
That makes it easier to identify tasks when debug is enabled in AP_Scheduler.
2015-09-01 20:22:19 +10:00
Gustavo Jose de Sousa 8fe466ce27 AP_Scheduler: add initializer for task field "name"
We use define it as an empty macro if on AVR board.
2015-09-01 20:22:18 +10:00
Gustavo Jose de Sousa 8018748fe2 AP_Scheduler: add field "name" to task structure for logging purposes
That field will be useful for logging as it is easier to know what task a log
is related to by using the task's name rather than using the number.
2015-09-01 20:22:18 +10:00
Gustavo Jose de Sousa 2e6074c108 AP_Scheduler: use designated initializers for tasks structs
Makes code less prone to break build and semantics (e.g., when a new field is
added).
2015-09-01 20:22:18 +10:00
Andrew Tridgell a3d7156f28 SITL: raise default simulation rate to 1200Hz
this greatly improves things for the heli sim
2015-09-01 16:34:20 +10:00
Randy Mackay 6701d53d49 GPS: add GNSS_MODE parameter bitmask 2015-09-01 12:19:59 +09:00
Randy Mackay 2351e84592 IRLock: replace tabs with spaces
No functional change
2015-08-31 18:00:33 +09:00
Randy Mackay bf08fc317c AC_PrecLand: correct include paths 2015-08-31 18:00:26 +09:00
Randy Mackay c06593f987 AC_PrecLand: precision landing lib for IR-Lock and companion computer 2015-08-31 18:00:25 +09:00
Randy Mackay 7706102d1e AC_WPNav: add shift_loiter_target method
Shift the loiter target and freeze the feedforward if necessary
2015-08-31 18:00:24 +09:00
Randy Mackay 6f3ff0866f IRLock: adjust to px4 lib calculating bf angles 2015-08-31 18:00:20 +09:00
Randy Mackay 04c682542c IRLock: correct include paths 2015-08-31 18:00:14 +09:00
bstone04 cf8ce867e6 IRLock: many changes to integrate with PrecLand library
irlock_center_x_pos calculates the lateral x position of the marker in cm. relative to the quad
irlock_x_pos_to_latlon rotates the frame based x position to latitude/longtitude based coordinates
same case for the y position
add get_angle_to_target method
get_angle_to_target replaces pixel to position calculations
Also removed ahrs reference (now in AC_PrecLand lib), unused references
to orb and commented out parameter declaration
reduce max objects to 5
remove ahrs reference
add timeout
return true if new sample found
bug fix get_angle_to_target
remove unused get_frame
2015-08-31 17:57:57 +09:00
Michael Landes 59928ed677 IRLock: Initial implementation
Define the IRLock sensor object using PX4 level driver
2015-08-31 17:57:56 +09:00
Grant Morphett 1595c137f8 AC_PID_test: fixed AC_HELI_PID constructor 2015-08-31 13:45:13 +09:00
Randy Mackay e3ff4ed9c4 MotorsHeli: integrate RotorControlState 2015-08-31 11:43:59 +09:00
Randy Mackay cb47311416 MotorsHeli_RSC: add RotorControlMode enum 2015-08-31 11:43:58 +09:00
Randy Mackay 72efc85ee8 MotorsHeli_RSC: RotorControlState enum 2015-08-31 11:43:57 +09:00
Robert Lefebvre bde43412d8 AP_MotorsHeli: Fix RSC Mode 3 2015-08-31 11:43:55 +09:00
Robert Lefebvre 38ccd6e04f AP_MotorsHeli_RSC: Fix tail_type control 2015-08-31 11:43:54 +09:00
Robert Lefebvre 535da1d79a AP_MotorsHeli_Single: DDVPT to use it's own ramp and runup times 2015-08-31 11:43:51 +09:00
Robert Lefebvre 28318c4116 AP_MotorsHeli: Move Output functions into parent class 2015-08-31 11:43:50 +09:00
Robert Lefebvre 84102c3e3f AP_MotorsHeli: Rework how servo setup is done. 2015-08-31 11:43:49 +09:00
Robert Lefebvre 345663f705 AP_MotorsHeli: Simplify servo init/reset 2015-08-31 11:43:48 +09:00
Robert Lefebvre b11600aebe AP_MotorsHeli: Move set_delta_phase_angle into _Single class 2015-08-31 11:43:47 +09:00
Robert Lefebvre 3756c6b3f3 AP_MotorsHeli: Create RSC Throttle Curve mode for controlling gas engines. 2015-08-31 11:43:45 +09:00
Robert Lefebvre f853979816 AP_MotorsHeli: run RSC Control function in Output Min function
Move Output_Min() function into Heli_Single class as it will eventually be overloaded by other helicopter class types.
2015-08-31 11:43:44 +09:00
Robert Lefebvre 315f0408ae AP_MotorsHeli: RSC controller to use speed ramp as simple float scalar 2015-08-31 11:27:52 +09:00
Robert Lefebvre 91c7663ca2 AP_MotorsHeli: Set range of new RSC Servo object. 2015-08-31 11:27:51 +09:00
Robert Lefebvre cefa0c28a6 AP_MotorsHeli: RSC Mode 0 no longer a valid mode 2015-08-31 11:27:48 +09:00
Robert Lefebvre 981c96d8bc AP_MotorsHeli: Add more parameter checks 2015-08-31 11:27:47 +09:00
Robert Lefebvre ed08e9d531 AP_MotorsHeli_RSC: Split out rotor speed estimate into it's own function 2015-08-31 11:27:46 +09:00
Robert Lefebvre 064cc63512 AP_MotorsHeli: Colyaw function to check if rotor speed control is above idle 2015-08-31 11:27:45 +09:00
Robert Lefebvre 77e4bf39aa AP_MotorsHeli: rework RSC output() function to implement idle speed function
Also, split out speed_ramp function
2015-08-31 11:27:44 +09:00
Robert Lefebvre c3e7eed299 AP_MotorsHeli_Single: Fix recalc_scalars function 2015-08-31 11:27:42 +09:00
Robert Lefebvre 214d60abb9 AP_MotorsHeli: Create RSC_IDLE param 2015-08-31 11:27:41 +09:00
Robert Lefebvre 27f8d6bcd5 AP_MotorsHeli: Change RSC output() function into a state machine. 2015-08-31 11:27:40 +09:00
Robert Lefebvre 10b0be9e75 AP_MotorsHeli: Fully detail tradheli output functions and move manual servo handling 2015-08-31 11:27:39 +09:00
Robert Lefebvre 7dda0f651a AP_MotorsHeli: Rename tradheli servo objects for clarity 2015-08-31 11:27:38 +09:00
Robert Lefebvre 457d939e77 AP_MotorsHeli: Update includes so that it builds 2015-08-31 11:27:37 +09:00
Fredrik Hedberg e6119cf51f AP_Motors: Fix param indices in AP_MotorsHeli. 2015-08-31 11:27:36 +09:00
Fredrik Hedberg 411947ea7c AP_Motors: Rename output_yaw to move_yaw in AP_MotorsHeli_Single. 2015-08-31 11:27:35 +09:00
Fredrik Hedberg 1e8be73a27 AP_Motors: Fix formatting in AP_MotorsHeli_RSC. 2015-08-31 11:27:34 +09:00
Fredrik Hedberg e6957df54a AP_Motors: Fix param range comment in AP_MotorsHeli. 2015-08-31 11:27:33 +09:00
Fredrik Hedberg 97e09fa9b0 AP_Motors: Move traditional helicopter controls into AP_MotorsHeli_Single.
Original commit by fhedberg, had to fix merge conflicts and now it appears I did the commit?
2015-08-31 11:27:31 +09:00
Fredrik Hedberg af69a20ba5 AP_Motors: Break out yaw output in AP_MotorsHeli. 2015-08-31 11:27:30 +09:00
Fredrik Hedberg feb32f40ed AP_Motors: Break out servo init and reset in AP_MotorsHeli. 2015-08-31 11:27:29 +09:00
Fredrik Hedberg ae9a16dc27 AP_Motors: Move rotor speed control into AP_MotorsHeli_RSC. 2015-08-31 11:27:28 +09:00
Fredrik Hedberg 1bb6b65ce0 AP_Motors: Use C++11 initializers in AP_MotorsHeli. 2015-08-31 11:27:27 +09:00
Andrew Tridgell f6f2973acd AC_WPNav: make changes in WPNAV_ACCEL take effect immediately
this makes it easier to tune the waypoint controller in auto mode
2015-08-31 11:10:35 +10:00
Andrew Tridgell 2c7a113790 AP_GPS: ensure all GPS drivers give headings as 0..360 degrees
this prevents inconsistency between interfaces, and fixes a MAVLink
reporting bug with UAVCAN GPS
2015-08-31 08:24:35 +10:00
Tom Pittenger 15b242832e AP_Mission: lat/lng == 0 bug fix
was using wrong logic to check for lat/lng == 0
2015-08-29 21:17:35 +10:00
Tom Pittenger 41508457e1 AP_Mission: add get_prev_nav_cmd_with_wp_index()
This is different than get_prev_nav_cmd_index() in that it only stores the index if there is a valid lat/lng
2015-08-29 21:17:35 +10:00
Stewart Loving-Gibbard c5f70d22c5 AP_RSSI: Adding RSSI library for reading various kinds of RSSI, with the possibility of adding more.
* Retains ability to read from Analog Pin
* Adds ability to read RSSI from PWM channel value as is done in OpenLRSng, EazyUHF, and various other LRS.
* Handles any type of RSSI that provides RSSI values inverted - i.e. when the low value is the best signal and the high value is the worst signal.
* Has different key names from all existing RSSI parameters to provide for a clean break and easier distinguishing.
2015-08-29 08:05:53 +10:00