Это адаптация примера TTN-OTAA Томаса Телкампа и Матхис Коуйммана для Adafruit Feather 32u4 с RFM95 Radio Module.
Это было протестировано с помощью Arduino IDE версии 1.8.5.

// Uncomment this to disable all code related to ping
#define DISABLE_PING
// Uncomment this to disable all code related to beacon tracking.
// Requires ping to be disabled too
#define DISABLE_BEACONS Зарегистрируйте новое устройство в той сетевой консоли, которую вы получите
Теперь вы должны добавить эти значения в исходный код:
static const u1_t PROGMEM APPEUI [ 8 ] = { 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 };
void os_getArtEui ( u1_t * buf ) { memcpy_P ( buf , APPEUI , 8 );}
// This should also be in little endian format, see above.
static const u1_t PROGMEM DEVEUI [ 8 ] = { 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 };
void os_getDevEui ( u1_t * buf ) { memcpy_P ( buf , DEVEUI , 8 );}
// This key should be in big endian format (or, since it is not really a
// number but a block of memory, endianness does not really apply). In
// practice, a key taken from ttnctl can be copied as-is.
// The key shown here is the semtech default key.
static const u1_t PROGMEM APPKEY [ 16 ] = { 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 };Обратите внимание, что приложение EUI и Device EUI должны быть указаны в «Маленьком формате эндского». В консоли TTN есть кнопки, которые помогут вам преобразовать числовые последовательности в формат LSB.

ПРИМЕЧАНИЕ . Использование так называемого одноканального затыка не рекомендуется, поскольку оно поддерживает только одну из трех частот соединения. Таким образом, у вас есть только шанс 1: 3, что операция соединения фактически достигает одной поддерживаемой частоты. Кроме того, неясно, поддерживают ли такие шлюзы связь от TTN обратно к устройству, поэтому, вероятно, вы никогда не получите отзывы о том, что операция соединения была успешной.