Commit Graph

29 Commits

Author SHA1 Message Date
Andrew Tridgell 536923585c AP_IOMCU: cope with IOMCU reset in flight
this copes with IOMCU reset when we have safety forced off
2018-09-04 15:24:33 +10:00
Andrew Tridgell 7cb169d0b9 AP_IOMCU: fixed setting of rate masks
this affects layouts which set a subset of channels on a timer
2018-07-28 15:26:35 +10:00
Jonathan Challinger d3c31f17cc AP_IOMCU: fix radio failsafe handling 2018-07-19 06:53:01 +10:00
Andrew Tridgell ba0fb3d9d2 AP_IOMCU: fixed repeated upload of IO fw 2018-07-11 09:51:43 +10:00
Andrew Tridgell e200de1f57 AP_IOMCU: use compressed interface for IO fw upload 2018-07-09 19:41:56 +10:00
Andrew Tridgell 0e29bcc4ab AP_IOMCU: use thread_create() API 2018-07-09 19:41:18 +10:00
Andrew Tridgell 3242b5eeb9 AP_IOMCU: fail to boot if IO firmware CRC and update fails
we don't want to fly with a bad IO firmware
2018-06-06 07:15:41 +10:00
Andrew Tridgell 7be1125084 AP_IOMCU: implement safety mask and safety pwm 2018-04-17 10:14:01 +10:00
Andrew Tridgell 214fb096eb AP_IOMCU: added healthy API for use in arming checks 2018-04-17 08:44:44 +10:00
Andrew Tridgell 09e3a3cb78 AP_IOMCU: added IO firmware upload 2018-04-17 08:44:44 +10:00
Michael du Breuil 0e8a9c2ec4 AP_IOMCU: Encapsulate debug prints in a #ifdef, fix whitespace 2018-04-14 08:23:24 +10:00
Andrew Tridgell f22964a350 AP_IOMCU: implement BRD_SAFETYOPTION 2018-04-14 06:22:07 +10:00
Andrew Tridgell 4a7a66cc16 AP_IOMCU: use a higher thread priority
this ensures PWM output gets out as fast as possible
2018-04-07 09:10:29 +10:00
Siddharth Purohit 0c914838b2 AP_IOMCU: fix data type for available bytes 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 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 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 30903f2acb AP_IOMCU: support oneshot mode 2018-01-20 17:40:07 +11:00
Andrew Tridgell ff3b0ec1bd AP_IOMCU: added set_default_rate method 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 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 d1fd843539 AP_IOMCU: support IMU heater 2018-01-15 11:46:02 +11:00
Andrew Tridgell 1568f578d7 AP_IOMCU: added retries on event failure 2018-01-15 11:46:02 +11:00
Andrew Tridgell 9b9b4a169e AP_IOMCU: fixed build on systems without IO MCU 2018-01-15 11:46:02 +11:00
Andrew Tridgell bb3ed9d6a3 AP_IOMCU: added APIs for RC input 2018-01-15 11:46:02 +11:00
Andrew Tridgell ceeade5822 AP_IOMCU: added periodic reading of RC input 2018-01-15 11:46:02 +11:00
Andrew Tridgell 06322da4e2 AP_IOMCU: added setting of output rates 2018-01-15 11:46:02 +11:00
Andrew Tridgell 39f60adcd7 AP_IOMCU: initial implementation of PWM and safety 2018-01-15 11:46:02 +11:00
Andrew Tridgell 0c01ae1223 AP_IOMCU: started on MCU IO library 2018-01-15 11:46:02 +11:00