Sanitization

This commit is contained in:
Bertrand Songis
2019-07-19 09:31:30 +02:00
parent 3f441c87fe
commit 6da1773dcc
8 changed files with 32 additions and 15 deletions
@@ -89,7 +89,7 @@ void menuModelModuleOptions(event_t event)
uint8_t modelId = reusableBuffer.hardwareAndSettings.modules[g_moduleIdx].information.modelID;
// uint8_t variant = reusableBuffer.hardwareAndSettings.modules[g_moduleIdx].information.variant;
uint8_t optionsAvailable = getModuleOptions(modelId) & ((1 << MODULE_OPTION_EXTERNAL_ANTENNA) | (1 << MODULE_OPTION_POWER));
uint8_t optionsAvailable = getPXX2ModuleOptions(modelId) & ((1 << MODULE_OPTION_EXTERNAL_ANTENNA) | (1 << MODULE_OPTION_POWER));
SUBMENU_NOTITLE(ITEM_MODULE_SETTINGS_COUNT, {
!optionsAvailable ? (uint8_t)0 : IF_MODULE_OPTIONS(MODULE_OPTION_EXTERNAL_ANTENNA, 0),
@@ -135,7 +135,7 @@ void menuModelModuleOptions(event_t event)
int8_t sub = menuVerticalPosition;
lcdDrawTextAlignedLeft(0, STR_MODULE_OPTIONS);
lcdDrawText(lcdLastRightPos + 3, 0, PXX2modulesModels[modelId]);
lcdDrawText(lcdLastRightPos + 3, 0, getPXX2ModuleName(modelId));
lcdInvertLine(0);
if (reusableBuffer.hardwareAndSettings.moduleSettings.state == PXX2_SETTINGS_OK) {
@@ -102,9 +102,9 @@ void onUpdateStateChanged()
{
if (reusableBuffer.sdManager.otaUpdateInformation.step == BIND_INFO_REQUEST) {
uint8_t modelId = reusableBuffer.sdManager.otaUpdateInformation.receiverInformation.modelID;
if (modelId > 0 && modelId < DIM(PXX2receiversModels)) {
if (modelId > 0 && modelId < DIM(PXX2ReceiversModels)) {
if (isReceiverOptionAvailable(modelId, RECEIVER_OPTION_OTA)) {
POPUP_CONFIRMATION(PXX2receiversModels[modelId], onUpdateConfirmation);
POPUP_CONFIRMATION(getPXX2ReceiverName(modelId), onUpdateConfirmation);
char *tmp = strAppend(reusableBuffer.sdManager.otaReceiverVersion, TR_CURRENT_VERSION);
tmp = strAppendUnsigned(tmp, 1 + reusableBuffer.sdManager.otaUpdateInformation.receiverInformation.swVersion.major);
*tmp++ = '.';
@@ -123,7 +123,7 @@ void menuRadioModulesVersion(event_t event)
}
}
uint8_t modelId = reusableBuffer.hardwareAndSettings.modules[module].information.modelID;
lcdDrawText(COLUMN2_X, y, PXX2modulesModels[modelId]);
lcdDrawText(COLUMN2_X, y, getPXX2ModuleName(modelId));
}
y += FH;
@@ -147,7 +147,7 @@ void menuRadioModulesVersion(event_t event)
lcdDrawText(INDENT_WIDTH, y, STR_RECEIVER);
lcdDrawNumber(lcdLastRightPos + 2, y, receiver + 1);
uint8_t modelId = reusableBuffer.hardwareAndSettings.modules[module].receivers[receiver].information.modelID;
lcdDrawText(COLUMN2_X, y, PXX2receiversModels[modelId]);
lcdDrawText(COLUMN2_X, y, getPXX2ReceiverName(modelId));
}
y += FH;
+4 -4
View File
@@ -360,7 +360,7 @@ static const uint8_t moduleOptions[] = {
0b11110100, // ISRM-N
};
inline uint8_t getModuleOptions(uint8_t modelId)
inline uint8_t getPXX2ModuleOptions(uint8_t modelId)
{
if (modelId < DIM(moduleOptions))
return moduleOptions[modelId];
@@ -370,7 +370,7 @@ inline uint8_t getModuleOptions(uint8_t modelId)
inline bool isModuleOptionAvailable(uint8_t modelId, uint8_t option)
{
return getModuleOptions(modelId) & (1 << option);
return getPXX2ModuleOptions(modelId) & (1 << option);
}
enum {
@@ -423,7 +423,7 @@ enum ReceiverCapabilities {
RECEIVER_CAPABILITY_COUNT
};
inline uint8_t getReceiverOptions(uint8_t modelId)
inline uint8_t getPXX2ReceiverOptions(uint8_t modelId)
{
if (modelId < DIM(receiverOptions))
return receiverOptions[modelId];
@@ -433,7 +433,7 @@ inline uint8_t getReceiverOptions(uint8_t modelId)
inline bool isReceiverOptionAvailable(uint8_t modelId, uint8_t option)
{
return getReceiverOptions(modelId) & (1 << option);
return getPXX2ReceiverOptions(modelId) & (1 << option);
}
inline bool isDefaultModelRegistrationID()
+18 -2
View File
@@ -58,7 +58,7 @@
#define PXX2_HW_INFO_TX_ID 0xFF
static const char * const PXX2modulesModels[] = {
static const char * const PXX2ModulesModels[] = {
"---",
"XJT",
"ISRM",
@@ -70,7 +70,15 @@ static const char * const PXX2modulesModels[] = {
"ISRM-N"
};
static const char * const PXX2receiversModels[] = {
inline const char * getPXX2ModuleName(uint8_t modelId)
{
if (modelId < DIM(PXX2ModulesModels))
return PXX2ModulesModels[modelId];
else
return PXX2ModulesModels[0];
}
static const char * const PXX2ReceiversModels[] = {
"---",
"X8R",
"RX8R",
@@ -100,6 +108,14 @@ static const char * const PXX2receiversModels[] = {
"R9-MM-OTA", // this one has OTA (different bootloader)
};
inline const char * getPXX2ReceiverName(uint8_t modelId)
{
if (modelId < DIM(PXX2ReceiversModels))
return PXX2ReceiversModels[modelId];
else
return PXX2ReceiversModels[0];
}
enum PXX2ModuleModelID {
PXX2_MODULE_NONE,
PXX2_MODULE_XJT,
+1 -1
View File
@@ -324,7 +324,7 @@ uint16_t getBatteryVoltage()
{
int32_t instant_vbat = anaIn(TX_VOLTAGE); // using filtered ADC value on purpose
instant_vbat = (instant_vbat * BATT_SCALE * (128 + g_eeGeneral.txVoltageCalibration) ) / 26214;
instant_vbat += 20; // add 0.2V because of the diode TODO check if this is needed, but removal will beak existing calibrations!!!
instant_vbat += 20; // add 0.2V because of the diode TODO check if this is needed, but removal will break existing calibrations!
return (uint16_t)instant_vbat;
}
+1
View File
@@ -565,6 +565,7 @@ extern uint16_t adcValues[NUM_ANALOGS];
#define BATTERY_MIN 60 // 6.0V
#define BATTERY_MAX 80 // 8.0V
#endif
#if defined(PCBXLITE)
#define BATT_SCALE 131
#elif defined(PCBX7)
+2 -2
View File
@@ -54,12 +54,12 @@ void processGetHardwareInfoFrame(uint8_t module, uint8_t * frame)
uint8_t index = frame[3];
uint8_t modelId = frame[4];
uint8_t length = min<uint8_t>(frame[0] - 3, sizeof(PXX2HardwareInformation));
if (index == PXX2_HW_INFO_TX_ID && modelId < DIM(PXX2modulesModels)) {
if (index == PXX2_HW_INFO_TX_ID && modelId < DIM(PXX2ModulesModels)) {
memcpy(&destination->information, &frame[4], length);
if (destination->information.capabilities & ~((1 << MODULE_CAPABILITY_COUNT) - 1))
destination->information.capabilityNotSupported = true;
}
else if (index < PXX2_MAX_RECEIVERS_PER_MODULE && modelId < DIM(PXX2receiversModels)) {
else if (index < PXX2_MAX_RECEIVERS_PER_MODULE && modelId < DIM(PXX2ReceiversModels)) {
memcpy(&destination->receivers[index].information, &frame[4], length);
destination->receivers[index].timestamp = get_tmr10ms();
if (destination->receivers[index].information.capabilities & ~((1 << RECEIVER_CAPABILITY_COUNT) - 1))