7.9 KiB
Special numbers (TG / IDs)
Several destination IDs are reserved for control or services. They are handled in protocol layers and/or the bridge router, not as normal group traffic.
ID 5000 — server voice source (not “announcement TG”)
Important: 5000 is the RF source ID the server uses when it transmits automated voice. Radios and dashboards show caller ID 5000 for that traffic.
| Traffic | Destination in the DMR packet | Notes |
|---|---|---|
Scheduled AMBE (ANNOUNCEMENTS) |
Whatever TG you set in adn-voice.yaml |
Source ID 5000. |
TTS (TTS_ANNOUNCEMENTS) |
Same — configured TG |
Source ID 5000. |
| On-demand (TG 9991–9999) | TG 9 | Short info clips; source 5000 (see Voice, announcements, and TTS). |
| Disconnected / reflector prompts | TG 9 | Source 5000. |
| Voice ident | All-call (16777215) or OVERRIDE_IDENT_TG if set |
Source 5000. |
You do not “monitor TG 5000” to hear scheduled announcements: you monitor the configured announcement TG (e.g. 2, 9, 26811). 5000 appears as the transmitter ID on those calls.
Destination TG 5000 (inbound group)
If a group call arrives with destination TG 5000 and there is no existing BRIDGES entry, the server does not auto-create a user-activated bridge for that TG (same class as IDs 0–4, 9, 4000). To carry traffic to TG 5000 you need an explicit bridge row.
TG 9 — local service lane (prompts and bridge plumbing)
TG 9 is used in two different ways: what operators hear from short server prompts, and how internal bridge rows are wired.
What you hear (outbound server voice)
For on-demand playback (after you key 9991–9999) and for disconnected / reflector voice lines, the server transmits group packets with:
- Source ID 5000
- Destination TG 9
- Timeslot 2 (the code drives the TS2 slot for that hotspot)
That follows a common HomeBrew / conference convention: keep short local service audio on TG 9 / TS2 so it stays separate from normal QSO traffic on your main TG (often on TS1). Hotspots must pass TS2 and be on a configuration where TG 9 is not blocked, or those prompts will not be heard.
Red vs local: On OpenBridge, inbound group traffic to TG 9 is in the ≤ 79 “local / repeater” range and is not brought into the bridge from the IP mesh (it is dropped at ingress). Server prompts use the local HBP path to the hotspot/repeater, not a wide-area bridged TG. Exception: only if you explicitly add BRIDGES rows that forward TG 9 could that traffic be sent elsewhere — not the default.
Scheduled announcements and TTS use the TG you set in adn-voice.yaml — they are not forced to TG 9 unless you configure that TG yourself.
Router behaviour (reserved TG)
- No automatic user-activated bridge if someone transmits to TG 9 and no
BRIDGESrow exists (same class as 0–4, 4000, 5000, etc.). - With
GEN_STAT_BRIDGES, automatic STAT bridge creation from OpenBridge does not apply to destination TG 9 (it is excluded on purpose). - The bridge debug loop removes invalid conference bridges keyed
9(and0–8) so single-digit stray bridges do not accumulate.
Bridge table (advanced)
Many reflector / dial rows store TGID = 9 on TS2 as the leg destination used internally to attach the dynamic path to the real talkgroup — that is wiring inside BRIDGES, not something you “call” like a normal national TG.
In-band VTERM rules that affect TG 9 / reflector behavior
In-band bridge activation/deactivation is applied on voice terminator (VTERM) with this scope:
- It runs only for call types
groupandvcsbk(not for unit/private VTERM). - For reflector bridges (
#...), in-band handling is evaluated only when the destination is TG 9. - This is why reflector prompts and dial wiring are tied to TG 9 while private calls do not trigger that bridge-timer logic.
TG / ID 4000 — deactivate dynamic bridges
Purpose: Clear user-activated (dynamic) bridges for the system that receives the call.
Behaviour:
- Implemented for group traffic to destination 4000 (and related checks in the router).
- Runs before normal TG ACL in the OpenBridge path so the command is not blocked by allow lists.
- Invokes
deactivate_all_dynamic_bridges: deactivates non-stat, non-reflector dynamic bridge rows.
Use this when operators need to reset dynamic routing without restarting the server.
SINGLE_MODE impact on deactivation logic
When in-band rules evaluate deactivation on a MASTER slot:
SINGLE_MODE: true: deactivation is aggressive. A bridge leg can be turned off by OFF/RESET triggers, TG 4000, or traffic that does not match the leg TG.SINGLE_MODE: false: deactivation is conservative. TG 4000 is the primary forced-deactivate trigger; static TG rows and reflector rows are preserved according to current bridge checks.
Operationally: if users report “bridges drop too easily” after OPTIONS updates, verify the current SINGLE_MODE value and hotspot OPTIONS payload.
TG 9991–9999 — information / on-demand audio
Purpose: Play back pre-generated AMBE (“ondemand”) files (e.g. station info, help).
Behaviour:
- Triggers
playFileOnRequest-style handling: maps the last digits to a file name under the configured audio tree. - Trigger path is private VTERM for destination 9991–9999, then async playback generation.
- Works from MASTER and PEER paths.
The audio is sent with source ID 5000 and destination TG 9 in the generated stream. File layout: Voice, announcements, and TTS.
TG 9990 — echo (in-band)
Purpose: Bridge rows for echo often use 9990 with the ECHO system (see BRIDGES and options in your YAML).
Note: A standalone echo is also available as a separate process — Echo.
Private call to ID 4000
A unit call to 4000 is treated as disconnect dynamics only; it is not routed as a normal private call.
OpenBridge ingress — group TG filters
On OpenBridge (DMRD v1 and DMRE), non-unit group traffic to certain TGs may be dropped before bridging (with BCSQ where applicable). Rules differ slightly between DMRD and DMRE; they include low-number TGs (e.g. ≤ 79), 9990–9999, 900999, ranges 92–199 (vs source server), and MCC-related ranges (80–89, 800–899). Details: OpenBridge protocol.
Prohibited / reserved TGs (bridge creation)
Many small IDs (0–5, 9, etc.) and the 999x service range are excluded from certain automatic bridge-creation paths; 5000 and 4000 are in the “no auto UA bridge” set when no row exists. Exact sets are defined in the bridge router and options handling in source.
Summary table
| ID / range | Role |
|---|---|
| 5000 (source) | Server-generated voice (announcements, TTS, prompts, ident) — caller ID on receivers |
| 5000 (destination) | No auto user-activated bridge if missing from BRIDGES |
| 4000 (group) | Deactivate dynamic bridges |
| 4000 (unit) | Disconnect dynamics; not routed as PC |
| 9991–9999 | On-demand / information audio (trigger TG); playback uses src 5000 → TG 9 (TS2) |
| 9 | Service/prompt lane (short server audio); reserved for auto-bridges; internal TGID on TS2 legs |
| 9990 | Echo bridge TG (with ECHO system) |
| 16777215 | All-call (default voice-ident destination unless overridden) |