ESP TOUCH V2测试
本帖最后由 跑龙套的保 于 2022-4-14 16:32 编辑# 简介
看到blinker增加esp touch v2支持,但arduino中没有相关示例,分享测试记录给大家参考下。
esp touch v2是乐鑫的esp8266 esp32 samrtconfig配网工具,v2版本支持加密和自定义数据
ps:加密秘钥长度16字节
# code
#include "WiFi.h"
void WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info)
{
Serial.printf(" event: %d\n", event);
switch (event) {
case ARDUINO_EVENT_SC_SCAN_DONE:
{
Serial.println("Scan done");
}
break;
case ARDUINO_EVENT_SC_FOUND_CHANNEL:
{
Serial.println("Found channel");
}
break;
case ARDUINO_EVENT_SC_GOT_SSID_PSWD:
{
Serial.println("Got SSID and password");
uint8_t ssid = { 0 };
uint8_t password = { 0 };
uint8_t rvd_data = { 0 };
memcpy(ssid, info.sc_got_ssid_pswd.ssid, sizeof(info.sc_got_ssid_pswd.ssid));
memcpy(password, info.sc_got_ssid_pswd.password, sizeof(info.sc_got_ssid_pswd.password));
Serial.printf("SSID:%s\n", ssid);
Serial.printf("PASSWORD:%s\n", password);
if (info.sc_got_ssid_pswd.type == SC_TYPE_ESPTOUCH_V2) {
ESP_ERROR_CHECK( esp_smartconfig_get_rvd_data(rvd_data, sizeof(rvd_data)) );
Serial.println("RVD_DATA");
Serial.write(rvd_data, 33);
Serial.printf("\n");
for (int i = 0; i < 33; i++) {
Serial.printf("%02x ", rvd_data);
}
Serial.printf("\n");
}
}
break;
case ARDUINO_EVENT_SC_SEND_ACK_DONE:
{
Serial.println("SC_EVENT_SEND_ACK_DONE");
}
break;
default:
{
Serial.printf("no case event: %d\n", event);
}
break;
}
}
void setup() {
Serial.begin(115200);
Serial.println("ESP32 START");
WiFi.mode(WIFI_AP_STA);
WiFi.onEvent(WiFiEvent);
WiFi.beginSmartConfig(SC_TYPE_ESPTOUCH_V2, "1234567890123456");
Serial.println("SmartConfig...");
}
void loop() {
// put your main code here, to run repeatedly:
}
# app
打开ESP Touch app选择ESP Touch v2
配对完成后可以收到wifi名称和密码和自定义数据
补充下,自定义数据长度限制127 blinker app 2.6.5已添加esptouch V2支持,sdk等esp32 package release后更新。 楼主,我想使用你的例程,我想请教一下,我现在是用你的例程编译出错,没有找到定义的文件,请问是什么问题?
'ARDUINO_EVENT_SC_SCAN_DONE' was not declared in this scope
Herman_gao 发表于 2022-7-8 09:08
楼主,我想使用你的例程,我想请教一下,我现在是用你的例程编译出错,没有找到定义的文件,请问是什么问题 ...
esp32 sdk更新到最新,我用的是esp32 跑龙套的保 发表于 2022-7-8 19:24
esp32 sdk更新到最新,我用的是esp32
你好,我是在这个网址加载的https://dl.espressif.com/dl/package_esp32_index.json
添加esp32开发版管理,这应该是最新的了吧,但是编译是有问题,或者我加载的不对?求大佬帮忙一下
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 本帖最后由 Herman_gao 于 2022-8-16 17:37 编辑
我想问一下自定义数据在在那个文件可以知道限定长度?就是可以看到自定义数据的长度的声明在那个文件,可以获取返回字节长度?求指导一下 Herman_gao 发表于 2022-8-16 17:19
我想问一下自定义数据在在那个文件可以知道限定长度?就是可以看到自定义数据的长度的声明在那个文件,可以 ...
看了下函数,没有长度返回,最长127字节,都是ascii数据,可以通过strlen来计算
页:
[1]