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
Andrew Tridgell
dce4c90467
HAL_ChibiOS: moved UART thread to UART driver
...
use an event model for triggering sends from tx complete DMA handler
for unbuffered uarts
2018-02-07 20:33:45 +11:00
Andrew Tridgell
5fc12f82fb
HAL_ChibiOS: expanded interrupt stack to 256
...
this is very conservative, and may be trimmed later based on analysis
of stack usage
2018-02-07 20:33:45 +11:00
Andrew Tridgell
aae1cc22f4
HAL_ChibiOS: updated USB device strings
...
use defaults or add in serial number
2018-02-07 20:33:45 +11:00
Andrew Tridgell
4b8bde746e
HAL_ChibiOS: improved default USB strings
...
use board name and serial number to make IDs unique
2018-02-07 20:33:45 +11:00
Andrew Tridgell
23e1b2e271
HAL_ChibiOS: added paranoid state checking on I2C
...
this is here just while debugging an issue with Mark
2018-02-07 20:33:45 +11:00
Andrew Tridgell
7e19f49e42
HAL_ChibiOS: fixed DMA lock in SoftSigReader
2018-02-07 20:33:45 +11:00
Andrew Tridgell
1aa6a0068a
HAL_ChibiOS: fixed order of I2C DMA
...
this was harmless, but confusing for debugging
2018-02-07 20:33:45 +11:00
Andrew Tridgell
111e5b6268
HAL_ChibiOS: change USB ID for revo-mini
2018-02-07 20:33:45 +11:00
Andrew Tridgell
4d018cf5e2
HAL_ChibiOS: take lock on DMA allocate/deallocate
...
this is required for the stm32_dma_stream bitmask manipulation
2018-02-07 20:33:45 +11:00
Andrew Tridgell
bc49c0d2c5
HAL_ChibiOS: make hwdef.h the same on python2 and python3
...
and output to /tmp by default to prevent accidental use of old hwdef.h
in the build
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e002fbdb8d
HAL_ChibiOS: fixed a build warning
2018-02-07 20:33:45 +11:00
Andrew Tridgell
23803df038
AP_Compass: allows boards to define orientation of HMC5843
2018-02-07 20:33:45 +11:00
Andrew Tridgell
077aa24c6d
HAL_ChibiOS: add more pins for revo-mini port
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e91144cc8e
HAL_ChibiOS: allow for empty UART drivers
...
allows for boards with no default GPS port
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e0212ebe85
HAL_ChibiOS: cope with ETR timer channels
...
trean the ETR capability as a separate AF
2018-02-07 20:33:45 +11:00
Andrew Tridgell
c1df2a8a4b
HAL_ChibiOS: cope with timers 10 and later
2018-02-07 20:33:45 +11:00
Andrew Tridgell
d191b37520
HAL_ChibiOS: cope with having no ADC inputs
2018-02-07 20:33:45 +11:00
Andrew Tridgell
87389e0fdc
HAL_ChibiOS: fixed double DMA allocation on i2c
2018-02-07 20:33:45 +11:00
Andrew Tridgell
19e1349d0a
HAL_ChibiOS: setup serial5 for fmuv3 ESP8266
2018-02-07 20:33:45 +11:00
Andrew Tridgell
fca0ad4f85
AP_SerialManager: allow hwdef.dat setup of serial5 config
2018-02-07 20:33:45 +11:00
Andrew Tridgell
560948dc69
HAL_ChibiOS: fixed GPIOs for ESP8266 port
2018-02-07 20:33:45 +11:00
Andrew Tridgell
fa96e23552
HAL_ChibiOS: setup correct volt and current pins
...
use hwdef.dat to specify battery pins
2018-02-07 20:33:45 +11:00
Andrew Tridgell
626b9289be
AP_BattMonitor: allow hwdef.dat config of battery pins
2018-02-07 20:33:45 +11:00
Andrew Tridgell
85acbcb21d
HAL_ChibiOS: fixed UART send from TX complete IRQ
2018-02-07 20:33:45 +11:00
Andrew Tridgell
65b762ddfe
AP_Notify: support OLED display on ChibiOS
2018-02-07 20:33:45 +11:00
Andrew Tridgell
63a825dd2c
HAL_ChibiOS: don't call spiStart() unless bus is stopped
2018-02-07 20:33:45 +11:00
Andrew Tridgell
2513e60e3c
AP_SerialManager: use unbuffered writes for volz
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e29b79f41b
HAL_ChibiOS: fixed DMA allocation bug on SPI
...
thanks to Mark Whitehorn for finding this crash
2018-02-07 20:33:45 +11:00
Andrew Tridgell
29add8a880
HAL_ChibiOS: fixed build without FATFS enabled
2018-02-07 20:33:45 +11:00
Andrew Tridgell
6b187b393a
HAL_ChibiOS: fixed fmuv4 build
2018-02-07 20:33:45 +11:00
Siddharth Purohit
e1a8bba58b
HAL_ChibiOS: increase the stack size for uavcan thread
2018-02-07 20:33:45 +11:00
Siddharth Purohit
17fef4b630
HAL_PX4: add support for api change in AP_HAL::CANManager
2018-02-07 20:33:45 +11:00
Siddharth Purohit
a55f1c85af
HAL_Linux: add support for api change in AP_HAL::CANManager
2018-02-07 20:33:45 +11:00
Siddharth Purohit
8d5667afa0
AP_UAVCAN: add method to read driver from parent can manager
2018-02-07 20:33:45 +11:00
Siddharth Purohit
77f8acd7a1
HAL_ChibiOS: add CAN to supported peripherals list
2018-02-07 20:33:45 +11:00
Siddharth Purohit
6f21c1583f
HAL_ChibiOS: add definitions to support uavcan in fmuv3
2018-02-07 20:33:45 +11:00
Siddharth Purohit
edd0e8d2f5
HAL_ChibiOS: add CANManager to ChibiOS namespace
2018-02-07 20:33:45 +11:00
Siddharth Purohit
143686f70d
HAL_ChibiOS: add placeholder cstdio header
2018-02-07 20:33:45 +11:00
Siddharth Purohit
539d5adc13
hwdef: add more posix methods
2018-02-07 20:33:45 +11:00
Siddharth Purohit
288f6b1fa0
HAL_ChibiOS: add chibios cpp wrapers, libuavcan's stm32 driver uses it
2018-02-07 20:33:45 +11:00
Siddharth Purohit
f2e77ab773
AP_HAL_ChibiOS: add uavcan thread
2018-02-07 20:33:45 +11:00
Siddharth Purohit
3c009cf02c
AP_HAL_ChibiOS: add CAN driver
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
Siddharth Purohit
f0f4239d4a
AP_Compass: skip using posix headers for non posix systems
2018-02-07 20:33:45 +11:00
Siddharth Purohit
a413fef77f
AP_BoardConfig: add support for UAVCAN setup on ChibiOS boards
2018-02-07 20:33:45 +11:00
Siddharth Purohit
175d806b5f
AP_Baro: skip using posix headers for non-posix systems
2018-02-07 20:33:45 +11:00
Andrew Tridgell
b992b5e02a
HAL_ChibiOS: allow for 16kHz brushed on all timers
2018-02-07 20:33:45 +11:00
Andrew Tridgell
b0d0ee1f01
HAL_ChibiOS: reformat using yapf and support python3
...
allow hwdef.h compilation using python3
2018-02-07 20:33:45 +11:00
Andrew Tridgell
67e0ba22fe
HAL_ChibiOS: fixed some errors in F405 tables
2018-02-07 20:33:45 +11:00
Andrew Tridgell
70ff3871e0
HAL_ChibiOS: fixed RC in on CH1 of timer
2018-02-07 20:33:45 +11:00
Andrew Tridgell
890d322b47
HAL_ChibiOS: starting on mini-pix hwdef.dat
...
for RadioLink mini-pix board
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
23555f4c25
HAL_ChibiOS: allow for empty storage during bringup
...
useful when storage backend driver isn't written yet
2018-02-07 20:33:45 +11:00
Andrew Tridgell
ecce2a73d0
HAL_ChibiOS: Storage::_timer_tick is an override
2018-02-07 20:33:45 +11:00
Andrew Tridgell
713006bb1d
HAL_ChibiOS: allow more OTG defines to be overridden
2018-02-07 20:33:45 +11:00
Andrew Tridgell
33a87194dc
HAL_VRBrain: Storage::_timer_tick is an override
2018-02-07 20:33:45 +11:00
Andrew Tridgell
0f079deebf
HAL_PX4: Storage::_timer_tick is an override
2018-02-07 20:33:45 +11:00
Andrew Tridgell
26161ee467
HAL_Linux: Storage::_timer_tick is an override
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
1fb257a35a
HAL_ChibiOS: initial hwdef.dat for revo mini
2018-02-07 20:33:45 +11:00
Andrew Tridgell
979a2a4796
HAL_ChibiOS: removed debug code
2018-02-07 20:33:45 +11:00
Siddharth Purohit
538af2a58a
HAL_ChibiOS: fix parity and stop bit setting
2018-02-07 20:33:45 +11:00
Mark Whitehorn
1a167a7d1f
AP_SerialManager: disable flow control for sbus1 port
2018-02-07 20:33:45 +11:00
Mark Whitehorn
b94b1dcd97
AP_HAL_ChibiOS: add missing declaration
2018-02-07 20:33:45 +11:00
Siddharth Purohit
df4bf7e476
HAL_ChibiOS: fix irq clash with unnecessary access to readbuf ring buffer
2018-02-07 20:33:45 +11:00
Siddharth Purohit
02696882e9
HAL_ChibiOS: if unbuffered write, do continue to invoke DMA writes
...
adds higher latency to device sharing DMA
2018-02-07 20:33:45 +11:00
Siddharth Purohit
0c914838b2
AP_IOMCU: fix data type for available bytes
2018-02-07 20:33:45 +11:00
proficnc
c613c0bde2
added the cube red hardware definition
2018-02-07 20:33:45 +11:00
Andrew Tridgell
442b280368
AP_IOMCU: improved error checking
...
and avoid pointless change of rates
2018-02-07 20:33:45 +11:00
Andrew Tridgell
3dacbd1b36
HAL_ChibiOS: hold write lock for unbuffered writes
2018-02-07 20:33:45 +11:00
Andrew Tridgell
ad26ca4a27
HAL_ChibiOS: implement parity and stop bits controls
2018-02-07 20:33:45 +11:00
Andrew Tridgell
2e15285c51
HAL_ChibiOS: refuse unbuffered writes without DMA
...
we would need much more complex code to handle this
2018-02-07 20:33:45 +11:00
Andrew Tridgell
5ffcff1a79
AP_IOMCU: use unbuffered UART writes
...
this lowers latency for servo outputs to the IOMCU
2018-02-07 20:33:45 +11:00
Andrew Tridgell
3f2cc2c9d6
HAL_ChibiOS: implement low latency UART writes
...
this implements the set_unbuffered_writes() API by performing writes
directly in the write() call and not from a timer
2018-02-07 20:33:45 +11:00
Andrew Tridgell
015c3a1fa3
HAL_ChibiOS: removed duplicate defines
2018-02-07 20:33:45 +11:00
Andrew Tridgell
2bb99bfe53
HAL_VRBRAIN: implement _timer_tick in UARTDriver
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e276edbb03
HAL_SITL: implement _timer_tick in UARTDriver
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e4fc0e9f62
HAL_QURT: implement _timer_tick in UARTDriver
2018-02-07 20:33:45 +11:00
Andrew Tridgell
25ea60da69
HAL_PX4: implement _timer_tick in UARTDriver
2018-02-07 20:33:45 +11:00
Andrew Tridgell
22de99dd58
HAL_Linux: implement _timer_tick in UARTDriver
2018-02-07 20:33:45 +11:00
Andrew Tridgell
865e4f3104
HAL_ChibiOS: implement _timer_tick in UARTDriver
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
Andrew Tridgell
a5bafb399f
HAL_ChibiOS: adjust SPI pin speeds
2018-02-07 20:33:45 +11:00
Holger Steinhaus
36f0b429fb
GCS_MAVLink: send BATTERY_STATUS.energy_consumed if current measurement is available
2018-02-06 20:00:16 -07:00
Holger Steinhaus
d1a37a60b7
DataFlash: log consumed energy (Wh)
2018-02-06 20:00:16 -07:00
Holger Steinhaus
7383552ebc
AP_BatteryMonitor: count mWh spent since powerup
2018-02-06 20:00:16 -07:00
Igor Anokhin
e6d4b2a087
AP_InertialSensor: add LSM9DS1 entry
...
Enable LSM9DS1 in case it is selected
2018-02-06 09:31:26 -08:00
Igor Anokhin
5cf15db966
AP_HAL: add LSM9DS1 defines
...
Add defines for name and number sensor
2018-02-06 09:31:26 -08:00
Igor Anokhin
be386b2b73
AP_InertialSensor: LSM9DS1 add FIFO support
...
Make reading data with FIFO
2018-02-06 09:31:26 -08:00
Igor Anokhin
44d5112488
AP_InertialSensor: add LSM9DS1 support
...
Make LSM9DS1 driver
2018-02-06 09:31:26 -08:00
Nicholas Engle
1103e92884
SITL: Add SIM_WIND_DIR_Z parameter for SITL
...
This controls the vertical pitch of the 3d wind vector, allowing futher control of the wind
using systems like dronekit. This change directly effects the calcuation of the wind vector
2018-02-05 16:38:53 -08:00
Nicholas Engle
8b08e9388d
AP_HAL_SITL: Add SIM_WIND_DIR_Z parameter for SITL
...
This controls the vertical pitch of the 3d wind vector, allowing futher control of the wind
using systems like dronekit. This change directly effects the calcuation of the wind vector
2018-02-05 16:38:53 -08:00
Michael du Breuil
725f1a2f2b
DataFlash: Use battery singleton
2018-02-06 00:11:32 +00:00
Michael du Breuil
03bf247d36
AP_BattMonitor: Create a battery singleton
...
Also logs battery data from the read function directly
2018-02-06 00:11:32 +00:00
Andrew Tridgell
83d1e71cb2
AP_Baro: ran BMP085 driver through code formatter
2018-02-05 12:12:03 +11:00
night-ghost
2c043b822b
AP_Baro: fixed BMP085 driver for current API
2018-02-05 12:12:03 +11:00
mirkix
bf758098d7
AP_HAL_Linux: fix deallocation
2018-02-05 11:05:12 +11:00
LukeMike
3dcaf83eaa
VRBRAIN / DataFlash: some update for new VR Brain 5.2E (EEPROM version)
2018-02-05 08:26:49 +11:00
LukeMike
250bf53912
VRBRAIN / AP_HAL_VRBRAIN: some update for new VR Brain 5.2E (EEPROM version)
2018-02-05 08:26:49 +11: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
ccb316f3f3
VRBRAIN / AP_BoardConfig: some update for new VR Brain 5.2E (EEPROM version)
2018-02-05 08:26:49 +11:00
LukeMike
8b737c54b9
VRBRAIN / AP_BattMonitor: some update for new VR Brain 5.2E (EEPROM version)
2018-02-05 08:26:49 +11:00
LukeMike
bf6e57e7a4
VRBRAIN / DataFlash: added writebuf_chunk for VR Brain 5.4
2018-02-05 08:26:49 +11:00
LukeMike
721f55e93c
VRBRAIN / AP_RangeFinder: removed AP_RangeFinder_PX4_PWM for VR Brain boards
2018-02-05 08:26:49 +11:00
LukeMike
a319f6632f
VRBRAIN / AP_RPM: removed RPM_PX4_PWM for VR Brain 5.1 and VR Micro Brain 5.2 (they haven't this input pin)
2018-02-05 08:26:49 +11:00
LukeMike
502f19cbae
VRBRAIN / AP_InertialSensor: added inertial sensors init for VR Brain boards
2018-02-05 08:26:49 +11:00
LukeMike
432f6c2a4a
VRBRAIN / APCompass: added compass sensor init for VR Brain boards
2018-02-05 08:26:49 +11:00
LukeMike
d48f9397d0
VRBRAIN / AP_Baro: added barometer sensor init for VR Brain boards
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
LukeMike
505497b555
VRBRAIN / AP_BoardConfig: added fmu_mode parameter for VR Brain boards
2018-02-05 08:26:49 +11:00
LukeMike
b7985f77b5
VRBRAIN / AP_BoardConfig: added VR Brain boards into board_setup_drivers and board_autodetect
2018-02-05 08:26:49 +11:00
LukeMike
6b820ac9e4
VRBRAIN / AP_BoardConfig: added VR Brain define into px4_board_type enum
2018-02-05 08:26:49 +11:00
LukeMike
97b29a333d
VRBRAIN / AP_HAL_VRBRAIN: updated AP_HAL
2018-02-05 08:26:49 +11:00
Michael du Breuil
200aacea43
AP_AdvancedFailsafe: Report MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION
2018-02-03 09:36:03 +09:00
Randy Mackay
f189ce5c68
AC_WPNav: minor formatting fix
...
non-functional change
2018-02-02 20:55:20 +09:00
Andrew Tridgell
2067e25523
AP_Compass: make length filter in MAG3110 optional
...
compile time for now, later can may become parameter
2018-02-02 21:07:40 +11:00
night-ghost
2065cc879c
AP_HAL: mAG3110 driver
2018-02-02 21:07:40 +11:00
night-ghost
b6bf90ab93
AP_Compass: mAG3110 driver
2018-02-02 21:07:40 +11:00
Andrew Tridgell
1513246040
AP_FlashStorage: fixed two bugs found by night-ghost
...
this fixes two issues found by night-ghost. The first occurs if a 16
bit flash write is not atomic and only the first byte is written. Then
we could end up declaring the data invalid on reboot and erasing.
The second is a race in switching sectors. If power off occurs at the
wrong time we would trigger en erase on reboot.
2018-02-02 14:19:12 +09:00
mirkix
8da1252959
AP_BattMonitor: add default pins and values for BeagleBone Blue
2018-02-02 10:01:34 +09:00
Peter Barker
adde7bc588
AP_Terrain: fix snprintf buffer length warning
...
Also includes fix from Tridge to use MIN() instead of MAX()
2018-02-02 09:59:06 +09:00
murata
8070c13963
AP_Soaring: delete \n from the log using gcs().send_text
2018-02-02 09:41:23 +09:00
murata
cdfca9d9ea
AP_HAL_PX4: delete \n from the log using gcs().send_text
2018-02-02 09:40:55 +09:00
murata
5b3a402d36
AP_Camera: delete \n from the log using gcs().send_text
2018-02-02 09:40:05 +09:00
murata
3ec733d4f8
AP_BattMonitor: Aggregate the commands defined in the SMBUS specification.
...
AP_BattMonitor: Aggregate the commands defined in the SMBUS specification.
2018-02-02 09:17:30 +09:00
Peter Barker
8e8b0dcc06
DataFlash: add ? and - to multiplier table
...
This allows a consumer to expect referential integrity for the
multipliers
2018-02-02 09:15:59 +09:00
Tatsuya Yamaguchi
aef9fa4a63
AP_NavEKF3: delete \n from the log using gcs().send_text
2018-02-02 09:13:54 +09: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
Randy Mackay
3badcdcfba
AC_PosControl: default gains for sub
2018-01-31 08:48:21 +09:00
Randy Mackay
61933c6f1c
AC_PosControl: shorten PSC_ACCELZ param to PSC_ACCZ
2018-01-31 08:48:21 +09:00
murata
6a87840c7a
AP_NavEKF3: Change the if statement to a switch statement.
2018-01-28 22:20:08 +00:00
Leonard Hall
692e6518cc
AC_AttitudeControl: update param desc values for large copters
2018-01-27 11:54:04 +09:00
Leonard Hall
691abab95e
AC_AttitudeControl: Update parameter ranges
2018-01-27 11:38:09 +09:00
David Ingraham
2547ca399a
AP_Airspeed: Fix ARSPD2_TYPE docs
2018-01-26 13:19:53 -08:00
Randy Mackay
ebf405e53d
AC_Avoid: reduce min and default DIST_MAX values
2018-01-25 11:16:01 +09:00
Andrew Tridgell
6558da2c4c
HAL_SITL: fixed valgrind error in ubx driver
...
this was causing a valgrind error on all runs with a virtual ublox GPS
2018-01-24 18:00:42 -07:00
night-ghost
3165d72647
AP_Motors: reduce unnecessary multiple call of get_compensation_gain()
2018-01-24 19:26:15 +09:00
Andrew Tridgell
c6c5603382
AP_Param: added back key dumping code
...
this is essential for working out conversion tables.
2018-01-24 18:23:59 +11:00
mirkix
c5eb52bf8d
AP_HAL_Linux: fix comment
2018-01-23 13:32:12 -08:00
bnsgeyer
7a9e424977
AP_Motors: added comments to indicate parameter indices previously used by RSC_PWM_MIN, RSC_PWM_MAX, and RSC_PWM_REV
2018-01-23 14:12:27 +09:00
Randy Mackay
04822152da
AC_PID: fixes after peer review of AC_PID_2D
2018-01-23 12:00:43 +09:00
Randy Mackay
efbd8eb386
AC_WPNav: remove unused definition
...
This has been moved to AC_PosControl library
2018-01-23 12:00:43 +09:00
Randy Mackay
368245017a
AC_WPNav: access pos-controller's horizontal p object
2018-01-23 12:00:43 +09:00
Randy Mackay
9c00eb3d5f
AC_PosControl_Sub: move pids to be local
2018-01-23 12:00:43 +09:00
Randy Mackay
c70d3e0ab8
AC_PosControl: move pids to be local
2018-01-23 12:00:43 +09:00
Randy Mackay
00037fd50e
AC_PosControl_Sub: replace velocity pi with local pid
2018-01-23 12:00:43 +09:00
Randy Mackay
3a73ff1e2e
AC_PosControl: replace velocity control with local 2-axis PID
2018-01-23 12:00:43 +09:00
Randy Mackay
398a0d89bf
AC_P: add const accessor
2018-01-23 12:00:43 +09:00
Randy Mackay
c1708db208
AC_PID: add const and use is_positive in AC_PI_2D
2018-01-23 12:00:43 +09:00
Leonard Hall
fd964a21d6
AC_PID: add AC_PID_2D
2018-01-23 12:00:43 +09:00
Randy Mackay
9ea16bec15
AP_InertialSensor: resolve compiler warning in example
2018-01-23 08:32:48 +09:00
Steven Josefs
e8debde4b7
AC_Fence: hide ALT_MAX parameter from Rover
2018-01-22 20:42:31 +09:00
Randy Mackay
a1bf9d66f0
AC_Avoid: default behaviour to stop for Rovers
2018-01-22 17:18:41 +09:00
Randy Mackay
ae4ded86a8
AC_Avoid: get_max_speed supports linear acceleration
...
Also get_stopping_distance supports linear deceleration
2018-01-22 17:18:41 +09:00
Randy Mackay
dfaabb543c
AC_Avoid: add adjust_speed
...
this method accepts a heading and speed instead of a velocity vector
2018-01-22 17:18:41 +09:00
Randy Mackay
9d74d82ff6
AC_Avoid: add stopping behaviour
2018-01-22 17:18:41 +09:00
Randy Mackay
c28cfcdc27
AP_Math: add Vector2f::circle_segment_intersection
2018-01-22 17:18:41 +09:00
Randy Mackay
a655c36159
AP_Math: add Vector2f::segment_intersection
2018-01-22 17:18:41 +09:00
Andrew Tridgell
2c73b374f5
AP_Motors: protect against writes to NULL servo_aux
...
if user changes parameter while setting up it could crash
2018-01-21 21:12:13 +11:00
Andrew Tridgell
bdb9f062ae
AP_Motors: removed unused pwm parameters for heli
2018-01-21 21:12:13 +11:00
bnsgeyer
ac2e933358
AP_Motors: Tradheli - Fixed Directdrive Variable Pitch Feature
2018-01-21 21:12:13 +11:00
Andrew Tridgell
7b251c9739
HAL_ChibiOS: lower FRAM CS speed to 2MHz
...
this matches old firmware
2018-01-20 17:40:07 +11:00
Andrew Tridgell
30fd2da108
HAL_ChibiOS: enable RTSCTS and SBUS_OUT
2018-01-20 17:40:07 +11:00
Andrew Tridgell
93a993c575
AP_HAL: setup RTSCTS and SBUS_OUT
2018-01-20 17:40:07 +11:00
Andrew Tridgell
f8a3b0e753
AP_BoardConfig: improved board config
...
use hwdef.dat to enable RTSCTS and SBUS_OUT
2018-01-20 17:40:07 +11:00
Andrew Tridgell
63671b06a8
HAL_ChibiOS: added HAL_I2C_MAX_CLOCK define
2018-01-20 17:40:07 +11:00
Andrew Tridgell
88f11f5a50
HAL_ChibiOS: added HAL_I2C_BUS_BASE
...
this allows fmuv4 to start at bus 1
2018-01-20 17:40:07 +11:00
bugobliterator
c60c0b8ab1
HAL_ChibiOS: fix undef line processing
2018-01-20 17:40:07 +11:00
Andrew Tridgell
8286486890
HAL_ChibiOS: drop default SPI priority to 179
2018-01-20 17:40:07 +11:00
Andrew Tridgell
ab748034a2
HAL_ChibiOS: removed RC inversion logic
...
not needed any more
2018-01-20 17:40:07 +11:00
Andrew Tridgell
d6b9ab7756
AP_RCProtocol: tidy up frontend/backend split
2018-01-20 17:40:07 +11:00
Andrew Tridgell
ff5e00da32
AP_RCProtocol: fixed DSM decoding
2018-01-20 17:40:07 +11:00
bugobliterator
7db19cfae0
HAL_ChibiOS: use separate parameter for detect timeout
2018-01-20 17:40:07 +11:00
Andrew Tridgell
613d7a47ba
HAL_ChibiOS: support RCIN on mindpx-v2
2018-01-20 17:40:07 +11:00
bugobliterator
02c7513f83
HAL_ChibiOS: add invert method and fix width measurement
2018-01-20 17:40:07 +11:00
bugobliterator
f7ac5aa079
HAL_ChibiOS: put rcin on a separate thread
2018-01-20 17:40:07 +11:00
Andrew Tridgell
f50f427a59
HAL_ChibiOS: added comment on beta fmuv4 board
2018-01-20 17:40:07 +11:00
Andrew Tridgell
743806116d
HAL_ChibiOS: removed unusued ppm driver
...
now uses AP_RCProtocol
2018-01-20 17:40:07 +11:00
Andrew Tridgell
ccb85c2707
HAL_ChibiOS: fixed fmuv3 build with no ICU
2018-01-20 17:40:07 +11:00
Andrew Tridgell
f87668c15c
AP_RCProtocol: lock onto a single protocol to reduce CPU cost
2018-01-20 17:40:07 +11:00
Andrew Tridgell
33c7cba9af
HAL_ChibiOS: use more efficient push mechanism in IRQ
...
and don't use push_force() as it is not safe to do reads from within
the producer
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
Andrew Tridgell
7a4f429b85
HAL_ChibiOS: don't adjust buffer size for protocol
...
its all about IRQ latency, not IRQ rate
2018-01-20 17:40:07 +11:00
Andrew Tridgell
e2c8fe27ef
HAL_ChibiOS: fixed memory handling in SoftSigReader
2018-01-20 17:40:07 +11:00
Andrew Tridgell
8be59c73c7
AP_RCProtocol: fixed return value when no input
2018-01-20 17:40:07 +11:00
bugobliterator
bad9f2b4c9
AP_RCProtocol: add library to process RC signals
2018-01-20 17:40:07 +11:00
bugobliterator
eeea2c9961
HAL_ChibiOS: use software signal reader for RCInput if available
2018-01-20 17:40:07 +11:00
bugobliterator
6be4c710c3
HAL_ChibiOS: add Software Signal reader using timer and DMA
2018-01-20 17:40:07 +11:00
bugobliterator
1db1ff799e
HAL_ChibiOS: modify hwdef scripts to setup for generic RCIN
2018-01-20 17:40:07 +11:00
bugobliterator
1970d8a2c8
HAL_ChibiOS: use common RCIN pin for fmuv4
2018-01-20 17:40:07 +11:00
bugobliterator
445ba6ed39
HAL_ChibiOS: update ppm to use Extended ICU driver
2018-01-20 17:40:07 +11:00
Andrew Tridgell
7c23e33775
HAL_Chibios: set min output rate for oneshot to 100Hz
...
this will keep ESCs happy during gyro cal
2018-01-20 17:40:07 +11:00
Andrew Tridgell
b07c599bf2
Hal_Chibios: allow for faster INS sample times
...
we need higher priority on SPI and faster device loops
2018-01-20 17:40:07 +11:00
Andrew Tridgell
25f13ed518
HAL_Chibios: adjust MPU9250 clock speed down
...
this helps with fast sampling enabled
2018-01-20 17:40:07 +11:00
Andrew Tridgell
7e44b06440
HAL_ChibiOS: adjust SPI clock rates on FMUv4
...
this prevents some timing errors on the IMUs
2018-01-20 17:40:07 +11:00
Andrew Tridgell
dd59a5ff57
HAL_ChibiOS: adjust external bus clock for mpu9250
...
this fixes an issue with fast sampling on the PH2.1 cube
2018-01-20 17:40:07 +11:00
Andrew Tridgell
93fa74518a
AP_IOMCU: limit rate to IOMCU to 500Hz
...
when running with very high loop rates we can saturate the IO link
2018-01-20 17:40:07 +11:00
Andrew Tridgell
880a84294e
HAL_ChibiOS: support oneshot mode
...
supports oneshot 125 and oneshot
2018-01-20 17:40:07 +11:00
Andrew Tridgell
38a36a070f
DataFlash: removed some special cases for ChibiOS
2018-01-20 17:40:07 +11:00
Andrew Tridgell
30903f2acb
AP_IOMCU: support oneshot mode
2018-01-20 17:40:07 +11:00
Andrew Tridgell
ba3cdf74b5
HAL_Chibios: optional ADC debugging
...
this debugging capability is very useful on board bringup. It outputs
the first 6 analog channels as an AP_ADC MAVLink message
2018-01-20 17:40:07 +11:00
Andrew Tridgell
c863681849
HAL_ChibiOS: fixed PWM output assignment
2018-01-20 17:40:07 +11:00
Andrew Tridgell
82c6d2751f
HAL_ChibiOS: fixed F412 ram and flash setup
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
Peter Barker
67bed1d6c2
HAL_ChibiOS: added support for Sparky2 STM23F405 board
2018-01-20 17:40:07 +11:00
Siddharth Purohit
a6be19d8cf
HAL_SITL: fix sitl build for mac osx
2018-01-20 17:35:08 +11:00
Andrew Tridgell
8b0e9bcff4
AP_Scheduler: use pre-computed loop constants
...
this prevents changing the loop rate without a reboot. Too many
subsystems rely on a consistent loop rate to allow it to be changed
2018-01-20 15:35:58 +11:00
Peter Barker
f2242e07db
AP_Scheduler: remove memoisation in loop_period_s()
2018-01-20 15:35:58 +11:00
Peter Barker
a6ac37d0ba
AP_Scheduler: eliminate MAIN_LOOP_SECONDS macro
2018-01-20 15:35:58 +11:00
Leonard Hall
e249e06714
AC_PosControl: minor enhancement to lean_angles_to_accel
2018-01-20 09:49:58 +09:00
Andrew Tridgell
44dd079cb9
AP_Scheduler: allow for loop rates above 400Hz
...
with ChibiOS we can run copter at 1KHz with no scheduling misses. This
small PR allows that to be configured.
2018-01-20 10:40:37 +11:00
Andrew Tridgell
100363ba03
AP_InertialSensor: if no sensors found allow parameter change
2018-01-20 10:36:22 +11:00
Andrew Tridgell
24c424ae5d
AP_InertialSensor: support over 1kHz IMUs
...
this allows for invensense IMUs to run above 1kHz by adjusting the
downsampling rate
2018-01-20 10:36:22 +11:00
Andrew Tridgell
c0c5f23aa5
AP_InertialSensor: added INS_ENABLE_MASK
...
this allows for only a specified subset of IMUs to be probed, so you
can disable IMUs that aren't needed.
The back corresponds to bits in the order the IMUs are normally probed
on the board
2018-01-20 10:36:22 +11:00
Andrew Tridgell
9416165fe3
AP_InertialSensor: improved invensense debugging on ChibiOS
2018-01-20 10:36:22 +11:00
Leonard Hall
d5976442f8
AC_PosControl: minor comment change
...
non-functional change
2018-01-19 15:40:32 +09:00
Leonard Hall
3ada0f32b0
AC_AttitudeControl: minor comment update
...
Non-functional change
2018-01-19 15:40:24 +09:00
mirkix
700171a0fc
AP_HAL_Linux: add second RCIN port for Blue
2018-01-17 15:25:51 -08:00
Michael du Breuil
8712fbd55d
AP_BattMonitor: Move per battery params into a containing class
2018-01-17 22:21:55 +00:00
Michael du Breuil
bb0d43d03c
AP_BattMonitor: Remove unneeded memebers
...
is_powering_off was only used for solo, and was just an intermediate
copy before updating notify
2018-01-17 22:21:55 +00:00
Michael du Breuil
a1a5665213
AP_Param: Support marking a param group as ignoring the enable flag
2018-01-17 22:21:55 +00:00
Nikita Tomilov
1549b1a52a
AP_BoardConfig: CAN: Merge PX4 and Linux CAN setup
...
Here we merge PX4 and Linux CAN bus setup since the interface is almost
the same for both of them.
2018-01-17 07:24:17 -08:00
Tom Pittenger
d713d57904
AP_HAL_Linux: update software license referencing UAVCAN submodule
2018-01-17 07:24:17 -08:00
Nikita Tomilov
3ac2e4e8c5
AP_HAL_Linux: CAN: _pollRead no more than 100 iterations
...
This adds a counter here to only loop to a maximum number of iterations.
Now we avoid situations in which we would be stuck processing packets here.
This also adds some other meaningful defines
2018-01-17 07:24:17 -08:00
Nikita Tomilov
43bfcbc8e2
AP_HAL_Linux: CAN: Rename CANDriver -> CANManager
2018-01-17 07:24:17 -08:00
Nikita Tomilov
d0fc481202
AP_HAL_Linux: CAN: Rename Linux::LinuxCAN -> Linux::CAN
2018-01-17 07:24:17 -08:00
Alexey Bulatov
e0acbd3e53
AP_HAL_LINUX: Add CAN to timer_task
2018-01-17 07:24:17 -08:00
Alexey Bulatov
606eb05c95
AP_BoardConfig: Linux CAN initialisation
2018-01-17 07:24:17 -08:00
Nikita Tomilov
a50e6c6dd7
AP_HAL: board: linux: Add default CAN interface name
2018-01-17 07:24:17 -08:00
Nikita Tomilov
b6665f7e58
AP_HAL_Linux: CAN: get rid of RaiiCloser
2018-01-17 07:24:17 -08:00
Alexey Bulatov
976500960f
AP_HAL_LINUX: Add CAN driver
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
Dylan Herman
85e1f9f9f6
AP_SmartRTL: attempts to set home in update
...
update will continuously attempt to set SmartRTL home as long as
position is ok and home has not be set. Updated examples to use set_home.
2018-01-17 11:03:33 +09:00
Andrew Tridgell
8fea99e1da
HAL_Linux: use calloc in preferance to malloc
2018-01-17 11:22:05 +11:00
Andrew Tridgell
3f5534eed5
AP_HAL: use calloc in preferance to malloc
2018-01-17 11:22:05 +11:00
Andrew Tridgell
f6138e3c91
HAL_ChibiOS: use calloc in preferance to malloc
2018-01-17 11:22:05 +11:00
Andrew Tridgell
20d75f52c2
AP_Compass: use calloc in preferance to malloc
2018-01-17 11:22:05 +11:00
Andrew Tridgell
c9deabc283
DataFlash: use calloc in MAVLink backend
2018-01-17 11:22:05 +11:00
Andrew Tridgell
8dae3fe59b
HAL_ChibiOS: use calloc for malloc type
...
this is not strictly necessary on ChibiOS as we already override
malloc, but will keep static analysis happy
2018-01-17 11:22:05 +11:00
Andrew Tridgell
a99b690d49
HAL_PX4: use calloc for malloc_type()
...
this ensures that EKF memory is zero on start
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
Randy Mackay
094620bc8a
AC_WPNav: pass dt to avoidance
2018-01-16 12:13:48 +09:00
Leonard Hall
f48b14b810
AC_Avoidance: accept dt and pass to sqrt controller
2018-01-16 12:13:48 +09:00
Leonard Hall
b9ed8b292a
AC_PosControl: pass dt to att control sqrt_controller
2018-01-16 12:13:48 +09:00
Leonard Hall
62cc25022c
AC_AttitudeControl: protect against overshoot in sqrt controller
2018-01-16 12:13:48 +09:00
Leonard Hall
75de0cb4ef
AC_AttitudeControl: sqrt_controller accepts dt
2018-01-16 12:13:48 +09:00
Leonard Hall
0a10deb3f7
AP_Motors: Fix gain scaling on Throttle Average Max and reduce additional gain on low throttle for Single and Coax.
2018-01-16 11:50:30 +09:00
Andrew Tridgell
7ca3b56886
HAL_ChibiOS: fixed STM32F405 typos
2018-01-16 09:46:30 +11:00
Andrew Tridgell
b6f3db44d8
DataFlash: log health and primary for airspeed
2018-01-16 07:14:20 +11:00
Andrew Tridgell
5846558b0e
AP_Baro: moved constants to AP_Math/definitions.h
2018-01-16 07:14:20 +11:00
Andrew Tridgell
ee1fea55ce
AP_Math: moved constants from AP_Baro
2018-01-16 07:14:20 +11:00
Andrew Tridgell
8bb0ad7f3a
AP_Arming: check all airspeed sensors are healthy
2018-01-16 07:14:20 +11:00
Andrew Tridgell
bbcda11afe
DataFlash: log both airspeed sensors
2018-01-16 07:14:20 +11:00
Andrew Tridgell
58b0ac07ec
AP_Airspeed: support dual airspeed sensors
...
allow for a primary and secondary airspeed sensor
2018-01-16 07:14:20 +11:00
rde-mato
87e3777f67
AP_Airspeed: added SDP3X airspeed sensor driver
2018-01-16 07:14:20 +11:00
rde-mato
787420931e
AP_Baro: make AP_Baro a singleton
...
for AP_Airspeed
2018-01-16 07:14:20 +11:00
Andrew Tridgell
e120e912f1
HAL_ChibiOS: moved board defines to hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d2c04aa649
AP_HAL: moved board defines to hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f8542c86b6
AP_Terrain: added support for AP_Terrain for ChibiOS
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
e2a65c8c60
HAL_ChibiOS: added support for AP_Terrain for ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
cde930f5c8
HAL_ChibiOS: added skyviper-v2450 hwdef config
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c8beddf1e4
HAL_ChibiOS: allow for includes in hwdef.dat files
...
this allows creation of derived boards
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2929b3dbb1
HAL_ChibiOS: allow builds on systems with no SDIO
2018-01-15 11:46:02 +11:00
Andrew Tridgell
7b0eccc309
HAL_ChibiOS: updated skyviper-f412 hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
60a773d045
HAL_ChibiOS: removed duplicate defines
2018-01-15 11:46:02 +11:00
Andrew Tridgell
ff87d27143
AP_BoardConfig: fixed return of get_pwm_count()
...
thanks to Michael for noticing
2018-01-15 11:46:02 +11:00
Andrew Tridgell
ef1a14cc6c
HAL_ChibiOS: fixed 5V analog scale on fmuv4 and mindpx-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
867e7ebf71
HAL_ChibiOS: auto-generate GPIO table from hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
fbe8166c71
HAL_ChibiOS: auto-generate AnalogIn pin table
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f14a847b97
HAL_ChibiOS: rename classes to remove 'Chibi'
...
it is redundent as all classes are in ChibiOS namespace, and makes the
code harder to read
2018-01-15 11:46:02 +11:00
Andrew Tridgell
25b68dc150
HAL_ChibiOS: switch base freq when needed
...
timers can't do below 123 Hz with a clock of 8MHz, so we need to
change clock frequency based on the target period
2018-01-15 11:46:02 +11:00
Andrew Tridgell
ff3b0ec1bd
AP_IOMCU: added set_default_rate method
2018-01-15 11:46:02 +11:00
Andrew Tridgell
738d70ef02
HAL_ChibOS: fixed handling of disabled channels
2018-01-15 11:46:02 +11:00
Andrew Tridgell
320ada2002
AP_IOMCU: fixed crash with BRD_IO_ENABLE=0
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2978649cd4
waf: moved to generated loader script
2018-01-15 11:46:02 +11:00
Andrew Tridgell
6e4ef32628
HAL_ChibiOS: moved to generated loader script
2018-01-15 11:46:02 +11:00
Andrew Tridgell
9482ab1840
waf: use common makefile for ChibiOS if no custom present
2018-01-15 11:46:02 +11:00
Andrew Tridgell
bae9469af7
HAL_ChibiOS: use a common makefile and board.c
...
allow for custom files per board if supplied, but don't require them
for every board
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d17e9f321a
HAL_ChibOS: fixed mixture of brushed and normal PWM
...
allow non-brushed PWM servos with brushed main motors
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c639708e22
HAL_ChibOS: auto-generate full PWM config
...
use PWM markers in hwdef.dat to mark each PWM channel
2018-01-15 11:46:02 +11:00
Andrew Tridgell
b741c6c29e
AP_Compass: fixed build error on ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
daa9eec836
HAL_ChibiOS: auto-configure timer channels
...
allow for one marked PPMIN for input
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d65ec2ada7
HAL_ChibiOS: moved more headers to common
...
allow customisation, but don't require every port to copy the defaults
2018-01-15 11:46:02 +11:00
Andrew Tridgell
960bc40ff3
HAL_ChibiOS: moved to a common mcuconf.h
2018-01-15 11:46:02 +11:00
Andrew Tridgell
48d2704cf4
HAL_ChibiOS: CS pins don't need to be a single SPI BUS
...
its possible to use a CS pin on different buses, so they should not
have a particular bus tag
2018-01-15 11:46:02 +11:00
Andrew Tridgell
a554215576
HAL_ChibiOS: start to cope with not having I2C, SPI and UARTs
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f5c8754d75
HAL_ChibiOS: use ARRAY_SIZE_SIMPLE
...
this allows for boards without a device type (eg. no SPI bus)
2018-01-15 11:46:02 +11:00
Andrew Tridgell
7aeab8f5a8
AP_Common: added ARRAY_SIZE_SIMPLE()
...
this works with zero length arrays
2018-01-15 11:46:02 +11:00
Andrew Tridgell
468cadca45
HAL_ChibiOS: auto-generate UART driver declarations
2018-01-15 11:46:02 +11:00
Andrew Tridgell
8e87c30a33
AP_Compass: fixed MindPX-v2 compass orientations
2018-01-15 11:46:02 +11:00
Andrew Tridgell
8ab35e8aca
AP_InertialSensor: fixed MindPX-v2 orientation of IMU2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
58796ff435
HAL_Chibios: moved SPI device tables to hwdef.dat
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d1f93cd66c
HAL_Chibios: auto-generate I2C, SPI and UART device lists
...
this is less error prone and make a port faster as more information is
in hwdef.dat
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
dcab40459d
AP_InertialSensor: support MindPX-v2
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
36a141f9f1
AP_Compass: support MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
5458377e67
AP_BoardConfig: support MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
51f9f087ab
AP_Baro: support MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
280140bf25
HAL_ChibiOS: added support for MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
febe414766
AP_InertialSensor: disable fast sampling on 2nd IMU on Pixracer
...
it also hosts a mag, and gets lots of FIFO resets if we try to run it
at 8kHz
2018-01-15 11:46:02 +11:00
Andrew Tridgell
9f5e01d20a
HAL_Chibios: fixed FMUv4 compasses
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2646b9ef33
HAL_Chibios: matched debug port speed to NuttX
2018-01-15 11:46:02 +11:00
Andrew Tridgell
41be81af34
HAL_Chibios: added hardware flow control for UARTs
...
implement RTS in software and CTS in hardware
2018-01-15 11:46:02 +11:00
Andrew Tridgell
9916a93919
HAL_ChibiOS: fixed I2C device list
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f135e73e04
HAL_ChibiOS: F412 doesn't have CCM ram
2018-01-15 11:46:02 +11:00
Andrew Tridgell
85f4958e4e
AP_OpticalFlow: use AP_FEATURE_BOARD_DETECT
2018-01-15 11:46:02 +11:00
Andrew Tridgell
3fc095589c
AP_InertialSensor: support ChibiOS FMUv4
2018-01-15 11:46:02 +11:00
Andrew Tridgell
0b6659b36a
AP_Baro: support ChibiOS FMUv4
2018-01-15 11:46:02 +11:00
Andrew Tridgell
02c3bea5a5
AP_BoardConfig: support ChibiOS FMUv4
2018-01-15 11:46:02 +11:00
Andrew Tridgell
743714de4c
AP_Compass: support ChibiOS FMUv4
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
Andrew Tridgell
c3435e45c5
HAL_ChibiOS: initial port to FMUv4
2018-01-15 11:46:02 +11:00
bugobliterator
5feef04f5f
HAL_ChibiOS: add support for CCM memory
...
this uses DMA bounce buffers for bus transfers, and falls back to CCM
ram in allocations if the type is unspecified
2018-01-15 11:46:02 +11:00
bugobliterator
ea2a880d8a
AP_NavEKF3: allocate from MEM_FAST region
2018-01-15 11:46:02 +11:00
bugobliterator
b1213a522d
AP_NavEKF2: allocate NavEKF core from MEM_FAST region
2018-01-15 11:46:02 +11:00
bugobliterator
1c6beaa7c4
AP_InertialSensor: use new API for DMA safe allocation
2018-01-15 11:46:02 +11:00
bugobliterator
e591265329
HAL_PX4: change dma_allocate api to malloc_type
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
08346deed5
AP_BattMonitor: run SMBus batteries at 100kHz
...
use longer timeouts and SMBUS mode. This fixes the SMBus battery
support for Solo on ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f2102bba05
HAL_VRBrain: fixed I2C get_device() interface
...
just stubs for now
2018-01-15 11:46:02 +11:00
Andrew Tridgell
ded22a6766
HAL_PX4: fixed I2C get_device() interface
...
just stubs for now
2018-01-15 11:46:02 +11:00
Andrew Tridgell
43c1bd0ae9
HAL_Linux: fixed I2C get_device() interface
...
just stubs for now
2018-01-15 11:46:02 +11:00
Andrew Tridgell
5e19183e90
HAL_Empty: fixed I2C get_device() interface
2018-01-15 11:46:02 +11:00
Andrew Tridgell
36227aa126
HAL_ChibiOS: implement bus speed and smbus for I2C
...
use the slowest speed of all devices on the bus
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
4b5e617673
HAL_ChibiOS: added missing DMA table for STM32F405
2018-01-15 11:46:02 +11:00
Peter Barker
f3d46506b0
AP_HAL_Chibios: warning fixes
2018-01-15 11:46:02 +11:00
Andrew Tridgell
791edee0ff
HAL_Chibios: added more SPI devices for FMUv3
2018-01-15 11:46:02 +11:00
Andrew Tridgell
ddf8523c2b
AP_OpticalFlow: prevent crash on bad device name
2018-01-15 11:46:02 +11:00
Andrew Tridgell
755eca31c2
HAL_Chibios: don't unregister shared DMA
...
the shared DMA handle is a property of the bus, not the device, so
should not be unregistered when the device is removed
2018-01-15 11:46:02 +11:00
Andrew Tridgell
9812fc9574
HAL_Chibios: prevent creation of i2c devices on invalid bus
2018-01-15 11:46:02 +11:00
Andrew Tridgell
82b5b94e24
AP_IOMCU: fixed race condition on thread startup
...
thread_ctx may not be set for first trigger_event()
2018-01-15 11:46:02 +11:00
Andrew Tridgell
b62773bbad
HAL_ChibiOS: improved auto-config of ADC pins
...
ADC config now based on pin_scaling array
2018-01-15 11:46:02 +11:00
Andrew Tridgell
1cc4b92b76
HAL_ChibiOS: added additional FMUv3 analog pins
2018-01-15 11:46:02 +11:00
Andrew Tridgell
aa2175ec0c
HAL_ChibiOS: show ADC1 channels in hwdef.h
2018-01-15 11:46:02 +11:00
Andrew Tridgell
5a7e2f75d1
HAL_ChibiOS: added ADC1_Map to STM32 tables
2018-01-15 11:46:02 +11:00
Andrew Tridgell
3a004adbd4
HAL_Chibios: use macro for NUM_GROUPS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
b57f8f01c6
HAL_Chibios: fixed return for read on invalid gpio pin
2018-01-15 11:46:02 +11:00
Andrew Tridgell
82cc36d6d0
AP_BoardConfig: called board_setup() even without autodetect
...
we need to init hal.rcou and hal.gpio
2018-01-15 11:46:02 +11:00
Andrew Tridgell
b1ebbd1a1c
AP_BoardConfig: enable auto-detect only on FMUv3
...
F412 should not do board detection
2018-01-15 11:46:02 +11:00
Andrew Tridgell
7971f03bde
Hal_Chibios: fixed F412 SPI config
2018-01-15 11:46:02 +11:00
Andrew Tridgell
51512ed7c0
AP_Param: don't panic on bad embedded parameters
...
this makes life much easier for vendors
2018-01-15 11:46:02 +11:00
Andrew Tridgell
21f40da510
HAL_Chibios: align GPIO pins with px4 build
2018-01-15 11:46:02 +11:00
Andrew Tridgell
60b1eab06d
AP_BoardConfig: added get_pwm_count()
2018-01-15 11:46:02 +11:00
Andrew Tridgell
26d6947bf6
HAL_ChibiOS: fixed PWM output
2018-01-15 11:46:02 +11:00
Andrew Tridgell
e88fe93688
AP_BoardConfig: init chibios IO after boardconfig
...
this allows for the init to use parameters such as BRD_IO_ENABLE from
AP_BoardConfig
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c742543565
HAL_Chibios: align SPI device IDs with px4 IDs
...
this makes for easier update to ChibiOS without redoing accelcal
2018-01-15 11:46:02 +11:00
Andrew Tridgell
7cb1c0420a
AP_BoardConfig: include BRD_IO_ENABLE on ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
4ce696a520
AP_Math: fixed example build on ChibiOS
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
2941afa62b
AP_Beacon: fixed example build on ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f5b24a3838
AP_Math: fixed build of Sub with ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
6dbab450a5
Hal_Chibios: use AP_BoardConfig::io_enabled()
2018-01-15 11:46:02 +11:00
Andrew Tridgell
13f4780815
AP_BoardConfig: make a singleton
...
allows for io_enabled() static function
2018-01-15 11:46:02 +11:00
Andrew Tridgell
340d85642e
AP_Gripper: build fix for ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c0c4021605
SRV_Channels: fix for replay
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d0d6040b3e
AP_Param: use wider range of sentinal values
...
this copes better with power off while writing parameters
2018-01-15 11:46:02 +11:00
bugobliterator
be4e9f27f7
AP_Module: restrict module related headers to systems that can use it
2018-01-15 11:46:02 +11:00
Andrew Tridgell
3d2c4ffa79
AP_Math: allow write to indexed vector2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f088c3de23
AP_Math: added long templates
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c62dbcdb62
HAL_PX4: allow for printf from multiple threads
...
this is useful for hal.console
2018-01-15 11:46:02 +11:00
Andrew Tridgell
979ee67c19
HAL_PX4: cope with failed flash writes
...
we need to recover from possible bad flash
2018-01-15 11:46:02 +11:00
Andrew Tridgell
86fbdcd060
HAL_ChibiOS: ensure malloc returns zeroed memory
2018-01-15 11:46:02 +11:00
Andrew Tridgell
e255f07022
GCS_MAVLink: rename ch variable
...
avoid conflict with ch variable from ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
43a6ed4099
DataFlash: support ChibiOS FATFS implementation
2018-01-15 11:46:02 +11:00