Setelah ketersediaan tumpukan Lorawan® yang ditingkatkan dan fitur yang ditingkatkan dalam modem Lora Basics ™, Semtech telah memutuskan untuk mentransisikan Loramac-Node ke mode pemeliharaan (perbaikan bug kritis masih akan didukung).
Lora Basics ™ Modem adalah platform yang menerapkan fitur Lorawan baru (IE Relay, CSMA) dan akan mendukung peningkatan di masa depan yang diperkenalkan oleh Lora Alliance (mis. Lorawan 1.2). Sementara transisi tumpukan Loramac-Node yang sebelumnya diperkenalkan ke mode pemeliharaan Semtech merekomendasikan pelanggan untuk menggunakan modem Lora Basics ™ untuk desain baru.
Tujuan dari proyek ini adalah untuk menunjukkan contoh implementasi tumpukan Lorawan perangkat akhir.
Proyek ini memiliki 2 cabang aktif di tempat.
| Cabang | Spec | Spec RP | Tag/tonggak sejarah | Kelas | Komentar |
|---|---|---|---|---|---|
| 1.0.4 / 1.1.0 + fcntdwn errata | 2-1.0.3 | v4.7.0 | A/b/c | Lorawan L2 1.0.4 - Dirilis | |
| menguasai | 1.0.4 / 1.1.0 + fcntdwn errata | 2-1.0.3 | v4.7.0 | A/b/c | Lorawan L2 1.0.4 / 1.1.0 |
| v5.0.0-cabang | 1.0.4 / 1.1.0 + fcntdwn errata | 2-1.0.3 | M 5.0.0 | A/b/c | Lorawan L2 1.0.4 / 1.1.0 - Menambahkan dukungan untuk modulasi LR -FHSS |
Proyek ini sepenuhnya mengimplementasikan kelas perangkat akhir ClassA, ClassB dan ClassC dan juga menyediakan SX1272/73, SX1276/77/78/79, SX1261/2 dan driver radio LR1110.
Untuk setiap contoh platform yang didukung, aplikasi disediakan.
LORAMAC/FUOTA-TEST-01 : Skenario uji FUOTA 01 Aplikasi Contoh Perangkat Akhir. (Berdasarkan Paket Umum Aplikasi yang disediakan)
Loramac/Periodik-Uplink-LPP : Contoh Aplikasi Contoh Perangkat Akhir/B/C. Secara berkala meningkatkan tautan bingkai menggunakan protokol LPP cabai. (Berdasarkan Paket Umum Aplikasi yang disediakan)
Ping-pong : Aplikasi Contoh Tautan Titik RF.
RX-SENSI : Contoh aplikasi berguna untuk mengukur tingkat sensitivitas radio menggunakan generator RF.
TX-CW : Contoh aplikasi untuk menunjukkan cara menghasilkan transmisi gelombang kontinu RF.
CATATAN : Setiap contoh aplikasi Lorawan (Loramac/*) mencakup implementasi Lora-Alliance; Protokol Sertifikasi Lorawan.
Catatan : Dokumentasi API Lorawan Stack dapat ditemukan di: http://stackforce.github.io/loramac-doc/
Proyek ini saat ini memberikan dukungan untuk platform di bawah ini.
Proyek ini dapat diangkut ke platform lain menggunakan MCU yang berbeda dari yang saat ini didukung.
Dokumen panduan porting menyediakan baris panduan tentang cara memortasikan proyek ke platform lain.
Namote72
Nucleolxxx - kit penemuan
Skim880b, skim980a, skim881axl
Samr34
Harap ikuti instruksi yang disediakan oleh Dokumen Lingkungan Pengembangan.
Klon Repositori dari GitHub
$ git clone https://github.com/lora-net/loramac-node.git loramac-nodeProyek Loramac-Node berisi submodul GIT yang harus diinisialisasi
$ cd loramac-node
$ git submodule update --init Proyek ini saat ini mendukung 3 implementasi soft-se , lr1110-se dan atecc608a-tnglora-se .
Untuk mempersonalisasikan file biner MCU dengan Lorawan EUI atau/dan AES128 tombol, seseorang harus mengikuti instruksi yang disediakan oleh Soft-SE, LR1110-SE dan ATECC608A-TNGLORA-SE bab
Soft-SE adalah emulasi perangkat lunak murni dari elemen aman. Ini berarti bahwa semuanya terletak di tuan rumah MCU Memories. Kunci DevEUI , JoinEUI dan AES128 keys dapat disimpan pada memori yang tidak mudah menguap melalui API khusus.
Untuk memperbarui identitas perangkat akhir ( DevEUI , JoinEUI dan AES128 keys ), seseorang harus memperbarui file se-identity.h yang terletak di bawah ./src/peripherals/soft-se/ direktori.
Catatan: Dalam versi sebelumnya dari proyek ini, ini dilakukan di dalam Commissioning.h file yang terletak di bawah masing -masing Direktori yang disediakan.
Implementasi abstraksi LR1110-S menangani semua pertukaran yang diperlukan dengan LR1110 Radio Crypto-Engine.
Semua chip radio LR1110 pra-disediakan di luar pabrik untuk digunakan dengan layanan bergabung dengan perangkat cloud Lora.
Jika server gabungan lainnya akan digunakan tombol DevEUI , Pin , JoinEUI dan AES128 keys dapat diperbarui dengan mengikuti instruksi yang disediakan pada Bab "13. LR1110 Penyediaan" Manual Pengguna LR1110.
Ketika opsi kompilasi SECURE_ELEMENT_PRE_PROVISIONED diatur ON LR1110-S akan menggunakan data yang disediakan pabrik ( DevEUI , JoinEUI dan AES128 keys ).
Ketika opsi kompilasi SECURE_ELEMENT_PRE_PROVISIONED diatur untuk OFF LR1110-S harus disediakan dengan mengikuti salah satu metode yang dijelaskan pada Bab "13. LR1110 Penyediaan" dari Manual Pengguna LR1110. DevEUI , Pin dan JoinEUI dapat diubah dengan mengedit file se-identity.h yang terletak di ./src/peripherals/lr1110-se/ direktori.
Implementasi abstraksi ATECC608A-TNGLORA-S menangani semua pertukaran yang diperlukan dengan ATECC608A-TNGLORA dan ATECC608B-TNGLORA ELEMENSI SEFORM.
Elemen-elemen aman ini selalu pra-disuguhi dan isinya tidak dapat diubah.
Contoh LPP-LPP berkala untuk platform Nucleol476 dengan LR1110MB1DIS MBed Shield dan menggunakan LR1110 Pra-Departemen Elemen Aman Pra-Departemen
$ mkdir build
$ cd build
$ cmake -DCMAKE_BUILD_TYPE=Release
-DTOOLCHAIN_PREFIX= " <replace by toolchain path> "
-DCMAKE_TOOLCHAIN_FILE= " ../cmake/toolchain-arm-none-eabi.cmake "
-DAPPLICATION= " LoRaMac "
-DSUB_PROJECT= " periodic-uplink-lpp "
-DCLASSB_ENABLED= " ON "
-DACTIVE_REGION= " LORAMAC_REGION_EU868 "
-DREGION_EU868= " ON "
-DREGION_US915= " OFF "
-DREGION_CN779= " OFF "
-DREGION_EU433= " OFF "
-DREGION_AU915= " OFF "
-DREGION_AS923= " OFF "
-DREGION_CN470= " OFF "
-DREGION_KR920= " OFF "
-DREGION_IN865= " OFF "
-DREGION_RU864= " OFF "
-DBOARD= " NucleoL476 "
-DMBED_RADIO_SHIELD= " LR1110MB1XXS "
-DSECURE_ELEMENT= " LR1110_SE "
-DSECURE_ELEMENT_PRE_PROVISIONED= " ON "
-DUSE_RADIO_DEBUG= " ON " ..
$ makeContoh Ping-Pong Menggunakan Modulasi Lora untuk Platform Nucleol476 dengan LR1110MB1DIS MBED Shield
$ mkdir build
$ cd build
$ cmake -DCMAKE_BUILD_TYPE=Release
-DTOOLCHAIN_PREFIX= " <replace by toolchain path> "
-DCMAKE_TOOLCHAIN_FILE= " ../cmake/toolchain-arm-none-eabi.cmake "
-DAPPLICATION= " ping-pong "
-DMODULATION: " LORA "
-DREGION_EU868= " ON "
-DREGION_US915= " OFF "
-DREGION_CN779= " OFF "
-DREGION_EU433= " OFF "
-DREGION_AU915= " OFF "
-DREGION_AS923= " OFF "
-DREGION_CN470= " OFF "
-DREGION_KR920= " OFF "
-DREGION_IN865= " OFF "
-DREGION_RU864= " OFF "
-DBOARD= " NucleoL476 "
-DMBED_RADIO_SHIELD= " LR1110MB1XXS "
-DUSE_RADIO_DEBUG= " ON " ..
$ makeContoh LPP-LPP berkala untuk platform Nucleol476 dengan LR1110MB1DIS MBed Shield dan menggunakan LR1110 Pra-Departemen Elemen Aman Pra-Departemen
// Place your settings in this file to overwrite default and user settings.
{
"cmake.configureSettings" : {
// In case your GNU ARM-Toolchain is not installed under the default
// path:
// Windows : No default path. Specify the path where the
// toolchain is installed. i.e:
// "C:/PROGRA~2/GNUTOO~1/92019-~1".
// Linux : /usr
// OSX : /usr/local
// It is required to uncomment and to fill the following line.
"TOOLCHAIN_PREFIX" : " /path/to/toolchain " ,
// In case your OpenOCD is not installed under the default path:
// Windows : C:/openocd/bin/openocd.exe
// Linux : /usr/bin/openocd
// OSX : /usr/local/bin/openocd
// Please uncomment the following line and fill it accordingly.
//"OPENOCD_BIN":"C:/openocd/bin/openocd.exe",
// Specifies the path to the CMAKE toolchain file.
"CMAKE_TOOLCHAIN_FILE" : " cmake/toolchain-arm-none-eabi.cmake " ,
// Determines the application. You can choose between:
// LoRaMac (Default), ping-pong, rx-sensi, tx-cw.
"APPLICATION" : " LoRaMac " ,
// Select LoRaMac sub project. You can choose between:
// periodic-uplink-lpp, fuota-test-01.
"SUB_PROJECT" : " periodic-uplink-lpp " ,
// Switch for Class B support of LoRaMac:
"CLASSB_ENABLED" : " ON " ,
// Select the active region for which the stack will be initialized.
// You can choose between:
// LORAMAC_REGION_EU868, LORAMAC_REGION_US915, ..
"ACTIVE_REGION" : " LORAMAC_REGION_EU868 " ,
// Select the type of modulation, applicable to the ping-pong or
// rx-sensi applications. You can choose between:
// LORA or FSK
"MODULATION" : " LORA " ,
// Target board, the following boards are supported:
// NAMote72, NucleoL073 (Default), NucleoL152, NucleoL476, SAMR34, SKiM880B, SKiM980A, SKiM881AXL, B-L072Z-LRWAN1.
"BOARD" : " NucleoL476 " ,
// MBED Radio shield selection. (Applies only to Nucleo platforms)
// The following shields are supported:
// SX1272MB2DAS, SX1276MB1LAS, SX1276MB1MAS, SX1261MBXBAS(Default), SX1262MBXCAS, SX1262MBXDAS, LR1110MB1XXS.
"MBED_RADIO_SHIELD" : " LR1110MB1XXS " ,
// Secure element type selection the following are supported
// SOFT_SE(Default), LR1110_SE, ATECC608A_TNGLORA_SE
"SECURE_ELEMENT" : " LR1110_SE " ,
// Secure element is pre-provisioned
"SECURE_ELEMENT_PRE_PROVISIONED" : " ON " ,
// Region support activation, Select the ones you want to support.
// By default only REGION_EU868 support is enabled.
"REGION_EU868" : " ON " ,
"REGION_US915" : " OFF " ,
"REGION_CN779" : " OFF " ,
"REGION_EU433" : " OFF " ,
"REGION_AU915" : " OFF " ,
"REGION_AS923" : " OFF " ,
"REGION_CN470" : " OFF " ,
"REGION_KR920" : " OFF " ,
"REGION_IN865" : " OFF " ,
"REGION_RU864" : " OFF " ,
"USE_RADIO_DEBUG" : " ON "
}
}

./build/src/apps/LoRaMac/Contoh Ping-Pong Menggunakan Modulasi Lora untuk Platform Nucleol476 dengan LR1110MB1DIS MBED Shield
// Place your settings in this file to overwrite default and user settings.
{
"cmake.configureSettings" : {
// In case your GNU ARM-Toolchain is not installed under the default
// path:
// Windows : No default path. Specify the path where the
// toolchain is installed. i.e:
// "C:/PROGRA~2/GNUTOO~1/92019-~1".
// Linux : /usr
// OSX : /usr/local
// It is required to uncomment and to fill the following line.
"TOOLCHAIN_PREFIX" : " /path/to/toolchain " ,
// In case your OpenOCD is not installed under the default path:
// Windows : C:/openocd/bin/openocd.exe
// Linux : /usr/bin/openocd
// OSX : /usr/local/bin/openocd
// Please uncomment the following line and fill it accordingly.
//"OPENOCD_BIN":"C:/openocd/bin/openocd.exe",
// Specifies the path to the CMAKE toolchain file.
"CMAKE_TOOLCHAIN_FILE" : " cmake/toolchain-arm-none-eabi.cmake " ,
// Determines the application. You can choose between:
// LoRaMac (Default), ping-pong, rx-sensi, tx-cw.
"APPLICATION" : " ping-pong " ,
// Select LoRaMac sub project. You can choose between:
// periodic-uplink-lpp, fuota-test-01.
"SUB_PROJECT" : " periodic-uplink-lpp " ,
// Switch for Class B support of LoRaMac:
"CLASSB_ENABLED" : " ON " ,
// Select the active region for which the stack will be initialized.
// You can choose between:
// LORAMAC_REGION_EU868, LORAMAC_REGION_US915, ..
"ACTIVE_REGION" : " LORAMAC_REGION_EU868 " ,
// Select the type of modulation, applicable to the ping-pong or
// rx-sensi applications. You can choose between:
// LORA or FSK
"MODULATION" : " LORA " ,
// Target board, the following boards are supported:
// NAMote72, NucleoL073 (Default), NucleoL152, NucleoL476, SAMR34, SKiM880B, SKiM980A, SKiM881AXL, B-L072Z-LRWAN1.
"BOARD" : " NucleoL476 " ,
// MBED Radio shield selection. (Applies only to Nucleo platforms)
// The following shields are supported:
// SX1272MB2DAS, SX1276MB1LAS, SX1276MB1MAS, SX1261MBXBAS(Default), SX1262MBXCAS, SX1262MBXDAS, LR1110MB1XXS.
"MBED_RADIO_SHIELD" : " SX1261MBXBAS " ,
// Secure element type selection the following are supported
// SOFT_SE(Default), LR1110_SE, ATECC608A_TNGLORA_SE
"SECURE_ELEMENT" : " SOFT_SE " ,
// Secure element is pre-provisioned
"SECURE_ELEMENT_PRE_PROVISIONED" : " ON " ,
// Region support activation, Select the ones you want to support.
// By default only REGION_EU868 support is enabled.
"REGION_EU868" : " ON " ,
"REGION_US915" : " OFF " ,
"REGION_CN779" : " OFF " ,
"REGION_EU433" : " OFF " ,
"REGION_AU915" : " OFF " ,
"REGION_AS923" : " OFF " ,
"REGION_CN470" : " OFF " ,
"REGION_KR920" : " OFF " ,
"REGION_IN865" : " OFF " ,
"REGION_RU864" : " OFF " ,
"USE_RADIO_DEBUG" : " ON "
}
}

./build/src/apps/ping-pong/ Contoh-contoh periodic-uplink-lpp dan fuota-test-01 memungkinkan untuk mengatur ulang penyimpanan NVM melalui antarmuka serial.
Untuk mengatur ulang konten NVM, seseorang harus menekan tombol keyboard ESC + N pada terminal serial.
Terminal serial akan menunjukkan yang berikut setelah kunci keyboard ESC + N dipukul. Setelah mengatur ulang perangkat akhir, NVM bersih akan digunakan.
ESC + N
NVM factory reset succeed
PLEASE RESET THE END-DEVICE