1
0
Fork 0
mirror of https://github.com/opentx/opentx.git synced 2025-07-25 09:15:38 +03:00

GET HW Info fixes

This commit is contained in:
Bertrand Songis 2019-03-07 09:15:23 +01:00
parent 2b80a79c71
commit 79351a2c7b
4 changed files with 14 additions and 10 deletions

View file

@ -38,7 +38,7 @@ void menuRadioModulesVersion(event_t event)
{
TITLE("MODULES / RX VERSION");
if (event == EVT_ENTRY) {
if (event == EVT_ENTRY || get_tmr10ms() >= reusableBuffer.hardware.updateTime) {
menuVerticalOffset = 0;
memclear(&reusableBuffer.hardware.modules, sizeof(reusableBuffer.hardware.modules));
@ -50,6 +50,8 @@ void menuRadioModulesVersion(event_t event)
#warning "Only do this if external module is ON"
moduleSettings[EXTERNAL_MODULE].mode = MODULE_MODE_GET_HARDWARE_INFO;
reusableBuffer.hardware.modules[EXTERNAL_MODULE].step = -1;
reusableBuffer.hardware.updateTime = get_tmr10ms() + 1000 /* 10s*/;
}
coord_t y = (FH + 1) - menuVerticalOffset * FH;
@ -68,9 +70,9 @@ void menuRadioModulesVersion(event_t event)
if (y >= MENU_BODY_TOP && y < MENU_BODY_BOTTOM) {
lcdDrawText(INDENT_WIDTH, y, "Version");
if (reusableBuffer.hardware.modules[module].hw_version) {
lcdDrawNumber(10 * FW, y, reusableBuffer.hardware.modules[module].hw_version);
lcdDrawNumber(12 * FW, y, reusableBuffer.hardware.modules[module].hw_version, LEADING0, 3);
lcdDrawText(lcdLastRightPos, y, "/");
lcdDrawNumber(lcdLastRightPos, y, reusableBuffer.hardware.modules[module].sw_version);
lcdDrawNumber(lcdLastRightPos, y, reusableBuffer.hardware.modules[module].sw_version, LEADING0, 3);
}
}
y += FH;
@ -81,9 +83,9 @@ void menuRadioModulesVersion(event_t event)
if (y >= MENU_BODY_TOP && y < MENU_BODY_BOTTOM) {
lcdDrawText(INDENT_WIDTH, y, "Receiver");
lcdDrawNumber(lcdLastRightPos + 2, y, receiver + 1);
lcdDrawNumber(10 * FW, y, reusableBuffer.hardware.modules[module].receivers[receiver].hw_version);
lcdDrawNumber(12 * FW, y, reusableBuffer.hardware.modules[module].receivers[receiver].hw_version, LEADING0, 3);
lcdDrawText(lcdLastRightPos, y, "/");
lcdDrawNumber(lcdLastRightPos, y, reusableBuffer.hardware.modules[module].receivers[receiver].sw_version);
lcdDrawNumber(lcdLastRightPos, y, reusableBuffer.hardware.modules[module].receivers[receiver].sw_version, LEADING0, 3);
}
y += FH;
}

View file

@ -1494,7 +1494,7 @@ void doMixerCalculations()
#if defined(MULTIMODULE)
if ((moduleSettings[i].mode != MODULE_MODE_NORMAL && moduleSettings[i].mode != MODULE_MODE_SPECTRUM_ANALYSER) || (i == EXTERNAL_MODULE && multiModuleStatus.isBinding())) {
#else
if (moduleSettings[i].mode != MODULE_MODE_NORMAL && moduleSettings[i].mode != MODULE_MODE_SPECTRUM_ANALYSER) {
if (moduleSettings[i].mode >= MODULE_MODE_BEEP_FIRST) {
#endif
if (++countRangecheck >= 250) {
countRangecheck = 0;

View file

@ -1179,6 +1179,7 @@ union ReusableBuffer
uint32_t sw_version;
} receivers[PXX2_MAX_RECEIVERS_PER_MODULE];
} modules[NUM_MODULES];
uint32_t updateTime;
} hardware;
struct {

View file

@ -72,12 +72,13 @@ extern uint8_t s_pulses_paused;
enum ModuleSettingsMode
{
MODULE_MODE_NORMAL,
MODULE_MODE_RANGECHECK,
MODULE_MODE_BIND,
MODULE_MODE_REGISTER,
MODULE_MODE_SPECTRUM_ANALYSER,
MODULE_MODE_GET_HARDWARE_INFO,
MODULE_MODE_BEEP_FIRST,
MODULE_MODE_REGISTER = MODULE_MODE_BEEP_FIRST,
MODULE_MODE_BIND,
MODULE_MODE_SHARE,
MODULE_MODE_GET_HARDWARE_INFO
MODULE_MODE_RANGECHECK,
};
PACK(struct ModuleSettings {