所以,我們已經有了充當無線(WIFI)路由器作爲我們公司一個更大的機器人項目的一部分,一個小的嵌入式Linux系統。這其實並不重要,但它配置爲5.8 GHz無線A(保持它與其他東西干擾),一個卡和900MHz的講話讓我們一〜3公里範圍另一個特別的卡片。無線接口RSSI(信號強度)的號碼編程與hostapd Linux呢?
我們的控制平板電腦連接到5.8,並且數據包被中繼到900MHz的機器人。因此,平板電腦和機器人都使用路由器盒作爲接入點,所以我們正在運行hostapd。作爲我們用戶界面的一部分,我們希望從系統的不同組件收集RSSI(信號強度/噪聲/等)信息,並將其全部顯示出來。
機器人(也運行linux)通過讀取/ proc/net/wireless然後將它讀取的數字發送到控制平板電腦來完成。但是,在路由器盒上,如果卡配置爲AP模式(hostapd正在運行),/ proc/net/wireless對於兩個接口都有線路,但所有值均爲0.
如果我執行iw站轉儲它吐出一些RSSI數字,但我並不想訴諸於這個輸出。我(恕我直言)相當competant C程序員(我寫了一個實時內核),我想知道什麼是最好的方式來獲得這些信息從內核。我知道一點關於使用WEXT ioctl接口,但是我最近發現API被棄用,並且新的無線配置/管理系統正在逐步進入。
我可以逃避寫一些使用WEXT的東西,因爲我們並沒有讓我們的嵌入式Linux安裝更新到最前沿。然而,如果有人可以指示我一個教程/資源,無論新的API將是什麼,我會很感激。或者,如果有一種方法,使的/ proc /淨/無線精美,hostapd的工作,我會拿太:P