查看: 2011|回复: 8

ESP TOUCH V2测试

[复制链接]

该用户从未签到

发表于 2022-4-14 16:32 | 显示全部楼层 |阅读模式
本帖最后由 跑龙套的保 于 2022-4-14 16:32 编辑

简介

看到blinker增加esp touch v2支持,但arduino中没有相关示例,分享测试记录给大家参考下。
esp touch v2是乐鑫的esp8266 esp32 samrtconfig配网工具,v2版本支持加密和自定义数据
ps:加密秘钥长度16字节

code


  1. #include "WiFi.h"

  2. void WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info)
  3. {
  4.     Serial.printf("[WiFi-event] event: %d\n", event);

  5.     switch (event) {

  6.         case ARDUINO_EVENT_SC_SCAN_DONE:
  7.         {
  8.             Serial.println("Scan done");
  9.         }
  10.         break;

  11.         case ARDUINO_EVENT_SC_FOUND_CHANNEL:
  12.         {
  13.             Serial.println("Found channel");

  14.         }
  15.         break;

  16.         case ARDUINO_EVENT_SC_GOT_SSID_PSWD:
  17.         {
  18.             Serial.println("Got SSID and password");

  19.             uint8_t ssid[33] = { 0 };
  20.             uint8_t password[65] = { 0 };

  21.             uint8_t rvd_data[33] = { 0 };

  22.             memcpy(ssid, info.sc_got_ssid_pswd.ssid, sizeof(info.sc_got_ssid_pswd.ssid));
  23.             memcpy(password, info.sc_got_ssid_pswd.password, sizeof(info.sc_got_ssid_pswd.password));

  24.             Serial.printf("SSID:%s\n", ssid);
  25.             Serial.printf("PASSWORD:%s\n", password);

  26.             if (info.sc_got_ssid_pswd.type == SC_TYPE_ESPTOUCH_V2) {
  27.                 ESP_ERROR_CHECK( esp_smartconfig_get_rvd_data(rvd_data, sizeof(rvd_data)) );

  28.                 Serial.println("RVD_DATA");
  29.                 Serial.write(rvd_data, 33);
  30.                 Serial.printf("\n");

  31.                 for (int i = 0; i < 33; i++) {
  32.                     Serial.printf("%02x ", rvd_data[i]);
  33.                 }
  34.                 Serial.printf("\n");
  35.             }
  36.         }
  37.         break;

  38.         case ARDUINO_EVENT_SC_SEND_ACK_DONE:
  39.         {
  40.             Serial.println("SC_EVENT_SEND_ACK_DONE");
  41.         }
  42.         break;

  43.         default:
  44.         {
  45.             Serial.printf("no case event: %d\n", event);
  46.         }
  47.         break;
  48.     }
  49. }

  50. void setup() {
  51.     Serial.begin(115200);

  52.     Serial.println("ESP32 START");

  53.     WiFi.mode(WIFI_AP_STA);
  54.     WiFi.onEvent(WiFiEvent);
  55.     WiFi.beginSmartConfig(SC_TYPE_ESPTOUCH_V2, "1234567890123456");

  56.     Serial.println("SmartConfig...");

  57. }

  58. void loop() {
  59.     // put your main code here, to run repeatedly:

  60. }
复制代码

app

打开ESP Touch app选择ESP Touch v2
QQ截图20220414162050.jpg
配对完成后可以收到wifi名称和密码和自定义数据
QQ截图20220414162806.jpg

该用户从未签到

发表于 2022-4-14 19:31 | 显示全部楼层
补充下,自定义数据长度限制127

该用户从未签到

发表于 2022-4-24 22:38 | 显示全部楼层
blinker app 2.6.5已添加esptouch V2支持,sdk等esp32 package release后更新。

该用户从未签到

发表于 2022-7-8 09:08 | 显示全部楼层
楼主,我想使用你的例程,我想请教一下,我现在是用你的例程编译出错,没有找到定义的文件,请问是什么问题?
'ARDUINO_EVENT_SC_SCAN_DONE' was not declared in this scope

该用户从未签到

 楼主| 发表于 2022-7-8 19:24 | 显示全部楼层
Herman_gao 发表于 2022-7-8 09:08
楼主,我想使用你的例程,我想请教一下,我现在是用你的例程编译出错,没有找到定义的文件,请问是什么问题 ...

esp32 sdk更新到最新,我用的是esp32

该用户从未签到

发表于 2022-7-9 17:24 | 显示全部楼层
跑龙套的保 发表于 2022-7-8 19:24
esp32 sdk更新到最新,我用的是esp32

你好,我是在这个网址加载的https://dl.espressif.com/dl/package_esp32_index.json
添加esp32开发版管理,这应该是最新的了吧,但是编译是有问题,或者我加载的不对?求大佬帮忙一下

该用户从未签到

 楼主| 发表于 2022-7-19 18:48 | 显示全部楼层
Herman_gao 发表于 2022-7-9 17:24
你好,我是在这个网址加载的https://dl.espressif.com/dl/package_esp32_index.json
添加esp32开发版管理 ...

不是最新,这个只到1.0.6,最新的2.0.4了,可以使用社区最新的包
https://www.arduino.cn/thread-81194-1-1.html

该用户从未签到

发表于 2022-8-16 17:19 | 显示全部楼层
本帖最后由 Herman_gao 于 2022-8-16 17:37 编辑

我想问一下自定义数据在在那个文件可以知道限定长度?就是可以看到自定义数据的长度的声明在那个文件,可以获取返回字节长度?求指导一下

该用户从未签到

 楼主| 发表于 2022-8-16 23:45 | 显示全部楼层
Herman_gao 发表于 2022-8-16 17:19
我想问一下自定义数据在在那个文件可以知道限定长度?就是可以看到自定义数据的长度的声明在那个文件,可以 ...

看了下函数,没有长度返回,最长127字节,都是ascii数据,可以通过strlen来计算
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐

用米思齐编程库文件【blinker点灯】模块不全,如图,期待....
用米思齐编程库文件【blin
此问题困扰已久,求大神指点,问题详见图片截图,附图3张。 我在官网下载的最新版本
ESP8266入坑提醒
ESP8266入坑提醒
WEMOS D1 MINI开发板上用的CH340C是翻新的 照片拍不出效果,但实际效果明显:
合宙ESP32C3点亮1.54寸墨水屏
合宙ESP32C3点亮1.54寸墨
1,安装的库文件: 2,接线: Eink ESP32C3 GND GND VCC 3.3V SCL
OLED 128*64自制可达10000000个选项的菜单(已更新)
OLED 128*64自制可达10000
OLED 128*64自制可达10000000个选项的菜单 温馨提示: 建议占个楼再食用本帖子
【花雕动手做】有趣好玩音乐可视化(17)--光导纤维灯
【花雕动手做】有趣好玩音
偶然心血来潮,想要做一个声音可视化的系列专题。这个专题的难度有点高,涉及面也比较
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
快速回复 返回顶部 返回列表