Commit Graph

2840 Commits

Author SHA1 Message Date
Pat Hickey
4c31cc0c2b AP_HAL_AVR: add semaphore to I2CDriver 2013-01-04 16:19:38 -08:00
Pat Hickey
3da864499d AP_HAL Semaphore: don't use limits, they don't work on c++ 2013-01-04 16:19:15 -08:00
James Bielman
bb4474fa6d AP_HAL_SMAACM: Add timeout for SPI transfers.
- Detects lockup in the lower level SPI driver.
- Add scheduler task tags for FreeRTOS debugging.
2013-01-04 15:44:21 -08:00
James Bielman
eca1417858 AP_HAL: Add semaphores to I2C driver.
- Guard I2C transactions with this semaphore in the MS5611 and
  HMC5843 drivers.
2013-01-04 15:43:43 -08:00
Andrew Tridgell
30447018d5 HAL_PX4: handle %S in format strings 2013-01-05 08:10:07 +11:00
Andrew Tridgell
c16db01395 HAL_SITL: add pragma pack
may be needed on some systems
2013-01-05 08:01:30 +11:00
Andrew Tridgell
08d518e07f HAL_PX4: switch to libc vdprintf()
vdprintf has now been added to NuttX
2013-01-05 08:01:10 +11:00
Andrew Tridgell
c15bf95e19 AP_Baro: fixed example build on AVR 2013-01-04 22:45:02 +11:00
Andrew Tridgell
84bd10d279 HAL_PX4: minor cleanups 2013-01-04 22:27:04 +11:00
Andrew Tridgell
aa64a41512 AP_Baro: removed debug line 2013-01-04 22:26:51 +11:00
Andrew Tridgell
5829d44a22 HAL_PX4: disable failsafe handler
this won't work until we can set RC output values in timers
2013-01-04 22:26:16 +11:00
Andrew Tridgell
0fcc6d7389 HAL_PX4: added an RC Output driver 2013-01-04 22:25:36 +11:00
Andrew Tridgell
4fe7ad6267 AP_Baro: added averaging to PX4 baro driver 2013-01-04 21:08:20 +11:00
Andrew Tridgell
26bc278181 AP_Compass: use queue length 10 in PX4 driver
and remove unnecessary poll() call
2013-01-04 20:12:03 +11:00
Andrew Tridgell
dbcaa4cf3c AP_Baro: average over multiple samples in PX4 baro driver 2013-01-04 20:11:30 +11:00
Andrew Tridgell
44837a11f2 HAL_PX4: added baudrate support to UART driver 2013-01-04 19:42:30 +11:00
Andrew Tridgell
965fc8a9d1 HAL_PX4: enable uartB as GPS port 2013-01-04 19:41:50 +11:00
Andrew Tridgell
2f111b857b AP_GPS: ported test code for PX4 2013-01-04 19:41:36 +11:00
Andrew Tridgell
f701d0cc85 AP_GPS: a couple more places where we should restart
this prevents us losing a byte
2013-01-04 19:40:49 +11:00
Andrew Tridgell
3bfff4bd6d AP_GPS: pragma pack is needed on ARM
we rely on GPS data structures having byte alignment. Luckily GCC can
cope with this.
2013-01-04 19:39:15 +11:00
Andrew Tridgell
741174f5d5 AP_Compass: first cut at a PX4 compass driver 2013-01-04 16:21:24 +11:00
Andrew Tridgell
2ac6541526 AP_Baro: added PX4 barometer driver 2013-01-04 14:58:24 +11:00
Andrew Tridgell
cf5d102912 AP_Common: added board ID for PX4 2013-01-04 14:26:28 +11:00
Andrew Tridgell
fd23f6bd33 InertialSensor: added PX4 example sketch 2013-01-04 14:26:14 +11:00
Andrew Tridgell
ae09b31176 AP_InertialSensor: added PX4 gyro/accel driver 2013-01-04 14:25:57 +11:00
Andrew Tridgell
9f423a24ad HAL_PX4: yield CPU in delay()
this allows other apps to run
2013-01-04 12:34:35 +11:00
Pat Hickey
bc3b6fcb9f AP_HAL_AVR_SITL: remove begin/end atomic, adjust timer procs 2013-01-03 17:33:14 -08:00
Pat Hickey
688ec864dc AP_HAL_AVR: deprecate begin/end atomic, timer procs run on resume 2013-01-03 17:33:14 -08:00
Pat Hickey
ea2a03344e AP_HAL Scheduler: remove begin_atomic and end_atomic from api
* application-level atomic operations can now only be defined in
  terms of suspend/resume_timer_procs
2013-01-03 17:33:14 -08:00
James Bielman
8f4a2e4c0e AP_HAL_SMACCM: Scheduler timer process implemented correctly.
- Use "g_atomic" for suspend/resume timer procs.
2013-01-03 17:33:13 -08:00
James Bielman
d84ba8ef59 Use HAL suspend/resume timer procs rather than atomic.
- Preparation for removing begin/end atomic.
2013-01-03 17:33:13 -08:00
James Bielman
578c4859e4 AP_HAL_SMACCM: Update to new semaphore interface.
- Renamed files to match AVR HAL.
2013-01-03 17:33:13 -08:00
Andrew Tridgell
155fca8a4b HAL_PX4: make APM sketches into daemons
this also moves uartA onto UART5, allowing ttyS0 for nsh
2013-01-04 11:14:35 +11:00
Pat Hickey
8503f3e2ae Optflow: uses new Semaphore 2013-01-03 13:48:07 -08:00
Pat Hickey
d808c19c10 AP_InertialSensor_MPU6000: uses new semaphores
* some refactoring to fix differences between timerprocess
  and non-timerprocess usage
2013-01-03 13:48:07 -08:00
Pat Hickey
5d91f342bb AP_Baro_MS5611: uses new semaphore lib 2013-01-03 13:48:07 -08:00
Pat Hickey
a556a95565 AP_ADC: uses new semaphore interface 2013-01-03 13:48:07 -08:00
Pat Hickey
390e96311e DataFlash: change to new style Semaphore library 2013-01-03 13:48:07 -08:00
Pat Hickey
f178d1bd02 AP_HAL_Empty: implement new Semaphore interface 2013-01-03 13:48:07 -08:00
Pat Hickey
2d6b649aa4 AP_HAL_AVR: Semaphore unit test 2013-01-03 13:48:07 -08:00
Pat Hickey
0029148b3a AP_HAL_AVR: Implements new Semaphore interface 2013-01-03 13:48:07 -08:00
Pat Hickey
74e2ba2168 AP_HAL_AVR Scheduler: _in_timer_proc is volatile protected
* and AVRSemaphore is a friend, so it can read _in_timer_proc
  to know the current context.
2013-01-03 13:48:07 -08:00
Pat Hickey
81d77d4a70 AP_HAL: New semaphore interface
* it now looks like a semaphore!
2013-01-03 13:48:07 -08:00
James Bielman
acf05a29ee AP_InertialSensor_MPU6000: Poll status register if there is no data ready pin. 2013-01-03 13:48:06 -08:00
James Bielman
264db3670e AP_Baro: Add CONFIG_MS5611_SERIAL option to choose between SPI and I2C.
- Update ArduCopter and ArduPlane modules to pass the correct serial
  driver to the MS5611 driver.
- Update barometer examples, assuming SPI.
2013-01-03 13:48:06 -08:00
James Bielman
5753ae5692 AP_Baro: Add I2C support to MS5611 driver. 2013-01-03 13:48:06 -08:00
James Bielman
a4af314b57 Add AP_HAL_SMACCM implementation.
- Add a board definition for SMACCMPilot.
- Support the SMACCM HAL in required utility libraries.
2013-01-03 13:48:06 -08:00
Andrew Tridgell
1fc95a2d45 HAL_PX4: support PPM RC Input
HIL flying now works properly
2013-01-04 08:31:23 +11:00
Andrew Tridgell
e729a8b277 AP_HAL: rename Semaphores cpp file to match header 2013-01-03 21:36:48 +11:00
Andrew Tridgell
38bccee230 HAL_PX4: initial RCInput driver (overrides only) 2013-01-03 21:30:35 +11:00