Skip to content

feat: GSM SIM7600E-H — real hardware mode + admin UI#541

Merged
ShaerWare merged 1 commit intomainfrom
feat/gsm-real-hardware-mode
Mar 5, 2026
Merged

feat: GSM SIM7600E-H — real hardware mode + admin UI#541
ShaerWare merged 1 commit intomainfrom
feat/gsm-real-hardware-mode

Conversation

@ShaerWare
Copy link
Owner

Summary

  • Switch GSM service from forced mock_mode=True to auto-detection of real hardware
  • Add new methods to gsm_service.py: read_sms, read_all_sms, delete_sms, delete_all_sms, send_dtmf, get_network_mode with NETWORK_MODES dict
  • Add network_mode field to GSM status (GSM/HSDPA/LTE)
  • New endpoints: POST /admin/gsm/dtmf, POST /admin/gsm/sms/read-modem, POST /admin/gsm/sms/clear-modem
  • Frontend: MOCK badge, network mode display, AT port card, "Read from SIM" button, Cyrillic-aware SMS char counter (70 UCS2 vs 160 GSM7)

NEWS

📡 GSM-модем SIM7600E-H — реальное железо вместо заглушки

GSM-модуль теперь автоматически определяет подключённый модем и работает с реальным железом. Поддержка SMS на русском языке через PDU/UCS2, определение типа сети (2G/3G/LTE), чтение SMS с SIM-карты прямо из админки, отправка DTMF-тонов. В UI появились бейдж режима (MOCK/железо), показ типа сети, кнопка «С SIM» и счётчик символов с учётом кириллицы.

Test plan

  • Start backend: ./start_gpu.sh — GSM service initializes in hardware mode (not mock)
  • curl http://localhost:8002/admin/gsm/status — shows mock_mode: false, signal, network_mode
  • Send SMS from admin UI with Cyrillic text — verify delivery
  • Send AT command from Debug tab — verify response
  • Call the modem → verify incoming call appears in admin
  • "Read from SIM" button reads and imports SMS from modem SIM storage
  • Frontend build: cd admin && npm run build — no type errors

🤖 Generated with Claude Code

Switch GSM service from forced mock mode to auto-detection of real hardware.
Add new AT commands for SIM7600E-H: PDU SMS with UCS2 (Cyrillic), AT+CHUP
for hangup, AT+CNMP=14 (force 2G/3G for SMS/voice), DTMF tones, network
mode detection, SIM SMS read/delete.

Backend:
- gsm_service.py: new methods — read_sms, read_all_sms, delete_sms,
  delete_all_sms, send_dtmf, get_network_mode + NETWORK_MODES dict
- orchestrator.py: remove mock_mode=True, auto-detect hardware
- router.py: new endpoints POST /admin/gsm/dtmf,
  POST /admin/gsm/sms/read-modem, POST /admin/gsm/sms/clear-modem;
  add network_mode to status response

Frontend:
- gsm.ts: new API methods readModemSMS, clearModemSMS, sendDTMF;
  add mock_mode + network_mode to GSMStatus type
- GSMView.vue: MOCK badge, network mode display, AT port card,
  "Read from SIM" button, Cyrillic-aware SMS char counter (70/UCS2 vs 160/GSM7)

## NEWS

📡 **GSM-модем SIM7600E-H — реальное железо вместо заглушки**

GSM-модуль теперь автоматически определяет подключённый модем и работает
с реальным железом. Поддержка SMS на русском языке через PDU/UCS2,
определение типа сети (2G/3G/LTE), чтение SMS с SIM-карты прямо из
админки, отправка DTMF-тонов. В UI появились бейдж режима (MOCK/железо),
показ типа сети, кнопка «С SIM» и счётчик символов с учётом кириллицы.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ShaerWare ShaerWare merged commit 568e7aa into main Mar 5, 2026
3 checks passed
@ShaerWare ShaerWare deleted the feat/gsm-real-hardware-mode branch March 5, 2026 16:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant