Skip to content

The Things Network device library for ESP32 (ESP-IDF) and SX127x based devices

License

Notifications You must be signed in to change notification settings

manuelbl/ttn-esp32

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ttn-esp32

The Things Network device library for ESP-IDF (ESP32) supporting devices with Semtech SX127x chips

This ESP32 component provides LoRaWAN communication with The Things Network. It supports:

  • OTAA (over-the-air activation)
  • uplink and downlink messages
  • saving the EUIs and key in non-volatile memory
  • deep sleep and power off without the need for rejoining
  • AT commands for provisioning EUIs and key (so the same code can be flashed to several devices)
  • support for regions Europe, North and South America, Australia, Korea, Asia and India
  • C and C++ API

The library is based on the LMIC library from IBM (specifically the well-maintained version by MCCI – see their GitHub repository) and provides a high-level API specifically targeted at The Things Network.

New in version 4.x

  • Support for deep sleep and power off (see Deep Sleep and Power Off)
  • Verified compatibility with ESP-IDF v4.3 and 5.0
  • Upgraded underlying library mcci-catena/arduino-lmic to v4.2.0-1
  • C API
  • Support for sub-bands
  • Dropped support for Makefile builds

Get Started

Follow the detailed Get Started Guide in the Wiki.

Supported Boards

All boards with Semtech SX127x chips, RFM9x and compatibles are supported. It includes boards from ttgo, Heltec and HopeRF. For several of them, the Pin Configuration is described in detail.

API Documentation

See API Documentation for both the C ad C++ API

More information

More information can be found on the Wiki pages.