各位先進,前輩們好
我目前需要使用RTL8722DM 搜尋周邊Wi-Fi AP的MAC值
我使用Arduino IDE Library範例中的ScanNetwork發現,必須要使用WiFi.begin(ssid, pass) 的Fuction連上AP後才能用WiFi.BSSID(bssid)讀取該AP的MAC值
但小弟我因研究需要在不連上AP時就取得該AP的MAC.
而我目前發現,如果將掃描到AP的SSID一樣用 WiFi.begin(ssid, pass) 執行但密碼錯誤沒有連線上時,在序列埠監控視窗可以看見[RTL8721D[Driver]: start auth to 88:d7:f6:82:7a:44]的資訊.
很驚人的發現這就是沒有連上的AP的MAC.
但問題是小弟我要怎麼才能將這個MAC值讀出來存放在變數裡面呢?
未連上AP時,WiFi.BSSID(bssid)是讀不到東西的…
還請各位先進前輩幫幫小弟.
以下是圖片支援
1 Like
Hi @_N16094409
看樣子你是在用Arduino SDK吧? 截圖中的log其實都不是從Arduino層打印出來的,而是RTL8722DM的Wi-Fi driver打印出的log,因此在Arduino層面上這麽操作不大容易,或許你不怕麻煩的話,可以看一下RTL8722DM的Realtek Standard SDK的Wi-Fi api, 裏面有一些api或許你會感興趣,
/******************************************************************************
* Copyright (c) 2013-2016 Realtek Semiconductor Corp.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
******************************************************************************
* @file wifi_conf.h
* @author
This file has been truncated. show original
Standard SDK的上手教程在這裏,
https://www.amebaiot.com/en/ameba-sdk-getting-started-8722/
1 Like
Hi
謝謝前輩給的資訊!
看樣子我是不是沒辦法透過修改Library將MAC存在Arduino裡的變數?
若是要用前輩給的SDK,我們是否要用RTL8722在IAR跟KEIL的ScanNetwork程式?
(我目前沒有IAR或Keil的ScanNetwork相關程式…)
Hi @_N16094409
不會用到IAR或者Keil,目前開源的Standard SDK最容易的上手方法是使用GCC,你可以通過Cygwin來安裝make,使用GCC release裏面的project來build firmware,方法已經在上一個post裏面提到了,就是這個
1 Like