Repo ini mengimplementasikan lebih dari sekadar operasi SX1276 dasar sementara belajar_sx1276 menunjukkan semua dasar.
SX1276
Perpustakaan Micropython untuk SX1276 LORA Radio Modem
Fitur
- Lapisan Mac (setengah dupleks).
- Satu SX1276 dapat mengirim paket "Req" (dengan cara pemblokiran) dan mengharapkan SX1276 tertentu untuk merespons dengan paket "ACK". Proses ini ditangani oleh perpustakaan ini.
- Satu SX1276 dapat mengirim paket "BRD" (dengan cara yang tidak diblokir) dan tidak mengharapkan balasan "ACK".
- Menerapkan FHSS (pertama?)
- FCC mengamanatkan frekuensi hopping jika waktu tinggal berada di atas ambang batas 400ms.
- Faktor penyebaran besar dan bandwidth sempit dapat secara signifikan memperpanjang waktu tinggal sehingga freq hopping diperlukan untuk mentransmisikan paket besar.
Penggunaan
- Unggah lora.py ke mcus (heltec wifi lora 32 v2)
- Jalankan sender.py dan receiver.py pada dua mcus terpisah
Lingkungan dev saya
- Dua MCU dengan SX1276 (ESP32: Heltec Wifi Lora 32 V2)
- Flash mcus dengan micropython
- Hubungkan dua MCU ke mesin Linux dengan vScode melalui USB
- Instasi ekstensi PICO-W-GO untuk vScode
- Buka folder pengirim/penerima di dua jendela vscode
- Konfigurasikan proyek pengirim/penerima untuk pico-w-go
- Tentukan "perangkat manual com" di pico-w-go dan restart pico-w-go
- Bermain dengan perintah pico-w-go
Output konsol kode sampel

FHSS
- Untuk membuktikan titik hopping frekuensi, saya menggunakan RTL-SDR untuk memantau spektrum. Dalam diagram air terjun berikut, kita melihat hop sinyal antara 914 dan 916MHz seperti yang saya programkan.

- FHSS tidak diperlukan jika pesannya singkat. Misalnya, paket 29bytes dapat ditransmisikan di bawah 400ms, yang diberikan parameter {SF: 10, BW: 125KHz, CR: 4/5, header: eksplisit, pembukaan: 6}.

Unduh kalkulator waktu udara di atas
Catatan
- Fitur FHSS dapat dimatikan dengan hanya menentukan satu frekuensi di saluran2hopping / fhss_list.
- Tidak ada artinya untuk melakukan deteksi aktivitas saluran (CAD) sebelum TX karena SX1276 hanya cocok dengan pembukaan yang sulit dipahami yang beberapa milidetik terakhir. Tidak ada solusi yang baik untuk didengarkan sebelum bicara atau CSMA.