目录
前言一、准备工作1.1、硬件准备1.2、软件准备二、工程搭建平台设置ESP-12S开发板部分软件操作ESP32-S开发板部分软件操作三、效果演示3.1、天猫精灵找队友测试3.2、APP配网测试更多资料前言
之前我们推送过如何通过AT指令入网阿里物联网平台(或者阿里生活物联网平台),今天我们将教大家如何通过二次开发入网阿里生活物联网平台,实现云智能APP或者天猫精灵控制ESP32模组\开发板、ESP-12S模组\开发板。
一、准备工作
1.1、硬件准备
ESP-12S开发板 x 1 + 数据线 x 1
ESP32-S开发板 x 1 + 数据线 x 1
1.2、软件准备
VMware® Workstation 16 Pro,软件获取链接:/cn/products/workstation-pro.htmlLinux(Ubuntu)系统镜像,镜像获取链接:/downloadESP8266、ESP32、ESP32S2芯片入网阿里生活物联网平台的SDK包:/espressif/esp-ali-smartliving.git二、工程搭建
平台设置
创建新项目
创建新项目,项目名称随机,项目类型选择天猫精灵生态项目,勾选我同意天猫精灵选项,点击确定便创建成功。
创建产品:
产品名称随机填写所属品类选择电工照明–>灯节点类型选择设备是否接入网关选择否;联网方式选择wifi;
产品管理配置 功能定义部分可根据个人需求做功能删减处理,这里保持默认的设置;人机交互部分,点击二维码可扫码下载天猫精灵APP,APP配置界面用户可根据个人需求进行调整,这里也保持默认设置;设备调试部分,设备信息选择未认证,点击新增测试设备,随机设置设备名称。
4、保存四元组
设备创建成功之后,点击查看,复制设备三元组:ProductKey、DeviceName以及DeviceSecret参数:
回到产品,点击复制Product Secret的参数:
将以上参数保管好,以备后用。
ESP-12S开发板部分软件操作
克隆阿里生活物联网入网SDK至linux指定目录下,指令如下:git clone --recursive /espressif/esp-ali-smartliving.git
拉取ESP8266_RTOS_SDK包至同目录下,克隆成功切换分支为release/v3.3,进入SDK目录下,运行./install.sh以及. ./export.sh两条指令,搭建译环境:
git clone --recursive /espressif/ESP8266_RTOS_SDK.gitcd ESP8266_RTOS_SDKgit checkout release/v3.3git pull./install.sh. ./export.sh
在 esp-ali-smartliving 目录下执行:
cd ali-smartliving-device-sdk-cmake reconfig (选择SDK平台,这里选择config.freertos.esp8266)make menuconfig (选择相关功能配置,默认不需要修改,该步骤可以省略)make (生成相关头文件和库文件)
编译 demo 示例,并生成最终的bin:
cd examples/solutions/smart_lightmake defconfigmake menuconfig//配置模组flash大小为4Mmake -j8
擦除原固件,烧录新固件,指令操作如下:
make erase_flash //擦除开发板中的原有固件make flash
烧录四元组至NVS分区
在esp-ali-smartliving/config/mass_mfg目录下有一个参考配置文件,single_mfg_config.csv,我们将该文件复制到工程中,并进行修改:
key,type,encoding,valuealiyun-key,namespace,,DeviceName,data,string,configDeviceSecret,data,string,dsj3RuY74pgCBJ3zczKz1LaLK7RGApqhProductKey,data,string,a10BnLLzGv4ProductSecret,data,string,pVfLpS1u3A9JM0go
将刚刚创建的设备的四元组粘贴到指定位置并保存。在目录ESP8266_RTOS_SDK/components/nvs_flash/nvs_partition_generator下运行指令,生成四元组bin文件:
$IDF_PATH/components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py --input UserPath/single_mfg_config.csv --output UserPath/single_mfg.bin --size 0x4000
最后加个四元组烧录至开发板中:
$IDF_PATH/components/esptool_py/esptool/esptool.py --port /dev/ttyUSB0 write_flash 0x100000 my_single_mfg.bin
ESP32-S开发板部分软件操作
克隆阿里生活物联网入网SDK至linux指定目录下,指令如下:git clone --recursive /espressif/esp-ali-smartliving.git
拉取esp-idf包至同目录下,克隆成功切换分支为release/v4.3,进入SDK开目录下,运行./install.sh以及. ./export.sh两条指令,搭建译环境:
git clone --recursive /espressif/esp-idf.gitcd esp-idfgit checkout release/v4.3git pull./install.sh. ./export.sh
在 esp-ali-smartliving 目录下执行:
cd ali-smartliving-device-sdk-cmake reconfig (选择SDK平台,这里选择config.esp32.aos)make menuconfig (选择相关功能配置,默认不需要修改,该步骤可以省略)make (生成相关头文件和库文件)
编译 demo 示例,并生成最终的bin:
cd examples/solutions/smart_lightmake defconfigmake menuconfig//配置模组flash大小为4Mmake -j8
擦除原固件,烧录新固件,指令操作如下:
make erase_flash //擦除开发板中的原有固件make flash
烧录四元组至NVS分区
在esp-ali-smartliving/config/mass_mfg目录下有一个参考配置文件,single_mfg_config.csv,我们将该文件复制到工程中,并进行修改:
key,type,encoding,valuealiyun-key,namespace,,DeviceName,data,string,configDeviceSecret,data,string,dsj3RuY74pgCBJ3zczKz1LaLK7RGApqhProductKey,data,string,a10BnLLzGv4ProductSecret,data,string,pVfLpS1u3A9JM0go
将刚刚创建的设备的四元组粘贴到指定位置并保存。在目录$IDF_PATH/components/nvs_flash/nvs_partition_generator下运行指令,生成四元组bin文件(注意:ESP32-S模组与ESP-12S模组将四元组生成bin文件的指令格式不同):
$IDF_PATH/components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py UserPath/single_mfg_config.csv UserPath/single_mfg.bin --size 0x4000
最后将四元组烧录至开发板中:
$IDF_PATH/components/esptool_py/esptool/esptool.py write_flash 0x210000 single_mfg.bin
三、效果演示
3.1、天猫精灵找队友测试
完成以上配置并重启设备,设备将进入一键配网状态,此时,给天猫精灵下指令“查找设备”,当天猫精灵回复有新设备,是否连接时,下“连接”指令,最终等待配网成功。
3.2、APP配网测试
打开“天猫精灵APP”,点击右上角的“+”按钮,选择扫一扫,扫描设备配网二维码,输入账号密码,最后等待入网成功。
更多资料
以上就是本期分享的内容,目的在于让大家快速适应新品方案的开发,以上提供的驱动源码联系我们可以免费提供
官方官网:https://www.ai-
开发资料:https://docs.ai-/
官方论坛:http://bbs.ai-
公司地址: 深圳市宝安区西乡固戍华丰智慧创新港C栋410