Changes

Summary

  1. Refactor ledstrip profiles to fix excessive cpu load Previous logic (commit: 744d9eb) (details)
Commit 744d9eb7a31d6ca0c45285b8418d308c2b6b66e0 by github
Refactor ledstrip profiles to fix excessive cpu load Previous logic
bypassed optimizations and updated the ws2811 on every task execution -
leading to and average of 92us task execution time. Restored the
previous optimizations and additionally optimized the new "RACE" and
"BEACON" modes so that they only update the led's when there's an actual
state change. Task time for these modes is now in the 2-4us range for
F405. For the normal "STATUS" profile the performance has been restored
to previous optimized levels and typical configurations will generally
have task times in the 8-14us range.
Revised the LEDLOW disable mode to function all the time and disable the
ledstrip completely. Previously if visual beeper was enabled that would
override the disable and the ledstrip would display whatever would be
otherwise displayed but only during the duration of the beep. The
resulted to a very inconsistent behavior depending on the user's
settings.
Added visual beeper support to the new "RACE" and "BEACON" profile
modes.
General cleanup and refactoring.
(commit: 744d9eb)
The file was modifiedsrc/main/cms/cms_menu_ledstrip.c (diff)
The file was modifiedsrc/main/io/ledstrip.c (diff)