Карта возможностей модуля (SMS/шифрование/запись/inband) + Kirisun-родство

docs/fm100b-firmware-re.md: функциональная разбивка 172 команд модуля. SPKirisunEffectCnf
-> общий Beken-378x кодбейс с Kirisun/др. брендами.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NikMGoqQWWk9wy2ww2vJAr
Этот коммит содержится в:
2026-07-24 04:57:47 +09:00
co-authored by Claude Opus 4.8
родитель 59e1acd36e
Коммит 1067d957a8
+11
Просмотреть файл
@@ -86,6 +86,17 @@ Bootloader | Application | RF Firmware | NET info
через **загрузчик модуля** (download-режим), не через рабочую прошивку. Это живая операция (при владельце).
Сами cal-значения доступны и так — через B-команды (tools/tuning_read.py).
## Возможности модуля (по API, 172 команды)
- **SMS:** `ATC_Msg`, `ATC_SMSProc`, `ATC_SmsmodeSetReq`, `ATUploadRxSmsCnf`, `ATCRxSmsSendAck` — полный DMR-SMS.
- **Шифрование голоса:** `ATC_CurChKeySetReq`, `ATC_SetEncrypt`, `ATVoiceEncryptQuery`, `ATC_KeyHandle_*`.
- **DMR-вызовы:** call setup/roaming (`SPRoamList`), группы/контакты, digital monitor, emergency (`ATRecvEmgCallInd`), busy-status.
- **Аудио/голос:** `ATVoiceEncCnf/DecCnf`, `ATCRecvAmbedataCnf` (AMBE-кадры), `SPATVoicedata` (сырой голос-путь),
кодек-гейны, DTMF, `ATC_PlaySingleToneReq`, `SPKirisunEffectCnf` (→ общий кодбейс с **Kirisun**).
- **Запись/данные:** `ATC_LocalRecordPlayReq`/`ATC_RecordDataPlayReq` (запись голоса!), inband-данные
(`SPSendInBandDataReq`/`SPCclSpInBandDataInd`).
Вывод: модуль — универсальный Beken-378x DMR/intercom SoC, используемый разными брендами
(Radtel/Kirisun/iRadio). Многое из этого можно дёргать по 0x68 через мост (осторожно — только Query/Read вслепую).
## Реальные следующие шаги (реверс+правка+тест)
1. **API-поверхность:** извлечь полный список ATC_*/SP*-команд (это протокол 0x68 между AT32 и модулем)
— карта того, чем вообще можно управлять. Уже частично в docs/fm100b-commands.md.