天猫精灵开发智能灯学习笔记

什么是天猫精灵?

天猫精灵是阿里巴巴集团旗下创新业务,负责智能消费电子产品的研发,生产和销售,主要业务涵盖智能音箱、智能家居、服务机器人、自动驾驶等。我们希望通过下一代人机交互技术和产品,给用户带来更加智能的生活方式。

官方是这么下的定义,我觉得它现在就是一个智障音响,很多功能有待挖掘…

IoTConnect Kit Wi-Fi SDK开发

天猫精灵IoTConnect Kit Wi-Fi SDK是阿里巴巴人工智能实验室基于AliOS-Things,封装好对接天猫精灵语音配网与控制的功能完备的SDK,赋能给广大开发者。基于该SDK,用户只需要在精灵开放平台上定义好产品,然后进行设备属性控制部分的开发,数小时内便可开发出一款完整的Wi-Fi IoT产品接入到天猫精灵生态。

从网上接触到的视频来看实现方法有很多,真的是各有各的招式和套路、我正在学习一位博主自己录的视频,但是今天遇到了一些问题,还没有解决,于是感觉还是先研究一下官方给的开发指南难学习一下流程,来了后发现原来还有一种方式,那就是IoTConnect Kit Wi-Fi SDK开发。(网上有拆解智能灯泡改装的,有自己用WiFi模块进行lua二次开发的、有用乐鑫SDK编程esp8266的因为这些都不熟悉,索性就直接再学习一下官方推荐的方式啦)

1.开发流程

在这里插入图片描述
设备开发者需要安装精灵Wi-Fi SDK的开发工具以及获取代码,配置运行的目标模组,然后进行产品功能的开发。

2.天猫精灵IoTConnect Kit Wi-Fi SDK结构

SDK提供了API供设备厂商调用,用于实现与天猫精灵IoT平台通信以及一些其它的辅助功能,比如WiFi配网、设备控制等。

SDK将需要OS或者硬件支持的操作定义为HAL函数,芯片厂商在对接到该SDK时需要将这些HAL函数进行实现。模组厂商可利用已对接好的芯片开发模组并提供给设备厂商开发产品。
在这里插入图片描述

3.SDK获取

若您希望使用已认证的WiFi模组进行产品开发,或者您希望移植精灵SDK到您的模组,可以下载包含AliOS Things的精灵IoTConnect Kit Wi-Fi SDK。

当前SDK包名和版本号为:ali-smartliving-device-alios-things, v1.0.0.

4.开发环境设置

SDK开发环境为Linux,推荐Ubuntu(版本16.04 x64)。

看到这我就发现了问题,我个菜鸡还不会用Linux,看来要学习一下如何安装Ubuntu了

4.1.安装程序运行时库

sudo apt-get update

sudo apt-get -y install libssl-dev:i386

sudo apt-get -y install libncurses-dev:i386

sudo apt-get -y install libreadline-dev:i386

4.2.安装依赖软件包

sudo apt-get update

sudo apt-get -y install git wget make flex bison gperf unzip

sudo apt-get -y install gcc-multilib

sudo apt-get -y install libssl-dev

sudo apt-get -y install libncurses-dev

sudo apt-get -y install libreadline-dev

sudo apt-get -y install python python-pip

4.3.安装Python Packages

python -m pip install setuptools

python -m pip install wheel

python -m pip install aos-cube

python -m pip install esptool

python -m pip install pyserial

python -m pip install scons

5.SDK编译

将下载的SDK zip包解压后,打开Terminal,通过cd命令进入与打开文件夹相同的路径。

验证aos是可以正常编译,下面是在庆科EMW3080(RTL8710BN)模组上编译一个打印hello world程序示例:

aos make [email protected]

完成编译后,会在ali-smartliving-device-alios-things\out\[email protected]\binary目录下生成[email protected]文件,该文件即为需要烧写的文件,用户可以将其烧写到3080模组上查看程序是否可以正常运行。

如需要将编译结果清除掉,可以执行如下指令:

aos make clean

注:如果模组不是EMW3080,则替换上面命令中@之后的mk3080,用户可以查看目录board得知支持的模组。

6.SDK烧录

在编译得到固件后,即可以将固件烧写到模组中执行,不同的模组烧写过程是不一样的,请联系模组厂商获取烧写工具以及烧写说明。

官方劝退了,看来想用官方推荐的方法还真的要下点功夫,明天继续研究博主的基于esp8266的开发模式,难道我要装Ubuntu(版本16.04 x64)整一个双系统??