Commit Graph

6042 Commits

Author SHA1 Message Date
Andrew Tridgell ead82ee581 HAL_Linux: implement millis64() and micros64() 2014-08-20 08:00:21 +10:00
Andrew Tridgell 6450c84987 HAL_Empty: added dummy millis64() and micros64() 2014-08-20 07:59:21 +10:00
Andrew Tridgell 5a55101703 HAL_SITL: added millis64() and micros64() 2014-08-20 07:57:45 +10:00
Andrew Tridgell 7439d34a5d AP_HAL: add millis64() and micros64() on faster boards
this can be used for much simpler scheduling, without any wrap
handling
2014-08-20 07:55:19 +10:00
Andrew Tridgell d01fa3bfbd AP_Baro: prevent reading the MS5611 too fast
setup the timer start after we've started the conversion to prevent
reading faster than the MS5611 is able to produce values
2014-08-19 21:16:13 +10:00
Andrew Tridgell b9dc2335ee HAL_Linux: run timer thread at average 1kHz without drift
this avoids drift in the 1kHz timer, to avoid bias in the IMU
filtering
2014-08-19 20:03:34 +10:00
Andrew Tridgell 3c2ab31415 AP_InertialSensor: get rid of data_ready for MPU9250
when running off a 1kHz timer and reading at 1kHz it is better to
double sample than it is to skip a sample, as skipping samples will
throw the filter off, whereas a double sample will have minimal effect
2014-08-19 20:03:33 +10:00
Andrew Tridgell 9e01c657e5 AP_InertialSensor: update MPU9250 driver for 1kHz operation
use a time base sample wait, with 1kHz sampling
2014-08-19 20:03:33 +10:00
Andrew Tridgell 532e9aace4 AP_InertialSensor: fixed timer bug in HIL sensors 2014-08-19 20:03:33 +10:00
Andrew Tridgell 8f280d212b HAL_Linux: don't use usleep() in suspend_timer_procs()
usleep can cause a large delay with PREEMPT kernel
2014-08-19 20:03:33 +10:00
Andrew Tridgell 94e14f5dcb HAL_Linux: split off RCOutput class to be specific to PXF and ERLE
this fixes the Replay tool
2014-08-19 20:03:33 +10:00
Andrew Tridgell 2ce219aeb8 HAL_Linux: split RCInput class into generic and PRU implementations
this will make it easier for other boards (such as NAVIO) to implement
their own RCInput mechanism
2014-08-19 20:03:33 +10:00
Andrew Tridgell 12239de00d AP_InertialSensor: fix data_ready return for L3GD20 2014-08-19 10:14:20 +10:00
Andrew Tridgell 21ff578cb0 HAL_VRBrain: prevent read past end of buffer 2014-08-19 10:08:17 +10:00
Andrew Tridgell 0a20d0db60 HAL_PX4: prevent read past end of buffer 2014-08-19 10:08:17 +10:00
Andrew Tridgell b4be93113c HAL_Linux: prevent read past end of buffer 2014-08-19 10:08:17 +10:00
Andrew Tridgell 7286e7acd2 AP_InertialSensor: fixed build errors on APM2 2014-08-19 10:08:17 +10:00
Andrew Tridgell b40bd479c4 HAL_Linux: moved FRAM vs FS choice into HAL_Linux headers 2014-08-19 10:08:17 +10:00
Andrew Tridgell 9fccb5f5ed HAL_Linux: clear more UART flags
this fixes a major timing issue caused by bad UART flags (I suspect
the echo flags) and the GPS auto detection code
2014-08-19 10:08:17 +10:00
Andrew Tridgell c87b0adc29 HAL_Linux: the MS5611 seems to be a bit happier at higher speed
still getting some bogus data, but less
2014-08-19 10:08:17 +10:00
Andrew Tridgell 41e65c2415 AP_Compass: fixed default orientation for PXF 2014-08-19 10:08:17 +10:00
Andrew Tridgell 50068a7c6a AP_InertialSensor: fixed default orientation for PXF board MPU9250 2014-08-19 10:08:16 +10:00
Andrew Tridgell 226b67d357 AP_HAL: make PXf default to MPU9250 2014-08-19 10:08:16 +10:00
Andrew Tridgell 6cc304e486 HAL_Linux: RCOutput should default to 50Hz on all boards 2014-08-19 10:08:16 +10:00
Andrew Tridgell 9d948d5a26 HAL_Linux: fixed name space collision in RCOutput 2014-08-19 10:08:16 +10:00
Andrew Tridgell 721d349922 HAL_Linux: fixed build of BusTest 2014-08-19 10:08:16 +10:00
Andrew Tridgell a4ef512f10 SPIDriver: fixed handling of 0 based SPI bus numbers 2014-08-19 10:08:16 +10:00
Andrew Tridgell 5fb2ad0068 HAL_Linux: fixed safety of RCInput code
don't loop forever waiting for pulses
2014-08-19 10:08:16 +10:00
Víctor Mayoral Vilches 5e5319e23b AP_InertialSensor: MPU9250 cleaning 2014-08-19 10:08:16 +10:00
bugobliterator ac11d282b5 HAL_Linux: Add support for PPM input to HAL_Linux
rcin thread continuously scans for values inside ring buffer maintained by pru with rcinpru0 firmware.
2014-08-19 10:08:16 +10:00
bugobliterator 072c39ea6a AP_HAL: Add option to select Storage type AP_HAL_Boards.h
user can set HAL_STORAGE as USE_FS or USE_FRAM inside AP_HAL_Boards.h as per his/her choice or board setup
2014-08-19 10:08:16 +10:00
bugobliterator 4b2f7cd163 HAL_Linux: Add FRAM HAL driver support for non-volatile storage
Support for File System starage mode is retained, appropriate Storage
mode can be set by defining USE_FS_STORAGE for File System storage
aand US_FRAM_STORAGE for FRAM storage.  Note: FS storage and FRAM
storage are never synced as of now.
2014-08-19 10:08:16 +10:00
Victor Mayoral Vilches 8a71fdf092 HAL_Linux: minor syntax fix in UARTDriver
Typo noticed by @hcervino.
2014-08-19 10:08:16 +10:00
Silvia b6baf78e73 HAL_Linux:duplicate `#include <sys/types<`deleted 2014-08-19 10:08:16 +10:00
Silvia 7fd0e8345d HAL_Linux: Duplicate `#include <unistd.h>`deleted 2014-08-19 10:08:16 +10:00
Víctor Mayoral Vilches 37793cd7fa AP_HAL_Namespace: Change LSM9DS0 into two different devices. 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches df1de4efd6 AP_InertialSensor: Driver added for the LSM303D 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches 8968647873 AP_InertialSensor: INS_generic example, add support L3GD20 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches 0f908a8ccd HAL_Linux: Add L3GD20 to the AP_InertialSensor header 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches e272ed8d96 AP_HAL: Add support for L3GD20 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches 556d46a4ef AP_InertialSensor: L3GD20 driver added
L3GD20 gyro userspace sensor added. The driver constructs
over the implementation of the PX4 Dev Team at
https://github.com/diydrones/PX4Firmware.
2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches bfacf08c30 HAL_Linux: LSM9DS0 legacy driver moved to AP_InertialSensor/LSM9DS0/
The new LSM9DS0 driver will consist of the AP_InertialSensor_L3GD20 and
the AP_InertialSensor_LSM303D. For that reason the old LSM9DS0
(consisting of gyro and accel+mag implemented on a single class) has
been moved to a folder.

Legacy LSM9DS0 didn't probe to receive "correct" data.
2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches 82186a3961 HAL: Add two new SPI devices
SPIDevice_LSM303D and SPIDevice_L3GD20 added to the enum.
The code has also been formated.
2014-08-19 10:08:15 +10:00
Andrew Tridgell 60e501d5ab AP_GPS: moved UBX log headers to DataFlash
headers were not always being written
2014-08-19 10:08:15 +10:00
Andrew Tridgell 2b02fdbbc9 DataFlash: moved UBX logging headers to DataFlash 2014-08-19 10:08:15 +10:00
NullVoxPopuli c672b3e324 Copter: Added support for V-Shaped and A-Shaped VTail Quadcopter frames
Signed-off-by: NullVoxPopuli <LPSego3+dev@gmail.com>
2014-08-18 14:31:01 +09:00
Andrew Tridgell d8fe4f366d APM_OBC: added AFS_RC_FAIL_MS, AFS_MAX_GPS_LOSS and AFS_MAX_COM_LOSS 2014-08-17 18:06:42 +10:00
Andrew Tridgell 4e97c98fa1 APM_OBC: removed use of extern function 2014-08-17 09:13:29 +10:00
Randy Mackay de747d215a Revert "GCS_MAVLink: send radio_in using rcmap"
This reverts commit 0881ccbee0.
2014-08-16 20:31:14 +09:00
Emile Castelnuovo 0d62b15292 AP_HAL: added missing CONFIG_HAL_BOARD_SUBTYPE #define for HAL_BOARD_VRBRAIN 2014-08-16 20:28:57 +10:00
Emile Castelnuovo 3b53c167a0 AP_Compass: VRBRAIN. Deal with external mag connected on internal I2C on VRBRAIN 4.5
This enables user to set the external parameter to true even if only one compass is connected
2014-08-16 20:28:50 +10:00
Emile Castelnuovo bbb9925c47 DataFlash: Added four more channels for logging 2014-08-16 20:28:46 +10:00
Andrew Tridgell 8f3dad0d1c APM_Control: increase available range for roll and pitch 2014-08-16 18:07:22 +10:00
Randy Mackay 0881ccbee0 GCS_MAVLink: send radio_in using rcmap 2014-08-16 15:27:03 +09:00
Randy Mackay d6890ce878 Notify: remove ToshibaLED support from APM
This saves about 1k of precious flash
2014-08-16 10:30:30 +09:00
Andrew Tridgell b38c9544f9 AP_RangeFinder: make values clearer for APM2 2014-08-15 20:28:22 +10:00
Randy Mackay 0c4ee422a4 Rally: fix comment to clarify altitudes are absolute 2014-08-14 21:10:21 +09:00
Randy Mackay fd5dee96e4 BaroGlitch: check baro health after alt calculation
Also correct type of distance_cm internal variable
2014-08-14 16:03:33 +09:00
Randy Mackay 424a65663a Baro: init members to resolve compiler warning 2014-08-14 16:03:30 +09:00
Randy Mackay 53b073148b BaroGlitch: use baro healthy() 2014-08-14 16:03:21 +09:00
Randy Mackay 280db8725a Arming: use baro healthy() function 2014-08-14 16:03:18 +09:00
Randy Mackay 78b1bf8282 Baro: example sketch to use healthy() function 2014-08-14 16:03:15 +09:00
Randy Mackay 76634ee8c3 Baro_PX4: use healthy flag 2014-08-14 16:03:12 +09:00
Randy Mackay d29fe51cb3 Baro_VRBrain: use healthy flag 2014-08-14 16:03:09 +09:00
Randy Mackay 24db492131 Baro_MS5611: use healthy flag 2014-08-14 16:03:06 +09:00
Randy Mackay 72f6985bd8 Baro_HIL: use healthy flag 2014-08-14 16:03:04 +09:00
Randy Mackay fdb38dec5f Baro_BMP085: use healthy flag 2014-08-14 16:03:02 +09:00
Randy Mackay 330d883f97 Baro: add altitude sanity check
healthy flag made protected
healthy accessor fn added which also check latest calculated altitude
was ok
2014-08-14 16:02:59 +09:00
Randy Mackay e9fbea9497 Baro: make get_altitude_difference const 2014-08-14 16:02:55 +09:00
Andrew Tridgell df3c565cd8 AP_L1_Control: prevent another NaN in L1 2014-08-14 14:10:03 +10:00
Randy Mackay 58257e3858 AC_AttControl: set rate D term filter from ins filter 2014-08-14 11:47:35 +09:00
Randy Mackay 51f40fe3d6 INS: add accessor for mpu6k filter 2014-08-14 11:47:23 +09:00
lthall 329118b7c9 Copter: AC_ATT correct yaw error calculation 2014-08-14 11:47:13 +09:00
lthall 90dc9411a5 Copter: ACRO Error calculation fix 2014-08-14 11:47:08 +09:00
Randy Mackay 46369badb3 ServoRelayEvents: init members to resolve compiler warning 2014-08-14 11:27:35 +09:00
Randy Mackay d026749f1b Notify: add break to resolve compiler warning 2014-08-14 11:27:34 +09:00
Randy Mackay 039f4740ce Mount: correct comment on set_mode_to_default time 2014-08-14 11:27:34 +09:00
Randy Mackay 5614e42063 Mount: init members to resolve compiler warnings 2014-08-14 11:27:33 +09:00
Randy Mackay 9b9f6cd47a AC_MotorsHeli: init member to resolve compiler warning 2014-08-14 11:27:33 +09:00
Randy Mackay 0e7cbd28c8 INS_HIL: init members to resolve compiler warnings 2014-08-14 11:27:32 +09:00
Randy Mackay 534922adc3 GPSGlitch: init members to resolve compiler warnings 2014-08-14 11:27:31 +09:00
Randy Mackay a6de3283b6 AHRS_DCM: init members to resolve compiler warnings 2014-08-14 11:27:31 +09:00
Randy Mackay 3fd2b3b4a1 AC_WPNav: init members to resolve compiler warnings 2014-08-14 11:27:30 +09:00
Randy Mackay af28b74944 Baro_BMP085: init members to resolve compiler warnings 2014-08-14 11:27:29 +09:00
Andrew Tridgell adb9d462aa GCS_MAVLink: regenerated MAVLink headers 2014-08-14 11:01:59 +10:00
Andrew Tridgell f9d5715754 GCS_MAVLink: merged latest upstream common.xml 2014-08-14 11:01:41 +10:00
Andrew Tridgell 3357df9529 AP_Mission: fixed example sketch 2014-08-14 10:48:31 +10:00
Andrew Tridgell e1a13edf3d RC_Channel: fixed example build 2014-08-13 22:12:30 +10:00
Andrew Tridgell 184420355d PID: fixed example build 2014-08-13 22:12:24 +10:00
Andrew Tridgell b16d84023e Filter: fixed example build 2014-08-13 22:12:20 +10:00
Andrew Tridgell 5025f04cb1 AP_OpticalFlow: fixed example build 2014-08-13 22:12:14 +10:00
Andrew Tridgell c76c3457fd AP_Menu: fixed example build 2014-08-13 22:12:08 +10:00
Andrew Tridgell 184c4c8ac5 AP_Math: fixed example build 2014-08-13 22:12:04 +10:00
Andrew Tridgell 8e15b4db0d HAL_Empty: fixed example build 2014-08-13 22:12:00 +10:00
Andrew Tridgell 928024854e HAL_AVR: fixed example build 2014-08-13 22:11:53 +10:00
Andrew Tridgell b61ecb47af AP_HAL: fixed example build 2014-08-13 22:11:46 +10:00
Andrew Tridgell 2502ca3ec7 AP_Declination: fixed example build 2014-08-13 22:11:30 +10:00
Andrew Tridgell c49981c03d AP_Compass: fixed example build 2014-08-13 22:11:25 +10:00
Andrew Tridgell 1c94b39d6e AP_ADC: fixed example build 2014-08-13 22:11:21 +10:00
Andrew Tridgell 83dc9bf5b3 AC_PID: fixed example build 2014-08-13 22:11:16 +10:00
Andrew Tridgell ea26f15e5e GCS_Console: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell 6c19f23ace DataFlash: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell 8540174854 AP_Rangefinder: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell e43cac1b26 AP_Notify: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell fddf895d66 AP_Mount: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell 2e83555892 AP_Motors: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell ce193f5c5c AP_Mission: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 917c9f7865 AP_Math: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 24251a7e12 AP_InertialSensor: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell f0f25eb1d7 AP_InertialNav: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 41f7ad42d4 HAL_PX4: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell baa5aeea81 HAL_FLYMAPLE: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 4bb72f8d85 HAL_AVR: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 5cca163b1f AP_HAL: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell b08b76b8ff AP_GPS: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 40709f655e AP_BattMonitor: fixed example build 2014-08-13 21:46:22 +10:00
Andrew Tridgell a400cbc922 AP_Baro: fixed example build 2014-08-13 21:46:14 +10:00
Andrew Tridgell f6f51ceebe AP_Airspeed: fixed example build 2014-08-13 21:46:09 +10:00
Andrew Tridgell 0f5b65e40e AP_AHRS: fixed example build 2014-08-13 21:46:04 +10:00
Andrew Tridgell 759a55d633 AC_WPNav: fixed example build 2014-08-13 21:45:56 +10:00
Andrew Tridgell e2b813480f AC_Sprayer: fixed example build 2014-08-13 21:45:49 +10:00
Andrew Tridgell f721e020f5 AC_Fence: fixed example build 2014-08-13 21:45:43 +10:00
Andrew Tridgell a9153519dc AC_AttitudeControl: fixed example build 2014-08-13 21:45:38 +10:00
Andrew Tridgell 2297c6bcd2 AP_TECS: added TECS_LAND_SINK parameter
this controls the sink rate for the final stage of landing
2014-08-13 21:38:05 +10:00
Andrew Tridgell 52cdd6394f StorageManager: cope with a wider range of storage sizes 2014-08-13 21:35:26 +10:00
Andrew Tridgell c864f3eed5 HAL_PX4: enable full storage size on PX4 2014-08-13 18:46:45 +10:00
Andrew Tridgell e34463a4bb AP_HAL: flymaple build fix 2014-08-13 18:46:44 +10:00
Andrew Tridgell a70b195a4a SITL: fixed limits on storage 2014-08-13 18:46:44 +10:00
Andrew Tridgell 984064f3d3 AP_InertialSensor: fixed example build 2014-08-13 18:46:44 +10:00
Andrew Tridgell d40d0f6aec AP_HAL: removed old storage type read/write functions
not needed any more
2014-08-13 18:46:44 +10:00
Andrew Tridgell 2d9e9879a2 AP_Limits: convert to using StorageManager 2014-08-13 18:46:43 +10:00
Andrew Tridgell 7a12ff0271 AP_Mission: convert to using StorageManager 2014-08-13 18:46:43 +10:00
Andrew Tridgell 7cbb326405 AP_Rally: convert to using StorageManager 2014-08-13 18:46:43 +10:00
Andrew Tridgell f133f45c3c AP_Param: convert to using StorageManager 2014-08-13 18:46:43 +10:00
Andrew Tridgell f748e07ecf AP_HAL: ensure we have subtypes for all boards 2014-08-13 18:46:43 +10:00
Andrew Tridgell 3640ae9cdf SITL: allow for different storage sizes 2014-08-13 18:46:43 +10:00
Andrew Tridgell e53c872e1f StorageManager: added example sketch
note: this destroys the data
2014-08-13 18:46:43 +10:00
Andrew Tridgell 66a21c4c33 StorageManager: first version of storage management library
used to divvy up eeprom/fram and allow for expandable storage
2014-08-13 18:29:04 +10:00
Mikhail Avkhimenia c42cc12f23 AP_Notify: Add dummy LED configuration for Navio 2014-08-12 22:13:00 +10:00
Mikhail Avkhimenia 34da221c3d AP_InertialSensor: Use MPU9250 DRDY pin only on boards that support it 2014-08-12 22:13:00 +10:00
Mikhail Avkhimenia a09fbb4171 HAL_Linux: Add SPI configuration for Navio
This changes the SPI bus number to be zero based on Linux
2014-08-12 22:13:00 +10:00
Mikhail Avkhimenia 83bbee491c AP_Baro_MS5611: add address switch for Navio board 2014-08-12 22:09:29 +10:00
Mikhail Avkhimenia 784533e9c8 AP_HAL: add configuration for HAL_BOARD_SUBTYPE_LINUX_NAVIO 2014-08-12 22:09:17 +10:00
Andrew Tridgell bc95e746ce GCS_MAVLink: fixed example sketch builds 2014-08-11 11:06:17 +10:00
Andrew Tridgell 778b5e8a16 AP_PerfMon: removed unusued commented code 2014-08-11 09:39:02 +10:00
Andrew Tridgell 47655ee78e DataFlash: removed more unusued BufferRead functions 2014-08-11 09:39:02 +10:00
Daniel Frenzel 74460cd526 DataFlash: Delete unused BufferRead function
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:42 +10:00
Daniel Frenzel dd705e3fdb AP_Param: signed/unsigned conversion
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:34 +10:00
Daniel Frenzel 1c7e8f8fb2 AP_Mission: Consecutive return, break, continue, goto or throw statements are unnecessary.
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:26 +10:00
Daniel Frenzel c97b460a6b AP_GPS: removed wrong reassignment of msec
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:19 +10:00