精华内容
下载资源
问答
  • 本系列博客学习由非官方人员... 2、esp8266直连接入阿里物联网平台,实现天猫精灵找队友零配功能和语音控制; 3、esp32 sdk 直连接入天猫精灵IOT开放平台,实现天猫精灵找队友零配功能和语音控制; 文章目录 ...

    • 本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途。如有不对之处,请留言,本人及时更改。

    1、esp32接入阿里云物联网平台,实现天猫精灵语音控制;
    2、esp8266直连接入阿里云物联网平台,实现天猫精灵找队友零配网功能和语音控制;
    3、esp32 sdk 直连接入天猫精灵IOT开放平台,实现天猫精灵找队友零配网功能和语音控制;
    4、如何在天猫精灵IOT开放平台二次开发智能设备的 H5控制面板;
    5、分享可商用的ESP8266 SDK连接阿里云物联网生活平台的在线远程升级OTA笔记。

    一、博主寄言


           我写过很多物联网控制的博文系列,包括微信公众号、微信小程序控制硬件,私有云对接天猫精灵服务器,抑或是硬件端 esp8266/esp32 等系列博文,这是一个一个专题是写下我们如何在阿里云物联网上全栈开发我们的应用专题,让我们无须企业账号也可以体验设备-云端-App” 的过程;让我们变得更强,一个人担任一个公司的全部职责,全栈开发物联网攻城狮前进;

           我会带领大家轻轻松松地把自己的设备接入天猫精灵,告别 “单机时代”,走进语音控制物联网时代。 有疑问请留言区留言,或者加群大伙们讨论;写总结,写博文不容易,望大家多多体谅!

    • 自带资料:
      • git 分布式管理软件的基本使用;
      • 硬件开发:乐鑫 esp8266、esp32模块一个;具备 c 语言基础 ,不需要很熟练;
      • 移动端开发:android 端具备 javavue.js 开发语言,AndroidStudio 环境;
      • 服务器端开发:php 开发,熟悉 服务器运行、部署等原理操作;

           应各位小伙伴需求,《乐鑫esp8266直连天猫精灵iot开放平台》教学视频已经推出,只需学过51单片机即可入门,欢迎前来学习:传送门


    二、前言


           2020年如愿以偿地到来了,随着年龄不断地增长,能做的,只有不断用新心态去适应新的生活,剩下的,交给命运;

           这个月应该少发表博文了,要忙些自己的事情,过年了,谁都比较忙!今年将是全新一年,我要思考如何把qq群建设起来,让大家活跃起来,2019年的在乐鑫芯片的技术存储达到了愿望,但还需要不断学习,wifi组网和蓝牙组网,都是物联网很前沿的技术;

          这篇为2020开门篇,是阿里云专题,前面的文章或视频,我们已经入门如何在ESP8266/ESP32实现数据上报下发解析天猫精灵语音控制的代码,这篇,我为大家讲讲如何实现ESP8266 SDK连接阿里云物联网生活平台的在线远程升级OTA


    三、过程


           至于什么是远程在线升级ota功能?这里我不在啰嗦。
           上周,用了下午学习了阿里云物联网的ota升级,总得有一番心得,为了避免以后再次睬坑,这次我给大家画详细的这个流程图,也为自己以后找得到笔记,如下:

           这里,分享下mermaidjs在线画图,大家学起来哦!

    升级失败
    升级成功
    用户点击设备详情
    检查设备固件版本
    设备当前是否最新固件版本
    不需要固件升级
    结束
    需要固件升级
    获取最新固件的信息,包括url版本等
    开始http请求固件升级
    下载固件完毕,开始升级固件
    上传当前版本信息,云端判断升级是否成功
    软件重启,再上报当前版本信息,云端判断升级成功

           我开始翻阅代码时候,发现乐鑫已经适配了 ota 升级的代码,在 example/solutions/ota,有兴趣的同学可以去看看。

           当我在天猫精灵例程跑起ota时候,发现是成功的,但是在云端依然判断升级超时,即为失败的结果。我很纳闷,于是乎,我从它的ota例程去观察琢磨,发现,流程不完全,导致云端检查ota失败;

           排除的思路很总要,首先,通过文档可以知道每次下发ota时候都是要版本对比,如果不一致则要向设备发送最新的固件url,让设备主动去拉取升级。

           而我在跑这个例程时候,版本怎么样都是0.0.1,我猜到应该是没上报版本信息给云端吧。翻了翻,果然是,哈哈!

           So,当升级成功与否,都要上报给云端,恰恰是这一步没做到位,导致了这个天猫精灵例程即使是远程升级成功,但是云端依然判断是升级失败。


    四、相关方法


          乐鑫已经为我们做了大量的适配工作,所以我们也不需要怎么适配了,只是稍微改动一下当升级成功与否,都要上报给云端。 这个步骤;

    • 上报设备固件版本信息给服务器方法:
    /**
     * @brief 上报设备固件版本信息给服务器(可选).
     *        NOTE: please
     *
     * @param [in] handle: OTA升级所需的句柄
     * @param [in] version: 固件版本信息,字符串格式
     *
     * @retval   0 : Successful.
     * @retval < 0 : Failed, the value is error code.
     * @see None.
     */
     int IOT_OTA_ReportVersion(void *handle, const char *version);
    
    • 升级进度上报给服务器的方法:
    /**
     * @brief Report detail progress to OTA server (optional).
     *        NOTE: please
     *
     * @param [in] handle: specify the OTA module.
     * @param [in] progress: specify the progress defined by 'IOT_OTA_Progress_t'.
     * @param [in] msg: detail progress information in string.
     *
     * @retval   0 : Successful.
     * @retval < 0 : Failed, the value is error code.
     * @see None.
     */
    DLL_IOT_API int IOT_OTA_ReportProgress(void *handle, IOT_OTA_Progress_t progress, const char *msg);
    

    五、如何使用


          因为商用时候,我们在得到客户的一些bug分析定位,需要得到当前设备的固件版本,所以,我就在 mqtt 连接服务器成功之后,主动上报固件版本给服务器,这样的话,服务器就可以记录当前设备的版本了。

          这里必须提到的是,阿里云物联网的设备固件版本是否一致,所以,请务必主动上传当前版本信息给服务器!

           mqtt连接成功的回调都在 linkkit_solo.c有具体的实现,所以,我的做法就是当ota升级会重启设备待mqtt连接成功后,主动上报设备版本和设备状态信息比如亮度给服务器。

    
    //这里宏定义固件版本,格式为 1.0 / 1.2 /2.1 这样的格式
    #define DEVICE_FW_VERSION "2.1"
    
    /**
     * @description: MQTT连接成功返回函数
     * @param {type} 返回的句柄
     * @return: 
     */
    void tmall_clouds_mqtt_connected(void *ota_handle)
    {
        //上报固件版本
        IOT_OTA_ReportVersion(ota_handle, DEVICE_FW_VERSION);
        //每次连接服务器之后,主动上报状态
        char property_payload[100] = {0};
        HAL_Snprintf(property_payload, sizeof(property_payload), "{\"LightSwitch\": %d ,\"ColorTemperature\": %d ,\"Brightness\": %d}", dev_status.Power, dev_status.Colortemp, dev_status.Brightness);
        vTaskDelay(500 / portTICK_RATE_MS);
        int code = IOT_Linkkit_Report(0, ITM_MSG_POST_PROPERTY, (unsigned char *)property_payload, strlen(property_payload));
        ESP_LOGI(TAG, "Property first post property_payload[code:%d]: %s", code, property_payload);
    }
    
    /** cloud connected event callback */
    static int user_connected_event_handler(void)
    {
        EXAMPLE_TRACE("Cloud Connected");
        g_user_example_ctx.cloud_connected = 1;
    
        /* 获取 句柄*/
        void *ota_handle = NULL;
        int res = dm_ota_get_ota_handle(&ota_handle);
        if (res == SUCCESS_RETURN)
        {
            tmall_clouds_mqtt_connected(ota_handle);
        }
        return 0;
    }
    

    六、阿里云物联网后台具体操作


           要进去阿里云物联网 在线升级后台 ,然后添加上传固件:

    在这里插入图片描述

           首先要验证下固件是否正常等情况,我们通过升级指定设备;
    在这里插入图片描述

           成功通过之后,就允许你批量升级了!

    在这里插入图片描述
    参考文献:

    另外,不要把我的博客作为学习标准,我的只是笔记,难有疏忽之处,如果有,请指出来,也欢迎留言哈!

    • 玩转esp8266带你飞、加群付费QQ群,不喜的朋友勿喷勿加:434878850
    • esp8266源代码学习汇总(持续更新,欢迎star):https://github.com/xuhongv/StudyInEsp8266
    • esp32源代码学习汇总(持续更新,欢迎star):https://github.com/xuhongv/StudyInEsp32
    • 关注下面微信公众号二维码,干货多多,第一时间推送!
    展开全文
  • 【阿里云生活物联网平台全栈开发】esp32 sdk接入阿里云物联网平台,实现天猫精灵语音控制;

    • 本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途。如有不对之处,请留言,本人及时更改。

    1、esp32接入阿里云物联网平台,实现天猫精灵语音控制;
    2、esp8266直连接入阿里云物联网平台,实现天猫精灵找队友零配网功能和语音控制;
    3、esp32 sdk 直连接入天猫精灵IOT开放平台,实现天猫精灵找队友零配网功能和语音控制;
    4、如何在天猫精灵IOT开放平台二次开发智能设备的 H5控制面板;
    5、分享可商用的ESP8266 SDK连接阿里云物联网生活平台的在线远程升级OTA笔记。


    在这里插入图片描述


    一、博主寄言


           我写过很多物联网控制的博文系列,包括微信公众号、微信小程序控制硬件,私有云对接天猫精灵服务器,抑或是硬件端 esp8266/esp32 等系列博文,这是一个一个专题是写下我们如何在阿里云物联网上全栈开发我们的应用专题,让我们无须企业账号也可以体验设备-云端-App” 的过程;让我们变得更强,一个人担任一个公司的全部职责,全栈开发物联网攻城狮前进;

           我会带领大家轻轻松松地把自己的设备接入天猫精灵,告别 “单机时代”,走进语音控制物联网时代。 有疑问请留言区留言,或者加群大伙们讨论;写总结,写博文不容易,望大家多多体谅!

           应各位小伙伴需求,《乐鑫esp8266直连天猫精灵iot开放平台》教学视频已经推出,欢迎前来学习:传送门

    • 自带资料:
      • git 分布式管理软件的基本使用;
      • 硬件开发:乐鑫 esp8266、esp32模块一个;具备 c 语言基础 ,不需要很熟练;
      • 移动端开发:android 端具备 java 开发语言,AndroidStudio 环境;
      • 服务器端开发:php 开发,熟悉 服务器运行、部署等原理操作;
    • 项目演示


    二、前言


           为什么我要选择乐鑫这个 wifi 芯片作为我们专题的硬件端,因为乐鑫的东西是开源的,芯片上 SDK 开发包等资料都已经开放在 GitHub 上,而且硬件开发板在 tao宝上随地可见,价格很便宜。咳咳,我不是乐鑫官方人员,也不在阿里云工作,我只希望带来的教程,让我们国内物联网开发者体验当前 AI语音控制的快乐与开发便捷,助国内物联网蓬勃发展;


    三、阿里云的 物联网平台和生活物联网平台有何区别?


           首先先贴出2者的官网,阿里云生活物联网平台:https://living.aliyun.com ,而阿里云物联网平台:https://iot.console.aliyun.com/

           在2017年抑或再之前,阿里云生活物联网平台是还没问世的,我们那时候用的是 阿里云物联网平台(也叫 阿里云物联网套件),那时候我也是没接触哈哈!

           虽然2者之间只有2字之差,其实很多东西都是一样的,服务于物联网,下面引用官网的解释:

           生活物联网平台和物联网平台均为阿里云IoT提供的云服务平台,两个平台各自优势和使用场景如下。
           物联网平台,提供原子化的设备接入能力,适用于云开发能力较强的用户,可以在各个行业领域使用。单击什么是物联网平台了解更多详情。
           生活物联网平台,提供了设备接入能力、移动端的SDK以及免开发的公版App和界面,更适用于消费级的智能设备开发者,开发门槛较低,可以快速实现消费级设备的智能化,如智能家电、穿戴、家装领域等。

           总结:

    • 生活物联网平台是一体化开发,提供 硬件端接入— APP — 服务端,以及大数据分析运维;
    • 物联网平台只提供硬件端接入,服务器端通讯,对控制端需要自己开发;
    • 物联网平台硬件端接入支持自定义透传和ICA标准数据格式;而生活物联网平台只能是ICA标准数据格式;
    • 接入生活物联网平台,平台根据ICA标准数据格式,已经和天猫精灵的智能家居接入协议完成了对接。开启该服务后,开发者无需额外在天猫精灵的开发者平台中对接,即可实现设备被天猫精灵音箱的语音控制。
    • 接入生活物联网平台的设备,无疑在物联网平台也可以看见,彼此的数据都是双通的;甚至可以理解为:生活物联网平台是在物联网平台之上的,具有更多的开发特色;

    四、乐鑫esp32 的芯片认识、外设环境搭建等工作;


    在这里插入图片描述


           esp32 是一个支持 ble+wifi 双模共存的芯片,具体的参数我不再多说,请自行查阅官网;

           乐鑫从去年2018年就已经自研了一个自主研制开发乐鑫自主产品的iot框架,适合 esp32和esp8266开发,乐鑫新出来一个名字叫Espressif IoT Development Framework,简称esp-idf,包括配置、编译、下载固件到开发板等步骤,一条龙服务。其实是基于freeRtos实时系统的,同时开发时候是模块化的,这样以来比传统开发节省开发周期。更详细的说明请点击我看看:来自网上


    4.1 window10 平台搭建 esp32 阿里云SDK开发环境;


    第一步:下载esp32工具链框架 3.2 分支 !

           因为做产品抑或正式版SDK,基本是基于稳定版开发的;所以,官网提供阿里云物联网接入是基于 3.2 分支开发的,那么我们需要克隆指定的分支或者在自身的代码中切换分支到3.2;

           因为国内拉取 GitHub 仓库是在太慢了,我为大家提供下一个国内码云的镜像,仓库我是同步官网的;

    • 方法1:如果你网速够快,拉取这个官网的;
    git clone -b v3.2 https://github.com/espressif/esp-idf.git
    
    • 方法2:如果你网速够慢,拉取这个我在国内码云的同步乐鑫的仓库;代码都是一样的!你会发现速度快的一匹:
    git clone -b v3.2 https://gitee.com/xuhongv/esp-idf.git
    

    第二步:工具链框架 修改更新子模块的源地址!

           毕竟这个 git 仓库里面有很多子模块,但是子模块也是链接到 GitHub ,所以:大家还要更新下子模块;

    • 方法1:如果你网速够快,更新这个官网的,直接;
    git submodule update
    
    • 方法2:如果你网速够慢,按照我下面方法来,先替换子模块更新的配置文件,找到我们上步骤的 esp-idf 文件夹下面的 .gitmodules 文件,全部修改替换为下面代码;
    [submodule "components/esp32/lib"]
    	path = components/esp32/lib
    	url = https://gitee.com/xuhongv/esp32-wifi-lib.git
    
    [submodule "components/esptool_py/esptool"]
    	path = components/esptool_py/esptool
    	url = https://gitee.com/xuhongv/esptool.git
    
    [submodule "components/bt/lib"]
    	path = components/bt/lib
    	url = https://gitee.com/xuhongv/esp32-bt-lib.git
    
    [submodule "components/micro-ecc/micro-ecc"]
    	path = components/micro-ecc/micro-ecc
    	url = https://gitee.com/xuhongv/micro-ecc.git
    
    [submodule "components/coap/libcoap"]
    	path = components/coap/libcoap
    	url = https://gitee.com/xuhongv/libcoap.git
    
    [submodule "components/aws_iot/aws-iot-device-sdk-embedded-C"]
    	path = components/aws_iot/aws-iot-device-sdk-embedded-C
    	url = https://gitee.com/xuhongv/aws-iot-device-sdk-embedded-C.git
    
    [submodule "components/nghttp/nghttp2"]
    	path = components/nghttp/nghttp2
    	url = https://gitee.com/xuhongv/nghttp2.git
    
    [submodule "components/libsodium/libsodium"]
    	path = components/libsodium/libsodium
    	url = https://gitee.com/xuhongv/libsodium.git
    
    [submodule "components/spiffs/spiffs"]
    	path = components/spiffs/spiffs
    	url = https://gitee.com/xuhongv/spiffs.git
    
    [submodule "components/json/cJSON"]
    	path = components/json/cJSON
    	url = https://gitee.com/xuhongv/cJSON.git
    
    [submodule "components/mbedtls/mbedtls"]
    	path = components/mbedtls/mbedtls
    	url = https://gitee.com/xuhongv/mbedtls.git
    
    [submodule "components/asio/asio"]
    	path = components/asio/asio
    	url = https://gitee.com/xuhongv/asio.git
    
    [submodule "components/expat/expat"]
    	path = components/expat/expat
    	url = https://gitee.com/xuhongv/libexpat.git
    
    [submodule "components/lwip/lwip"]
    	path = components/lwip/lwip
    	url = https://gitee.com/xuhongv/esp-lwip.git
    
    [submodule "components/mqtt/esp-mqtt"]
    	path = components/mqtt/esp-mqtt
    	url = https://gitee.com/xuhongv/esp-mqtt.git
    
    [submodule "components/protobuf-c/protobuf-c"]
    	path = components/protobuf-c/protobuf-c
    	url = https://gitee.com/xuhongv/protobuf-c.git
    
    
    • 然后在更新,你会发现速度快的一匹:
    git submodule update
    
    • 这样,环境就搭建好了;

    五、生活物联网平台创建产品;


           在阿里云 生活物联网平台 创建产品, 参考创建产品文档.

           配置较多, 如果不太懂, 也不用纠结, 后续都可以修改;官网的demo是 RGB 调色功能,所以我们的产品配置这样:

    在这里插入图片描述


           然后,我们需要模组选择为 esp32 ,然后我们新建一个调试设备,我们要拿到一个设备的四个参数:

    • DeviceName , DeviceSecret , ProductKey , ProductSecret

    在这里插入图片描述


    在这里插入图片描述


           选择面板, 手机 APP 上会显示同样界面;;配网二维码是贴在产品包装上, 终端客户给设备配网中需扫描此二维码;调试阶段,可以使用公版APP来控制配网;

    在这里插入图片描述


           选择面板时, 主题面板在手机上仅能显示标准界面, 没有 RGB 调色功能. 我们选择自定义面板, 增加 RGB 调色;

    在这里插入图片描述


           安装公版APP调试配网控制;

    在这里插入图片描述


           最后一步就是配网文案了,我们使用默认就好了;

    在这里插入图片描述


    六、下载并运行阿里云物联网SDK工程;


    6.1 编译源码;

           终于到了重点了啦;克隆下仓库就好了,老套路,大家可以去官网拉取,或者来我码云这拉取,代码一样的;

    • GitHub拉取:
     git clone --recursive https://github.com/espressif/esp-aliyun.git
    
    • 码云拉取:
     git clone --recursive https://gitee.com/xuhongv/esp-aliyun
    

           由于 esp32 和 esp8266 将会采用不同的 sdkconfig.defaults 和对应的 partitions.csv,在对应的 make 命令中加入了对应的芯片选项,如 chip=esp32 或 chip=esp8266。

    • 当 chip=esp32 时将默认使用 sdkconfig_esp32.defaults 以及 partitions_esp32.csv
    • 当 chip=esp8266 时将默认使用 sdkconfig_esp8266.defaults 以及 partitions_esp8266.csv

           但是,本篇先讲 esp32 下篇再讲 esp8266 ,所以这样做在 esp-aliyun 目录下执行:

    cd examples/solutions/smart_light
    make chip=esp32 defconfig
    make menuconfig
    

           重要:配置代码默认时钟任务栈分配。Component config --->FreeRTOS ---> (2560) Timer stack size ,改为更大的 4096 或者 3072 ,视开发业务而定;否则提示错误重启:ERROR A stack overflow in task Tmr Svc has been detected.

           最后:将 USB 线连接好 ESP 设备和 PC,确保烧写端口正确。配置烧录串口,然后编译并且烧录;

    make flash
    

    6.2 编译四元组信息成bin文件;


    • 先把参数替换进去,如下找到 single_mfg_config.csv 文件,编辑,替换里面的参数;具体的原理,后面的博文会讲;
      在这里插入图片描述

    • 先把参数替换进去,如下找到 single_mfg_config.csv 文件,编辑,替换里面的参数,就会生成 my_single_mfg.bin文件;
    $IDF_PATH/components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py --input single_mfg_config.csv --output my_single_mfg.bin --size 0x4000
    

    • 然后,单独烧录这个文件进去,可以看到地址是 0x210000
    $IDF_PATH/components/esptool_py/esptool/esptool.py write_flash 0x210000 my_single_mfg.bin
    

    6.3 如果你发现下载麻烦,直接这样做,用工具下载,按照我下面的配置;

    在这里插入图片描述


    七、配网和控制;


           配网是必须的,也是第一步,而且刚刚烧录成功第一次运行时候,就会启动配网模式;这时候,用公版APP扫描 配网二维码,就会进去配网界面,之后成功后就会进去控制界面;

           如果配网失败,请检查运行日志,留言区写下:

    • 可能是你三元组信息不对,参数少了,哪个不对;
    • 可能是你设备没启动成功,检查下载配置;
    • 路由器Wifi信道是 5G ?检查有没有外网网络环境?

           这个 smart_light的接线 rgb 灯如下:

    /* Red LED 红色 */
    #define LEDC_IO_0 (0)
    /* Green LED 绿色 */
    #define LEDC_IO_1 (2)
    /* Blued LED  蓝色*/
    #define LEDC_IO_2 (4)
    

           根据你的配置,你会看到界面 rgb 灯大概如下:

    在这里插入图片描述


    八、天猫精灵控制;


           安装天猫精灵app,修改这个 阿里智能 品牌的灯具的名称,我下面修改为 阳台灯 ,然后对天猫精灵说:

    • 天猫精灵,阳台灯打开;
    • 天猫精灵,阳台灯关闭;
    • 天猫精灵,阳台灯设置为红色;
    • 天猫精灵,阳台灯设置为橙色;
      在这里插入图片描述

    九、其他;


           下篇将为大家开讲 《esp8266 sdk 直连接入阿里云物联网平台,实现天猫精灵语音控制;》,敬请期待!!

    另外,不要把我的博客作为学习标准,我的只是笔记,难有疏忽之处,如果有,请指出来,也欢迎留言哈!

    • 玩转esp8266带你飞、加群付费QQ群,不喜的朋友勿喷勿加:434878850
    • esp8266源代码学习汇总(持续更新,欢迎star):https://github.com/xuhongv/StudyInEsp8266
    • esp32源代码学习汇总(持续更新,欢迎star):https://github.com/xuhongv/StudyInEsp32
    • 关注下面微信公众号二维码,干货多多,第一时间推送!
    展开全文
  • 本系列博客学习由非官方... 2、esp8266直连接入阿里物联网平台,实现天猫精灵找队友零配功能和语音控制; 文章目录一、博主寄言二、前言三、什么是 “零配功能”?四、esp8266 环境搭建;五、编译;5.1 编译主工...

    • 本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途。如有不对之处,请留言,本人及时更改。

    1、esp32接入阿里云物联网平台,实现天猫精灵语音控制;
    2、esp8266直连接入阿里云物联网平台,实现天猫精灵找队友零配网功能和语音控制;
    3、esp32 sdk 直连接入天猫精灵IOT开放平台,实现天猫精灵找队友零配网功能和语音控制;

    在这里插入图片描述


    一、博主寄言


           我写过很多物联网控制的博文系列,包括微信公众号、微信小程序控制硬件,私有云对接天猫精灵服务器,抑或是硬件端 esp8266/esp32 等系列博文,这是一个一个专题是写下我们如何在阿里云物联网上全栈开发我们的应用专题,让我们无须企业账号也可以体验设备-云端-App” 的过程;让我们变得更强,一个人担任一个公司的全部职责,全栈开发物联网攻城狮前进;

           我会带领大家轻轻松松地把自己的设备接入天猫精灵,告别 “单机时代”,走进语音控制物联网时代。 有疑问请留言区留言,或者加群大伙们讨论;写总结,写博文不容易,望大家多多体谅!

           应各位小伙伴需求,《乐鑫esp8266直连天猫精灵iot开放平台》教学视频已经推出,欢迎前来学习:传送门

    • 自带资料:
      • git 分布式管理软件的基本使用;
      • 硬件开发:乐鑫 esp8266、esp32模块一个;具备 c 语言基础 ,不需要很熟练;
      • 移动端开发:android 端具备 java 开发语言,AndroidStudio 环境;
      • 服务器端开发:php 开发,熟悉 服务器运行、部署等原理操作;

    二、前言


           昨天同步《esp32 直连阿里云物联网平台》之后,乐鑫官方微信公众号也推出了esp8266与腾讯云物联网的合作,真巧,不过我觉得腾讯云物联网没什么噱头可玩;难道可以在 QQ 控制设备?那真是太好了!

           上篇博客已经介绍了 《esp32 直连阿里云物联网平台》,群里有小伙伴迫不及待想要《 esp8266 sdk 直连接入阿里云物联网平台》,那好吧!我今天就写,过下个星期回家休假了,就不更新博文啦!


    三、什么是 “零配功能”?


           据我所知,这个是阿里生活平台这边提出来的,那时候我在做 linkkitapp 发现这个名词;

           通过已连接上网热点的WiFi设备,将热点信息发送给待配网设备的方式。该方案不需要用户在手机端输入WiFi热点的SSID/密码,因此称为零配。

           上面所述的已连接上网热点的WiFi设备一般是指 天猫精灵音响,所以,我们自备一个已连接上网的 天猫精灵音响;其配网流程如下:

          也有小伙伴经常说: 天猫精灵找队友 功能,的确,这个就是零配;

    在这里插入图片描述


    四、esp8266 环境搭建;


           方法1:对于 esp8266 环境搭建,网上已经是随地可见的博文了,但是明确要指出,官网SDK工程需要的环境是 rtos3.2 sdk 的、3.2分支的代码,因此,大家可以参考我下面文章,然后切换到 3.2分支即可;

    https://blog.csdn.net/xh870189248/article/details/81382279
    

           方法2

           第一步:以Windows系统为例,进去乐鑫对IDF的文档说明链接(保证最新版):点我进去,下载下面红色框框的链接的内容压缩包!然后按照方法一里面说明手动设置esp8266编译的工具链路径!


    这里写图片描述


           第二步:下载esp8266 IDF框架!这里我们就下载esp8266SDK,打开刚刚下载的压缩包解压后子文件夹里面的mingw32.exe,输入(要保证您的电脑已经安装了git客户端软件),克隆官网的或者我码云的仓库,二选一:

           方法1 官网的,GitHub拉取:

     git clone -b v3.2 https://github.com/espressif/ESP8266_RTOS_SDK.git
    

           方法2 码云的:

     git clone -b v3.2 https://gitee.com/xuhongv/ESP8266_RTOS_SDK.git
    

           第三步: 克隆下阿里云连接仓库,老套路,大家可以去官网拉取,或者来我码云这拉取,代码一样的;

    • GitHub拉取:
     git clone --recursive https://github.com/espressif/esp-aliyun.git
    
    • 码云拉取:
     git clone --recursive https://gitee.com/xuhongv/esp-aliyun
    

    五、编译;


    5.1 编译主工程;

           由于 esp32 和 esp8266 将会采用不同的 sdkconfig.defaults 和对应的 partitions.csv,在对应的 make 命令中加入了对应的芯片选项,如 chip=esp32 或 chip=esp8266。

    • 当 chip=esp32 时将默认使用 sdkconfig_esp32.defaults 以及 partitions_esp32.csv
    • 当 chip=esp8266 时将默认使用 sdkconfig_esp8266.defaults 以及 partitions_esp8266.csv

           但是,本篇讲 esp8266 , 上篇已经讲了 esp32 ,所以这样做在 esp-aliyun 目录下执行:

    cd examples/solutions/smart_light
    make chip=esp8266 defconfig
    make menuconfig
    

           最后:将 USB 线连接好 ESP 设备和 PC,确保烧写端口正确。配置烧录串口,先擦除所有内容,然后编译并且烧录;

    make erase_flash
    make flash
    

    5.2 编译三元组:

    • 设备三元组请根据上篇博文来获取,先把参数替换进去,如下找到 single_mfg_config.csv 文件,编辑,替换里面的参数;具体的原理,后面的博文会讲;

    在这里插入图片描述


    • 先把参数替换进去,如下找到 single_mfg_config.csv 文件,编辑,替换里面的参数,就会生成 my_single_mfg.bin文件,如下图所示:
    $IDF_PATH/components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py --input single_mfg_config.csv --output my_single_mfg.bin --size 0x4000
    

    在这里插入图片描述


    • 然后,单独烧录这个文件进去,可以看到地址是 0x100000
    $IDF_PATH/components/esptool_py/esptool/esptool.py --port COM12 write_flash 0x100000 my_single_mfg.bin
    

    在这里插入图片描述


    六、配网和控制;


           配网是必须的,也是第一步,请参考上篇博文,一模一样的!但是目前 2019.9.26 在esp8266是可以零配功能的,就是:你首次烧录之后,设备处于配网状态,这时候对天猫精灵说下面语句,就可以配网啦,不需要手动输入ssid和密码了。

    • 【你说:】天猫精灵,找队友!
    • 【回复:】正在为你查找智能设备… 已发现智能灯,是否需要连接?
    • 【你说:】连接!

           这个 smart_light的接线 rgb 灯如下:

    /* Red LED 红色 */
    #define LEDC_IO_0 (0)
    /* Green LED 绿色 */
    #define LEDC_IO_1 (2)
    /* Blued LED  蓝色*/
    #define LEDC_IO_2 (4)
    


    九、其他;


           下篇的话,我详细为大家讲述这个工程如何移植和自定义业务。但是可能也要在国庆节之后喽!


    另外,不要把我的博客作为学习标准,我的只是笔记,难有疏忽之处,如果有,请指出来,也欢迎留言哈!

    • 玩转esp8266带你飞、加群QQ群,不喜的朋友勿喷勿加:434878850
    • esp8266源代码学习汇总(持续更新,欢迎star):https://github.com/xuhongv/StudyInEsp8266
    • esp32源代码学习汇总(持续更新,欢迎star):https://github.com/xuhongv/StudyInEsp32
    • 关注下面微信公众号二维码,干货多多,第一时间推送!
    展开全文
  • 在日常生活中,当我们传送一个“2G以下”文件给同事或朋友时,邮件以及QQ、微信等通讯软件即可满足我们的需求。然而,当我们面临大文件、多文件传输,甚至是向多人传送需求时,我们又该用哪些网络文件传送工具呢?...
    网络文件传输工具,秒杀各种网络文件传送工具的镭速云

    在日常生活中,当我们传送一个“2G以下”文件给同事或朋友时,邮件以及QQ、微信等通讯软件即可满足我们的需求。然而,当我们面临大文件、多文件传输,甚至是向多人传送需求时,我们又该用哪些网络文件传送工具呢?是不是又要去论坛悬赏求好用的网络文件传输工具了呢?

    如果有一个支持存储、共享、协作的平台,这些操作都将变得十分简单。

    2010年,云语科技专注于大数据传输加速及网络优化服务,致力于帮助各种机构在大数据时代实现更加高效的数据同步和信息互动。 

    镭速云是最具创新体验的企业文件协作云平台。通过镭速云,您可以随时随地对文件进行安全便捷的访问、共享和协作,从而实现人与数据的无缝连接。

    镭速云不是简单的文件传送工具,但可以轻松实现大文件、多文件传送以及向多人传送的需求。此外,它还可以为你的工作带来更多的便捷和高效。

    团队文件协作的新体验

    镭速云的协作文件夹可以帮助企业建立跨部门,甚至跨公司的文件资料共享平台。

    一方面,将各部门化零为整至统一的组织架构中,降低了之前因为各自为战导致的较高沟通成本。

    另一方面,企业可以利用该平台实现和客户的轻松文件沟通,方便员工服务客户。

    无限容量的文件保险库

    无论是企业内部存储服务器,还是U盘、硬盘、个人网盘,存储容量都有限,而且不利于统一管理,无法满足企业日益增长的数据存储和文件管理需求。而镭速云为企业提供了无限存储空间,帮助企业统一管理文件。

    并且,镭速云采用了行业最高级别的AES-256流加密,在上传过程就给文件上锁,落入服务器后二次存储加密,保障文件隐私和安全。所有云端数据多点备份,防止单节点事故导致的数据丢失。

    此外,镭速云还提供了顶级的权限设置,文件所有者对文件使用者可灵活设置权限,保障数据安全。

    口袋里的办公室

    无论是手机、Pad、笔记本还是电脑,都可以登入镭速云,随时随地调用您所需要的文件完成协作。镭速云支持包括Office、PDF、PSD、AI等在内100多种格式文件的高质量预览,让您在手机端直接查看专业文件。

    此外,镭速云还开发了强大的实时消息提醒功能,让您第一时间获知协作需求,并且可以直接在文件下进行文字或语音评论,提高效率。

    从此以后,网络文件传输将不再是我们面对的难题,因为有网络文件传输工具—-镭速云为您助力协作完成所有需求。

    --------------------------------------------------------------------------

    原文链接:https://www.raysync.cn/share

    展开全文
  • 阿里IoT平台APP配入口

    千次阅读 2019-05-05 11:34:57
    从前一直以为只有智能生活平台的项目产品才能使用app配。直到钉钉群里的大佬指明了道路,才发现IoT平台也可以。 路径: 物联网平台-开发服务-IoT Studio-项目-设备管理-移动配置-添加产品-配置-配引导设置 上图...
  • esp32 sdk 直连接入天猫精灵IOT开放平台,实现天猫精灵找队友零配功能和语音控制;
  • 通过阿里物联网平台,我们可以在不懂前后端开发的基础上,半个小时候左右就可以搭建一个智慧农业的物联网平台框架。 效果如下: 大数据面板: 设备管理: 设备地图分布: 支持视频监控...
  • 建设智慧校园,怎么能少得了管理网络?出品 |常言道作者 | 丁常彦如果说智慧校园的建设是为了让校园工作、学习和生活更加便捷、高效、智能,那么网络就相当于是智慧校园的“神经系统”。要做...
  • 物联网、人工智能、云计算都是当下的科技热点,而这些科技热点背后都离不开“”,什么是公有、私有、混合, IaaS、PaaS、SaaS…如果要与物联网、人工智能、云计算等等打交道,了解这些概念是最基础的要求。...
  • 阿里

    千次阅读 2013-04-23 21:10:44
    阿里 百科名片   阿里网站 2009年9月,阿里巴巴集团在十周年庆典上宣布成立子公司“阿里”,该公司将专注于云计算领域的研究和研发。“阿里”也成为继阿里巴巴、淘宝、支付宝、阿里软件、...
  • 本系列博客学习由非官方人员... 2、esp8266直连接入阿里物联网平台,实现天猫精灵找队友零配功能和语音控制; 3、esp32 sdk 直连接入天猫精灵IOT开放平台,实现天猫精灵找队友零配功能和语音控制; 文章目录 ...
  • -阿里-百科:阿里

    千次阅读 2019-04-04 16:22:00
    ylbtech--阿里-百科:阿里 阿里,阿里巴巴集团旗下云计算品牌,全球卓越的云计算技术和服务提供商。创立于2009年,在杭州、北京、硅谷等地设有研发中心和运营机构。 阿里创立于2009年,是全球领先...
  • 云端漫步各种

    千次阅读 2012-04-26 11:21:23
    1. 阿里 代表产品:阿里...实际落地案例:万网、管易软件、安存网络、欢乐逛、淘满意、囧记单词、刷机精灵、嘉兴第九区、八咏、评论啦 主页:http://www.aliyun.com/ 2. 新浪 代表产品:Sina
  • 普惠电脑 v1.2.9

    千次阅读 2019-03-12 14:45:52
     极普惠电脑手机版是一款改变用户上网方式的生活小工具,利用极普惠电脑手机版无需高配硬件,普通手机、低配电脑,乃至平板都可以轻松畅玩大型PC网游和线上办公。极普惠电脑手机版让您...
  • 本系列教程接入 阿里物联网平台 / 智能生活开放平台 / 阿里智能 / 天猫精灵 一、硬件准备 EMW3080模块,STC15单片机最小系统,传感器模块。 EMW3080B介绍 EMW3080是基于MX1290V2 SOC的单3.3V供电的、集成Wi-F....
  • ESP8266与阿里物联网①开发简介

    千次阅读 2019-09-16 09:46:44
    阿里物联网系列
  • 搭建服务器

    千次阅读 2018-01-10 13:26:49
    系统的出现,让我们的整个生活都发生了巨大的改变,在Android的世界里也不例外。本章就向读者介绍一个在云端的服务器,让移动开发能够方便的去通过实现移动端的后端服务。 1.移动后端服务介绍  随着这个概念...
  • 阿里盘诚邀“个人种子用户”

    千次阅读 2020-11-06 14:04:40
    一、官网地址 ... 二、种子用户报名 (1)活动明细 (2)填写报名信息提交即可 ...更多信息请关注公众号:「软件老王」,关注不迷路,软件老王和他的IT朋友们,分享一些他们的技术见解和生活故事。 ...
  • 也谈谈公有

    千次阅读 2019-12-22 18:20:56
    先看一篇文章: ...看看FB干的事情,够宏伟吧。 其实,不光FB,Google,AWS,甚至BAT都正在干或者准备干类似的事情… ...很早之前就看过一篇文章,就有人预测,公有巨头最终会吃掉所有的网络设备厂...
  • 揭秘 · 阿里第一女神 — 清宵

    万次阅读 多人点赞 2017-04-26 16:54:05
    正文在 2016 年阿里年会上,一位清纯美丽、身材高挑、健康阳光的“维秘天使”闪亮登场,令现场的阿里汉子们按耐不住心中的激荡,惊呼“女神”驾到! 如今随着网络的传播,这位阿里女神已经在 IT 圈掀起了小小...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 63,182
精华内容 25,272
关键字:

云表生活网