1
0
mirror of https://github.com/peterantypas/maiana.git synced 2025-05-15 23:10:11 -07:00
This commit is contained in:
Peter Antypas 2024-03-11 13:54:29 -07:00
parent 392a99f8d9
commit 3e2ac78844
5 changed files with 25 additions and 5 deletions

View File

@ -37,7 +37,8 @@ public:
bool writeStationData(const StationData &data);
bool readStationData(StationData &data);
bool isStationDataProvisioned();
void resetToDefaults();
void eraseStationData();
void reportStationData();
void reportOTPData();
const OTPData *readOTP();
@ -51,6 +52,8 @@ public:
void setXOTrimValue(uint8_t value);
uint8_t getXOTrimValue();
void reportXOTrimValue();
void factoryReset();
private:
Configuration();

View File

@ -75,6 +75,7 @@ void bsp_erase_config_flags();
void bsp_read_xo_trim(XOTrim *t);
void bsp_write_xo_trim(const XOTrim &t);
void bsp_erase_xo_trim();
// Callback for processing UART input (interrupt)
typedef void(*char_input_cb)(char c);

View File

@ -132,10 +132,15 @@ void CommandProcessor::processCommand(const char *buff)
{
jumpToBootloader();
}
else if ( s.find("erase station") == 0 )
{
Configuration::instance().eraseStationData();
Configuration::instance().reportStationData();
}
else if ( s.find("factory reset") == 0 )
{
// Clear station data
Configuration::instance().resetToDefaults();
Configuration::instance().factoryReset();
Configuration::instance().reportStationData();
}
else if ( s.find("tx test") == 0 )
{

View File

@ -174,6 +174,11 @@ bool Configuration::isStationDataProvisioned()
return bsp_is_station_data_provisioned();
}
void Configuration::eraseStationData()
{
bsp_erase_station_data();
}
#if OTP_DATA
void Configuration::reportOTPData()
{
@ -214,12 +219,12 @@ void Configuration::reportXOTrimValue()
EventQueue::instance().push(e);
}
void Configuration::resetToDefaults()
void Configuration::factoryReset()
{
bsp_erase_station_data();
reportStationData();
mFlags = {0};
bsp_erase_config_flags();
bsp_erase_xo_trim();
}
bool Configuration::writeStationData(const StationData &data)

View File

@ -480,6 +480,12 @@ void bsp_write_xo_trim(const XOTrim &t)
}
void bsp_erase_xo_trim()
{
XOTrim t = {0, 0, {0}};
bsp_write_xo_trim(t);
}
void bsp_set_rx_mode()
{
HAL_GPIO_WritePin(PA_BIAS_PORT, PA_BIAS_PIN, GPIO_PIN_RESET); // Kill the RF MOSFET bias voltage