Alexey Bulatov
8369f125ce
AP_HAL: Edge: add define HAL_WITH_UAVCAN
2018-02-13 13:52:44 +11:00
Mark Whitehorn
da69832140
AP_HAL_ChibiOS: add #ifdef around toneAlarm thread stack declaration
2018-02-13 07:27:02 +11:00
Lucas De Marchi
755b1cdced
AP_HAL_Linux: rpi: sort include headers
2018-02-12 09:05:21 -08:00
Lucas De Marchi
90160a9c52
AP_HAL_Linux: rpi: use const var and fix formatting
...
Use a const variable instead of a define so we don't polute the
environment with a define specific to this function.
Also remove tabs and replace with proper coding style.
2018-02-12 08:46:36 -08:00
Dmitri Ranfft
05ebabbf6b
AP_HAL_Linux: fixed RPi version detection on kernel 4.9
2018-02-12 08:36:58 -08:00
murata
7be15cab45
AP_HAL: disable copter winch on f4light boards
2018-02-12 12:17:12 +09:00
Randy Mackay
ec98cab262
AP_WheelEncoder: hide parameters by default
2018-02-12 12:16:41 +09:00
mirkix
3aa211b325
AP_HAL: fix BeagleBone Blue external I2C number
2018-02-12 09:49:56 +09:00
Tom Pittenger
1db04772b2
AP_UAVCAN: non-functional change - fix style
...
non-functional change - fix style
2018-02-10 23:48:23 -08:00
Nikita Tomilov
2a34593ed3
AP_UAVCAN: Magnetic: allow more than one compass on one node
...
To do so, we make use of UAVCAN message MagneticFieldStrength2, which
has a field describing the sensor_id of the node which measurements were
sent, and if a node sends this message we register multiple
AP_Compass_UAVCAN backends for this node. The routing of the messages
between those backends is also implemented here.
2018-02-10 23:48:23 -08:00
Nikita Tomilov
00a013e5be
AP_UAVCAN: utilizing MagneticFieldStrength2 message
...
This makes AP_UAVCAN_Compass work with this message. This will be used
later on for Edge GNSS which has two compasses.
2018-02-10 23:48:23 -08:00
Mark Whitehorn
59b2d44323
AP_HAL_ChibiOS: make ToneAlarm compilation conditional on presence of
...
alarm pin
2018-02-11 14:55:23 +11:00
Mark Whitehorn
d569e35a0f
AP_HAL_ChibiOS: add toneAlarm support for ChibiOS on MindPX-v2
2018-02-11 14:55:23 +11:00
Mark Whitehorn
6baad37e47
AP_HAL_ChibiOS: add ICM208060-am to SPI device table in fmuv3/hwdef.dat
2018-02-11 14:55:23 +11:00
Mark Whitehorn
13c54c0543
AP_HAL_ChibiOS: add missing declaration in chibios_hwdef.py
2018-02-11 14:55:23 +11:00
Mark Whitehorn
3a40ba1d3e
AP_HAL_ChibiOS: add buzzer support to hwdef.dat for fmuv3
2018-02-11 14:55:23 +11:00
Mark Whitehorn
fb142422f6
AP_HAL_ChibiOS: pull ALARM_CHANNEL into pwmGroup
...
and improve formatting of HAL_PWM_ALARM in hwdef.h
2018-02-11 14:55:23 +11:00
Mark Whitehorn
8b216cf182
AP_HAL_ChibiOS: add ToneAlarm thread
...
fmuv4 hwdef.dat: remove PWM label from buzzer output pin
add buzzer pin labeled ALARM
remove timer PWM from HAL_PWM_GROUPs
2018-02-11 14:55:23 +11:00
Mark Whitehorn
d200f30cd7
AP_Notify: add ToneAlarm backend for ChibiOS
2018-02-11 14:55:23 +11:00
Randy Mackay
3bec25da85
AP_Compass: resolve compiler warnings
2018-02-10 08:54:34 +09:00
Andrew Tridgell
55358459c7
AP_AHRS: fixed AP_MODULE_SUPPORTED
2018-02-10 10:50:22 +11:00
Andrew Tridgell
d5be04dc8f
AP_HAL: fixed AP_MODULE_SUPPORTED
2018-02-10 10:50:22 +11:00
Andrew Tridgell
61892036f8
AP_Module: fixed AP_MODULE_SUPPORTED defines
2018-02-10 10:50:22 +11:00
Andrew Tridgell
b5e5b622c7
AP_InertialSensor: use register header for Revo driver
2018-02-10 09:14:41 +11:00
Andrew Tridgell
0e6497aa85
AP_InertialSensor: merged in Revo driver
2018-02-10 09:14:41 +11:00
Andrew Tridgell
ba32b06c59
StorageManager: fixed header order
...
fixes build for revomini HAL
2018-02-10 09:14:41 +11:00
Andrew Tridgell
682dcb65cf
AP_BoardConfig: added param helper for HAL parameters
...
only for HAL_REVOMINI for now
2018-02-10 09:14:41 +11:00
night-ghost
0d8c71de71
DataFlash: added F4Light HAL support
2018-02-10 09:14:41 +11:00
night-ghost
2b213b78ab
AP_Param_Helper: param table support for HAL
...
this allows a HAL to have its own parameter table with parameter names
generated by the build system
2018-02-10 09:14:41 +11:00
night-ghost
f8569ac39e
AP_HAL: added F4Light HAL
2018-02-10 09:14:41 +11:00
Andrew Tridgell
61793c485a
modules: added submodules for HAL_F4Light
2018-02-10 09:14:41 +11:00
night-ghost
04beb45521
HAL_F4Light: new hal for F4 boards, close to bare-metal
2018-02-10 09:14:41 +11:00
night-ghost
739c873991
AP_Frsky_Telem: fixed build warnings
2018-02-10 09:14:41 +11:00
Randy Mackay
2aeda48512
AR_AttitudeControl: minor arg name fix
...
non-functional change
2018-02-09 17:36:21 +09:00
Tom Pittenger
18caed135e
AP_UAVCAN: simply do_cyclic
...
- non-functional change, just returning early instead of deeper and deeper brackets
2018-02-08 16:57:17 -08:00
Tom Pittenger
52589f3c22
AP_UAVCAN: refactor RC Out functions
...
- non-functional change
2018-02-08 16:57:17 -08:00
Andrew Tridgell
10f940c8d0
HAL_ChibiOS: adjust RCIN pin settings for fmuv4
...
thanks to Mark for this change
2018-02-09 10:14:53 +11:00
Andrew Tridgell
9301e4888a
HAL_ChibiOS: make not having bus lock a soft error
...
this is nicer for driver developers
2018-02-09 10:14:49 +11:00
Andrew Tridgell
abd659212e
AP_BoardConfig: fixed device semaphore in board detect
...
thanks to Mark for finding this
2018-02-09 10:14:46 +11:00
Andrew Tridgell
2b86c0e962
HAL_ChibiOS: tweak DMA settings for skyviper-v2450
...
this resolves a problem with the cypress radio.
Thanks to Sid for working this out
2018-02-08 22:15:41 +11:00
Andrew Tridgell
8226530610
HAL_ChibiOS: added DMA_PRIORITY and DMA_NOSHARE options
...
this allows finer grained control of DMA streams
2018-02-08 22:13:00 +11:00
Andrew Tridgell
507fcb0f27
Tools: moved make_abin.sh into Tools/scripts
...
will be used in px4 build
2018-02-08 18:56:51 +11:00
Andrew Tridgell
eb0389caf2
HAL_PX4: used cypress bus defines
2018-02-08 18:56:51 +11:00
Andrew Tridgell
f8e16008f6
AP_HAL: updated cypress radio bus pins for skyviper
2018-02-08 18:56:51 +11:00
Andrew Tridgell
4ce0c2c827
HAL_ChibiOS: simplify skyviper-v2450 config
...
remove unused peripherals
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b90c0d78f3
HAL_ChibiOS: fixed build warning
2018-02-08 17:36:33 +11:00
Andrew Tridgell
64384fa8c9
AP_Radio: allow build of AP_Radio under PX4
2018-02-08 17:36:33 +11:00
Andrew Tridgell
8eff43a352
HAL_ChibiOS: fixed printf arguments
2018-02-08 17:36:33 +11:00
Andrew Tridgell
f928bd9420
AP_Radio: fixed build warnings
2018-02-08 17:36:33 +11:00
Andrew Tridgell
598c2b9eb1
AP_TempCalibration: fixed build warning
2018-02-08 17:36:33 +11:00
Andrew Tridgell
aee6462deb
HAL_ChibiOS: enable I2C clearing on F412 board only
...
may be needed on other boards in the future, but for now we only know
its needed on an I2C 20789, which is rare
2018-02-08 17:36:33 +11:00
Siddharth Purohit
40142e5aef
ChibiOS: implement way to clear i2c bus by toggling clock line
2018-02-08 17:36:33 +11:00
Andrew Tridgell
8d43c6c3dc
AP_Radio: implement OTA update for cc2500
2018-02-08 17:36:33 +11:00
Andrew Tridgell
0d089e8116
HAL_ChibiOS: fixed F412 OF reset pin
2018-02-08 17:36:33 +11:00
Andrew Tridgell
eeff485a39
AP_Radio: fixed timing of telem packets
2018-02-08 17:36:33 +11:00
Andrew Tridgell
240b6d57f7
AP_Radio: added SRT packet formats for cc2500
2018-02-08 17:36:33 +11:00
Andrew Tridgell
2b9dd0b394
AP_Radio: fixed startup with stored bind info
2018-02-08 17:36:33 +11:00
Andrew Tridgell
3c3389a005
HAL_ChibiOS: raise I2C bus priority on F412
...
needed for good scheduling with I2C IMU
2018-02-08 17:36:33 +11:00
Andrew Tridgell
20a008c80a
HAL_ChibiOS: disable trace buffers
...
these were unusued but still allocated
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b380143349
AP_InertialSensor: improved handling of I2C invensense sensor
...
on I2C the lower bus bandwidth changes the tradeoffs
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b33c815e96
AP_InertialSensor: added whoami for prototype 20789
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b3ed8fd3f9
AP_Scheduler: scale perf_info with loop rate
...
this allows it to be used for a wide range of loop rates
2018-02-08 17:36:33 +11:00
Andrew Tridgell
875008f2a6
HAL_ChibiOS: lock all DMA channels on reboot
...
this fixes a problem with the ICM-20789 on I2C where a reboot while the bus is active
leaves the IMU in a dead state where it can't be recovered without a power cycle.
2018-02-08 17:36:33 +11:00
Andrew Tridgell
32ddbca428
AP_Radio: do cypress sends as single transfer
...
this prevents timing errors to cypress chip on packet send
2018-02-08 17:36:33 +11:00
Andrew Tridgell
65f4c0ba50
AP_Radio: improved timeout abstraction in cypress driver
2018-02-08 17:36:33 +11:00
Andrew Tridgell
6faace278a
HAL_ChibiOS: run i2c at 400kHz on F412
2018-02-08 17:36:33 +11:00
Andrew Tridgell
907728e323
AP_Radio: prevent crash if cc2500 device not found
2018-02-08 17:36:33 +11:00
Andrew Tridgell
9f53ae1ea4
HAL_ChibiOS: added F412-rev1 hwdef.dat
2018-02-08 17:36:33 +11:00
Andrew Tridgell
ad8db6cda3
AP_InertialSensor: added sensor type ICM20789_SPI
2018-02-08 17:36:33 +11:00
Andrew Tridgell
2c8e6bb834
AP_Compass: use generic defines for BMM150
2018-02-08 17:36:33 +11:00
Andrew Tridgell
00d3c158db
AP_Baro: use generic defines for 20789
2018-02-08 17:36:33 +11:00
Andrew Tridgell
6bc3d126bb
AP_HAL: added sensor defines for BMM150 and ICM20789
2018-02-08 17:36:33 +11:00
Andrew Tridgell
47ce37f463
HAL_ChibiOS: report I2C clock downgrades
2018-02-08 17:36:33 +11:00
Andrew Tridgell
8dcf89b2b7
AP_Scheduler: put scheduler debug on console
2018-02-08 17:36:33 +11:00
Andrew Tridgell
73418519eb
HAL_ChibiOS: enable analog debug on F412
2018-02-08 17:36:33 +11:00
Andrew Tridgell
fd824e6258
HAL_ChibiOS: enable toy mode on F412
2018-02-08 17:36:33 +11:00
Andrew Tridgell
d208dc69d3
Tools: moved make_abin.sh into ChibiOS scripts
2018-02-08 17:36:33 +11:00
Andrew Tridgell
cc8a37b2fc
AP_Radio: pack telemetry structures
2018-02-08 17:36:33 +11:00
Andrew Tridgell
4aa604a193
HAL_ChibiOS: enable pixartflow on skyviper-V2450
2018-02-08 17:36:33 +11:00
Andrew Tridgell
429a2beb86
AP_OpticalFlow: enable pixart flow on PCNC1 boards
2018-02-08 17:36:33 +11:00
Andrew Tridgell
8f1e8e787a
GCS_MAVLink: added DATA96 hook for AP_Radio
2018-02-08 17:36:33 +11:00
Andrew Tridgell
0b5e3936fe
AP_AHRS: added earth to body 2D rotations
2018-02-08 17:36:33 +11:00
Andrew Tridgell
9cce1e0733
StorageManager: expanded bind info to 56 bytes
...
cc2500 needs a larger bind area
2018-02-08 17:36:33 +11:00
Andrew Tridgell
7ac6df6f3e
AP_Radio: use GDO2 for IRQ on cc2500
2018-02-08 17:36:33 +11:00
Andrew Tridgell
3456d67b2f
AP_Radio: some boards won't have a radio reset pin
2018-02-08 17:36:33 +11:00
Andrew Tridgell
591e0c2249
HAL_ChibiOS: allow control of interrupt port
...
F412 has radio IRQ on port B
2018-02-08 17:36:33 +11:00
Andrew Tridgell
3cacb1d4b5
HAL_ChibiOS: commented the motor order in hwdef
2018-02-08 17:36:33 +11:00
Andrew Tridgell
4e8f8e88d9
AP_TempCalibration: fixed degC units
2018-02-08 17:36:33 +11:00
Andrew Tridgell
42b2843032
AP_Radio: removed obsolete example code
2018-02-08 17:36:33 +11:00
Andrew Tridgell
570a05e9d3
AP_OpticalFlow: fixed pixart SPI name
2018-02-08 17:36:33 +11:00
Andrew Tridgell
3f7934d082
AP_Radio: improvements to cc2500 driver
2018-02-08 17:36:33 +11:00
Andrew Tridgell
e087fc7730
AP_Radio: initial implementation of cc2500 driver
...
using D16 protocol. It can bind and receive packets, but packet rate
it very low
2018-02-08 17:36:33 +11:00
Andrew Tridgell
f3f6972fc0
HAL_ChibiOS: output panics on system console
2018-02-08 17:36:33 +11:00
Andrew Tridgell
7c8cf0a39e
AP_OpticalFlow: fixed SPI name for pixart flow sensor
2018-02-08 17:36:33 +11:00
Andrew Tridgell
5a6831b606
AP_Baro: allow ICM-20789 on SPI or I2C
2018-02-08 17:36:33 +11:00
Andrew Tridgell
a3dabf3c55
AP_Baro: enable 20789 baro on F412
2018-02-08 17:36:33 +11:00
Andrew Tridgell
ac4017e2ae
RC_Channel: added set_and_save_radio_trim()
...
# Conflicts:
# libraries/RC_Channel/RC_Channel.h
2018-02-08 17:36:33 +11:00
Andrew Tridgell
472eed3847
AP_Baro: enable use of pressure correction
...
this allows for temperature correction of baro pressure
2018-02-08 17:36:33 +11:00
Andrew Tridgell
177284bd6b
AP_TempCalibration: temperature calibration library
...
this adds opportunistic temperature calibration. This is initially only
for barometers, and has been only tested with the ICM-20789, but can be
extended to other sensors and other barometers
2018-02-08 17:36:33 +11:00
Andrew Tridgell
57a3bc1397
AP_Compass: new compass learning system
...
this learns compass offsets using magnetic tables and compass
observations
2018-02-08 17:36:33 +11:00
Andrew Tridgell
6a89fdf268
SITL: use AP_Declination for magnetic tables
2018-02-08 17:36:33 +11:00
Andrew Tridgell
252fc9c757
AP_Declination: added inclination and intensity tables
...
moved from SITL/SIM_Aircraft.h
2018-02-08 17:36:33 +11:00
Andrew Tridgell
ca30f6aec8
AP_Compass: added per-motor compass calibration
...
this allows for a motor calibration vector per motor
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b1ccf575f7
AP_Radio: support DATA96 packets for fw update
...
this allows for update of remote radio firmware via MAVLink DATA96
packets
2018-02-08 17:36:33 +11:00
Andrew Tridgell
6ef5f61faa
AP_Radio: add ChibiOS support
2018-02-08 17:36:33 +11:00
Andrew Tridgell
14dcee75f1
AP_Notify: added video recording flag
2018-02-08 17:36:33 +11:00
Andrew Tridgell
e2d91535d0
AP_AHRS: fill in have_pos_abs
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b622fe143e
AP_Notify: added have_pos_abs flag
...
used to notify of high-quality GPS lock
2018-02-08 17:36:33 +11:00
Andrew Tridgell
ac324a3760
StorageManager: added bind info storage area
2018-02-08 17:36:33 +11:00
Andrew Tridgell
3afaf81ccc
AP_BoardConfig: added param object for AP_Radio
2018-02-08 17:36:33 +11:00
Andrew Tridgell
a8af1974d2
HAL_PX4: hook into AP_Radio for RC input
2018-02-08 17:36:33 +11:00
Peter Barker
ddb2f4b5ad
HAL_PX4: define cypress SPI bus
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
be002665cf
AP_Radio: implement CYRF6936 direct attached radio
...
implement DSM2 and DSMX compatible protocols
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b9e5649888
AP_InertialSensor: support PCNC1
2018-02-08 17:36:33 +11:00
Andrew Tridgell
2cc0f25ca0
AP_Compass: support PCNC1
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b2172a0475
AP_Baro: support PCNC1
2018-02-08 17:36:33 +11:00
Peter Barker
12a3cc1179
AP_Baro: use Invensense defines when configuring ICM20789 IMU part
2018-02-08 17:36:33 +11:00
Peter Barker
71cf3941a7
AP_InertialSensor: move Invensense register defines into separate file
2018-02-08 17:36:33 +11:00
Peter Barker
3ee112843c
AP_InertialSensor: configure bypass for 20789 like we do for AK8963
2018-02-08 17:36:33 +11:00
Peter Barker
5d94172ada
AP_InertialSensor: remove clearing of BIT_USER_CTRL_I2C_MST_EN bit in user_ctrl
...
This bit should never be set on 20789
2018-02-08 17:36:33 +11:00
Peter Barker
3a0c5bed85
AP_Baro: ICM20789: example fixes
2018-02-08 17:36:33 +11:00
Peter Barker
bf95be96f3
AP_Baro: ICM20789: stop dev_icm being an instance variable
2018-02-08 17:36:33 +11:00
Peter Barker
c56486a39e
AP_Baro: remove pointless destructor overrides
2018-02-08 17:36:33 +11:00
Peter Barker
05fb28c7f9
AP_Baro: use HAL_SEMAPHORE_BLOCK_FOREVER
2018-02-08 17:36:33 +11:00
Peter Barker
ea83a487d4
AP_Baro: create BARO_ICM20789_DEBUG and use it
2018-02-08 17:36:33 +11:00
Peter Barker
31d8b6ba64
AP_Baro: do not take semaphore if HAL_INS_MPU60x0_NAME not set
2018-02-08 17:36:33 +11:00
Andrew Tridgell
bf67153791
AP_Baro: implement ICM20789 barometer
2018-02-08 17:36:33 +11:00
Andrew Tridgell
5a4f0fed2d
AP_InertialSensor: added ICM-20789 support
2018-02-08 17:36:33 +11:00
James Stewart
ec5faed133
GCS_MAVLink: send mission item requests to correct destination for partial updates
...
The correct destination is the GCS which last requested to update the mission (full or partial), not just the last GCS to set the mission count (full only).
2018-02-07 07:01:32 -08:00
Andrew Tridgell
75226ba187
HAL_ChibiOS: enable logging on MindPX-v2
...
not working yet, seems to be a problem with SDIO interface
2018-02-07 20:33:45 +11:00
Andrew Tridgell
4548fd4d2f
HAL_ChibiOS: changed RCIN to PULLDOWN
...
this fixes a high cpu load with no receiver connected
2018-02-07 20:33:45 +11:00
Andrew Tridgell
86189393a7
HAL_ChibiOS: fixed build warnings
2018-02-07 20:33:45 +11:00
Andrew Tridgell
bc96cb8a19
AP_HAL: fixed build warnings
2018-02-07 20:33:45 +11:00
Andrew Tridgell
9ceddbdab6
AP_ADSB: fixed build warning
2018-02-07 20:33:45 +11:00
Andrew Tridgell
7d2e3c0d04
AP_Notify: fixed build warning
2018-02-07 20:33:45 +11:00
Andrew Tridgell
4886ffbf8a
HAL_ChibiOS: fixed build warnings
2018-02-07 20:33:45 +11:00
Andrew Tridgell
0d8cdd2728
AP_Compass: fixed warning
2018-02-07 20:33:45 +11:00
Andrew Tridgell
30e4323c6d
HAL_ChibiOS: disable USART1 till USB problem solved
...
using USART1 causes USB disconnects. The behaviour is like CTS/RTS is
enabled on USART1, but it is disabled.
2018-02-07 20:33:45 +11:00
Andrew Tridgell
d0eb2970c7
HAL_ChibiOS: ensure RTS and CTS are both disabled for no flow control
2018-02-07 20:33:45 +11:00
Andrew Tridgell
82f1f462ae
HAL_ChibiOS: ensure we don't init a uart driver twice
2018-02-07 20:33:45 +11:00
Andrew Tridgell
ad5a04fc89
HAL_ChibiOS: added NODMA option
...
this allows a peripheral to be configured without DMA (for low-use
UARTs)
2018-02-07 20:33:45 +11:00
Andrew Tridgell
74f4d5a3c9
HAL_ChibiOS: push MPU6500 to 4MHz on mindpx-v2
2018-02-07 20:33:45 +11:00
Andrew Tridgell
f4521772c1
AP_InertialSensor: don't try fast sampling on a MPU6500
...
it can't do it
2018-02-07 20:33:45 +11:00
Andrew Tridgell
d575d676b6
AP_InertialSensor: fixed another transfer without bus semaphore
2018-02-07 20:33:45 +11:00
Andrew Tridgell
f1ce321a2f
HAL_ChibiOS: added checking of bus owner
...
this ensures all bus transfers are only done by the thread that owns
the semaphore
2018-02-07 20:33:45 +11:00
Andrew Tridgell
2ffb8d1583
AP_InertialSensor: fixed a bug where bus semaphore not held
...
during init of the invensense driver we could do a transfer without
the bus semaphore held. That violates the locking rules for the bus
2018-02-07 20:33:45 +11:00
Andrew Tridgell
fa68210210
HAL_ChibiOS: fixed build with older compilers
2018-02-07 20:33:45 +11:00
Andrew Tridgell
626632989e
HAL_ChibiOS: fixed build for boards with no USB
2018-02-07 20:33:45 +11:00
Andrew Tridgell
41758348e5
HAL_ChibiOS: added checking of lock state in shared_dma
...
and use lock around check for tx completion in UART handler
2018-02-07 20:33:45 +11:00