diff --git a/radio/src/gui/9x/menu_model_inputs_mixes.cpp b/radio/src/gui/9x/menu_model_inputs_mixes.cpp index 63d01a10a..afaada3a2 100644 --- a/radio/src/gui/9x/menu_model_inputs_mixes.cpp +++ b/radio/src/gui/9x/menu_model_inputs_mixes.cpp @@ -391,7 +391,7 @@ void gvarWeightItem(coord_t x, coord_t y, MixData *md, uint8_t attr, uint8_t eve void drawOffsetBar(uint8_t x, uint8_t y, MixData * md) { int offset = GET_GVAR(MD_OFFSET(md), GV_RANGELARGE_NEG, GV_RANGELARGE, mixerCurrentFlightMode); - int weight = abs(GET_GVAR(MD_WEIGHT(md), GV_RANGELARGE_NEG, GV_RANGELARGE, mixerCurrentFlightMode)); + int weight = GET_GVAR(MD_WEIGHT(md), GV_RANGELARGE_NEG, GV_RANGELARGE, mixerCurrentFlightMode); int barMin = offset - weight; int barMax = offset + weight; if (y > 15) { @@ -403,6 +403,10 @@ void drawOffsetBar(uint8_t x, uint8_t y, MixData * md) lcdDrawNumber(x+GAUGE_WIDTH+1, y-8, barMax); #endif } + if (weight < 0) { + barMin = -barMin; + barMax = -barMax; + } if (barMin < -101) barMin = -101; if (barMax > 101) diff --git a/radio/src/gui/taranis/menu_model_mixes.cpp b/radio/src/gui/taranis/menu_model_mixes.cpp index 8eba8a5a8..5bf85bd61 100644 --- a/radio/src/gui/taranis/menu_model_mixes.cpp +++ b/radio/src/gui/taranis/menu_model_mixes.cpp @@ -156,13 +156,17 @@ void drawOffsetBar(uint8_t x, uint8_t y, MixData * md) const int gaugeHeight = 6; int offset = GET_GVAR(MD_OFFSET(md), GV_RANGELARGE_NEG, GV_RANGELARGE, mixerCurrentFlightMode); - int weight = abs(GET_GVAR(MD_WEIGHT(md), GV_RANGELARGE_NEG, GV_RANGELARGE, mixerCurrentFlightMode)); + int weight = GET_GVAR(MD_WEIGHT(md), GV_RANGELARGE_NEG, GV_RANGELARGE, mixerCurrentFlightMode); int barMin = offset - weight; int barMax = offset + weight; if (y > 15) { lcdDrawNumber(x-((barMin >= 0) ? 2 : 3), y-6, barMin, TINSIZE|LEFT); lcdDrawNumber(x+gaugeWidth+1, y-6, barMax, TINSIZE); } + if (weight < 0) { + barMin = -barMin; + barMax = -barMax; + } if (barMin < -101) barMin = -101; if (barMax > 101)