Skip to content

Clarify 'Disc' disconnect channels, validate DMR ID binding, and allow hotspot-only generation - #10

Merged
jimdawdy-hub merged 1 commit into
mainfrom
fix/issue-4-dmr-id-and-disc-channels
Sep 12, 2026
Merged

jimdawdy-hub merged 1 commit into
mainfrom
fix/issue-4-dmr-id-and-disc-channels

Conversation

@jimdawdy-hub

Copy link
Copy Markdown
Owner

Summary

Addresses feedback from issue #4:

  1. DMR ID on channels: Clarifies and reinforces the DMR ID binding mechanism introduced in PR Fix DM-32UV "Null Ch." import bug, add Docker packaging, tests, and a reworked UI #7. Adds validation in Codeplug.validate() to ensure radio_name is set and all channels have their dmr_id matching radio_name.
  2. 'Disc' channels: Clarifies in codeplug/csv_export.py (README.txt) and README.md that TG 4000 channels labeled Disc (e.g. HS Disc) are mandatory Disconnect channels (used to unlink reflectors/talkgroups on BrandMeister/DMR-MARC), not 'Discovery' channels.
  3. Hotspot-only and analog-only generation: Updates web/app.py so users who only select hotspot talkgroups or analog repeaters can generate a codeplug without hitting a 400 'No repeaters selected' error.
  4. Automated tests: Adds tests/test_web_generate.py covering web generate referential integrity, hotspot-only, analog-only, and error cases.

Closes #4

…w hotspot-only generation

- csv_export & README: clarify that TG 4000 channels labeled 'Disc' are Disconnect channels (not Discovery)
- models.py: validate that radio_name is populated and matches channel dmr_id
- web/app.py: allow codeplug generation when repeaters is empty if hotspot talkgroups or analog repeaters are selected
- tests: add comprehensive test suite for web generate endpoint, DMR ID referential integrity, and edge cases
@jimdawdy-hub
jimdawdy-hub merged commit 365f3c7 into main Sep 12, 2026
10 checks passed
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.

'DMR ID' Not Being Set on HS Channels

1 participant