戰爭洛拉·伯德豪斯(Lora Birdhouse)項目
尋找一種不同的推文方式嗎?該項目探討了使用低成本/低頻帶寬度LORA收音機來構建可以在城鎮周圍傳遞短信的簡單網格網絡的潛力。這種類型的網絡對於可以利用Birdhouse Repeater站的全自動(碳中性)性質的緊急通信或其他應用程序可能很有用。該項目由W1TKZ Wellesley業餘無線電協會的成員進行。該設計可用於業餘(非商業)目的,本著HAM社區之間的實驗和知識共享的精神。至少,我們正在為我們地區的一些幸運鳥創造房屋。
如果您有技術問題,請聯繫Bruce Mackinnon(KC1FSZ)。我對家庭釀造的無線電項目感興趣,其中許多可以在我的QRZ頁面上找到。
Wiki項目位於這裡。
這隻鳥會飛嗎?讓我們找出答案!

設計概述
網絡上的節點是自主的,太陽能驅動的鳥類,每個鳥類都包含 +20dbm/100MW無線電(Semtech SX1276)。這些鳥屋將在合理的天氣條件下運行24x7。 USB連接的桌面節點用於通過串行連接從計算機訪問網絡。互聯網網關節點也正在開發中。
洛拉範圍實驗已被廣泛證明。您的里程會因地形,高架站等而有很大的不同。測試表明,郊區1公里的鏈接範圍是合理的。
選擇Birdhouse包裝是為了更輕鬆地融入周圍環境。我們希望這個項目對環保。
低功率,太陽能設計使鳥屋具有100%自主。這使得在任何具有良好陽光照射且可見良好的位置安裝中繼器站相對容易。
台式電台型號由USB連接提供動力,沒有電池/太陽能組件,但從RF/固件的角度來看與Birdhouse Repeacer相同。
該鳥屋目前由ESP32微控制器運行,儘管這一決定正在考慮。正在製作一個更強大的STM32原型。
商品組件被用來使鳥屋的成本降至最低。我們的目標是將節點成本保持在50美元以下。
該軟件支持一個簡單的消息路由協議,該協議允許數據包在房屋之間“跳”以達到其最終目的地。其他控制數據包用於提取工程數據並控制消息路由。
鑑於這是一種實驗技術,目前尚未獲得FCC第15部分認證,因此使用了33厘米火腿頻段(902-928 MHz)。所有節點必須由FCC許可業餘/HAM無線電運營商根據第97部分規則安裝/操作。
馬薩諸塞州韋爾斯利(Wellesley)建造了5個站點的概念驗證網絡。郵件已成功地在整個網眼中來迴路線,包括在大約1公里處分開的鳥類之間的啤酒花。天線高度與往常一樣重要。這些房屋受到新英格蘭惡劣的天氣狀況,包括雪,冰,延長的多雲天氣和零下溫度。關於系統再次出現在它們的樹上時,這是一個懸而未決的問題!

目前正在計劃階段處於15個節點Beta網絡。這包括對硬件和固件的升級。
如果您對使用商業硬件構建的高速網絡網絡感興趣,那麼這個項目可能不是您的事。請看一下AREDN(https://www.arednmesh.org)。 AREDN團隊做得很好。
體系結構概述

如何訪問網絡?
用戶使用裝有USB串行端口的台式機訪問網絡。台式機站與鳥舍中繼器完全相同的固件。序列命令協議用於在網絡上發送和接收消息。桌面站具有所有必需的RF組件,並且是網絡上成熟的節點(帶有自己的地址)。桌面節點不使用太陽能/電池安裝,因為它們可以從USB端口供電。
當前,用戶使用在PC上運行的常規串行終端與網絡進行交互(即膩子或類似的內容)。無需特殊軟件。 Python桌面用戶界面計劃改善人體工程學。序列命令在後面的部分中進行了描述。
期望用戶將在其屬性上的某個優勢地點安裝一個鳥屋站,以加入網絡並增加網絡覆蓋面積。這意味著桌面站所需的視線要重要得多 - 它是網絡上的“短跳”。
另一個選擇是使用更長的進料線將桌面站連接到優質天線,並避免需要兩個站。兩種配置都可以。
桌面站的包裝尚未完成。如下圖所示,目前將零件安裝在一塊木頭上。包裝中包括一個諧振垂直天線和USB電纜。

我怎麼能得到一個鳥屋?
作為俱樂部項目的一部分,硬件/固件仍在完善。任何想要自己建造鳥屋的人都可以在此網站上提供所有固件,KICAD文件和木工尺寸。
在測試了下一次硬件迭代(V2)之後,我們將以套件形式提供組件。
如果您居住在高海拔高度的戰略地點,並且想要一個經過完整的,經過測試的電台,我們將很樂意免費提供一個。 :-)
請聯繫網絡管理員,以分配網絡上的節點地址。
我需要成為火腿才能使用網絡嗎?
是的。我們使用的無線電模塊未經第15部分認證,因此必須使用第97部分(業餘)規則運行。我們目前正在對非漢姆ISM第15部分網絡版本進行研究,以使無許可用戶可以輕鬆加入樂趣。如果有人在這方面具有專業知識,請在Github的討論中添加評論。
根據FCC規則,第15部分和第97部分網絡不會互相交談。
協議文檔
該網絡在33厘米(902-928 MHz)業餘頻段上運行。我們以906.5 MHz運行,該MHz位於33厘米的ARRL頻段計劃的數字部分。根據新英格蘭頻譜管理委員會(NESMC,https://www.nesmc.org/)902 MHz頻段計劃,此頻率在樂隊的“混合用途”部分中。我們的頻率已在NESMC數據庫中註冊,以確保與該頻段的其他用途進行適當的協調。
LORA消息有效載荷在此處記錄在符合FCC規定的情況下。設計中的任何地方都沒有使用加密。此處包含的信息是聽眾需要解釋消息的全部內容。
使用標準LORA物理數據包格式。洛拉參數的詳細信息:
- 125K帶寬模式
- 啟用CRC,4/5編碼率
- 使用明確的標頭模式
- 洛拉擴展因子9
- 12個符號序言
這是Semtech文檔中物理層數據包格式的摘要:

可以在此處找到對Lora編碼的更詳細的解釋。
上面的有效載荷包含一個36字節的標題,然後包含可變長度數據包格式。細節:
- 36字節固定尺寸。
- 版本(PV)為2(目前)。
- 數據包類型(PT)描述了消息的性質/處理。有關下麵類型的更多信息。
- 數據包ID(PID)用於確認和復制數據包消除。 16位整數(Little Endian)。
- 呼叫符號為ASCII格式,並根據需要用空格填充。
- 源/目標地址是16位整數(小恩迪安)。有關下面地址的更多信息。

車站地址方案
每個站都分配了一個16位地址。一些地址具有特殊意義:
- 0x0000:未使用
- 0x0001至0xFFEF:用於網絡上的普通電台。
- 0xFFF0至0xFFFD:用於管理/維護目的的未路由站。
- 0xfffe:網關站到其他網格
- 0xffff:廣播地址
數據包類型
數據包類型的解釋如下:
- 0:未使用
- 1:通用確認數據包,用於可靠交付。
- 2:電台ID/信標包。
- 3:ping請求。
- 4:ping響應(乒乓球)。
- 5:電台工程數據請求。
- 6:電台工程數據響應。
- 7:網絡路徑測試請求。
- 電台將在通過網絡路由時,將其節點ID和最後一個跳的RSSI數據添加到此消息中。
- 8:網絡路徑測試響應。
- 電台將在通過網絡路由時,將其節點ID和最後一個跳的RSSI數據添加到此消息中。
- 9:設置安全種子。用於建立用於驗證特權請求的種子。
- 10:設置路線請求。 (特權操作)
- 11:獲取路線數據請求。
- 12:獲取路線數據響應。
- 13:發現路線請求(未來使用)。
- 14:發現路線響應(未來使用)。
- 15:電台重置請求。 (特權操作)
- 16:設置電台時鐘請求。 (特權操作)
- 17:重置工程計數器請求。
- 18:固件更新請求(未來使用,特權)
- 19-31 :(保留)
- 32:常規文本流量。
- ASCII,自由文本有效載荷。可變大小,最大大小為128個字節。
- 33:優先/緊急文本流量。
- ASCII,自由文本有效載荷。可變大小,最大大小為128個字節。
- 34:常規二進制/數據流量。
- 35:優先/緊急二進制/數據流量。
- 36:車站警報。用於發出可聽見的警報,等等。
確認/刪除
大多數數據包類型都在每個跳躍上都得到確認。數據包類型1用於此目的。請注意,這並不意味著確認已到達原始發件人,而是意味著每個站都會獲得一個ACK,以表明數據包已被移交給路線路徑的下一個站。
確認數據包(類型1)和站ID數據包(類型2)未確認。
電台將維護每個節點接收數據包的計數器。重複的數據包將根據數據包ID計數器丟棄。當計數器包裹時,將使用窗口來避免混淆。
電台工程數據包
該數據包返回用於監視電台狀態的技術數據。格式是以下:
- 0-1:固件版本
- 2-3:MV中的電池電壓
- 4-5:MV中的面板電壓
- 6-9:幾秒鐘的正常運行時間
- 10-13:時間(以自時代以來以秒為單位)
- 14-15:啟動計數
- 16-17:睡眠數量
- 18-19:接收數據包計數
- 20-21:路由錯誤計數
- 22-23:溫度(安裝選項時)
- 24-25:濕度(安裝選項時)
- 26-27:設備類
- 0:未指定
- 1:戰爭桌面ESP32
- 2:戰爭鳥屋ESP32
- 3:戰爭網格網關STM32
- 4:戰爭互聯網網關STM32
- 5:戰爭桌面STM32
- 6:戰爭Birdhouse STM32
- 28-29:設備修訂
- 30-31:錯誤節點接收數據包計數
2個字節和4個字節整數的格式很小。
硬件概述(電子)
鳥舍中繼器原型(外部視圖):

鳥舍中繼器原型(內部電子視圖):

KC1FSZ Qth的塔式鳥屋中繼器原型:

已經開發了一個自定義PCB(V2)來改善集成,並使沒有SMD焊接能力的套件製造商更容易。該板還提供了一個SMA連接器,以使天線實驗更容易。

硬件筆記
- 在太陽能電池板和電池上進行電壓讀數。
- V2示意圖可以在這裡找到。
硬件概述(木製品)
中繼器節點被包裝在標準化的鳥屋外殼中,該設備設計用於容易組裝。
需要六塊木頭。使用木螺釘連接組件。該鳥屋對於小鳥類物種充分起作用。
根據在部署初始網絡的北緯42度的最佳生成的最佳最佳配置,以32度的角度傾斜屋頂。可能需要針對其他位置進行調整。
鳥屋中繼器原型的木材零件:

樹木安裝的樹木安裝的中繼器原型安裝在樹下/外坡道內的樹木內:

一個中繼器站安裝在馬薩諸塞州Needham的北山頂部。

木材切割清單:
- 1“ x5”名義股(實際4.5”)
- 1“ x6”名義股(實際5.5”)
- 背面:10英寸長
- 底部:6英寸長
- 屋頂:7 1/4英寸長,桌子上有32度的斜角。 (將圍欄設置為6 1/2”)
- 正面:3 3/4“最大長度,桌子鋸上有32度斜角。孔1 1/2”直徑。 (使用側面測量此PEICE,並偶然地調整圍欄)。
使用電動工具時,請謹慎行事!
軟件概述
Lora軟件完全是自製的 - 沒有使用現成的驅動程序。這意味著更多的工作和更多的學習。
所有節點都支持用於與網絡交互的串行接口,但這僅連接到桌面節點。
菲爾·詹森(Phil Jensen)使用這個非常好的項目實施了串行指揮處理器。
目前正在使用靜態路由機制。每個節點的路由表可以遠程更改。動態路由將在未來的階段開發。
開發人員信息
有關開發,IDE設置等的信息,請參閱該項目Wiki。
相關技術
- AREDN(業餘無線電緊急網絡網絡):一個非常酷的系統,它利用WiFi技術創建支持緊急通信的離網IP網絡。這些傢伙的速度要高得多,並且正在使用更複雜的硬件。 Wars Birdhouse項目使用了不同的無線技術,並且與Arden系統無法互操作。請參閱https://www.arednmesh.org。
- Loraham(https://github.com/travisgoodspeed/loraham):一個很棒的開放源項目,探索了一些類似的領域。該項目目前似乎是不活動的。
- Lorawan:使用恆星拓撲組織的洛拉電台的酷系統。每個恆星的樞紐都是通往公共互聯網的門戶。該技術使用加密,對於業餘項目不合法。
- DASH7無線網絡(https://en.wikipedia.org/wiki/dash7)。使用加密,因此對第97部分不利,但有趣。
參考資料
- VE2DBE的無線電手機:https://www.ve2dbe.com/english1.html是一個理解本地區域/LOS傳播的好程序。
- Ubiquity鏈接計劃者對了解潛在站點之間的土地特徵非常有幫助:https://link.ui.com/#.2q
- Lora規則,法規和術語:https://lora.readthedocs.io/en/latest/#rules-and-negulation
- LORA無線電模塊(RFM95W)的參考:https://www.hoperf.com/modules/lora/rlfm95.html
- LORA調製信息:https://www.frugalprototype.com/wp-content/uploads/2016/08/an1200.22.pdff
- 參考18650電池的參考:https://cdn.sparkfun.com/datasheets/prototyping/icr18650%202600mah%20datasheet.pdf
- LDO電壓調節器的參考:https://ww1.microchip.com/downloads/en/devedoc/mcp1700-low-quiescent-current-current-current-ldo-20001826e.pdf
- STM32L031 MicroController的參考:https://www.st.com/resource/en/datasheet/stm32l031k6.pdf
- STM32L0硬件設計指南:https://www.st.com/resource/en/application_note/an4467-getting-started-with-with-stm32l0xx-hardware-deevelopment-nvelopment-stmicroelelectronics.pdf
- ESP32 D1 mini的參考:https://wiki.csgalileo.org/_media/projects/internetofthings/d1_mini_esp32_-_pinout.pinout.pdf
- ESP32廣告轉換器中糾正非線性的文章:https://github.com/e-tinkers/esp32-adc-calibrate
- 用於創建通往IP網絡的橋樑的W5500的數據表:https://cdn.sparkfun.com/datasheets/dev/arduino/shields/shields/w5500_datasheet_v1.0.2_1.2_1.pdf
- 一篇非常有趣的論文,談論洛拉物理層的反向工程:https://www.epfl.ch/labs/tcl/wp-content/uploads/2020/2020/02/reverse_eng_eng_report.pdf
詳細的零件清單
(跟隨)
連接筆記
第1列
第0行-GND行1-供應GND第2行2 -IO33(電池電壓感)第3行-IO34(面板電壓感)第4行4-供應 +VCC行5- Pannel Row 6 -Pannel Row 7- +3.3V
第2列
第0行1第2行2 -IO19(SPI MISO)第3行-IO23(SPI MOSI)第4行-IO18(SPI SCK)第5行5 -IO5(SPI NSS)第6行6 -IO26(無線電RST)RST ROW 7 -IO4(無線電DIO0)(無線電DIO0)
進一步實驗的區域
硬件2.0(在過程中)
- 完全集成的PCB使用表面安裝組件
- 切換到超低功率微處理器:STM32L031
- SMA連接器以進行更健壯的天線實驗
硬件(未來)
- 用升壓轉換器替換線性調節器,以改善電池使用情況。
- 完成鳥屋的包裝,以確保防風雨和與鳥類居住的完全兼容。
- 便宜的天線。
- 獲得更長距離鏈接的天線。
- RF開關允許在兩個天線之間進行動態切換。這可能有助於A/B測試,或可能具有方向性/增益天線的站點,用於軀乾和用於局部進入的Omni方向天線。
- 帶有LCD RSSI顯示屏的手持式電台,用於偵察潛在的站點位置。
軟體
- 使用更積極的睡眠提高了功率效率。利用SX1276接收中斷或通道活動檢測(CAD)中斷,以使系統在不活動期間入睡。
- 動態路線發現。目前,路線是靜態的,但是可以對空中進行修改。
- 在節點離線時存儲並向前存放。
- 消息順序以避免重複交付。
- 網絡時間同步。
- 用Python編寫的更易於用戶友好的桌面應用程序。這將使工作的休閒用戶更加輕鬆。最終用戶與網絡互動。
- 網絡安全。
- 空中(OTA)軟件升級。
相關的FCC法規/註釋
- 第97.311部分定義了傳播(SS)規則。
- 第97.303(n)部分定義了33厘米頻段的規則。基本上,火腿必須與其他服務共享樂隊。德克薩斯州,新墨西哥州,科羅拉多州和懷俄明州也有地理限制。
- 第97.309(b)部分討論了未指定的數據排放代碼。基本上,所有格式都需要清楚地記錄下來。見上文。
- 該公司進行認證,並提供有關認證過程的詳細指南。
宣傳
- 有關該項目的一篇文章(與Dan Brown W1Dan合著)出現在2023年7月的ARRL QST雜誌的俱樂部電台專欄中。發布此書真是太好了。
- 可以在此處找到一篇不錯的Hackaday文章。我發現這篇文章很有趣,因為它暗示我們的網絡可以在互聯網降低時用作備份。我沒有嘗試過通過Lora流式傳輸Netflix,但是我猜想視頻質量不會很好。 :-)
- 零重錄通訊在2023年6月涵蓋了該項目。史蒂夫·斯特羅(Steve Stroh N8GNJ)在這篇廣泛閱讀的新聞通訊方面做得很好,我很榮幸在他的文章中被稱為“嚴重誤解”和“短視”。正如Lindsay Lohan曾經說過的那樣,沒有壞宣傳的事情!
版權信息
版權(C)2023 -Bruce Mackinnon KC1FSZ
這項工作涵蓋了GNU公共許可證(V3)的條款。請諮詢許可證文件以獲取更多信息。
業餘無線電社區正在為非商業用途提供這項工作。禁止重新分配,商業用途或出售任何部分。