0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

SoftAP模式簡介 SoftAP配網(wǎng)步驟詳細說明

嵌入式技術 ? 來源:嵌入式技術 ? 作者:嵌入式技術 ? 2022-05-30 09:05 ? 次閱讀

Wi-Fi 配網(wǎng),指由外部向 Wi-Fi 設備提供 SSID 和密碼(PSW),讓 Wi-Fi 設備可以連接指定的熱點或路由器,并加入后者所建立的 Wi-Fi 網(wǎng)絡。
對于具備豐富人機界面包括屏幕/鍵盤的設備,例如電腦手機,可以直接輸入 SSID/PSW 進行連接。
對于不具備豐富人機交互界面的物聯(lián)網(wǎng) Wi-Fi 設備,例如智能燈、掃地機器人等,則可以借助手機等智能設備,以某種配網(wǎng)方式將 SSID/PSW 傳遞該設備。

1. SoftAP模式簡介

設備備通過 softAP 方式創(chuàng)建一個 Wi-Fi 熱點,手機連接該熱點,再通過數(shù)據(jù)通道例如 TCP/UDP 通訊,將目標 Wi-Fi 路由器的 SSID/PSW 傳遞該設備,設備獲取后,即可連接 Wi-Fi 路由器從而連接互聯(lián)網(wǎng)。同時,為了對設備進行綁定,手機 App 可以利用該 TCP/UDP 數(shù)據(jù)通道,將后臺提供的配網(wǎng) Token 發(fā)送給設備,并由設備轉發(fā)至物聯(lián)網(wǎng)后臺,依據(jù) Token 可以進行設備綁定。本文檔主要指導您如何使用softAP 方式配網(wǎng)開發(fā)。

2.SoftAP配網(wǎng)步驟

1.騰訊連連小程序進入配網(wǎng)模式后,則可以在物聯(lián)網(wǎng)開發(fā)平臺服務獲取到當次配網(wǎng)的 Token。

2.配置WiFi 模式位softAP 配網(wǎng)模式。

3.小程序按照提示依次獲取 Wi-Fi 列表,輸入家里目標路由器的 SSID/PSW,再選擇設備 softAP 熱點的 SSID/PSW。

4.手機連接設備 softAP 熱點成功后,小程序作為 UDP 客戶端會連接 Wi-Fi 設備上面的 UDP 服務(默認 IP 為192.168.4.1,端口8266)。

5.小程序給設備 UDP 服務,發(fā)送目標 Wi-Fi 路由器的 SSID/PSW 以及配網(wǎng) Token。

6.如果2秒之內(nèi),未收到設備回復,則重復步驟5,UDP 客戶端重復發(fā)送目標 Wi-Fi 路由器的 SSID/PSW 及配網(wǎng) Token。(如果重復發(fā)送5次,都沒有收到回復,則認為配網(wǎng)失敗,Wi-Fi 設備有異常)

7.如果步驟5收到設備回復,則說明設備端已收到 Wi-Fi 路由器的 SSID/PSW 及 Token,正在連接 Wi-Fi 路由器,并上報 Token。此時小程序會提示手機也將連接 Wi-Fi 路由器,并通過 Token 輪詢物聯(lián)網(wǎng)后臺,來確認配網(wǎng)及設備綁定是否成功。

7.設備端在成功連接 Wi-Fi 路由器后,需要通過 MQTT 連接物聯(lián)網(wǎng)后臺,并將小程序發(fā)送的配網(wǎng) Token。

3.硬件設置與WIFI接入

1.登錄騰訊云平臺,進入交互開發(fā),選擇配網(wǎng)引導。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

2.選擇配網(wǎng)方式為AirKiss協(xié)議配網(wǎng)。點保存后即可生成二維碼。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_centerwatermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

3.微信小程序daunt配網(wǎng)引導。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

4.開始配網(wǎng),配置熱點信息。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

5.開始配網(wǎng),等待配網(wǎng)完成。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

? 6. 配網(wǎng)調(diào)試信息

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

4.程序設計

softAP模式配置

/*SoftAP配網(wǎng)*/
u8 ESP8266_SoftAP_MOde(void)
{
    u8 token[]="{"cmdType":2,"productId":"LA57WTHWi2","deviceName":"Smart_123","protoVersion":"2.0"}rn";//連接狀態(tài)信息
    char *p=NULL;
    char data[256];
    char buff[100];
    u8 i=0;
    u32 time1=0,time2=0;
    usart3_cnt=0;
    usart3_flag=0;
    while(1)
    {
        if(usart3_flag)
        {
            usart3_rx_buff[usart3_cnt]='?';
            printf("rx=%s",usart3_rx_buff);
            //+IPD,97,192.168.4.2,52021:{"cmdType":1,"ssid":"wbyq_wifi","password":"12345678","token":"df4a4c90abee98c9a443ae8ffd8cc16b"
            p=strstr((char *)usart3_rx_buff,"+IPD");
            if(p)
            {
                strcpy(data,p);//將接收到的數(shù)據(jù)拷貝一份保存
                p+=strlen("+IPD");
                p+=1;
                while(*p!=',' && *p!='?')p++;
                p++;//跳過字符',',獲取到IP地址起始位置
                i=0;
                //IP地址解析
                while(*p!=',' && *p!='?')
                {
                   buff[i++]=*p++;
                }
                buff[i]='?';
                strcpy((char *)esp8266_info.esp8266_ip,buff);
                //端口號解析
                p++;
                i=0;
                while(*p!=':' && *p!='?')
                {
                   buff[i++]=*p++; 
                }
                buff[i]='?';
                esp8266_info.esp8266_prot=atoi(buff);//字符串轉整數(shù)
                //printf("ip=%s:%drn",esp8266_info.esp8266_ip,esp8266_info.esp8266_prot);
                printf("ret:%drn",Esp8266_UDP_SendData((u8*)esp8266_info.esp8266_ip,esp8266_info.esp8266_prot,token));//上報連接狀態(tài)
            }
           ESP8266_GetData(data,(char *)esp8266_info.esp8266_name,"ssid");//WIFI名
           ESP8266_GetData(data,(char *)esp8266_info.esp8266_key,"password");//密碼
           ESP8266_GetData(data,(char *)esp8266_info.token,"token");//token數(shù)據(jù),需要返回給平臺
//           printf("wifi_name:%srn",esp8266_info.esp8266_name);
//           printf("wifi_key:%srn",esp8266_info.esp8266_key); 
//           printf("wifi_token:%srn",esp8266_info.token);            
           LED1=1;
           return 0;
        }
        Delay_Ms(1);
        time1++;
        time2++;
        if(time2>=100)
        {
           time2=0;
           LED1=!LED1;
        }  
        if(time1>=1000*300)
        {
            LED1=1;
            break;//超時退出
        }
    }
    return 1;
}

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 物聯(lián)網(wǎng)

    關注

    2900

    文章

    44062

    瀏覽量

    370213
  • WIFI
    +關注

    關注

    81

    文章

    5280

    瀏覽量

    203081
收藏 人收藏

    評論

    相關推薦

    sram 512k實現(xiàn)softAP網(wǎng),wifi報錯的原因?

    采用的是安信可的模塊,sram 512k 程序主要實現(xiàn)了softAP 網(wǎng),藍牙gatt server和gatt client,及wifi tcp socket通信 一般運行12小時左右,就會持續(xù)
    發(fā)表于 06-06 06:53

    ESPConfig藍牙網(wǎng)失敗的原因?如何解決?

    ,小程序截圖如附件所示 求助: 小程序顯示了SoftAP模式,網(wǎng)失敗是否由此產(chǎn)生,我該如何切換為STA模式 錯誤信息.png (59
    發(fā)表于 06-11 08:57

    請問ESP32-WROVER-B用作BLE4.2 + Station + SoftAP這種工作模式是否可以共存?

    作為Station進行網(wǎng),網(wǎng)失敗3次后轉為SoftAP熱點進行
    發(fā)表于 07-02 06:18

    ESP8266如何一次使用更多softAP?

    我想一次激活更多ESP8266到 softAP 模式。我發(fā)現(xiàn),只有第一個激活的 softAP ESP8266才能在無線連接列表中可見。其他人在切換到 SoftAP
    發(fā)表于 07-16 06:47

    ESP-01使固件在SOFTAP STA模式下運行遇到的疑問求解

    環(huán)境: 1. ESP-01 模塊 2. SDK開發(fā)包1.2.0版本 3. iPhone 6 和 MacbookPro 作為 wifi 客戶端 我們使固件在 SOFTAP STA 模式下運行,其中
    發(fā)表于 07-18 07:53

    ESP8266固件升級,SoftAp 網(wǎng)模式下,支持全球升級

    GAgent 樂鑫 04020029 版本已經(jīng)發(fā)布到機智云下載中心changelog:1.增加SoftAp 網(wǎng)模式下,支持全球化;2.優(yōu)化設備發(fā)目前esp8266含以下功能:1.增加
    發(fā)表于 04-28 14:34

    sram512k實現(xiàn)softAP網(wǎng),運行一段時間后就會報錯的原因?怎么處理?

    采用的是安信可的模塊,sram 512k程序主要實現(xiàn)了softAP 網(wǎng),藍牙gatt server和gatt client,及wifi tcp socket通信一般運行12小時左右,就會持續(xù)報錯
    發(fā)表于 02-09 08:28

    請問ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?

    ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?
    發(fā)表于 02-10 06:22

    ESP32-C3是否支持matter協(xié)議? 可以通過softap方式網(wǎng)嗎?

    ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?
    發(fā)表于 03-03 08:12

    請問ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?

    ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?
    發(fā)表于 03-08 08:18

    全志XR806基于FreeRTOS的SoftAp網(wǎng)實現(xiàn)

    SoftAp網(wǎng)。相比于其他三種網(wǎng)方式,SoftAp本人之前用的比較多,就想嘗試基于XR80
    發(fā)表于 11-03 10:32

    使用AD和DXP導出SMT坐標文件的步驟詳細說明

    本文檔的主要內(nèi)容詳細介紹的是使用AD和DXP導出SMT坐標文件的步驟詳細說明。
    發(fā)表于 10-15 17:01 ?0次下載
    使用AD和DXP導出SMT坐標文件的<b class='flag-5'>步驟</b><b class='flag-5'>詳細說明</b>

    Cadence SPB 17.4的安裝步驟教程詳細說明

    本文檔的主要內(nèi)容詳細介紹的是Cadence SPB 17.4的安裝步驟教程詳細說明。
    發(fā)表于 04-10 08:00 ?0次下載
    Cadence SPB 17.4的安裝<b class='flag-5'>步驟</b>教程<b class='flag-5'>詳細說明</b>

    使用Keil新建STM32的工程步驟詳細說明

    本文檔的主要內(nèi)容詳細介紹的是使用Keil新建STM32的工程步驟詳細說明。
    發(fā)表于 06-02 08:00 ?15次下載
    使用Keil新建STM32的工程<b class='flag-5'>步驟</b><b class='flag-5'>詳細說明</b>

    封裝基板的技術簡介詳細說明

    本文檔的主要內(nèi)容詳細介紹的是封裝基板的技術簡介詳細說明包括了:封裝類型與發(fā)展, BGA的分類與基本結構, BGA基板的發(fā)展與簡介, BGA封裝的發(fā)展。
    發(fā)表于 07-28 08:00 ?0次下載
    封裝基板的技術<b class='flag-5'>簡介</b><b class='flag-5'>詳細說明</b>