-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
It seems that slot input to getMetaData() is either 0 or 1:
case GET_METADATA:
if(command.getPayloadSize() == 2) {
if(command.getDataPayload()[COMMAND_DATA] == 1 || command.getDataPayload()[COMMAND_DATA] == 2) {
getMetadata(command.getDataPayload()[COMMAND_DATA] - 1);
if(payload_data[0] == NO_ERROR) {
print_metadata(&payload_data[COMMAND_DATA]);
Console::log("Metadata sent!");
}
} else throw_error(SLOT_OUT_OF_RANGE);
} else throw_error(PARAMETER_MISMATCH);
break;
But getMetaData() accepts 1 or 2:
void SoftwareUpdateService::getMetadata(unsigned char slot_number) {
payload_size = 1 + METADATA_SIZE ;
payload_data[0] = NO_ERROR;
if(!fram->ping()) return throw_error(NO_FRAM_ACCESS);
if(slot_number == 1){
fram->read(FRAM_METADATA_SLOT1_STATE, &payload_data[1], METADATA_SIZE);
}else if(slot_number == 2){
fram->read(FRAM_METADATA_SLOT2_STATE, &payload_data[1], METADATA_SIZE);
}
}
Metadata
Metadata
Assignees
Labels
No labels