parent
e4ccb5dde3
commit
7f6ddddf54
@ -0,0 +1,81 @@
|
||||
# FreeDMR v1.5.0 release notes
|
||||
|
||||
FreeDMR v1.5.0 introduces HDStack, a multi-process deployment for the standard
|
||||
container. It raises aggregate HBP capacity by distributing active hotspot and
|
||||
repeater sessions across up to five FreeDMR workers while retaining the
|
||||
existing 100-connection boundary for each worker.
|
||||
|
||||
## Before upgrading
|
||||
|
||||
- The standard container now chooses the number of HDStack workers from the
|
||||
available CPU count minus one, clamped to one through five. Set `HDSTACK=1`
|
||||
explicitly to retain the established single-process layout.
|
||||
- Set `HDSTACK_BASEID` to the aggregator server ID. Workers use successive IDs
|
||||
beginning at `HDSTACK_BASEID + 1`.
|
||||
- The read-only FreeDMR container requires a writable `/tmp`. The shipped
|
||||
Compose file provides this with `tmpfs: /tmp`; retain that setting in custom
|
||||
deployments.
|
||||
- Existing deployments must update their Compose configuration to receive new
|
||||
services and mounts; pulling the FreeDMR image alone does not rewrite an
|
||||
existing `docker-compose.yml`.
|
||||
|
||||
## HDStack
|
||||
|
||||
- New HBP sessions are assigned round-robin across workers. A DMR ID remains
|
||||
pinned to its exact worker port for the active session, preserving its login,
|
||||
bridge and `OPTIONS` state.
|
||||
- A no-HBP aggregator owns external FBP and OBP relationships. Workers connect
|
||||
to it over private FBP v5/FBCP links.
|
||||
- Each worker has an isolated Loro playback process and private ECHO link when
|
||||
ECHO is enabled.
|
||||
- The reporting MUX presents worker reports through the existing reporting
|
||||
socket. It prefixes system names with the stable worker number, for example
|
||||
`1:SYSTEM-001`, to avoid collisions.
|
||||
- The optional separate `bridge.py` process is disabled by default. Set
|
||||
`HDSTACK_BRIDGE=1`, assign it a distinct server ID and configure its skeleton
|
||||
config and rules files when bridge routing is required.
|
||||
- HDStack does not provide active worker failover, live migration or persistent
|
||||
session affinity. A failed worker's active sessions are not moved.
|
||||
|
||||
See [HDStack multi-process deployment](hdstack.md) for configuration, generated
|
||||
ports, reporting and operational limitations.
|
||||
|
||||
## Data Gateway
|
||||
|
||||
New installations include the stable FreeDMR Data Gateway container. Each
|
||||
worker has a direct FBP v5/FBCP relationship to the gateway for locally
|
||||
originated DMR traffic. Existing installations retain the legacy D-APRS path
|
||||
unless the native `DATA_GATEWAY` setting and relationship are enabled.
|
||||
|
||||
The installer requests the APRS-IS login and passcode and writes the matching
|
||||
worker relationships. The gateway remains a separate container and is not a
|
||||
fallback when its native links are unavailable.
|
||||
|
||||
## Other operator-visible changes
|
||||
|
||||
- Network direct dial is available and defaults to local TG9 on TS1. Set
|
||||
`NETWORK_DIRECT_DIAL_SLOT: 0`, or session option `NDD_SLOT=0`, to disable it.
|
||||
- Dial-a-TG control, defaults and timers can be configured independently for
|
||||
TS1 and TS2. Existing TS2 option aliases remain supported.
|
||||
- `DIAL_A_TG` and `DYNAMIC_TG_ROUTING` can disable their respective dynamic
|
||||
routing behaviours.
|
||||
- HBP `OPTIONS` input is bounded to 255 bytes. Oversized values are
|
||||
acknowledged but ignored.
|
||||
- Optional DMR data observability is available through `DATA_PACKET_LOGGING`.
|
||||
It is disabled by default because decoded logs may contain message or
|
||||
location content.
|
||||
- Reporting includes source server and repeater metadata without changing the
|
||||
existing leading report fields.
|
||||
- The shipped `ALLOW_UNREG_ID` default is now `True` for established FreeDMR
|
||||
access compatibility.
|
||||
- The installer uses the current Docker repository setup on Debian 12.
|
||||
|
||||
## Compatibility
|
||||
|
||||
FBP v5 and OBP v1 remain distinct supported peer protocols. The HDStack
|
||||
internal topology uses FBP v5/FBCP and consumes one additional FBP hop; the
|
||||
accepted maximum is therefore 11 hops for all FBP relationships.
|
||||
|
||||
The tagged container build publishes `latest`, the tag-specific
|
||||
`v1.5.0-with-proxy` image and `development-latest` through the existing release
|
||||
pipeline.
|
||||
Loading…
Reference in new issue