reg 2.0
This commit is contained in:
@@ -285,7 +285,7 @@ void runPopupRegister(event_t event)
|
||||
}
|
||||
else if (menuHorizontalPosition == 0) {
|
||||
// [Enter] pressed
|
||||
moduleSettings[INTERNAL_MODULE].mode = MODULE_MODE_REGISTER;
|
||||
reusableBuffer.modelSetup.pxx2.registerStep = REGISTER_RX_NAME_SELECTED;
|
||||
}
|
||||
// no break
|
||||
|
||||
@@ -1121,23 +1121,25 @@ void menuModelSetup(event_t event)
|
||||
break;
|
||||
|
||||
case ITEM_MODEL_INTERNAL_MODULE_PXX2_RANGE_REGISTER:
|
||||
TRACE("Phase %d Mode : %d", reusableBuffer.modelSetup.pxx2.registerStep, moduleSettings[INTERNAL_MODULE].mode);
|
||||
lcdDrawTextAlignedLeft(y, INDENT "Module");
|
||||
lcdDrawText(MODEL_SETUP_2ND_COLUMN, y, STR_MODULE_RANGE, (menuHorizontalPosition==0 ? attr : 0) );
|
||||
lcdDrawText(lcdLastRightPos, y, "[Reg]", (menuHorizontalPosition==1 ? attr : 0) );
|
||||
if (attr) {
|
||||
if (moduleSettings[INTERNAL_MODULE].mode == MODULE_MODE_NORMAL && s_editMode > 0) {
|
||||
if (menuHorizontalPosition == 1) {
|
||||
if (menuHorizontalPosition == 1 && reusableBuffer.modelSetup.pxx2.registerStep < REGISTER_RX_NAME_SELECTED) {
|
||||
moduleSettings[INTERNAL_MODULE].mode = MODULE_MODE_REGISTER;
|
||||
reusableBuffer.modelSetup.pxx2.registerPopupVerticalPosition = 0;
|
||||
reusableBuffer.modelSetup.pxx2.registerPopupHorizontalPosition = 0;
|
||||
reusableBuffer.modelSetup.pxx2.registerPopupEditMode = 0;
|
||||
s_editMode = 0;
|
||||
POPUP_INPUT("", runPopupRegister);
|
||||
}
|
||||
else {
|
||||
else if (menuHorizontalPosition == 0 && s_editMode > 0) {
|
||||
moduleSettings[INTERNAL_MODULE].mode = MODULE_MODE_RANGECHECK;
|
||||
}
|
||||
}
|
||||
if (s_editMode == 0) {
|
||||
if (s_editMode == 0 && warningText == 0) {
|
||||
moduleSettings[INTERNAL_MODULE].mode = MODULE_MODE_NORMAL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -58,10 +58,10 @@ bool Pxx2Pulses::setupRegisterFrame(uint8_t module)
|
||||
{
|
||||
addFrameType(PXX2_TYPE_C_MODULE, PXX2_TYPE_ID_REGISTER);
|
||||
|
||||
if (reusableBuffer.modelSetup.pxx2.registerStep == REGISTER_COUNTER_ID_RECEIVED) {
|
||||
if (reusableBuffer.modelSetup.pxx2.registerStep == REGISTER_RX_NAME_SELECTED) {
|
||||
Pxx2Transport::addByte(0x01);
|
||||
for (uint8_t i=0; i<PXX2_LEN_RX_NAME; i++) {
|
||||
Pxx2Transport::addByte(0x00);
|
||||
Pxx2Transport::addByte(reusableBuffer.modelSetup.pxx2.registerRxName[i]);
|
||||
}
|
||||
for (uint8_t i=0; i<PXX2_LEN_REGISTRATION_ID; i++) {
|
||||
Pxx2Transport::addByte(g_model.modelRegistrationID[i]);
|
||||
|
||||
@@ -43,7 +43,8 @@ const uint8_t CH9TO16_CHANNEL_MAPPING[] = {0x89, 0xAB, 0xCD, 0xEF, 0x01, 0x23, 0
|
||||
|
||||
enum PXX2RegisterSteps {
|
||||
REGISTER_START,
|
||||
REGISTER_COUNTER_ID_RECEIVED,
|
||||
REGISTER_RX_NAME_RECEIVED,
|
||||
REGISTER_RX_NAME_SELECTED,
|
||||
REGISTER_OK
|
||||
};
|
||||
|
||||
|
||||
@@ -77,12 +77,12 @@ void processRegisterFrame(uint8_t module, uint8_t * frame)
|
||||
return;
|
||||
}
|
||||
|
||||
if (frame[3] == 0x00) {
|
||||
if (frame[3] == 0x00 && reusableBuffer.modelSetup.pxx2.registerStep == REGISTER_START) {
|
||||
// RX_NAME follows, we store it for the next step
|
||||
memcpy(reusableBuffer.modelSetup.pxx2.registerRxName, &frame[4], PXX2_LEN_RX_NAME);
|
||||
reusableBuffer.modelSetup.pxx2.registerStep = REGISTER_COUNTER_ID_RECEIVED;
|
||||
reusableBuffer.modelSetup.pxx2.registerStep = REGISTER_RX_NAME_RECEIVED;
|
||||
}
|
||||
else if (frame[3] == 0x01) {
|
||||
else if (frame[3] == 0x01 && reusableBuffer.modelSetup.pxx2.registerStep == REGISTER_RX_NAME_SELECTED) {
|
||||
// RX_NAME + PASSWORD follow, we check they are good
|
||||
if (memcmp(&frame[4], reusableBuffer.modelSetup.pxx2.registerRxName, PXX2_LEN_RX_NAME) == 0 &&
|
||||
memcmp(&frame[12], g_model.modelRegistrationID, PXX2_LEN_REGISTRATION_ID) == 0) {
|
||||
|
||||
Reference in New Issue
Block a user