The OSD/CMS doesn't allow correct editing of negative servo mixer weights.
The value can only be made larger (towards positive) but not smaller.
Fix that by setting the min. value for the weight to -1000.
Signed-off-by: Stefan Naewe <stefan.naewe@gmail.com>
- Don't include target.h explicitely, it's already included
by platform.h
- Fix an error in compiled file as a test for discovering
contstants. Since we rely on compiler errors to give us the
resolved value, that lets us get one extra value on each run
- Always compile the test files for setting discovery in c++11
even if no -std=XXX argument is passed from the caller.
Tests are now managed with cmake, with the intention of eventually
moving the whole build system to it. The root Makefile still has
a test target that has been adjusted to call into the appropriate
cmake commands.
Also, GTest library is now downloaded on demand the first time the
tests are run, so we can delete it from the repository.
Forces a pixel based OSD to be used in as if it was a grid based OSD.
This is intended for development, so the FrSkyOSD simulator can be
used for developing features for the MAX7456 based OSDs without
needing an analog video to USB adapter.
Since the arrow is taller than the width of a grid slow, it overflows
the slot a bit when it's rotated by 90º. Also, simplify the algorithm
for drawing it a bit so it transmits a bit less data per redrawing.
Otherwise, a display device with transactions might not update the
on screen data immediately, since updates outside of transactions
might be buffered for performance reasons. This doesn't affect
devices that don't support transactions at all.
Change the default stepping in sidebar divisions to more sensible
values depending on what's causing them to scroll. Also, introduce
a setting per sidebar so the user can a custom stepping per sidebar.
Introduce a osd_sidebar_horizontal_offset parameter that uses
grid slots or pixels as units, depending on the OSD type. int8_t
is enough to move the sidebars to the corner of the screen even
with pixel OSD. Positive values move the bars closer to the screen
edges, while negative values bring them closer to the center.
Since v1, FrSkyOSD allows changing the baudrate to higher values but
we were ignoring that. Now if the user has configured the respective
port to a higher baudrate, we will switch to it at runtime. This also
requires adding support to probe at different baud rates on startup
since the FC might have been rebooted without rebooting the OSD.
MSP was not restricting anything an accepting any values, while
CLI had some seemingly arbitrary bounds. Now both interfaces accept
the full range of valid values.
osdCharacterGridBufferClear(), osdGridBufferClearGridRect() and
osdGridBufferClearPixelRect() where setting the whole buffer to
0 instead of SYM_BLANK, so when the map code read back the buffer
in order to determine if a slot was free it never found one
available.
Fixes#5522
osd_ahi_bordered: Wether to show a border in the corners
osd_ahi_width: Width in pixels
osd_ahi_height: Hight in pixels
osd_ahi_vertical_offset: Offset from vertical center of the screen
Widgets reduce the bandwidth needed to communicate with the OSD
dramatically, so for devices connected via UART they allow us to
draw way more frequently.