fa.Scan()を用いて、周囲のアクセスポイントの詳細情報を取得し記録します。
Google Geo Location APIを使うことを前提に
#内部記録時間
MACアドレス,RSSI,CH
MACアドレス,RSSI,CH
MACアドレス,RSSI,CH
MACアドレス,RSSI,CH
の形式で延々と記録します。
FlashAir開発ボードの Airioに挿してご利用ください。
LED表示が記録状態を表し、スイッチで記録の有無を選択できます。
白: 起動中
赤: 記録停止中
青: スキャン中
緑: 記録後待機中
紫: 内部エラー(errorファイルにエラー内容がテキストで記録されます)
SDカードスロットに差し込みファイルの読み書きをしている最中は迅速に処理を中断します。
Google Geo Location APIを使うことを前提に
#内部記録時間
MACアドレス,RSSI,CH
MACアドレス,RSSI,CH
MACアドレス,RSSI,CH
MACアドレス,RSSI,CH
の形式で延々と記録します。
FlashAir開発ボードの Airioに挿してご利用ください。
LED表示が記録状態を表し、スイッチで記録の有無を選択できます。
白: 起動中
赤: 記録停止中
青: スキャン中
緑: 記録後待機中
紫: 内部エラー(errorファイルにエラー内容がテキストで記録されます)
SDカードスロットに差し込みファイルの読み書きをしている最中は迅速に処理を中断します。
function main()
sleep(5000)
s,d = fa.pio(0x00, 0x00)
if(s == 0)then
error("SD used!")
end
s,d = fa.pio(0x1E, 0x0E) --White
fa.Disconnect()
sleep(3000)
while true do
s,d = fa.pio(0x1E, 0x00)
if(bit32.band(0x01,d) == 0)then
s,d = fa.pio(0x1E, 0x02) --Red
else
s,d = fa.pio(0x1E, 0x04) --Blue
f=io.open("/log.txt","a")
f:write("#",os.clock()*1000,"\r\n")
count = fa.Scan()
ssid, other = fa.GetScanInfo(num)
for i=1,count do
ssid,other = fa.GetScanInfo(i)
--保護実行で書き込み
pcall(function()
msg = other["BSSID"] .. "," .. other["RSSI"] .. "," .. other["CH"]
f:write(msg,"\r\n")
end)
end
f:write("\r\n")
f:close()
s,d = fa.pio(0x1E, 0x08) --Green
end
collectgarbage()
sleep(1000)
end
end
local s, r = pcall(main)
fa.pio(0x1E, 2+4) --エラー発生時は紫
f=io.open("/error","w")
f:write(r)
f:close()

コメントをかく