Commit Graph

35014 Commits

Author SHA1 Message Date
Andrew Tridgell 696d4b47a1 AP_RCProtocol: use SoftSerial clock for SRXL 2018-11-07 07:35:45 +11:00
Andrew Tridgell 3bd27ba094 AP_RCProtocol: use SoftSerial for DSM 2018-11-07 07:35:45 +11:00
Andrew Tridgell b93dee7fe6 AP_RCProtocol: switched SRXL to SoftSerial decoder 2018-11-07 07:35:45 +11:00
Andrew Tridgell 87cf160875 AP_RCProtocol: switched SBUS to SoftSerial decoder 2018-11-07 07:35:45 +11:00
Andrew Tridgell b7c4ae8ae9 AP_RCProtocol: added separate soft serial decoder
this will replace the version in each protocol
2018-11-07 07:35:45 +11:00
Andrew Tridgell 96380b1ff0 Tools: updated IO firmware 2018-11-07 07:35:45 +11:00
Andrew Tridgell a69f66eadd HAL_ChibiOS: ensure RCIN sigbuf has even number of words
ObjectBuffer rounds up by 1, leaving an odd number of words, which
caused DSM RC input corruption
2018-11-07 07:35:45 +11:00
Andrew Tridgell 6c128fcaf2 HAL_ChibiOS: signal2 does not need to be DMA safe 2018-11-07 07:35:45 +11:00
Andrew Tridgell 7e8b6709ae AP_RCProtocol: improved reliability of DSM vs SRXL detection
base detection on framing, not including failsafe
2018-11-07 07:35:45 +11:00
Andrew Tridgell 3d90ddc453 AP_IOMCU: fixed stop bits in sbus output 2018-11-07 07:35:45 +11:00
Andrew Tridgell e3a01c661f HAL_ChibiOS: switched to USB for console on pixracer 2018-11-07 07:35:45 +11:00
Andrew Tridgell 366361f0bb SITL: fixed running of example programs 2018-11-07 07:35:45 +11:00
Andrew Tridgell 5480479e73 HAL_SITL: fixed SITL example progs 2018-11-07 07:35:45 +11:00
Andrew Tridgell 329357f7a2 Tools: updated IO firmware 2018-11-07 07:35:45 +11:00
Andrew Tridgell a7c5ac8902 AP_IOMCU: run main loop at max rate
removed delay in main loop to reduce latency of RC input. This works
as we only have one thread
2018-11-07 07:35:45 +11:00
Andrew Tridgell 53b6f38027 AP_RCProtocol: allow switching between all protocols on IOMCU
this allows searching for uart protocols after losing a pulse based
protocol
2018-11-07 07:35:45 +11:00
Andrew Tridgell 56203204cc HAL_ChibiOS: fixed build of bootloaders 2018-11-07 07:35:45 +11:00
Andrew Tridgell 2054be0ce1 waf: omit bootloader for px4-v2 build
This saves 8k of flash, and allows the plane stable release for older
Pixhawk1 boards to build
2018-11-07 07:35:45 +11:00
Andrew Tridgell b950b83eea HAL_ChibiOS: fixed build with EICU RC input 2018-11-07 07:35:45 +11:00
Andrew Tridgell f452d5c752 Tools: new IO firmware 2018-11-07 07:35:45 +11:00
Andrew Tridgell 2159198c3e AP_IOMCU: allow DSM input as pulses in iomcu
useful for receivers where DSM uses a normal servo plug
2018-11-07 07:35:45 +11:00
Andrew Tridgell eca4fec2aa AP_RCProtocol: use pulses as clock for frame timeout
for SRXL and DSM we should judge a frame timeout from the pulses,
otherwise lag in the DMA capture can cause a false frame drop
2018-11-07 07:35:45 +11:00
Andrew Tridgell faf8f73437 AP_RCProtocol: added process_pulse_list()
this provides more efficient processing of RC pulses
2018-11-07 07:35:45 +11:00
Andrew Tridgell 5dd0086698 HAL_ChibiOS: make SoftSigReader considerably more efficient
this reduces interrupt latency on the F100, which allows us to use all
RC input protocols on the pulse based decoder, allowing for more
flexibility in RC input protocols
2018-11-07 07:35:45 +11: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 e1385573b1 AP_RCProtocol: return protocol name string 2018-11-07 07:35:45 +11:00
Andrew Tridgell dbc05f787b HAL_ChibiOS: display decoded RC protocol 2018-11-07 07:35:45 +11:00
Andrew Tridgell d87bef16a2 AP_RCProtocol: require 3 good frames for weak CRC protocols 2018-11-07 07:35:45 +11:00
Andrew Tridgell e6cadfa2d9 AP_IOMCU: disable DSM and SBUS for pulse input 2018-11-07 07:35:45 +11:00
Andrew Tridgell 68c9f52b3e AP_RCProtocol: allow selection of protocols for pulse input 2018-11-07 07:35:45 +11:00
Andrew Tridgell 9354aca07d AP_RCProtocol: removed some unnecessary millis calls 2018-11-07 07:35:45 +11:00
Andrew Tridgell 49d07ed234 AP_IOMCU: catch parity errors on SBUS input 2018-11-07 07:35:45 +11:00
Andrew Tridgell c148813c17 AP_IOMCU: enable uart for SBUS input 2018-11-07 07:35:45 +11:00
Andrew Tridgell d18277487e HAL_ChibiOS: use RCIN pin for only PPM only on iomcu
use uarts for SBUS and other serial protocols
2018-11-07 07:35:45 +11:00
Andrew Tridgell baf0be6a56 AP_RCProtocol: added check on baudrate in process_byte()
and support process_byte() in SBUS input
2018-11-07 07:35:45 +11:00
Andrew Tridgell 7c1ba15031 HAL_ChibiOS: fixed syntax error on RCIN pin for iomcu 2018-11-07 07:35:45 +11:00
Andrew Tridgell fab181345c AP_IOMCU: fixed override on RC loss
use mid-stick positions
2018-11-07 07:35:45 +11:00
Andrew Tridgell 86ab3d7669 HAL_ChibiOS: turn off green ring LED on cube 2018-11-07 07:35:45 +11:00
Andrew Tridgell 29fb674f3f AP_IOMCU: use macros for LED outputs in iofirmware 2018-11-07 07:35:45 +11:00
Andrew Tridgell a8d91a24b6 AP_IOMCU: fixed compat with nuttx firmwares
this allows older firmwares to change the IO firmware back to a nuttx
based firmware
2018-11-07 07:35:45 +11:00
Andrew Tridgell c767828f11 AP_RCProtocol: prevent mixing of byte and pulse input 2018-11-07 07:35:45 +11:00
Andrew Tridgell fcc259ae31 HAL_ChibiOS: separate out F1 CR1 calculations
and modify pin speeds for iomcu uarts
2018-11-07 07:35:45 +11:00
Andrew Tridgell 107ccb3eef AP_IOMCU: enable DSM input in iofirmware 2018-11-07 07:35:45 +11:00
Andrew Tridgell 7e66bb69b9 HAL_ChibiOS: enable amber LED on iomcu 2018-11-07 07:35:45 +11:00
Andrew Tridgell ae0ccbcea9 AP_RCProtocol: support byte input for DSM 2018-11-07 07:35:45 +11:00
Andrew Tridgell 56d0d6b9be AP_RCProtocol: make singleton
used by iomcu
2018-11-07 07:35:45 +11:00
Andrew Tridgell b9e4916c17 AP_IOMCU: fixed delay in DSM bind 2018-11-07 07:35:45 +11:00
Andrew Tridgell 2488d25284 AP_IOMCU: fixed rate of failsafe handling 2018-11-07 07:35:45 +11:00
Andrew Tridgell f8dc17f8ff AP_IOMCU: implement DSM bind 2018-11-07 07:35:45 +11:00
Andrew Tridgell 184c05bc70 AP_IOMCU: fixed DSM bind 2018-11-07 07:35:45 +11:00