EBYTE E22系列Lora模塊的微python類
受支持的EBYTE E22模塊基於Semtech SX1262/SX1286芯片組,可用於400 MHz(410.125 ... 493.125)和900 MHz(850.125 ... 930.125)頻率範圍,並提供22 dbm Max。 TX功率。
簡單的UART接口用於控制設備。
ebyte數據表:
E22-900T22D
E22-400T22D
Lorae22類基於Effevee的Lorae32類:https://github.com/effevee/lorae32
傳輸前連接適當的天線!
使用前,請檢查您的本地法規是否使用此頻率範圍。例如,在歐洲大部分地區,最大允許的TX功率低於默認值22 dbm!可能還會有其他限制,例如對傳輸的佔空比限制(這是在使用設備期間跨越總時間的一部分)!

有關引腳配置,請參見代碼。
注意: Lorae22測試代碼與E32測試代碼不同於使用的UART和AUX PIN!此外,Lorae22使用“正常模式”,而Lorae32在SendMessage()中使用“喚醒模式”。
| 傳輸模式 | TX(addr -ch) | rx(addr -ch) | msg(addr -ch) | 發射器代碼 | 接收器代碼 |
|---|---|---|---|---|---|
| 透明的 | 0x0001-0x02 | 0x0001-0x02 | 0x0001-0x02 | testsende22_transparent.py | testRecve22_transparent.py |
| 固定P2P | 0x0001-0x02 | 0x0003-0x04 | 0x0003-0x04 | testsende22_p2p.py | testRecve22_p2p.py |
| 固定廣播 | 0x0001-0x02 | 0x0003-0x04 | 0xffff -0x04 | testsende22_broadcast.py | testRecve22_broadcast.py |
| 固定監視器 | 0x0001-0x02 | 0xffff -0x04 | 0x0003-0x04 | testsende22_monitor.py | testRecve22_monitor.py |
每個節點以固定的間隔發送包含LED控制值的固定間隔,該消息根據按鈕的狀態。
之後,它檢查收到的消息。如果有LED控制值的消息,則將相應地切換LED。
可以根據陣列ADDR和CHAN中的需要設置本地節點和對等節點的傳輸模式(地址/通道配置)。
node0.py和node1.py的代碼是相同的,除了變量我和peer的設置。
| Node0 | Node1 |
|---|---|
| node0.py | node1.py |
Lora發射器以固定的間隔發送包含其芯片ID和消息序列號的字符串。
LORA接收器打印/日誌<Timestamp>,<Latitude>,<頻率>,<Altitude>,<rssi>在預定的間隔中。
接收器的位置和時間戳是從GPS接收器通過UART接收到的NMEA消息中解碼的。為此,使用了微拷貝。
如果有的話,將通過另一個UART從Ebytee22 Lora收發器模塊收到傳入的LORA消息。如果在一定時間內無法收到洛拉發射器的預期消息,則假定RSSI值為-255 dbm,表明LORA無線電鏈路的丟失。
元組<Timestamp>,<latitude>,<頻率>,<Altitude>,<rssi>僅在有效的位置可用時才打印並選擇寫入日誌文件。
如果啟用了日誌記錄,則使用格式log_ <8_random_hex_digits _>。 csv的文件名是在電源或重置後創建的。日誌文件寫入Micropython的內部文件系統。必須通過按鍵明確停止日誌記錄,否則該文件不能正確關閉,並且將被損壞/空。
兩個LED分別表示GPS修復的狀態和Lora鏈接。
| 發射機節點 | 接收器節點 |
|---|---|
| lora_tx.py | lora_rssi_logger.py |
日誌文件可以在主機上從CSV -Format轉換為合適的格式(例如GPX或KML)。請參閱RSSI_CSV_TO_KML.PY- KML輸出文件提供的RSSI值作為擴展數據,將在GoogleArth中的高程圖顯示。 (用法: rssi_csv_to_kml.py log_deadbeef.csv >log_deadbeef.kml )
注意:該圖僅作為一個例子 - 記錄間隔應該較短,並且以後對記錄策略進行了修改。