SplitStack BSSCI Adapter
The SplitStack BSSCI Adapter is a service which converts mioty® BSSCI protocols into a simplified format (JSON and Protobuf). mioty® is a LPWAN technology that implements the TS-UNB protocol as specified in ETSI TS 103 357-2 V2.1.1.
It is inspired by the ChirpStack open-source LoRaWAN® Network Server project and follows the structure of the ChirpStack Gateway Bridge. Where possible this implementation reuses existing code and concepts.
This component is part of the SplitStackServer to provide an open-source mioty® Network Server.
DISCLAIMER: This project is not associated with any company or the mioty® alliance.
Backends
The following backends are provided:
- BSSCI V1.0.0
- TCP/TLS stream based protocol
- Error messages from basestations are currently not forwarded to MQTT
- Variable MAC sub channel is implemented except for
vm.downlink.
Integrations
The following integrations are provided:
- MQTT 3.1/3.11
- Currently the topics defaults are as as follows:
- prefix: /bssci/
- per basestation: bssci/{{ .BsEui }}/#
- state (retained): bssci/{{ .BsEui }}/state
- events: "bssci/{{ .BsEui }}/event/{{ .EventSource }}/{{ .EventType }}"
- endpoint events:
- {{ .EventSource }} is "ep"
- {{ .EventType }} is one of "otaa", "ul"
- basestation events:
- {{ .EventSource }} is "bs"
- {{ .EventType }} is one of "status", "con, "vm", "dl", "rx"
- server commands: "bssci/{{ .BsEui }}/command/#"
- server responses: "bssci/{{ .BsEui }}/response/#"
- Mainly used for OTAA responses
- Topics must match main SplitStack Network Server configuration.
Building
This project uses goreleaser and nfpm to handle build and packaging tasks. goreleaser also builds a Docker image.
Helpful commands:
# install development requirements
make dev-requirements
# run the tests
make test
# compile
make build
# build for supported architectures using goreleaser
make dist
# compile snapshot for supported architectures using goreleaser
make snapshot
License
mioty® BSSCI Adapter is distributed under the MIT license. See
LICENSE.