The UART3 also have the I2C bus 2 functions so moving GPS to UART7 to
have one additional I2C.
To keep GPS working is also necessary update the FPGA RTL to version
0xC1 or higher.
This function actually checks if we are not in the main thread rather
than if we are in the timer thread.
Add a new function that does what it's supposed to do.
This function actually checks if we are not in the main thread rather
than if we are in the timer thread.
Add a new function that does what it's supposed to do.
This function actually checks if we are not in the main thread rather
than if we are in the timer thread.
Add a new function that does what it's supposed to do.
If a thread other than the main one calls Scheduler::delay() we could
end up triggering the call of delay callbacks. Those should only ever
happen on the main thread.
It runs a Producer/Consumer thread pair endless reading and writing a
ByteBuffer. Producer writes a number sequence that is twice the
ByteBuffer size so a given position have a different data on each write
pass. Consumer makes sure that this pattern is not broken and aborts the
program if it is.
It is possible to spawn more pairs by informing a number as argument of
the program.
This fixes#6637 where the LIM_BANK can be set such that the vehicle demands a radius at sea level that is much higher then the loiter radius was configured to be. This effectively feels like a fly away and is due to bad parameters usually. If this happens just fall back to the simple EAS2TAS scaling of the radius.
If parameter INS_GYRO_CAL is disabled, usually because operator is
arming on a moving vehicle such as a boat, the Oreo LEDs would wait
indefinitely for a gyro calibration that will never happen. This
removes that dependency. The LEDs will strobe blue only when gyros are
actually initializing. Not before. Consequently, this greatly
simiplifies that portion of the code.