libp2p-lora-transport memungkinkan node libp2p untuk berkomunikasi melalui lora. Anda dapat menggunakannya sebagai "protokol" di mana node libp2p dengan jembatan Lora yang terpasang dapat memungkinkan rekan yang berwenang membaca/menulis data dari/ke jembatan Lora. Misalnya, ini dapat digunakan untuk memungkinkan node libp2p untuk melaporkan data sensor ke gateway Lorawan. Kemungkinan lain adalah untuk memungkinkan beberapa node libp2p yang berbeda untuk menyampaikan data melalui node libp2p dengan jembatan Lora yang terpasang.
Anda akan memerlukan instalasi C yang valid, GO 1.13+, dan perpustakaan WiringPi diinstal.
Perangkat keras berikut telah diuji:
arduinobridgeincludesrc/draginoMenggunakan Arduino Mega + Dragino Lora GPS Shield, sebuah sketsa yang disebut "Lora Bridge" dikerahkan ke Arduino. Sketsa ini bertanggung jawab atas dua hal:
Host LIBP2P dengan koneksi langsung ke antarmuka serial Arduino mendaftarkan penangan jembatan yang terhubung ke Arduino. Penangan jembatan ini membuat dua saluran, satu untuk menulis data ke antarmuka serial, satu untuk membaca data di luar antarmuka serial. Goroutine kemudian diluncurkan, yang akan menarik data dari saluran tulis, dan menyalurkannya ke antarmuka serial. Jika tidak ada data yang tersedia untuk ditulis, kami kemudian melihat apakah ada data yang dapat dibaca dari antarmuka serial. Jika kita bisa, kita membaca data, dan mengirimkannya melalui saluran baca. Jika tidak ada yang menunggu untuk menerima dari saluran, data hanya dibuang.
Jembatan akan memastikan bahwa semua pesan yang keluar dari antarmuka serial diformat dengan benar (dibungkus dengan carrats ^ ), jika pesan tidak dibuang.
Ada dua mode operasi:
Sama sekali tidak ada keamanan yang diberikan dalam implementasi ini. Data ditangani sebagaimana adanya, dan jika data itu ada di ClearText, maka data akan ditransmisikan melalui radio LORA di ClearText untuk siapa saja yang mendengarkan Snoop on. Itu berarti jika Anda ingin data menjadi pribadi melalui jembatan ini, Anda harus mengenkripsi. Jika menggunakan jembatan ini sebagai transportasi (mode non protokol) maka disarankan untuk menggunakan kawanan libp2p pribadi karena itu memberikan lapisan keamanan dasar yang cukup baik, tanpa harus mengenkripsi data secara manual melalui jembatan. Jika menggunakan jembatan dalam mode protokol ini berarti Anda perlu mengenkripsi pesan secara manual.
Dalam mode protokol, rekan resmi dapat membaca/menulis data melalui jembatan, jadi pastikan Anda hanya mengizinkan akses rekan tertentu.
Antarmuka serial pada Arduino digunakan untuk memungkinkan akses node libp2p kami ke modul LORA. Data kapan saja dikirim dari Arduino ke simpul libp2p, pesan dibungkus ^ . Misalnya, haruskah kita ingin mengirim pesan ke simpul Lora lain yang hello kita harus mengirim ^hello^ . Mengontrol Jembatan Lora dilakukan melalui "karakter kontrol" huruf tunggal. Karakter kontrol saat ini adalah:
1 - Sakelar Mode DebugSemua kode non firmata dilisensikan di bawah AGPLV3