{"id":23729814,"url":"https://github.com/azure/iotedge-lorawan-starterkit","last_synced_at":"2025-04-06T18:15:34.378Z","repository":{"id":38010177,"uuid":"145098743","full_name":"Azure/iotedge-lorawan-starterkit","owner":"Azure","description":"Sample implementation of LoRaWAN components to connect LoRaWAN antenna gateway running IoT Edge directly with Azure IoT.","archived":false,"fork":false,"pushed_at":"2024-05-30T13:04:45.000Z","size":35444,"stargazers_count":186,"open_issues_count":117,"forks_count":63,"subscribers_count":29,"default_branch":"dev","last_synced_at":"2025-04-06T18:15:28.532Z","etag":null,"topics":["azure","azure-deployment","azure-iot","basics-station","hacktoberfest","iot","iot-edge","lora-gateway","lorawan","raspberry-pi"],"latest_commit_sha":null,"homepage":"https://azure.github.io/iotedge-lorawan-starterkit/2.2.1","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Azure.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-17T09:09:35.000Z","updated_at":"2025-03-17T17:44:17.000Z","dependencies_parsed_at":"2023-02-19T12:16:15.368Z","dependency_job_id":"761da98a-ea99-45b1-9d22-c1b78d25ff49","html_url":"https://github.com/Azure/iotedge-lorawan-starterkit","commit_stats":null,"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Azure%2Fiotedge-lorawan-starterkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Azure%2Fiotedge-lorawan-starterkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Azure%2Fiotedge-lorawan-starterkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Azure%2Fiotedge-lorawan-starterkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Azure","download_url":"https://codeload.github.com/Azure/iotedge-lorawan-starterkit/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247526764,"owners_count":20953143,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["azure","azure-deployment","azure-iot","basics-station","hacktoberfest","iot","iot-edge","lora-gateway","lorawan","raspberry-pi"],"created_at":"2024-12-31T02:18:38.233Z","updated_at":"2025-04-06T18:15:34.353Z","avatar_url":"https://github.com/Azure.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Azure IoT Edge LoRaWAN Starter Kit\n\n[![LoRa CI](https://github.com/Azure/iotedge-lorawan-starterkit/actions/workflows/ci.yaml/badge.svg?branch=master)](https://github.com/Azure/iotedge-lorawan-starterkit/actions/workflows/ci.yaml)\n[![LoRa CI](https://github.com/Azure/iotedge-lorawan-starterkit/actions/workflows/ci.yaml/badge.svg?branch=dev)](https://github.com/Azure/iotedge-lorawan-starterkit/actions/workflows/ci.yaml)\n[![Markdown](https://github.com//Azure/iotedge-lorawan-starterkit/actions/workflows/md-linter.yaml/badge.svg?branch=dev)](https://github.com/Azure/iotedge-lorawan-starterkit/actions/workflows/md-linter.yaml)\n[![codecov](https://codecov.io/gh/Azure/iotedge-lorawan-starterkit/branch/dev/graph/badge.svg)](https://codecov.io/gh/Azure/iotedge-lorawan-starterkit)\n\nThe LoRaWAN starter kit is an OSS cross platform private network implementation\nof the [LoRaWAN specification](https://lora-alliance.org/resource_hub/lorawan-specification-v1-0-2/)\nbuilt for connectivity to Azure IoT Hub. It enables users to setup their own\nLoRaWAN network that can connect to LoRa based nodes (sensors) and send decoded\nmessage packets to Azure IoT Hub for cloud based processing, analytics and other\nworkloads. Alternatively, it allows sending commands from the cloud to the end\nnodes. The goal of the the project is to provide guidance and a reference for\nAzure IoT Edge users to experiment with LoRaWAN technology.\n\n![Architecture](https://azure.github.io/iotedge-lorawan-starterkit/dev/images/EdgeArchitecture.png)\n\n- [Features](#features)\n- [Prerequisites](#prerequisites)\n- [Getting Started](#getting-started)\n- [Known Issues and Limitations](#known-issues-and-limitations)\n- [Tested Gateways](#tested-gateways)\n- [Support](#support)\n- [Contributing](#contributing)\n\n## Features\n\n- LoRaWAN 1.0.2 implementation\n(see [LoRaWAN Specification Support][specificationsupport]\nfor more details)\n- Device and Gateway management done completely through Azure IoT Hub.\n- Bi-directional communication between LoRa end devices and Azure cloud.\n- Custom packet decoding framework.\n- Identity Translation for LoRa devices with caching support.\n- Partial Offline and Casually connected Gateways scenarios.*\n- Easy deployment and setup using Azure ARM templates.\n- Small to Midsize Scalability Tests.\n- Simulator for development and testing without the need to own a Gateway.\n\n## Prerequisites\n\nThe following should be completed before proceeding with the LoRaWAN starter kit\ndevelopment or deployment in your environment.\n\n- You must have an Azure subscription. Get an\n[Azure Free account](https://azure.microsoft.com/en-us/offers/ms-azr-0044p/)\nto get started.\n- We are based on Azure IoT Edge so it is important that you understand the\nconcepts and deployment model for Azure IoT Edge. Refer to Azure\n[IoT Edge documentation](https://docs.microsoft.com/en-us/azure/iot-edge/)\nto see how it works.\n- Understand how LoRa and LoRaWAN works. A great primer is available at the\n[LoRa Alliance website](https://lora-alliance.org/resource_hub/what-is-lorawan/).\n- To test the solution on a device, you need to have a LoRaWAN Device Kit\nGateway and a LoRa end node. We have some recommendations in the\n[Tested Gateways](#tested-gateways) section below.\n\n## Getting Started\n\nWe have a variety of ways you can  get started with the kit, chose the\nappropriate documentation based on your persona and applicability.\n\n- **Setup a LoRaWAN Gateway**: We provide an easy to use Azure ARM template and\ndeployment guidance to get you quickly started with the LoRaWAN starter kit.\nUse the [Quick Start][quickstart] to setup a LoRaWAN Gateway and\nconnect to LoRA end nodes.\n- **Upgrade an existing installation**:\nRefer to the [upgrade guide][upgradeguide] for instructions and tips for a\nclean upgrade.\n- **Develop and debug the LoRaWAN starter kit**: If you are a developer and want\nto contribute or customize the LoRaWAN starter kit, refer to our\n[Developer Guidance][devguide] for more details on how to build, test\nand deploy the kit in your dev environment. We also support a\n\n- **Enable a gateway or device to be compatible with the starter kit**: We have\ndeveloped the LoRaWAN starter kit agnostic of a device manufacturer\nimplementation and focussed on the specifics on underlying architectures\n(arm, x86). However, we understand that device manufacturers can have specific\nrequirements; these could be specific to a gateway and the packet forwarders\nthey use or to the LoRa nodes and the decoders the device may use. We have\nprovided specific instructions on making these specialized hardware compatible\nwith our kit. You can follow these [instructions][partnerinstructions] depending on\nyour scenarios and also have your device gateway highlighted on our repo.\n\n## Known Issues and Limitations\n\nRefer to [Known Issues][knownissues] for known issues, gotchas and\nlimitations.\n\n## Tested Gateways\n\n- [Seeed Studio LoRa LoRaWAN Gateway - 868MHz Kit with Raspberry Pi 3](https://www.seeedstudio.com/LoRa-LoRaWAN-Gateway-868MHz-Kit-with-Raspberry-Pi-3.html)\n- [AAEON AIOT-ILRA01 LoRa® Certified Intel® Based Gateway and Network Server](https://www.aaeon.com/en/p/intel-lora-gateway-system-server)\n- [AAEON Indoor 4G LoRaWAN Edge Gateway \u0026 Network Server](https://www.industrialgateways.eu/UPS-IoT-EDGE-LoRa)\n- [AAEON AIOT-IP6801 Multi radio Outdoor Industrial Edge Gateway](https://www.aaeon.com/en/p/iot-gateway-systems-aiot-ip6801)\n- [MyPi Industrial IoT Integrator Board](http://www.embeddedpi.com/integrator-board)\nwith [RAK833-SPI mPCIe-LoRa-Concentrator](http://www.embeddedpi.com/iocards)\n- Raspberry Pi 3 with [IC880A](https://wireless-solutions.de/products/radiomodules/ic880a.html)\n- [RAK833-USB mPCIe-LoRa-Concentrator with Raspberry Pi 3](https://github.com/Ellerbach/lora_gateway/tree/a31d80bf93006f33c2614205a6845b379d032c57)\n\n## Support\n\nThe LoRaWAN starter kit is an open source solution, it is NOT a Microsoft\nsupported solution or product. For bugs and issues with the codebase please log\nan issue in this repo.\n\n## Contributing\n\nIf you would like to contribute to the IoT Edge LoRaWAN Starter Kit source code,\nplease base your own branch and pull request (PR) off our dev branch.\nRefer to the [Dev Guide][devguide] for development and debugging instructions.\n\n[quickstart]:           https://azure.github.io/iotedge-lorawan-starterkit/dev/quickstart/\n[upgradeguide]:         https://azure.github.io/iotedge-lorawan-starterkit/dev/user-guide/upgrade/\n[devguide]:             https://azure.github.io/iotedge-lorawan-starterkit/dev/user-guide/devguide/\n[knownissues]:          https://azure.github.io/iotedge-lorawan-starterkit/dev/issues/\n[partnerinstructions]:  https://azure.github.io/iotedge-lorawan-starterkit/dev/user-guide/partner/\n[specificationsupport]: https://azure.github.io/iotedge-lorawan-starterkit/dev/#lorawan-specification-support\n\n## Create a release\n\nYou can create a release with the following steps:\n\n### Write release notes\n\nWrite release notes to the [release notes documentation](https://github.com/Azure/iotedge-lorawan-starterkit/blob/docs/main/docs/release-notes.md).\n\n### Run the Release workflow to create a draft release\n\nGo to the [Create draft release workflow](https://github.com/Azure/iotedge-lorawan-starterkit/actions/workflows/create_release.yaml) and specify the release version before running the workflow.\n\n### Create and merge 2 PRs\n\nThe release workflow will create 2 branches:\n- `docs/release-${RELEASE_VERSION}-${GITHUB_RUN_ID}`\nThis branch updates the Button URL.\n\n- `feature/update-version-${RELEASE_VERSION}-${GITHUB_RUN_ID}`\nThis branch updates the Starter Kit version in Bicep.\n\nCreated 2 PRs from these branches, verify the PRs look good and merge them.\n\n### Update master\n\nPush dev branch to master\n\n### Add a release description and publish the release\n\nIn Github, select the release created by the workflow, add a good description, and publish the release.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazure%2Fiotedge-lorawan-starterkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fazure%2Fiotedge-lorawan-starterkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazure%2Fiotedge-lorawan-starterkit/lists"}