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:
2026-03-13 15:05:58 +09:00
parent 8129f55216
commit 9dd1e5387c
3 changed files with 135 additions and 1002 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -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 )