src.nth.io/

summaryrefslogtreecommitdiff
path: root/openhop/repeater/defaults/main.yaml
diff options
context:
space:
mode:
authorLuke Hoersten <[email protected]>2026-07-26 10:36:29 -0500
committerLuke Hoersten <[email protected]>2026-07-26 10:36:29 -0500
commit38323823b85b2ae8deef788a0f49e36c789c12f4 (patch)
tree94a3227a737ba0198dd06d3b7e001f219fe32bdc /openhop/repeater/defaults/main.yaml
parent1aaf4479d72edbd0c716d2e9122a7b613626bf12 (diff)
openhop/repeater: add MeshCore repeater role
Deploys the openHop MeshCore repeater on a Raspberry Pi with a RAK6421 WisMesh Pi HAT: installs the daemon into a venv from a versioned git tag, templates config.yaml and a systemd unit, and loads board pin maps and RF region presets by name from vars/. identity_file is configurable and defaults to null (daemon generates its own keypair).
Diffstat (limited to 'openhop/repeater/defaults/main.yaml')
-rw-r--r--openhop/repeater/defaults/main.yaml38
1 files changed, 38 insertions, 0 deletions
diff --git a/openhop/repeater/defaults/main.yaml b/openhop/repeater/defaults/main.yaml
new file mode 100644
index 0000000..d26e73e
--- /dev/null
+++ b/openhop/repeater/defaults/main.yaml
@@ -0,0 +1,38 @@
+---
+
+repeater_version: "1.1.1"
+# https://github.com/openhop-dev/openhop_repeater/tags
+# openhop_repeater is NOT on PyPI, so it installs from this git tag.
+# Its dependency openhop_core[hardware] resolves from PyPI automatically.
+repeater_repo: "https://github.com/openhop-dev/openhop_repeater"
+
+# Service layout — mirrors upstream's own systemd unit and docs.
+repeater_user: "repeater"
+repeater_venv_dir: "/opt/openhop_repeater/venv"
+repeater_config_dir: "/etc/openhop_repeater"
+repeater_data_dir: "/var/lib/openhop_repeater"
+
+# --- Node identity ---
+repeater_node_name: "{{inventory_hostname}}"
+repeater_latitude: 0.0
+repeater_longitude: 0.0
+repeater_owner_info: ""
+# Path to the node's identity file (its MeshCore public/private keypair). The
+# daemon generates one here on first boot and reuses it thereafter, so pointing
+# this at persistent storage keeps a stable identity across reinstalls. Null
+# lets the daemon generate an ephemeral identity each run.
+repeater_identity_file: null
+
+# --- Hardware + RF presets (loaded by name from the role's vars/ dir) ---
+# WARNING: the RAK13302 has a 1W SKY66122 PA. NEVER power the HAT without the
+# antenna connected, or you risk destroying the radio front-end.
+#
+# repeater_board -> loads the pin map from vars/boards/<name>.yaml
+# available: rak6421-slot1, rak6421-slot2
+# (add a new board by dropping another file in vars/boards/)
+repeater_board: "rak6421-slot1"
+#
+# repeater_rf_preset -> loads the RF params from vars/rf/<name>.yaml
+# available: us, eu
+# (every node on a mesh must share the same RF preset)
+repeater_rf_preset: "us"