{"id":13692905,"url":"https://github.com/ArmDeveloperEcosystem/lorawan-library-for-pico","last_synced_at":"2025-05-02T19:32:44.212Z","repository":{"id":38189205,"uuid":"361758865","full_name":"ArmDeveloperEcosystem/lorawan-library-for-pico","owner":"ArmDeveloperEcosystem","description":"Enable LoRaWAN communications on your Raspberry Pi Pico or any RP2040 based board. 📡","archived":false,"fork":false,"pushed_at":"2025-03-17T13:36:23.000Z","size":19,"stargazers_count":150,"open_issues_count":6,"forks_count":50,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-04-30T09:59:07.818Z","etag":null,"topics":["lorawan","lorawan-device","raspberry-pi-pico","rp2040"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ArmDeveloperEcosystem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-26T13:23:38.000Z","updated_at":"2025-04-10T09:14:42.000Z","dependencies_parsed_at":"2024-11-12T18:35:07.951Z","dependency_job_id":"75711d70-d390-42ae-bdf4-87d7022472af","html_url":"https://github.com/ArmDeveloperEcosystem/lorawan-library-for-pico","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArmDeveloperEcosystem%2Florawan-library-for-pico","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArmDeveloperEcosystem%2Florawan-library-for-pico/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArmDeveloperEcosystem%2Florawan-library-for-pico/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArmDeveloperEcosystem%2Florawan-library-for-pico/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ArmDeveloperEcosystem","download_url":"https://codeload.github.com/ArmDeveloperEcosystem/lorawan-library-for-pico/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252095479,"owners_count":21693923,"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":["lorawan","lorawan-device","raspberry-pi-pico","rp2040"],"created_at":"2024-08-02T17:01:03.365Z","updated_at":"2025-05-02T19:32:43.651Z","avatar_url":"https://github.com/ArmDeveloperEcosystem.png","language":"C","readme":"# pico-lorawan\nEnable LoRaWAN communications on your [Raspberry Pi Pico](https://www.raspberrypi.org/products/raspberry-pi-pico/) or any RP2040 based board using a [Semtech SX1276 radio module](https://www.semtech.com/apps/product.php?pn=SX1276).\n\nBased on the Semtech's [LoRaWAN end-device stack implementation and example projects](https://github.com/Lora-net/LoRaMac-node).\n\n## Hardware\n\n * RP2040 board\n   * [Raspberry Pi Pico](https://www.raspberrypi.org/products/raspberry-pi-pico/)\n   * [Adafruit Feather RP2040](https://www.adafruit.com/product/4884)\n * Semtech SX1276 board\n   * [Adafruit RFM95W LoRa Radio Transceiver Breakout - 868 or 915 MHz - RadioFruit](https://www.adafruit.com/product/3072)\n   * [Adafruit LoRa Radio FeatherWing - RFM95W 900 MHz - RadioFruit](https://www.adafruit.com/product/3231) \n\n### Default Pinout\n\n| Raspberry Pi Pico / RP2040 | Semtech SX1276 |\n| ----------------- | -------------- |\n| 3.3V | VCC |\n| GND | GND |\n| GPIO 18 | SCK |\n| GPIO 19 | MOSI |\n| GPIO 16 | MISO |\n| GPIO 7 | DIO0 / G0 |\n| GPIO 8 | NSS / CS |\n| GPIO 9 | RESET |\n| GPIO 10 | DIO1 / G1 |\n\nGPIO pins are configurable in examples or API.\n\n## Examples\n\nSee [examples](examples/) folder.\n\nThere is a `config.h` file to your ABP or OTAA node configuration for each example.\n\n## Cloning\n\n```sh\ngit clone --recurse-submodules https://github.com/sandeepmistry/pico-lorawan.git \n```\n\n## Building\n\n1. [Set up the Pico C/C++ SDK](https://datasheets.raspberrypi.org/pico/getting-started-with-pico.pdf)\n2. Set `PICO_SDK_PATH`\n```sh\nexport PICO_SDK_PATH=/path/to/pico-sdk\n```\n3. Create `build` dir, run `cmake` and `make`:\n```\nmkdir build\ncd build\ncmake .. -DPICO_BOARD=pico\nmake\n```\n4. Copy example `.uf2` to Pico when in BOOT mode.\n\n## Erasing Non-volatile Memory (NVM)\n\nThis library uses the last page of flash as non-volatile memory (NVM) storage.\n\nYou can erase it using the [`erase_nvm` example](examples/nvm), when:\n\n * Changing the devices configuration\n * If your board is timing out with joining the network\n\n## Acknowledgements\n\nA big thanks to [Alasdair Allan](https://github.com/aallan) for his initial testing of EU868 support!\n\nThis project was created on behalf of the [Arm Software Developers](https://developer.arm.com/) team, follow them on Twitter: [@ArmSoftwareDev](https://twitter.com/armsoftwaredev) and YouTube: [Arm Software Developers](https://www.youtube.com/channel/UCHUAckhCfRom2EHDGxwhfOg) for more resources!\n\n","funding_links":[],"categories":["Resources"],"sub_categories":["Projects"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FArmDeveloperEcosystem%2Florawan-library-for-pico","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FArmDeveloperEcosystem%2Florawan-library-for-pico","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FArmDeveloperEcosystem%2Florawan-library-for-pico/lists"}