Skip to content

servapp(chirpstack): add ChirpStack v4 LoRaWAN network server stack - #25

Open
madejackson wants to merge 2 commits into
masterfrom
servapp/chirpstack
Open

madejackson wants to merge 2 commits into
masterfrom
servapp/chirpstack

Conversation

@madejackson

Copy link
Copy Markdown

ChirpStack v4 — LoRaWAN Network Server servapp

Adds the complete ChirpStack v4 stack as a one-click Cosmos servapp, built from the exact production configuration used in our deployment.

Services (7 containers)

Service Image Purpose
{ServiceName} chirpstack/chirpstack:4 Network server + web UI + gRPC API
-gateway-bridge chirpstack/chirpstack-gateway-bridge:4 Semtech UDP packet-forwarder bridge (UDP 1700)
-gateway-bridge-basicstation chirpstack/chirpstack-gateway-bridge:4 BasicStation (TTS-compatible) gateway bridge (TCP 3001)
-postgres postgres:14-alpine Database (with pg_trgm/hstore bootstrap)
-redis redis:7-alpine Cache
-mosquitto eclipse-mosquitto:2 MQTT broker for gateway events
-rest-api chirpstack/chirpstack-rest-api:4 REST API + Swagger UI

Install form

  • Admin-only web UI toggle (Cosmos AuthAdmin)
  • Expose UDP gateway port (1700/udp) — for Semtech packet-forwarder gateways
  • Expose BasicStation port (3001/tcp) — for ChirpStack Gateway OS / TTS gateways
  • LoRaWAN region select — EU868, US915 (sub-band 1/7), AU915, AS923-2, IN865, KR920, RU864 — drives the gateway-bridge MQTT topic templates and BasicStation config filename. Fixes the region mismatch (e.g. US915 gateway vs EU868 topics) that can silently prevent gateways from appearing.

What's included

  • Working install (validated with the repo's whiskers renderer): {Passwords.0} auto-generated DB password, healthchecks, reverse-proxy routes with SmartShield
  • Artefacts: chirpstack.toml (env-parameterized PG/Redis), gateway bridge configs, postgres extension bootstrap
  • 3 real screenshots (login / dashboard / tenants), 512×512 icon
  • EN/DE/FR/IT translations

Validation: node .github/scripts/validate-servapps.js ChirpStack ✅ passes (the only full-repo error is pre-existing Frigate-NVR hm_size, untouched).

Complete production-grade ChirpStack v4 deployment:
- network server (chirpstack/chirpstack:4) with web UI, gRPC/REST API
- Semtech UDP gateway bridge + BasicStation bridge (region-selectable)
- PostgreSQL 14, Redis 7, Mosquitto MQTT broker as backing services
- REST API bridge with Swagger UI (chirpstack-rest-api:4)
- install form: admin-only flag, UDP/BasicStation port exposure,
  LoRaWAN region select (eu868, us915_1/7, au915, as923-2, in865, kr920, ru864)
  that drives gateway-bridge topic templates and BasicStation config
- artefacts: chirpstack.toml (postgres/redis config), gateway bridges,
  postgres extension bootstrap script
- 3 real UI screenshots + 512x512 logo icon (en/de/fr/it translations)

This branch has not been deployed

No deployments
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.

1 participant