Этот репо реализует больше, чем основные операции SX1276, в то время как Learn_sx1276 показывает все основы.
SX1276
Библиотека Micropython для Radio Modem SX1276
Функции
- Слой Mac (полумуплекс).
- Один SX1276 может отправить пакет «REQ» (по блокирующим способом) и ожидать, что указанный SX1276 ответит пакетом «ACK». Этот процесс обрабатывается этой библиотекой.
- Один SX1276 может отправить пакет «BRD» (неблокирующим образом) и не ожидать ответа «ACK».
- Реализовать FHSS (первое?)
- FCC требует частоты, если время задержки превышает пороговое значение на 400 мс.
- Большой коэффициент распространения и узкая полоса пропускания могут значительно продлить время задержки, так что для передачи большого пакета необходимо прыгать в FREQ.
Использование
- Загрузить lora.py в MCU (Heltec Wi -Fi Lora 32 V2)
- Запустить sender.py и receiver.py на двух отдельных MCU
Моя разработка среда
- Два MCU с SX1276 (ESP32: Heltec Wifi Lora 32 V2)
- Flash MCU с микропитоном
- Подключите два MCU к машине Linux с VSCODE через USB
- Установите расширение Pico-w-go для VSCODE
- Откройте папки отправителя/приемника в двух окнах Vscode
- Настроить проекты отправителя/получателя для Pico-go
- Укажите «Устройство ручного компонента» в Pico-W-Go и перезагрузите Pico-W-Go
- Играть с командами Pico-w-go
Консоль вывода образца кода

FHSS
- Чтобы доказать точку частоты, я использую RTL-SDR для мониторинга спектра. В следующей диаграмме водопада мы видим сигнальный хмель между 914 и 916 МГц, как я запрограммировал его.

- FHSS не требуется, если сообщение короткое. Например, пакет 29bytes может быть передан при 400 мс, заданные параметры {SF: 10, BW: 125 кГц, CR: 4/5, заголовок: явный, преамбула: 6}.

Загрузите приведенный выше калькулятор эфирного времени
Примечание
- Функция FHSS может быть отключена только, указав одну частоту в каналах 2HOPPING / FHSS_LIST.
- До TX не имеет смысла определять обнаружение активности канала (CAD), потому что SX1276 соответствует только неуловимым преамбам, которые длились несколько миллисекунд. Нет хорошего решения, чтобы слушать перед разговором или CSMA.