blob: 2d28bd4c173e5c4fa40f8ead48f9adf198c67526 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
# Protocol
Normative wire: **[HOST-PROTOCOL-SPEC.md](HOST-PROTOCOL-SPEC.md)** (frozen v1.0.0).
CRDOP (**MAX25-SoftModem**) uses the **native MAX25 M25/KISS host protocol** on TCP :8515 (control) / :8516 (data).
## Stack (default)
```
[Radio] ↔ [audio/ALSA] ↔ audio-dummyd / native modem ↔ TCP :8515 ctrl, :8516 data ↔ max25d
```
## Over-the-air
AX.25-compatible AFSK tones (1200 baud primary, up to 19200 baud design range). See [SOFTMODEM.md](SOFTMODEM.md).
## Host TCP (native M25)
| Port | Role |
|------|------|
| 8515 | Control (line-oriented ASCII, `\n` terminated) |
| 8516 | Data (AX.25 UI body without HDLC/FCS) |
Common commands: `INITIALIZE` · `PROTOCOLMODE KISS` · `MYCALL` · `LISTEN` · `STATUS` · `PING`
Implementation reference: `stacks/crdop/lib/m25_host_protocol.py`
## CRDOP launch presets
| Profile | Role |
|---------|------|
| `cb` | Default — CB / 500MAX class |
| `dual` | CB ↔ amateur turnaround |
| `amateur` | Amateur bandwidth class |
Runtime overrides via host TCP or `crdop.ini` always apply.
|