Commit Graph

1012 Commits

Author SHA1 Message Date
Peter Barker 92111eea61 AP_HAL: require HALs implement rcin.protocol() to return RC protocol 2019-06-18 11:35:38 +10:00
Peter Barker b902316139 AP_HAL: remove buggy write implementation 2019-06-17 17:20:57 +10:00
Peter Barker c3a99c8eb0 AP_HAL: move dump_strack_trace into HAL
Use a weak definition to allow subclasses to override
2019-06-13 09:25:42 +10:00
heitiane 931367a7ea AP_HAL: fix RCOutput, RCOutput2 and RCInputToRCOutput examples to prevent the failure of reading and writing channels. 2019-06-11 10:27:44 +10:00
Vincent 3177d24429 AP_HAL: Make linux hardware define more readable 2019-06-04 10:00:09 +10:00
Andrew Tridgell 4c5b651296 AP_HAL: removed board type for mRoControlZeroF7 2019-05-30 15:39:57 +10:00
Pierre Kancir a4330f90b1 AP_HAL: add HAL_BARO_LPS22H_I2C 2019-05-22 07:37:20 +10:00
Patrick José Pereira fe3d4e2c3b AP_HAL: Utility: Add missing header guard in packetise
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Andrew Tridgell e64c5ef354 AP_HAL: added SPI and I2C counters 2019-05-17 08:56:06 +10:00
Andrew Tridgell 911a99b79e AP_HAL: removed hal argument to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell c786674442 AP_HAL: record mavlink msg IDs and semaphore line 2019-05-15 15:33:48 +10:00
Andrew Tridgell b1ed77bee9 AP_HAL: added EXPECT_DELAY() macro
this prevents nesting errors in use of EXPECT_DELAY(), ensuring we
always close the expected delay
2019-05-15 15:33:48 +10:00
Andrew Tridgell 8f973da4b5 AP_HAL: moved the WITH_SEMAPHORE() logic into AP_HAL
this is needed to allow us to record the location of a blocking
semaphore to track down bugs where we have a semaphore deadlock
2019-05-15 15:33:48 +10:00
Andrew Tridgell 45d5e7f6d2 AP_HAL: added persistance for internal errors 2019-05-15 15:33:48 +10:00
Andrew Tridgell 4b298aa80e AP_HAL: add scheduler state to persistent_data 2019-05-15 15:33:48 +10:00
Andrew Tridgell 11c123e4da AP_HAL: added persistent_data structure
this is a much simpler way to save data for a watchdog reset
2019-05-15 15:33:48 +10:00
Phillip Kocmoud db57b6c4f3 AP_HAL: added DPS280 on SPI / added board type for mRoControlZeroF7 2019-05-10 15:05:42 +10:00
Andrew Tridgell c63459c237 AP_HAL: added save/restore of attitude in backup registers 2019-04-22 16:53:35 +10:00
Andrew Tridgell bd84c0a8df AP_HAL: added save/restore of home to backup registers 2019-04-22 16:53:35 +10:00
Andrew Tridgell 4a3687fcf6 AP_HAL: added was_watchdog_armed()
allow decisions to be based on whether this is a watchdog reset and we
were armed
2019-04-22 16:53:35 +10:00
Andrew Tridgell 8d2f094257 AP_HAL: added was_watchdog_safety_off()
used to restore safety state on watchdog reset
2019-04-22 16:53:35 +10:00
Andrew Tridgell 88352b73bb AP_HAL: added expect_delay_ms() to Scheduler
used to notify scheduler of long expected delay in main thread
2019-04-22 16:53:35 +10:00
Andrew Tridgell 7f96d4ad12 AP_HAL: added was_watchdog_reset() 2019-04-22 16:53:35 +10:00
Andrew Tridgell 65d051cbc9 AP_HAL: added hal.flash driver
needed for semaphore
2019-04-11 13:22:53 +10:00
murata dc452d41d2 AP_HAL: Change to shared CRC16 method 2019-04-09 12:50:17 +10:00
Siddharth Purohit 0d4725d6c6 HAL: add Invensense register bank based sensor types 2019-03-06 20:47:10 +11:00
Andrew Tridgell 20d762293d AP_HAL: remove more px4 remnants 2019-02-27 20:32:37 +11:00
Andrew Tridgell dcc038dc83 AP_HAL: prevent a zero length leading buffer in peekiovec 2019-02-26 16:18:26 +11:00
Peter Barker 8efda2b792 AP_HAL: GCS_MAVLink takes care of mavlink capabilities 2019-02-19 13:14:52 +11:00
Peter Barker e4e453402c AP_HAL: rearrange headers for consistency
Move attribute definitions all into AP_Common, rather than being split between two files

Remove unused SITL_printf macros

Stop AP_Common including board information

Include AP_Common.h in AP_HAL::Sempahore for WARN_IF_UNUSED; this was the cause of a circular import problem fixed by other commits in this patch.
2019-02-15 08:15:45 +11:00
LukeMike e15d2c0f89 HAL_ChibiOS: added ChibiOS configuration of VR Brain 5.4 2019-01-24 18:41:38 +11:00
LukeMike 33f7f5b7b6 HAL_ChibiOS: added ChibiOS configuration for VR Core 1.0 2019-01-24 18:41:38 +11:00
LukeMike f615ab9a0a HAL_ChibiOS: added ChibiOS configuration for VR Brain 5.1 2019-01-24 18:41:38 +11:00
Siddharth Purohit 504cfd8989 AP_HAL: add flag for enable/disabling filters 2019-01-23 15:57:05 +11:00
Andrew Tridgell c04f1180c9 AP_HAL: removed F4Light 2019-01-21 21:57:21 +11:00
mirkix 506da9ac42 AP_HAL: enable UAVCAN for bbbmini, blue and pocket 2019-01-21 08:08:59 +11:00
Randy Mackay 06bb02fab7 AP_HAL: minor format fixes to CAN 2019-01-18 17:30:28 +11:00
LukeMike 45c5979999 AP_HAL: added define of ChibiOS sub type for VR Brain boards 2019-01-18 11:49:19 +11:00
Michael du Breuil 44079dcc46 AP_HAL: Add scripting heap 2018-12-31 19:25:23 -07:00
Andrew Tridgell 4889625826 AP_HAL: added set_slowdown() to SPIDevice
used to slow down a SPI device below normal high speed operation
2018-12-31 08:00:14 +11:00
Andrew Tridgell d8cf1997d2 AP_HAL: added fs_init() to Util API 2018-12-31 08:00:14 +11:00
Andrew Tridgell 1fd1614e34 AP_HAL: added locking against read for UARTs 2018-12-29 15:58:22 +11:00
Peter Barker 24653a33ed SITL: make socket manipulation functions bool rather than void
... so callers can check if they succeeded or not
2018-12-18 08:51:01 +11:00
Peter Barker 8a0e3dd657 AP_HAL: add millis16 to HAL; provide weak implementation
This wraps every minute or so - but if you only need to track intervals
under ~65 seconds could save RAM
2018-12-10 12:52:41 +09:00
Andrew Tridgell 8907506c18 AP_HAL: added replacement for memrchr() 2018-12-06 13:32:09 +11:00
Andrew Tridgell a0be4f4c8d AP_HAL: fixed build and comments 2018-12-06 11:12:40 +11:00
Andrew Tridgell d01f5ae6c8 AP_HAL: added mavlink_packetise()
used for aligning MAVLink packets on UDP on packet boundaries
2018-12-06 11:12:40 +11:00
Andrew Tridgell 4cfb1b04ad AP_HAL: define HAL_BOARD_STORAGE_DIRECTORY for sitl, px4 and chibios 2018-11-29 16:36:29 +11:00
Siddharth Purohit df7d0d1971 AP_HAL: add support for unformatted board id 2018-11-29 16:36:29 +11:00
Andrew Tridgell e629845f00 AP_HAL: minimize features on px4-v1 2018-11-26 13:29:40 +11:00
Andrew Tridgell bed7939969 AP_HAL: added support for swapping RX and TX pins 2018-11-20 18:25:20 +11:00
Andrew Tridgell f2cd6e9a05 AP_HAL: added set_reversible_mask() 2018-11-16 08:33:35 +11:00
Andrew Tridgell a4c532edff AP_HAL: fixed typo in fmax macro 2018-11-15 14:39:11 +11:00
Andrew Tridgell 58ed5a123c AP_HAL: added HalfDuplex UART option 2018-11-14 19:05:09 +11:00
Andrew Tridgell 37fc6e8b1c AP_HAL: added inversion options 2018-11-14 19:05:09 +11:00
Michael du Breuil 9a9e715af8 AP_HAL: Define HAL_HAVE_SERVO_VOLTAGE 2018-11-12 23:29:04 +00:00
Andrew Tridgell 9ea03e085d AP_HAL: added readptr() and advance() to ObjectBuffer
this gives a more efficient way of accessing an ObjectBuffer, which
reduces interrupt latency in SoftSigReader
2018-11-07 07:35:45 +11:00
Andrew Tridgell 6c6dabc33c AP_HAL: set default batt monitoring for bebop and disco 2018-10-31 20:30:35 +11:00
Peter Barker f8b1203399 AP_HAL: provide method returning approximate link bandwidth 2018-10-30 19:31:37 +11:00
Kevin Lopez Alvarez ab7c7afd1d AP_HAL: add ChibiOS FMUv4pro 2018-10-21 09:59:44 +11:00
Peter Barker f90dd0c156 AP_HAL: add simple tests for null-termination 2018-10-21 07:54:30 +11:00
Peter Barker 33e3d6e254 AP_HAL: Util: make vsnprintf and snprintf always null-terminate
The C++ standard indicates these functions always return a
null-terminated string.  We should rename these functions if we're not
going to conform to the standards.

From https://en.cppreference.com/w/cpp/io/c/vfprintf :

"Writes the results to a character string buffer. At most buf_size-1
characters are written. The resulting character string will be
terminated with a null character"

We are still not standards-compliant in the case a length of 0 is passed
in, returning 0 where we should return the space that would be required
to store the formatted string.
2018-10-21 07:54:30 +11:00
Andrew Tridgell 5924816bbe AP_HAL: removed hal.util->new_semaphore()
replaced with HAL_Semaphore
2018-10-17 12:54:22 +11:00
Andrew Tridgell ed71790945 AP_HAL: fixed PX4 LED polarity 2018-10-09 20:25:49 +09:00
Michael du Breuil 73901274b0 AP_HAL: Define a scripting base priority 2018-10-09 10:08:52 +11:00
Michael du Breuil 6544f16339 AP_HAL: Make BBBlue use AP_BoardLED2 2018-09-19 22:58:46 +01:00
Michael du Breuil 6f7ced73d6 AP_HAL: Remove bad GPIO LED pins on NavIO2 2018-09-19 22:58:46 +01:00
Siddharth Purohit 9a2eea9769 AP_HAL: disable float print methods for non FPU controllers 2018-09-19 12:14:15 +10:00
Siddharth Purohit 5e4f76886a AP_HAL: add chibios hal header to use uC specific defines 2018-09-19 12:14:15 +10:00
Siddharth Purohit c546bec999 AP_HAL: do not use ch for channel, its used as a global var under ChibiOS 2018-09-19 12:14:15 +10:00
Andrew Tridgell eec3a2ab31 AP_HAL: added FOREACH_I2C_MASK() macro 2018-09-07 08:36:02 +10:00
Andrew Tridgell b4ecc347d7 AP_HAL: always define HAL_WITH_UAVCAN on px4 2018-09-05 08:52:47 +10:00
Peter Barker 15ae453205 AP_HAL: fix RCInput example 2018-08-31 21:08:11 +09:00
Peter Barker fcacdb42bb AP_HAL: define base-class attach_interrupt to return false 2018-08-31 08:32:08 +10:00
Andrew Tridgell 55dfefb2d6 AP_HAL: added HAL_Semaphore_Recursive 2018-08-25 15:44:36 +10:00
Peter Barker 74263f8412 AP_HAL: add attach_interrupt that takes a functor, not a AP_HAL::Proc
AP_HAL: add type-safety for interrupt types

AP_HAL: remove interrupt-low and interrupt-high, and interrupt-none

It is possible that the radio needs very tight timings - do not force
the use of the functor interface

AP_HAL: add detach_interrupt method
2018-08-21 20:34:01 +09:00
Peter Barker c846a13d12 AP_HAL: functor: add != override 2018-08-21 20:34:01 +09:00
Andrew Tridgell 0a73c3492d AP_HAL: support HAL_Semaphore type 2018-08-16 12:40:10 +10:00
Hwurzburg 5f72c9040e AP_OSD: Adding flight distance and summary panels for OSD 2018-08-16 12:00:50 +10:00
Francisco Ferreira 0645a5b11a
AP_HAL: introduce a CANProtocol interface and remove HAL CAN thread management 2018-08-12 13:35:01 +01:00
Andrew Tridgell 1fe6c7b497 AP_HAL: added chanmask to serial_setup_output() 2018-08-04 19:29:13 +10:00
Lucas De Marchi 099eefee87 AP_HAL: Chibios: HAL_GPIO_PIN_SAFETY_IN implies HAL_HAVE_SAFETY_SWITCH 2018-08-02 13:15:02 -07:00
Lucas De Marchi 7f984f2700 AP_HAL: linux: disable safety switch
Linux boards don't really handle the safety switch.
2018-08-02 13:15:02 -07:00
Lucas De Marchi 2336d2214b AP_HAL: sitl: disable safety switch
sitl doesn't really handle the safety switch and it's actually disabled
by AP_FEATURE_SAFETY_BUTTON.
2018-08-02 13:15:02 -07:00
Andrew Tridgell 949324ff2b AP_HAL: added duration to toneAlarm_set_buzzer_tone 2018-07-30 14:02:12 +10:00
Jonathan Challinger f936b1dbc2 AP_HAL: change tonealarm interface 2018-07-30 14:02:12 +10:00
Andrew Tridgell cb19d4dffc AP_HAL: added toneAlarm_set_tune_string 2018-07-20 14:37:16 +10:00
Andrew Tridgell 0fc6ca22f7 AP_HAL: setup HAL_I2C_INTERNAL_MASK for ChibiOS 2018-07-14 17:51:50 +10:00
Andrew Tridgell 464dc9102f AP_HAL: added device types for SITL
and fixed a stack init bug for make_bus_id
2018-07-13 10:19:01 +10:00
Michael du Breuil 3419b045e1 AP_HAL: Remove GPIO::analogPinToDigitalPin() 2018-07-11 23:09:52 -07:00
Andrew Tridgell d35abe67ae AP_HAL: added optional healthy check on storage object
used to check parameter storage is functional
2018-07-10 15:41:44 +10:00
Andrew Tridgell 4939f30ec4 AP_HAL: make linux internal i2c be 0xffff
based on feedback from Lucas
2018-07-10 15:39:47 +10:00
Andrew Tridgell b19219d636 HAL_Linux: allow for 16 I2C buses on Linux 2018-07-10 15:39:47 +10:00
Andrew Tridgell 281a1b6569 AP_HAL: added I2C bus mask functions and macros 2018-07-10 15:39:47 +10:00
Andrew Tridgell e14e0b8a14 AP_HAL: added thread_create() API
this is deliberately a minimalistic API, for ease of implementation in
each HAL
2018-07-09 19:41:18 +10:00
Andrew Tridgell eb2c9dfe74 AP_HAL: define CHIBIOS_SHORT_BOARD_NAME if not defined 2018-06-29 20:27:36 +10:00
Andrew Tridgell d1fcf2bab6 AP_HAL: added uartG
one more uart ...
2018-06-29 08:17:38 +10:00
Peter Barker b9b0ef0c77 AP_HAL: add flash_bootloader to AP_HAL API 2018-06-28 11:35:13 +10:00
Michael du Breuil 2577e5ff25 AP_HAL: Don't always define GPIO pins, they may be connected to real
hardware
2018-06-27 15:25:44 +10:00
Lucas De Marchi 49d08ba72a Global: remove minlure
Minlure is a port of ArduPilot to Minnow Board connected to daughter
board. Very few of those were produced and nobody is flying with it.

It served its purpose and all the the improvements to ArduPilot remain
regardless of it not being supported anymore. Now it's just adding
maintenance work with no clear benefit, so pull the plug.
2018-06-26 07:32:08 -07:00
Michael du Breuil a92c4aa9fd AP_HAL: Update comment on UARTDriver::begin to reflect automatic
clearing
2018-06-26 02:18:18 +01:00
Kelly-Foster ba9faafc98 AP_HAL: added MatekF405-wing subtype
Added define for HAL_BOARD_SUBTYPE_CHIBIOS_MATEKF405WING
2018-06-22 08:00:31 +10:00
Hyungsub 6e2076a3f1 AP_HAL: Remove resource leak in srxl.cpp
I correct this issues and then open a pull request.
2018-06-20 11:33:12 +10:00
Peter Barker 584c5d5806 AP_HAL: Socket: add set_cloexec 2018-06-19 09:14:28 +10:00
Peter Barker f5eb281efd AP_HAL: use AP_RTC
Also add a define as to whether set_time / get_time can be used
2018-06-15 08:01:22 +10:00
Michael du Breuil 1183ed61fb AP_HAL: Remove timer process suspension interface 2018-06-06 07:16:58 +10:00
Andrew Tridgell 0774a267c8 AP_HAL: added define for FMUv5 2018-06-06 07:15:41 +10:00
Michael du Breuil 627c7536f4 AP_HAL: Remove overrides interface 2018-06-05 09:51:09 +10:00
Andrew Tridgell d28283e302 AP_HAL: added clock_pulse() method to SPIDevice
this is used by SPI SDCard interface for HAL_ChibiOS
2018-05-27 19:10:24 +10:00
Andrew Tridgell e2ea654b77 AP_HAL: added take_blocking() method
this avoids the need to check return result
2018-05-25 13:53:17 +10:00
Eugene Shamaev c410feefa1 AP_HAL: add CAN bus declaration for the intel aero board 2018-05-25 13:53:17 +10:00
Lucas De Marchi ff6e76ea6a AP_HAL_Linux: add custom storage directory 2018-05-24 08:00:33 -07:00
Lucas De Marchi a56106cccb AP_HAL: use buildsystem for default directories 2018-05-24 08:00:33 -07:00
Lucas De Marchi 1e7ad72909 AP_HAL: use default storage for more boards
Boards from Emlid, Erle Robotics and BBB-like ones were agreed to be
changed #7100. Here I'm also change some more, just because they appear
to be using the old default just because of copy and paste. We can
always revert back if we get complains and it seems something trivial.
Almost all boards now are using the the default path for logs, terrain
and params, except those that have restrictions to do so, like ones
using custom distros.
2018-05-24 08:00:33 -07:00
Eugene Shamaev 9a22e11b92 AP_HAL: HAL_RCINPUT_WITH_AP_RADIO definition
Remove moved skyviper-v2450-px4 definitions

Co-authored-by: Francisco Ferreira <OXINARF@users.noreply.github.com>
2018-05-22 08:35:01 +09:00
Andrew Tridgell b887a1e893 AP_HAL: make receive_time_constraint_us non-const
needed to use available()
2018-05-21 14:53:18 +10:00
Francisco Ferreira 695d92ddbf AP_HAL: remove Qualcomm board support 2018-05-17 09:57:20 +10:00
Andrew Tridgell f7a239d833 AP_HAL: added function for last receive timestamp on uarts
this is used for mavlink vision time estimates
2018-05-16 18:49:22 +10:00
mirkix 76802740cb AP_HAL: fix PocketPilot HMC5843 I2C bus number 2018-05-12 07:16:50 +10:00
Peter Barker 939aec090e AP_HAL: allow F4Light to call delay callback 2018-05-12 07:16:06 +10:00
Michael du Breuil 62f153c1b7 AP_HAL: Remove set_overrides() method 2018-05-11 12:13:39 +01:00
mirkix dfd2fb1841 AP_HAL: move BUZZER_PIN into AP_HAL 2018-05-10 17:48:25 +01:00
mirkix 8c36635a8c AP_HAL: LED GPIOs for final PocketPilot design 2018-05-09 16:16:42 -07:00
Peter Barker 0ad53e53eb AP_HAL: move delay callback handling to base HAL Scheduler class
This allows us to move a lot of delay handling from vehicle classes into
HAL Scheduler.

The most notable improvement is that it moves the detection of recursion
into the Scheduler, out of each separate vehicle.
2018-05-09 16:15:38 +10:00
anbello 93f551e56e define for AirbotF4 board (ChibiOS HAL)
modified:   libraries/AP_HAL/AP_HAL_Boards.h
	new file:   libraries/AP_HAL_ChibiOS/hwdef/airbotf4/hwdef.dat
2018-05-08 07:33:19 +10:00
Andrew Tridgell 097632eeb3 AP_HAL: try to prevent use of double maths functions
this will help reduce the number of misuses of double precision maths
functions
2018-05-07 11:43:23 +10:00
Andrew Tridgell 84a4f9dc96 AP_HAL: added boost_end() method to Scheduler API
this allows for a better method of controlling main thread priority
2018-05-05 07:45:53 +10:00
Lucas De Marchi b54b95de12 AP_HAL: minlure: search for specific I2C controller
The number can change from one kernel version to another and even from
one boot to another. Find the I2C controller on sysfs and stick to that,
like it's done for PCA9685.
2018-05-04 11:47:04 -07:00
Lucas De Marchi 2000e17646 AP_HAL: move get_device() method from AP_HAL_Linux
This way it's possible to use the method in platform-independent code
without a need to up cast.
2018-05-04 11:47:04 -07:00
Lucas De Marchi 4f2498947b AP_HAL_Linux: remove redundant ifdef
CONFIG_HAL_BOARD_SUBTYPE should be set in the boards header.
2018-05-04 11:42:55 -07:00
mirkix ee86418587 AP_HAL: change PocketPilot to final baro sensor 2018-05-04 08:00:49 +10:00
night-ghost 9f1e45509a support for Matek F405-CTR board, causes minor changes in I2C descriptor block 2018-04-26 07:51:06 +10:00
Andrew Tridgell 33a26ac0a8 AP_HAL: enable DEVO telemetry on F4Light 2018-04-24 10:44:28 +10:00
Alexander Malishev ca33ff04d9 ChibiOS: add support for omnibusf4pro board 2018-04-14 09:25:15 +10:00
Andrew Tridgell 943e433be6 AP_HAL: added device name for bmp280 for ChibiOS 2018-04-12 11:50:44 +10:00
night-ghost 677fc1875b HAL_F4Light: some modes disabled by default 2018-04-11 10:13:08 +10:00
Andrew Tridgell a7711ab9f7 AP_HAL: don't require GPIO defines for RCOU serial on ChibiOS 2018-04-09 15:32:04 +10:00
Andrew Tridgell 0bb2c4564d AP_HAL: make hal aware of oneshot125
this separates oneshot and oneshot125 at the HAL layer, allowing the
HAL to properly handle the high timing resolution of oneshot125
(needed to use 125ns time steps, to get the full 1000 throttle steps)
2018-04-07 09:10:29 +10:00
Andrew Tridgell dacbef2120 AP_HAL: added get_esc_scaling() API for rcout 2018-04-07 09:10:29 +10:00
Andrew Tridgell 85ae6f60a8 AP_HAL: added UART locking interface
used to gain exclusive access to a UART. This is needed for the BLHeli
MSP protocol to prevent protocol corruption due to console writes
2018-04-07 09:10:29 +10:00
Andrew Tridgell 69c623270c AP_HAL: added telem request to RCOutput 2018-04-07 09:10:29 +10:00
Andrew Tridgell 74bf83c39f AP_HAL: added check for RCOUT serial support 2018-04-07 09:10:29 +10:00
Andrew Tridgell 7d3cce98d0 AP_HAL: allow override of MS5611 name
for fmuv4-beta
2018-04-07 09:10:29 +10:00
Andrew Tridgell d2075b4b67 AP_HAL: added irq save/restore API to hal.scheduler
these are used by RPM driver
2018-04-07 09:10:29 +10:00
Andrew Tridgell dcfec21b46 AP_HAL: added support for serial output to ESCs 2018-04-07 09:10:29 +10:00
Andrew Tridgell e7dc304f4e AP_HAL: support DShot output modes 2018-04-07 09:10:29 +10:00
Alexey Bulatov 4d08ec8c85 AP_HAL: Edge: set storage directory to /edge/ardupilot 2018-04-04 09:29:16 +09:00
kozinalexey 5df2b1a3ac chibios hal config for F4BY 2018-03-24 06:39:09 +11:00
Peter Barker 6c7c916c78 AP_HAL: eliminate AP_HAL::Print and AP_HAL::Stream
Just *way* too many layers involved here
2018-03-23 08:12:38 +11:00
Pierre Kancir f66c83a59e AP_HAL: fix FALLTHROUGH 2018-03-21 08:24:56 +09:00
LinJieqiang c73e7f0cf3 add IST8310 compass sensors in AP_Compass.cpp 2018-03-09 11:25:35 -08:00
night-ghost 7fad79ca81 HAL_F4Light: fixed parameter's numbers for some boards 2018-03-09 11:15:12 -08:00
Andrew Tridgell af8476ae08 AP_HAL: added DPS280 and FBM320 defines 2018-03-05 10:27:09 +00:00
Andrew Tridgell 64bda71da5 AP_HAL: added generic ChibiOS board type 2018-03-02 12:52:50 +11:00
Andrew Tridgell 3c0e5a315f AP_HAL: started on OMNIBUSF7V2 support 2018-03-02 12:52:50 +11:00
Andrew Tridgell 2b0a3272fd AP_HAL: support LPS25H on MPU AUX 2018-03-02 12:52:50 +11:00
night-ghost b773334008 AP_HAL_F4Light: disable AP_Stats to reduce flash degradation 2018-03-02 07:23:35 +11:00
Andrew Tridgell 60b6f4c11d AP_HAL: added crazyflie2 2018-02-14 18:27:00 +11:00
Andrew Tridgell 310acd333e AP_HAL: use 1/0 not HIGH/LOW for LEDs in ChibiOS 2018-02-14 18:27:00 +11:00
Andrew Tridgell ceeb5e6892 AP_HAL: use 1/0 not HIGH/LOW for LED polarity
this fixes the build for pixracerled driver on px4-v2
2018-02-14 18:27:00 +11:00
ljwang 59ee3c8f62 AP_HAL: support mini-pix 2018-02-14 18:27:00 +11:00
Tom Pittenger a2f1f63ab3 AP_HAL: add param defaults for EMLID_EDGE for GPS_TYPE=9 and CAN_DRIVER=1 2018-02-13 15:29:53 +11:00
Alexey Bulatov 8369f125ce AP_HAL: Edge: add define HAL_WITH_UAVCAN 2018-02-13 13:52:44 +11:00
murata 7be15cab45 AP_HAL: disable copter winch on f4light boards 2018-02-12 12:17:12 +09:00
mirkix 3aa211b325 AP_HAL: fix BeagleBone Blue external I2C number 2018-02-12 09:49:56 +09:00
Andrew Tridgell d5be04dc8f AP_HAL: fixed AP_MODULE_SUPPORTED 2018-02-10 10:50:22 +11:00
night-ghost f8569ac39e AP_HAL: added F4Light HAL 2018-02-10 09:14:41 +11:00
Andrew Tridgell f8e16008f6 AP_HAL: updated cypress radio bus pins for skyviper 2018-02-08 18:56:51 +11:00
Andrew Tridgell 6bc3d126bb AP_HAL: added sensor defines for BMM150 and ICM20789 2018-02-08 17:36:33 +11:00
Peter Barker beb5a41389 AP_HAL: add radio defines for PixHawk
This facilitates testing a diret-attached-radio using a PixHawk1

The AUX5 pin is used as an interrupt line.
2018-02-08 17:36:33 +11:00
Andrew Tridgell bc96cb8a19 AP_HAL: fixed build warnings 2018-02-07 20:33:45 +11:00
Siddharth Purohit 5bcbc4c142 AP_HAL: default to not UAVCAN support for chibios boards 2018-02-07 20:33:45 +11:00
Siddharth Purohit d539a157b7 AP_HAL: move to having ICanDriver as member instead of inheriting it
this is to support having drivers using libuavcan supplied helper objects, a method which can lead to much less duplication of code
2018-02-07 20:33:45 +11:00
Andrew Tridgell 5da17e5b60 AP_HAL: added MINIPIX board type 2018-02-07 20:33:45 +11:00
Andrew Tridgell 472ba5bde7 AP_HAL: make _timer_tick() in Storage available in all HALs
this makes using the Empty::Storage easier
2018-02-07 20:33:45 +11:00
Andrew Tridgell 3e65347b97 AP_HAL: added REVOMINI board type 2018-02-07 20:33:45 +11:00
Andrew Tridgell 5179d13dbf AP_HAL: added virtual _timer_tick method on UARTDriver
this is needed to allow HALs to update UARTs when the number of UARTs
they bhave varies (some may be instances of HAL_Empty)
2018-02-07 20:33:45 +11:00
Igor Anokhin 5cf15db966 AP_HAL: add LSM9DS1 defines
Add defines for name and number sensor
2018-02-06 09:31:26 -08:00
LukeMike bfcece7edd VRBRAIN / AP_HAL: some update for new VR Brain 5.2E (EEPROM version) 2018-02-05 08:26:49 +11:00
LukeMike dab8f93628 VRBRAIN / AP_HAL: changed vrbrain board configuration file 2018-02-05 08:26:49 +11:00
night-ghost 2065cc879c AP_HAL: mAG3110 driver 2018-02-02 21:07:40 +11:00
Lucas De Marchi 184b017b33 AP_HAL: fix warning from having undefined HAL_WITH_IO_MCU
In file included from ../../libraries/AP_IOMCU/AP_IOMCU.cpp:8:0:
../../libraries/AP_IOMCU/AP_IOMCU.h:10:5: warning: "HAL_WITH_IO_MCU" is not defined [-Wundef]
 #if HAL_WITH_IO_MCU
     ^
../../libraries/AP_IOMCU/AP_IOMCU.cpp:10:5: warning: "HAL_WITH_IO_MCU" is not defined [-Wundef]
 #if HAL_WITH_IO_MCU
     ^
And so on.
2018-02-02 09:11:46 +09:00
Andrew Tridgell 93a993c575 AP_HAL: setup RTSCTS and SBUS_OUT 2018-01-20 17:40:07 +11:00
Andrew Tridgell d030f2888b AP_HAL: added multi-object push to RingBuffer
this is much more efficient than pushing them one at a time
2018-01-20 17:40:07 +11:00
Peter Barker 87be7fea0c AP_HAL: added support for Sparky2 STM23F405 board 2018-01-20 17:40:07 +11:00
Nikita Tomilov a50e6c6dd7 AP_HAL: board: linux: Add default CAN interface name 2018-01-17 07:24:17 -08:00
Alexey Bulatov 09de8e852d AP_HAL: Make methods get_UAVCAN and set_UAVCAN pure 2018-01-17 07:24:17 -08:00
Andrew Tridgell 3f5534eed5 AP_HAL: use calloc in preferance to malloc 2018-01-17 11:22:05 +11:00
Andrew Tridgell 4322ef7ca4 AP_HAL: prevent valgrind errors in EKF
ensure that EKF memory is zero on start
2018-01-17 11:22:05 +11:00
Andrew Tridgell d2c04aa649 AP_HAL: moved board defines to hwdef.dat 2018-01-15 11:46:02 +11:00
Andrew Tridgell 2773b17fad AP_HAL: added support for AP_Terrain for ChibiOS 2018-01-15 11:46:02 +11:00
Andrew Tridgell c80149123f AP_HAL: use hwdef.h for config options in chibios 2018-01-15 11:46:02 +11:00
Andrew Tridgell 8699b6233a AP_HAL: support MindPX-v2 2018-01-15 11:46:02 +11:00
Andrew Tridgell c7fd455f6a AP_HAL: added FMUv4 port for ChibiOS 2018-01-15 11:46:02 +11:00
bugobliterator 9d6ab78376 AP_HAL: add support for memory allocation by region type 2018-01-15 11:46:02 +11:00
Andrew Tridgell 8260b3f65f AP_HAL: allow bus speed and SMBUS enable on I2C
this allows a driver to request a bus speed for a device, and whether
the device should be in SMBUS mode. It also allows a min timeout to be
specified, to allow for slow devices
2018-01-15 11:46:02 +11:00
Andrew Tridgell 347c774665 AP_HAL: fixed example build on ChibiOS 2018-01-15 11:46:02 +11:00
Andrew Tridgell 391affc02d AP_HAL: support ChibiOS 2018-01-15 11:46:02 +11:00
mirkix 0e7ade6f0c AP_HAL: add new board PocketPilot 2017-12-27 16:01:55 +00:00
Mark Whitehorn 66c4b7d986 AP_HAL: support SBusOut
rename enable_sbus_out to enable_px4io_sbus_out
2017-11-30 10:20:04 +11:00
HeBin 895b5f34b8 AP_HAL: add Robsense PhenixPro Devkit Board support 2017-11-22 10:10:21 -08:00
Chinese66 700aaf2e8f AP_HAL: add delay to UART_test example
For AC3.5 and higher version, serial uartA-USBconsole cannot work. Maybe the code before "setup" has been changed. Ensure that the uartA can be initialized
2017-11-22 09:05:17 +09:00
Georgii Staroselskii 6326e23682 AP_HAL: Navio: add defs for BoardLED 2017-11-17 09:20:55 -08:00
alexshirley 065b00eb81 AP_HAL: Remove SBUS macro from ocpoc target 2017-11-01 10:28:40 -07:00
Lucas De Marchi 7fd10921c3 AP_HAL: Linux: add define for storage dir
This mantains compatibility with what the boards were already using,
except for Aero and Minlure in which I'm changing it already as this is
desired.
2017-10-30 16:57:37 -07:00
Lucas De Marchi 591b846e2d AP_HAL: switch aero and minlure to new log/terrain directory
Additionally make Edge use the default.
2017-10-30 16:57:37 -07:00
Lucas De Marchi d2ba8409d0 AP_HAL: provide default directory for Linux boards
/var/lib/<project> is more in line to where projects save their data.
Also, remove APM from dir name as it should had been done some time
ago.

This is only the default (and recommended for any new board). Existing
boards that want to adopt the default can remove their defines.
2017-10-30 16:57:37 -07:00
Georgii Staroselskii 4e2028c32f AP_HAL: Edge: enable Heat PWM 2017-10-20 13:03:08 -07:00
Georgii Staroselskii db9f427617 AP_HAL: Edge: add compass settings
Use HMC5883L as default before UAVCAN Linux support is in place
2017-10-20 13:03:08 -07:00
Georgii Staroselskii 2dd68243a2 AP_HAL: add Edge support 2017-10-20 13:03:08 -07:00
Francisco Ferreira be1f0801a3
AP_HAL: stop defining a default Lightware I2C bus
When a specific bus isn't defined we now search I2C buses 0 and 1
2017-10-09 11:57:02 +01:00
Lucas De Marchi 7edde571e1 AP_HAL: RCOutput_Tap: make LEDs blink on non-Aero ESCs
The protocol defines bits for controlling possible LEDs. On Aero the ESC
firmware simply ignores these bits and blink with a fixed frequency.
Add logic to be able to blink the ESC if not flashed with the Aero
version of the firmware.
2017-09-28 08:59:52 -07:00
Lucas De Marchi 2c3054cbae AP_HAL: RCOutput_Tap: remove feedback from ESCs
This is not currently working on Aero, the only user of it right now,
and it has been commented out. Remove dead code.
2017-09-28 08:59:52 -07:00
Lucas De Marchi d3a1ed9792 AP_HAL: RCOutput_Tap: fix comment with protocol bits 2017-09-28 08:59:52 -07:00
Lucas De Marchi 58ae139b8f AP_HAL: add possible external compasses for aero 2017-09-27 09:25:34 -07:00
Andrew Tridgell 08344557d9 AP_HAL: fixed missing LPS25H define 2017-09-27 16:42:31 +10:00
fnoop 149188de12 AP_HAL: Add size() method to RingBuffer ObjectArray 2017-09-22 09:56:00 -07:00
fnoop 3ddd9a6bca AP_HAL: RingBuffer: Prefix private members with underscore 2017-09-22 09:55:49 -07:00
Lucas De Marchi 68b3e5ccab AP_HAL: aero: define uart RCOutput_Tap 2017-09-21 07:59:20 -07:00
Lucas De Marchi 51665a2ea9 AP_HAL: RCOutput_Tap: split baudrate set for Linux and Nuttx
On Linux (and in most of posix-like systems) the baudrate set in struct
termios via cfset[io]speed is actually the index of the standard
baudrates, it's not the baudrate per se (hence the use of B* macros).

On Linux it's possible to set the baudrate by passing the baudrate
itself to TCSETS2 ioctl.  Unfortunately it's not possible to include
asm/termbits.h and termios.h in the same compilation unit, so we need to
split it. Here we split into a Linux and a NuttX implementation.
2017-09-21 07:59:20 -07:00
Lucas De Marchi 58a76adc13 AP_HAL: RCOutput_Tap: allow different device to be used 2017-09-21 07:59:20 -07:00
Lucas De Marchi f6b1099896 AP_HAL: move in tap esc implementation
This can be shared with Linux.
2017-09-21 07:59:20 -07:00
Peter Barker 68652867e1 AP_HAL: make in_main_thread public, pure and virtual 2017-09-19 09:40:11 +10:00
Lucas De Marchi 13f4ba7392 AP_HAL: remove raspilot 2017-09-12 15:06:19 -07:00
Francisco Ferreira 51a8aa3d1f AP_HAL: remove URUS 2017-09-11 10:04:11 -07:00
davidaroyer 8862e76284 AP_HAL: add support for Aerotenna OcPoC-Zynq hardware 2017-09-08 07:30:49 -07:00
Lucas De Marchi 2c72fc94ba AP_HAL: change aerofc baud to 921600 2017-09-01 07:55:47 -07:00
Lucas De Marchi 0e502d89a3 AP_HAL: use FALLTHROUGH define
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Francisco Ferreira e0f4d3dbe5
AP_HAL: remove unused HAL_AIRSPEED_MS4515DO_I2C_BUS macro 2017-08-05 03:15:53 +01:00
Lucas De Marchi 5ea1784838 global: remove AP_HAL::in_timerprocess()
This is not used and in the only places it would make sense would be
internally to the scheduler so remove it.
2017-08-03 20:25:14 -07:00
Lucas De Marchi e98fe2d7d5 AP_HAL: RingBuffer: add missing include 2017-08-02 21:10:55 -07:00
Lucas De Marchi 61aed0f0d7 RingBuffer: example: integrate with build system
It's only compatible with Linux so for now disable the other boards.
2017-08-02 16:08:55 -07:00
Murilo Belluzzo 641671a366 AP_HAL: Add simple stress test for RingBuffer class
It runs a Producer/Consumer thread pair endless reading and writing a
ByteBuffer. Producer writes a number sequence that is twice the
ByteBuffer size so a given position have a different data on each write
pass. Consumer makes sure that this pattern is not broken and aborts the
program if it is.

It is possible to spawn more pairs by informing a number as argument of
the program.
2017-08-02 15:30:35 -07:00
Lucas De Marchi dbd074b250 AP_HAL: remove register_timer_process with extra arg 2017-08-02 08:00:53 -07:00
Andrew Tridgell 0188d6463d AP_HAL: added rcout set_detault_rate() 2017-07-24 14:07:28 +10:00
Kevin Lopez Alvarez fb6f368575 AP_HAL: initial FMUv4pro support 2017-07-24 13:45:37 +10:00
Siddharth Bharat Purohit 807ba9d520 HAL: use correct datatype for time conversion 2017-07-13 18:23:00 -07:00
Peter Barker c163915f6e AP_HAL: correct storage example 2017-07-07 16:18:37 +01:00
Eugene Shamaev 8f2306fd19 AP_HAL: support of several CAN managers (virtual drivers) 2017-07-03 11:44:32 +01:00
Andrew Tridgell 94b5a9c6f0 AP_HAL: added RSSI interface for RCInput 2017-07-03 11:22:21 +10:00
Andrew Tridgell 1c741e78e6 AP_HAL: changed BRUSHED16kHz to BRUSHED 2017-06-17 17:37:45 +10:00
Andrew Tridgell 6a01494d4a AP_HAL: fixed setting of HAL_MINIMIZE_FEATURES for FMUv3 2017-06-07 17:39:45 +10:00
Lucas De Marchi eb70dbc6f5 AP_HAL: add HAL_OS_POSIX_IO for aerofc-v1
What aerofc-v1 doesn't have is an sdcard, but it has posix-like API as
it's running on top of NuttX.
2017-06-06 18:42:17 -07:00
Lucas De Marchi 2e096d76c6 sparse-endian: avoid clash with linux/types.h
On recent kernels (>= 4.10) __bitwise is defined on the header. Avoid
warning about redefining it.
2017-06-02 11:26:02 -07:00
mirkix 478fb60a5b AP_HAL: BeagleBone Blue fix HMC5843 I2C bus number 2017-06-01 17:11:34 +01:00
Lucas De Marchi 915f10dc8a AP_HAL: SPIDevice: prefer nullptr for pointer 2017-04-19 01:36:58 -07:00
Vinicius Juvinski 203073e543 AP_HAL: add LEDs for BBBMini
Use pins P8.9, P8.10 and P8.11
2017-04-19 01:33:35 -07:00
hiro2233 1a8fa6ac5a AP_HAL:SPIDevice: Added functions for spi registered device. 2017-04-19 01:05:12 -07:00
Peter Barker 18d8f9ba9d AP_HAL: make get_custom_log_directory const 2017-04-19 00:11:49 -07:00
Pierre Kancir 34199b4af0 AP_HAL: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00