图文手把手教程 |
您所在的位置:网站首页 › 智云物联app配网闪退怎么回事啊 › 图文手把手教程 |
本文内容
1)在阿里云生活物联网平台,创建自有品牌项目,并在项目下创建产品“智能灯001”。 2)下载阿里云SDK-esp-aliyun,使用例程smart_light,通过“云智能”手机APP控制。 3)在阿里云物联网平台,查看设备、管理设备、调试设备。 esp-aliyun下载地址:https://github.com/espressif/esp-aliyun 在应用商店,例如应用宝中下载阿里云APP,名字:云智能 一、首先完成集成开发环境搭建:图文手把手教程(史上最强):windows下ESP32集成开发环境搭建和HelloWorld显示(乐鑫官方推荐方法-使用VSCode安装ESP-IDF插件) 二、在阿里云生活物联网平台,创建自有品牌项目。2.1 阿里云参考文档:开发自有品牌项目的产品 - 生活物联网平台 - 阿里云 2.2 注册并登陆阿里云生活物联网平台:生活物联网平台(飞燕平台)
2.3 创建自有品牌项目。 2.4 在自有品牌项目下创建产品。
产品名称:智能灯001;所属品类:电工照明/灯;节点类型:设备;是否接入网关:否; 连网方式:wifi;数据格式:ICA标准数据格式(Airlink/JSON);使用ID2认证:否 按个人需求,适当删除一些功能。 1)产品展示 填写APP展示产品名称,例如:淘梦智能灯001 TDL。 2)分享方式 勾选“使用公版APP控制产品”,分享方式:授权式。 3)设备面板 按自己喜好,选择一个面板。 4)配网引导 注意:一定要选择"一键配网",否则会一直在扫描通道,无法配网。 5)多语言管理 “人机交互”的必填项填好后,非必填项根据个人需要,然后点击下一步,进入设备调试。 点击新增设备调试,在弹出框中,DeviceName为空,直接点击确定。 勾选协议,点击产品发布,创建产品的流程即全部完成。 1 )github下载阿里云SDK:https://github.com/espressif/esp-aliyun 注意:从github直接下载的阿里云SDK,名字为:esp-aliyun-master.zip,解压后需要修改名字,将esp-aliyun-master改为esp-aliyun,因为smart_light例程中关联的组件名字是esp-aliyun,如果不修改VSCODE中则会编译报错。 esp-aliyun的内容如下图所示: 2)将整个esp-aliyun文件夹复制到E:\ESP32-IDF\esp\esp-idf\components目录下。 3)将esp-aliyun文件夹下的examples复制到E:\ESP32-IDF\esp\esp-idf\examples目录下,并重命名为aliyun。 4)创建示例项目smart_light:VSCODE中->"查看"->”命令面板“->输入:Show Examples projects->选择Use current ESP-IDF(E:\ESP32-IDF\esp\esp-idf)->弹出示例ESP-IDF Examples,选择aliyun->solutions->smart_light->Create project using example smart_light->选择示例保存的路径。 例如:E:\ESP32-IDF\project-example,因ESP-IDF框架与示例是分离的,所以示例保存的路径可以随意,但需要注意:路径不能有中文和空格,否则报错。
5)创建完成,如下图所示。 打开后,如果右下角提示是否允许Makefile Tools配置,则选择不允许。 如果不小心选择了允许,则会出现:头文件报警告“在 browse.path 中未找到包含文件”,即头文件有波浪线,无法跳转。原因:本地没有安装cmake。 解决办法:在.vscode->c_cpp_properties.json中删除"configurationProvider": "ms-vscode.cmake-tools"即可。 6)一字不改,编译、下载到ESP32开发板。 7)打开串口监控,显示错误信息:未烧录四元组,如下图所示。 四、配置分区表。 分区表的说明见官方文档:分区表 - ESP32 - — ESP-IDF 编程指南 latest 文档 分区表的说明见博客:ESP32分区表图解 1)打开SDK可视化配置,设定flash大小和设定“partition table”分区表。 左下角,点击SDK可视化配置按钮,进入配置,配置完后按保存。 如果flash大小为2MB没有修改为4MB则会报错,如下图所示。 2)重新编译,可以看到引用的是我们自定义的分区表。 1)修改如下代码,重新编译和下载。 // 产品设备信息设置函数声明 int HAL_SetProductKey(char *product_key); int HAL_SetProductSecret(char *product_secret); int HAL_SetDeviceName(char *device_name); int HAL_SetDeviceSecret(char *device_secret); void app_main() { { // 代码中配置产品设备信息-阿里四元组,用于调试 HAL_SetProductKey("a1X4pTa1234"); HAL_SetProductSecret("eFha1yQgo1rf1234"); HAL_SetDeviceName("vDjabsTswpvLpw0F1234"); HAL_SetDeviceSecret("f1c722c66873c7d789ab40ac380b1234"); } factory_restore_init(); lightbulb_init(); conn_mgr_init(); conn_mgr_register_wifi_event(wifi_event_handle); // { // 设置wifi账号密码 // const char *ssid = "Xiaomi_tao"; // const char *password = "123456"; // conn_mgr_set_wifi_config_ext((const uint8_t *)ssid, strlen(ssid), (const uint8_t *)password, strlen(password)); // } IOT_SetLogLevel(IOT_LOG_INFO); #ifdef CONFIG_USE_SOFTAP_CONFIG conn_mgr_set_sc_mode(CONN_SOFTAP_MODE); #else conn_mgr_set_sc_mode(CONN_SC_ZERO_MODE); #endif xTaskCreate((void (*)(void *))start_conn_mgr, "conn_mgr", 3072, NULL, 5, NULL); }2)在生活物联网平台,找到配网二维码,打开云智能APP扫描配网,可以看到配网成功,并能用APP控制,这里不详细讲解,在后面的四元组生成BIN文件烧录,再详讲。 1)打开...\esp-aliyun\config\mass_mfg,复制single_mfg_config.csv到smart_light项目下。 2)打开single_mfg_config.csv,填写四元组。 3)四元组生成bin文件。 Python E:\ESP32-IDF\esp\esp-idf\components\nvs_flash\nvs_partition_generator\nvs_partition_gen.py generate single_mfg_config.csv single_mfg.bin 0x40004)烧录四元组bin文件。 python E:\ESP32-IDF\esp\esp-idf\components\esptool_py\esptool\esptool.py write_flash 0x210000 single_mfg.bin5)擦除整片flash。 由于在“5.1方法一”时已经在代码中烧录过四元组以及配网,所以这里要擦掉flash,重新进行测试。 注意:erase_flash是擦除整片flash,在上面保存的四元组和wifi的帐号、密码都会被擦除。 python E:\ESP32-IDF\esp\esp-idf\components\esptool_py\esptool\esptool.py erase_flash6)重新烧录代码和四元组bin文件,打开串口监控。 如果四元组输入错误,则会报错,如下图所示。 ![]() 1)在生活物联网平台,找到配网二维码,手机端打开云智能APP,扫描此二维码进行配网。 2)串口监控中,可以看到配网成功并连接MQTT成功,可以使用APP进行控制。 阿里云网址:https://www.aliyun.com/ 至此,ESP32 MQTT连接阿里云生活物联网平台已全部完成,愉快的玩耍吧! 完整的例程代码下载:https://download.csdn.net/download/felix_tao/86341001 使用例程,报错怎么办,解决办法如下: 1)打开VSCODE报错,c_cpp_properties.json无法找到E:\\ESP32-IDF... 解决办法:点击.vscode->c_cpp_properties.json,修改盘符即可,例如将E盘改为D盘。 2)编译工程报错: [0/1] Re-running CMake... FAILED: build.ninja CreateProcess failed: The system cannot find the file specified. ninja: error: rebuilding 'build.ninja': subcommand failed 解决方法:清除编译产生的所有文件,左下角->点击垃圾桶图标(ESP-IDF Full Clean)->清除后,接着重新编译即OK。 本文参考了以下博客,鸣谢! ESP32C3对接阿里云生活物联网平台_事在人wёi的博客-CSDN博客_esp32 阿里云 在windows使用VSCode编译esp-aliyun_坤仔N的博客-CSDN博客 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |