Commit Graph

438 Commits

Author SHA1 Message Date
Caio Marcelo de Oliveira Filho d51adf2523 AP_Notify: fix build of ToshibaLED_test in PX4
The unused variables were causing error due to shadowing. The
AP_Scheduler library was missing from make.inc.
2015-10-21 09:16:11 +11:00
Caio Marcelo de Oliveira Filho ec52df991c build: compile only the HAL files needed by the board
Instead of requiring every program to specify the HAL related modules,
let the build system do it (in practice everything we compiled depended
on HAL anyway). This allow including only the necessary files in the
compilation.
2015-10-21 09:16:07 +11:00
Caio Marcelo de Oliveira Filho 2e464a53c2 AP_HAL: make code not depend on concrete HAL implementations
The switching between different AP_HAL was happening by giving different
definitions of AP_HAL_BOARD_DRIVER, and the programs would use it to
instantiate.

A program or library code would have to explicitly include (and depend)
on the concrete implementation of the HAL, even when using it only via
interface.

The proposed change move this dependency to be link time. There is a
AP_HAL::get_HAL() function that is used by the client code. Each
implementation of HAL provides its own definition of this function,
returning the appropriate concrete instance.

Since this replaces the job of AP_HAL_BOARD_DRIVER, the definition was
removed.

The static variables for PX4 and VRBRAIN were named differently to avoid
shadowing the extern symbol 'hal'.
2015-10-21 09:16:07 +11:00
Andrew Tridgell e0db1ad93e AP_Notify: added support for raspilot LED 2015-09-14 14:22:16 +10:00
Angus Peart 95c66a794e AP_Notify: sync oreoleds before a reboot 2015-09-09 10:39:54 +09:00
Angus Peart a887c1d1f2 AP_Notify: fix oreoled race causing startup flicker 2015-09-09 10:39:53 +09:00
Angus Peart d48f1b0ccf AP_Notify: oreoled - remove dangerous send_bytes 2015-09-09 10:39:52 +09:00
Angus Peart 662a3aa4cb AP_Notify: oreoled - always use full brightness 2015-09-09 10:39:51 +09:00
Jonathan Challinger d205de2d7e AP_Notify: use new macros for white/red pattern 2015-09-09 10:39:51 +09:00
Randy Mackay 872e6769b0 Notify: change firmware_update event to flag 2015-09-09 10:39:50 +09:00
Jace A Mogill 068cdfe6a3 Notify: workaround for OREOLED problems 2015-09-09 10:39:49 +09: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
mirkix f6f2e901b8 AP_Notify: Disable ToneAlarm for BBBMINI 2015-09-02 11:10:59 +10:00
Lucas De Marchi d446381623 AP_HAL_Notify: standardize inclusion of libaries headers
Do the missing header changes due to changing the code before the pr
getting accepted.
2015-08-18 17:12:52 +10:00
Gustavo Jose de Sousa 6d667e19b1 AP_Notify: standardize inclusion of libaries headers
This commit changes the way libraries headers are included in source files:

 - If the header is in the same directory the source belongs to, so the
 notation '#include ""' is used with the path relative to the directory
 containing the source.

 - If the header is outside the directory containing the source, then we use
 the notation '#include <>' with the path relative to libraries folder.

Some of the advantages of such approach:

 - Only one search path for libraries headers.

 - OSs like Windows may have a better lookup time.
2015-08-11 16:38:20 +10:00
Randy Mackay 73ff01dc68 AP_Notify: replace unsigned int with uint8_t 2015-07-21 13:52:03 +09:00
Lucas De Marchi 1bba105be4 AP_Notify: don't manually define number of notify devices
Like b211b86 (AP_HAL_Linux: don't manually define number of spi devices)
did for spi.
2015-07-21 13:52:00 +09:00
Randy Mackay 2f8a7f316f Notify: enable toshibaLED for NAVIO 2015-07-07 20:08:19 +09:00
Lucas De Marchi b3da1579c1 AP_Notify: rename member to initialized
We are not only checking if there was an error, but if it was already
initialized.  Let's make it explicit by inverting the value we store.
2015-06-10 16:39:01 +10:00
Lucas De Marchi 3f8dab41c4 AP_Notify: fix wrong boolean check
Check by false instead of checking by -1. Fix the following compiler warning
with gcc 5.1.0:

ardupilot/libraries/AP_Notify/ToneAlarm_Linux.cpp:64:13: warning: comparison of constant '-1' with boolean expression is always false [-Wbool-compare]
     if (err == -1) {
             ^

Also change the initialization code not to use -1.
2015-06-10 16:39:01 +10:00
Andrew Tridgell 23d291f144 AP_Notify: update for upstream merge 2015-06-09 19:44:20 +10:00
Andrew Tridgell 24e2e4b35e AP_Notify: convert example from .pde to .cpp 2015-06-01 17:07:05 +10:00
Lucas De Marchi 9764bb2452 AP_Notify: use functor macros
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:54 +10:00
Andrew Tridgell 9f10e2d26c AP_Notify: fix for HAL_SITL rename 2015-05-05 09:45:56 +10:00
Randy Mackay 240a845206 Notify: fix example sketches 2015-05-01 20:58:34 +09:00
Randy Mackay 608bb3d611 Notify: minor format fix 2015-04-27 12:10:17 +09:00
Randy Mackay e2071a4630 Notify: ToneAlarm fix to stopping continuous tones 2015-04-13 17:44:45 +09:00
Randy Mackay 2472702838 Notify: rename lost_copter to vehicle_lost 2015-04-13 17:44:44 +09:00
Jaime Machuca 043d24f03a Notify: add Lost Copter tone 2015-04-13 17:42:07 +09:00
Randy Mackay 0dc985a6ab Notify: remove GPS glitch notification 2015-03-13 16:40:41 +09:00
Randy Mackay 8e8487c699 Notify: remove baro_glitch reporting 2015-03-13 16:40:23 +09:00
Randy Mackay 7675160e33 Notify: add firmware update flag and implement for OreoLED 2015-03-06 17:26:51 +09:00
Jace A Mogill 442d07a6c9 Notify: OreoLED fast startup with solid green
For manual flight modes: Solid white in front, red in rear
For automatic flight modes: Breathing white in front, red in rear
Loss of RC: Alternating red/black in front and rear

merge with fast green
2015-03-06 17:26:45 +09:00
Randy Mackay 51213235b4 OreoLED_PX4: available only on PX4 2015-03-02 16:58:17 +09:00
Randy Mackay f1ce70e748 Notify: disable oreoled by default 2015-03-02 16:58:14 +09:00
Randy Mackay 89cd74c35f Notify: OreoLED supports handle_led_control
includes support for send bytes ioctl
2015-03-02 16:58:12 +09:00
Randy Mackay 90cac02bd7 Notify: OreoLED fix to fade-in when armed 2015-03-02 16:58:10 +09:00
Randy Mackay 35a3a52f29 Notify: add support for handle_led_control 2015-03-02 16:58:06 +09:00
Randy Mackay b8ef765b3e Notify: add OreoLED to PX4 2015-03-02 16:57:56 +09:00
Randy Mackay 0a33a7c15a Notify: OreoLED_PX4 driver 2015-03-02 16:57:50 +09:00
Andrew Tridgell 9f7e20090c AP_Notify: change for new PX4 device paths 2015-02-14 12:25:43 +11:00
Emile Castelnuovo 5c68980f05 AP_Notify: removed unused VRBRAIN files 2015-02-05 14:22:08 +09:00
Randy Mackay 6cfd48d0c6 Buzzer: handle arming_failed as event 2015-02-03 06:14:55 +09:00
Randy Mackay a991b4a823 Linux: handle arming_failed as event 2015-02-03 06:14:54 +09:00
Randy Mackay 3361002379 ToneAlarm: handle arming_failed as event 2015-02-03 06:14:53 +09:00
Randy Mackay bd1ae13fdb Notify: arming_failed flag moved to events 2015-02-03 06:14:53 +09:00
Randy Mackay 6a827459ad Notify: increase size of flags type 2015-02-03 06:14:52 +09:00
Randy Mackay 0a68d4ef39 Notify: clear all flags and events during init 2015-02-03 06:14:44 +09:00
Randy Mackay 272768bc0f Notify: init RGBLed members 2015-02-03 06:14:35 +09:00
Emile Castelnuovo c044901f9f AP_Notify: added missing VRBRAIN led files 2015-02-02 08:44:01 +11:00
Emile Castelnuovo 26432d6064 AP_Notify: use RGB driver for board led in VRBRAIN boards. 2015-02-02 08:43:59 +11:00
Randy Mackay 775cbfba38 Notify: fix example sketch 2015-01-28 17:15:47 +09:00
mirkix 62a05a0438 AP_Notify: fix if statement 2015-01-13 12:15:32 +13:00
mirkix b03a9e2911 AP_Notify: ToneAlarm_Linux.h includes itself 2015-01-11 11:50:07 +09:00
Randy Mackay c7192c5eef Notify: remove Led class
This class didn't add any functionality beyond what the NotifyDevice class
already provided so in keeping with our desire to keep things simple we
can remove this class
2014-12-26 13:06:41 +09:00
Randy Mackay 352b52d73f Notify: remove reliance on Led class 2014-12-26 13:06:24 +09:00
Randy Mackay d67b4a8d49 Notify: add pre_arm_gps_check flag
RGB LED will remain flashing blue when vehicle is disarmed and this
check has failed (i.e. false).
2014-12-26 12:32:34 +09:00
Randy Mackay 21beb26484 Notify: minor event reordering
No functional change
2014-12-15 14:10:26 +09:00
Randy Mackay e68a69e139 ToneAlarm_PX4: remove user_mode_init flag
Replaced by an initialised check in the main ArduCopter flight code
2014-12-15 14:10:21 +09:00
Randy Mackay 1c8ab375e2 Notify: rename failsafe_action event 2014-12-15 14:10:15 +09:00
Randy Mackay 972c8e47d2 Notify: rename notify_types to notify_flags_type 2014-12-15 14:10:10 +09:00
Randy Mackay bfc86ac7c0 ToneAlarm_PX4: add comments 2014-12-15 14:10:06 +09:00
Randy Mackay c75ab8f3e5 Notify: add comments re events 2014-12-15 14:09:15 +09:00
Jonathan Challinger 3dfcdde6be AP_Notify: Rework ToneAlarm_PX4 to play tones from local array 2014-12-15 14:09:04 +09:00
Andrew Tridgell 0811f9c175 AP_Notify: fixed example build 2014-11-27 17:27:56 +11:00
Staroselskii Georgii d40011acf3 AP_Notify: added abstract Led and RGBLed classes 2014-11-26 11:16:27 +11:00
bugobliterator 485abbac3a AP_Notify: cleanup use of bool from toneAlarm_init() 2014-11-15 16:59:28 +11:00
Andrew Tridgell 7718be81cb AP_Notify: give error msgs on failure to start 2014-11-15 16:58:40 +11:00
Andrew Tridgell bec1c05773 AP_Notify: fixed bitfields 2014-11-10 06:33:54 +11:00
bugobliterator e48fcf2df7 AP_Notify:change tonealarm-type bitmask to bool type,
change parameter data type from const uint8_t to uint8_t,
initialise tonealarm error flag to value -1 at tonealarm class initiallisation

This is a part of a set of fixes for the bugs and typos tridge discovered and shared inside earlier commits for setting up tonealarm.
2014-11-10 06:27:49 +11:00
bugobliterator 9f5f5871f2 AP_Notify:Fix the typo, usage of toshibaled.init() instead of toshibaled.update()
This is a part of a set of fixes for the bugs and typos tridge discovered and shared inside earlier commits for setting up tonealarm.
2014-11-10 06:27:48 +11:00
bugobliterator 5d6af51517 AP_Notify:Add ToneAlarm Support for HAL_Linux Boards 2014-11-10 06:27:48 +11:00
Andrew Tridgell 7343de2893 AP_Notify: avoid suspend_timer_procs() by using atomic updates in ToshibaLED_PX4 2014-08-22 21:13:11 +10: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
Randy Mackay d026749f1b Notify: add break to resolve compiler warning 2014-08-14 11:27:34 +09:00
Andrew Tridgell e43cac1b26 AP_Notify: fixed example build 2014-08-13 21:48:36 +10:00
Mikhail Avkhimenia c42cc12f23 AP_Notify: Add dummy LED configuration for Navio 2014-08-12 22:13:00 +10:00
Randy Mackay 4d6588a479 Notify: APM2 buzzer for arming, ekf and baro failures 2014-07-28 22:16:24 +09:00
Randy Mackay dcc74be4aa Notify: baro warning tone alarm 2014-07-28 22:16:23 +09:00
Randy Mackay cd9e786935 Notify: RGB led flashes yellow-purple for baro warning 2014-07-28 22:16:22 +09:00
Randy Mackay ee6d4d570a Notify: add baro_glitch flag 2014-07-28 22:16:18 +09:00
Andrew Tridgell b4a441620f AP_Notify: fixed example build 2014-07-25 18:38:15 +10:00
Andrew Tridgell f2c636250b AP_Notify: fixed example build 2014-07-25 17:55:04 +10:00
Randy Mackay 46e5fa2c0b Notify: APM2 arming buzzer to long tone
Arming tone is a solid 3 second tone so it is consistent with Pixhawk
arming tone
2014-07-25 13:09:04 +09:00
Randy Mackay f24960f4c0 AP_Notify: add EKF failure warning 2014-07-22 23:13:27 +09:00
Andrew Tridgell 6c3197cb43 AP_Notify: fixed SITL build 2014-07-14 09:44:35 +10:00
Andrew Tridgell 252052d723 AP_Notify: use HAL board subtypes 2014-07-14 09:44:35 +10:00
Andrew Tridgell 79fed17563 AP_Notify: added pins for Linux port 2014-07-14 09:29:08 +10:00
Niels Joubert a251d0010a AP_NOTIFY: RTK GPS visual notification through faster blink 2014-06-30 10:29:56 +10:00
LukeMike 8f552d5758 VRBRAIN: Changed the management of VirtualRobotix's boards. 2014-06-19 11:27:38 +02:00
Andrew Tridgell 50c08ced4c AP_Notify: fixes for HAL_GPIO_* 2014-06-02 10:42:35 +10:00
Kevin Hester fce1277b0e Notify: fixup line endings 2014-04-15 15:57:11 +09:00
Emile Castelnuovo 4ad83f3c8a AP_Notify: new files and definitions for VRBRAIN board 2014-04-08 16:19:19 +10:00
Randy Mackay e3e7fc284d Notify: add parachute release tune for Pixhawk 2014-04-07 13:37:01 +09:00
Niels Joubert 64d4a1236f AP_Notify: Support all GPS status flags, with status >= GPS_OK_FIX_3D notified as having a lock 2014-04-05 13:42:23 +11:00
Jonathan Challinger f0fc0397d3 Notify: add arming failure tone 2014-03-31 20:34:27 +09:00
Randy Mackay 7bb981f2df AP_Notify: correct dos formatting 2014-03-31 20:34:24 +09:00
Andrew Tridgell 2a199c4f03 AP_Notify: fixed example build 2014-03-19 12:13:51 +09:00
Randy Mackay 4cfe50b70c Notify: brighter RGB LED when on battery power 2014-03-05 21:38:29 +09:00
Andrew Tridgell 4d3f714a5d AP_Notify: fixed example build 2014-02-15 06:40:39 +11:00
Andrew Tridgell c0e548fc60 AP_Notify: fixed example build 2014-01-30 13:33:59 +11:00
Andrew Tridgell 23d8bfa976 AP_Notify: reduce the latency in the main task of LED updates
the ioctl now gets called in a IO timer callback
2014-01-24 10:40:39 +11:00
Andrew Tridgell 330a4649fd AP_Notify: fixed LED colour for no-GPS and armed 2014-01-23 21:39:31 +11:00
Randy Mackay fb0fe3793c AP_Notify: external LEDs blink while initialising 2014-01-13 23:31:32 +09:00
Andrew Tridgell 81fc11cab7 AP_Notify: fixed example build 2013-12-17 11:51:37 +11:00
Andrew Tridgell dde18093ed AP_Notify: disable autobuild of example
this fails due to an AVR linker bug
2013-12-10 15:54:35 +11:00
Randy Mackay def5ddb747 AP_Notify: disable buzzer along with external leds 2013-11-30 23:27:58 +09:00
Randy Mackay f8b4187148 AP_Notify: define external led pins for non APM boards
resolves compiler errors
2013-11-30 23:27:27 +09:00
Randy Mackay aae18f9ead AP_Notify: allow external leds to be disabled 2013-11-30 22:53:40 +09:00
Randy Mackay 1f0fb3f06b AP_Notify: add Buzzer 2013-11-30 18:20:51 +09:00
Robert Lefebvre d1cf9f949f AP_Notify: ExternalLED library 2013-11-30 18:20:49 +09:00
Andrew Tridgell fc5f825b6d AP_Notify: make APM2 ToshibaLED driver more efficient
use one I2C transfer, not 3
2013-11-04 17:48:53 +11:00
Randy Mackay 24147a370a BoardLEDs: all leds off during init 2013-10-29 10:54:08 +09:00
Randy Mackay 8f4665c4c7 ToshibaLED: ignore I2C errors during init 2013-10-21 20:01:34 +09:00
Andrew Tridgell f59d0099a4 AP_Notify: fixed RGBLED on PX4 with latest PX4Firmware
now needs a RGBLED_MODE_ON
2013-10-08 14:55:10 +11:00
Randy Mackay 688dd5374e ToshibaLED: flashing green if disarmed with GPS lock
solid blue if armed without GPS lock
2013-10-03 14:33:39 +09:00
Andrew Tridgell dd081ab23b AP_Notify: enable toshibaled on all I2C capable platforms 2013-09-28 22:04:15 +10:00
Andrew Tridgell 018b8fde95 AP_Notify: blank Linux LED defines 2013-09-28 21:24:02 +10:00
Andrew Tridgell 2469dcf8e6 AP_Notify: removed SMACCM support 2013-09-26 22:38:31 +10:00
Randy Mackay 54cb815fec AP_Notify: add gps glitching and failsafe flags 2013-09-24 21:41:51 +09:00
Randy Mackay 90953a96e5 ToshibaLED: flash blue-yellow for gps failsafe and glitch 2013-09-24 21:41:25 +09:00
Randy Mackay 4bac26171b AP_Notify: add gps_glitch flag 2013-09-24 21:41:22 +09:00
Mike McCauley b7e182e056 AP_Notify: Add flymaple LED definitions 2013-09-24 13:51:28 +10:00
Andrew Tridgell 66ee484b3c AP_Notify: convert to unix style file 2013-09-19 16:27:31 +10:00
Andrew Tridgell 0d6b847966 AP_Notify: grab initial flags state in init()
this prevents annoying tones on startup of APM:Plane
2013-09-18 10:55:42 +10:00
Randy Mackay d16587340d AP_Notify: add PX4's tone_alarm
Sounds added for arming, disarming and low battery events
2013-09-15 17:24:00 +09:00
Randy Mackay b3c636dfa3 AP_Notify: add radio and battery failsafe
radio and battery failsafe are slow flashing yellow
pre-arm check failure changed to double flashing yellow
2013-09-11 14:36:05 +09:00
Andrew Tridgell b29369bc03 AP_Notify: fixed examples build 2013-08-30 13:01:39 +10:00
Andrew Tridgell 7535ecb282 AP_Notify: enable board LEDs for ESC calibration
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2013-08-30 13:01:36 +10:00
Andrew Tridgell d67ad2c7ee AP_Notify: added missing files 2013-08-30 13:01:35 +10:00
Andrew Tridgell 495c4bbbbe AP_Notify: simplify interface to avoid timers and external calls
this changes AP_Notify to use updates via notify.update() at 50Hz,
avoiding the need for the 1kHz timer. It also creates a parent class
for ToshibaLED so that the I2C and PX4 ToshibaLED drivers can be
abstracted out.

Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2013-08-30 13:01:35 +10:00
Randy Mackay 2658cda4bc Toshiba_LED_PX4: local #defines for led brightness 2013-08-30 13:01:35 +10:00
Randy Mackay 0c1db12538 AP_Notify: add ToshibaLED_PX4 2013-08-30 13:01:35 +10:00
Randy Mackay a52b1831ca AP_Notify: make flags static variable 2013-08-30 13:01:35 +10:00
Randy Mackay 54007854a9 Notify: add ToshibaLED 2013-08-30 13:01:35 +10:00
Randy Mackay b1278fa006 AP_Notify: early draft of library 2013-08-30 13:01:34 +10:00