Add new parser commands and FDS reliability fix
- HW Number Read/Write (mwh?, mrh?) - Serial Number Read/Write (mws?, mrs?) - FW Version Read (mfv?) - Piezo TX/RX Deactivate (mpb?) - Fix config_save() to wait for previous FDS operation instead of skipping - Disable legacy s-prefix commands (ssz, srz, siz, shz, ssv) in cmd_parse.c Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -269,10 +269,19 @@ void config_save( void )
|
||||
|
||||
DBG_PRINTF("[CFG_SAVE] start\r\n");
|
||||
|
||||
/* Skip if a previous FDS operation is still in progress (non-blocking) */
|
||||
/* Wait for any previous FDS operation to complete */
|
||||
if (fds_flag_write) {
|
||||
DBG_PRINTF("[CFG_SAVE] busy, skipped\r\n");
|
||||
return;
|
||||
uint32_t wait_cnt = 0;
|
||||
DBG_PRINTF("[CFG_SAVE] waiting for prev FDS op...\r\n");
|
||||
while (fds_flag_write && wait_cnt < 3000) {
|
||||
nrf_pwr_mgmt_run();
|
||||
nrf_delay_ms(1);
|
||||
wait_cnt++;
|
||||
}
|
||||
if (fds_flag_write) {
|
||||
DBG_PRINTF("[CFG_SAVE] TIMEOUT! forcing flag clear\r\n");
|
||||
fds_flag_write = false;
|
||||
}
|
||||
}
|
||||
|
||||
if( m_config.magic_number != (uint32_t)CONFIG_MAGIC_NUMBER_VALUE )
|
||||
|
||||
Reference in New Issue
Block a user