Skip to content
The Things Network Stack for LoRaWAN V3
Branch: master
Clone or download
Latest commit 48662cc May 24, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github doc: Drop trailing colon in templates Apr 29, 2019
.mage dev: Stop calling Go directly May 14, 2019
.make dev: Don't call removed $(err) Apr 30, 2019
api api: Make application-layer f_port check stricter May 15, 2019
cmd cli: Add defaults while creating a new gateway May 21, 2019
config util: Fix equal length error in encoding May 22, 2019
doc doc: Document default interop port May 17, 2019
pkg Merge pull request #755 from TheThingsNetwork/issue/711-cluster-loopback May 24, 2019
sdk/js Merge pull request #714 from TheThingsNetwork/fix/666-single-api-key-… May 24, 2019
.dockerignore doc: Improve development, setup and deployment Dec 27, 2018
.editorconfig dev: Remove indent-size from .editorconfig for go files Dec 1, 2017
.gitignore dev: Move repo init to Mage and mage to root Apr 30, 2019
.gometalinter.json dev: Ignore linting for generated fieldmask utilites Nov 22, 2018
.goreleaser.yml ci: Fix release script Apr 30, 2019
.revive.toml dev: Add revive configuration Mar 15, 2019
.travis.yml ci: Set NODE_ENV to production May 2, 2019
CODEOWNERS dev: Clear generated code in CODEOWNERS Apr 10, 2019
CONTRIBUTING.md doc: Update Johan's PGP key May 13, 2019
DEVELOPMENT.md doc: Add initial frontend dev documentation May 2, 2019
Dockerfile dev: Add HEALTHCHECK to the Dockerfile Feb 21, 2019
LICENSE dev: Use Apache 2.0 license Apr 4, 2018
Makefile dev: Set Make shell to bash Apr 30, 2019
README.md doc: Update links to Slack Apr 8, 2019
docker-compose.yml doc: Add Let's Encrypto to docker-compose Apr 25, 2019
go.mod dev: Fix import path of xerrors package May 6, 2019
go.sum dev: Fix import path of xerrors package May 6, 2019
magefile.go dev: Move version handling to Mage Jan 21, 2019
package.json
snapcraft.login.enc ci: Reconfigure encrypted snapcraft login Apr 5, 2019
tools.go dev: Vendor github.com/TheThingsIndustries/release-notes Apr 29, 2019
yarn.lock dev: Add url-polyfill dependency May 9, 2019

README.md

The Things Network Stack for LoRaWAN

Build Status Coverage Status

The Things Network Stack for LoRaWAN is an open source LoRaWAN network stack suitable for large, global and geo-distributed public and private networks as well as smaller networks. The architecture follows the LoRaWAN Network Reference Model for standards compliancy and interoperability. This project is actively maintained by The Things Industries.

LoRaWAN is a protocol for low-power wide area networks. It allows for large scale Internet of Things deployments where low-powered devices efficiently communicate with Internet-connected applications over long range wireless connections.

Features

  • LoRaWAN Network Server
    • Supports LoRaWAN 1.1
    • Supports LoRaWAN 1.0, 1.0.1, 1.0.2 and 1.0.3
    • Supports LoRaWAN Regional Parameters 1.0, 1.0.2 rev B, 1.0.3 rev A, 1.1 rev A and B
    • Supports Class A devices
    • Supports Class B devices
    • Supports Class C devices
    • Supports OTAA devices
    • Supports ABP devices
    • Supports MAC Commands
    • Supports Adaptive Data Rate
    • Implements LoRaWAN Back-end Interfaces 1.0
  • LoRaWAN Application Server
    • Payload conversion of well-known payload formats
    • Payload conversion using custom JavaScript functions
    • MQTT pub/sub API
    • HTTP Webhooks API
    • Implements LoRaWAN Back-end Interfaces 1.0
  • LoRaWAN Join Server
    • Supports OTAA session key derivation
    • Supports external crypto services
    • Implements LoRaWAN Back-end Interfaces 1.0
  • OAuth 2.0 Identity Server
    • User management
    • Entity management
    • ACLs
  • GRPC APIs
  • HTTP APIs
  • Command-Line Interface
    • Create account and login
    • Application management and traffic
    • End device management, status and traffic
    • Gateway management and status
  • Web Interface (Console)
    • Create account and login
    • Application management and traffic
    • End device management, status and traffic
    • Gateway management, status and traffic

Getting Started

You want to install the stack? Fantastic! Here's the Getting Started guide.

Do you want to set op a local development environment? See the DEVELOPMENT.md for instructions.

Do you want to contribute to the stack? Your contributions are welcome! See the guidelines in CONTRIBUTING.md.

Are you new to LoRaWAN and The Things Network? See the general documentation at thethingsnetwork.org/docs.

Commitments and Releases

Open source projects are great, but a stable and reliable open source ecosystem is even better. Therefore, we make the following commitments:

  1. We will not break the API towards gateways and applications within the major version. This includes how gateways communicate and how applications work with data
  2. We will upgrade storage from older versions within the major version. This means that you can migrate an older setup without losing data
  3. We will not break the public command-line interface and configuration within the major version. This means that you can safely build scripts and migrate configurations
  4. We will not break the API between components and events within minor versions. So at least the same minor versions of components are compatible with each other

As we are continuously adding functionality in minor versions and fixing issues in patch versions, we are also introducing new configurations and new defaults. We therefore recommend reading the release notes before upgrading to a new version.

You can find the releases and their notes on the Releases page.

Support

You can’t perform that action at this time.