LV01-01-AliOSThings-02-开发环境搭建

本文主要是AliOSThings开发环境搭建的相关笔记,若笔记中有错误或者不合适的地方,欢迎批评指正😃。

点击查看使用工具及版本
Windows版本 windows11
Ubuntu版本 Ubuntu22.04的64位版本
VMware® Workstation 16 Pro 16.2.3 build-19376536
终端软件 MobaXterm(Professional Edition v23.0 Build 5042 (license))
点击查看本文参考资料
分类 网址 说明
官方网站 阿里云 阿里云官网主页
阿里生活物联平台 生活物联网平台(飞燕平台)主页
AliGenie 天猫精灵开放平台AliGenie主页
阿里物联网平台 阿里物联网平台主页
Bluetooth 技术网站 蓝牙协议规范什么的可以来这里找
Telink Telink | Chips for a Smarter IoT (telink-semi.com)
Telink中文官网
开发手册 AliOS Things开发指南 AliOS Things开发指南,这里是最新版本,可以直接从官网找到
AliOS Things开发指南 AliOS Things应用开发指南,这里应该是3.3版本的完整开发文档
AliOS Things开发指南(3.0) AliOS Things应用开发指南,这里应该是3.0版本的完整开发文档
生活物联网平台开发文档 生活物联网平台(飞燕平台)开发文档
《设备端开发指南》
Wi-Fi IoT品类定义与功能开发 天猫精灵IoT开放平台——Wi-Fi IoT品类定义与功能开发
硬件平台 mk3080 WiFi开发板 WiFi开发板使用指南-阿里云开发者社区
esp8266开发板 一个教程:ESP8266-NodeMCU开发板详解-太极创客 (taichi-maker.com)
TLSR8258 Datasheet Datasheet for Telink BLE + IEEE802.15.4 MultiStandard Wireless SoC TLSR8258
参考资料 AliOS Things 3.0 应用开发指南 这个只是一篇参考文章,里面是一些环境搭建相关的,可以参考
IP知识百科 - 华为 (huawei.com) IP的一些相关知识点
点击查看相关文件下载
分类 网址 说明
蓝牙规范相关文档 Core Specification 5.2 核心规格 5.2,该规范定义了创建可互操作的Bluetooth 设备所需的技术。
《Core_v5.2.pdf》
Mesh Model(v1.1) 本Bluetooth 规范定义了模型(以及它们所需的状态和消息),这些模型用于在mesh 网络中的节点上执行基本功能,超出了Bluetooth Mesh 配置文件 规范中定义的基础模型。
本规范包括定义跨设备类型标准功能的通用模型,以及支持关键mesh 场景的模型,如照明控制、传感器、时间和场景。
《MshMDL_v1.1.pdf》
Mesh Profile(v1.0.1) 该Bluetooth 规范定义了基本要求,以实现可互操作的mesh 网络解决方案,用于Bluetooth 低能量无线技术。
《MshPRFv1.0.1.pdf》
Mesh Device Properties 本规范包含Bluetooth Mesh 配置文件 和Bluetooth Mesh 模型规范所要求的设备属性的定义。
但是跟之前的有些区别,我主要看的之前的版本:《MMeshDeviceProperties_v1.2.pdf》
GATT Specification Supplement GATT Specification Supplement | Bluetooth® Technology Website。
好像可以在线看:《GATT Specification Supplement》
Assigned Numbers GATT的一些类型定义可以在这里找。
AliOS Things alios-things/AliOS-Things Gitee上的AliOSThings SDK源码仓库
alibaba/AliOS-Things GitHub上的AliOSThings SDK源码仓库
天猫精灵蓝牙Mesh协议栈 alibaba-archive/genie-bt-mesh-stack GitHub上的天猫精灵蓝牙Mesh协议栈源码仓库。
之前是在alibaba/genie-bt-mesh-stack这个仓库。
写笔记的时候最新提交为faf523618a6a2560090fc423222b9db80984bb7a
蓝牙Mesh设备开发指南 阿里云生活服务平台开发手册——蓝牙设备开发一节中的内容

一、概述

对于环境搭建,我们可以直接看这里:如何通过VisualStudioCode搭建开发环境_IoT物联网操作系统-阿里云帮助中心 (aliyun.com)。这里是使用VScode来进行开发,但是我们在linux中不想使用VScode怎么办?当然也是可以的啦。后边我们就来学习一下怎么搭建开发环境。

二、环境准备

1. VMware

这个软件是虚拟机,我们在这个里边运行ubuntu。安装比较简单,这里就不说明了。

2. ubuntu

这里我选择的是ubuntu16.04,据说这是最稳定的版本,主要是它发布已经很久了,网上的资料很多,而且很多的教程什么的都是在这个版本上进行开发,学习一个东西,最好就是找资料多的吧。

image-20231105094718089

三、开发环境搭建

1. git安装

这个主要是用来进行版本控制和拉取AliOSThings源码用的,平时都有用,之前有相关的安装以及配置的笔记,这里就不写了。

2. python

python主要是AliOSThings在进行编译的时候会用到,我们执行以下命令安装:

1
sudo apt-get install -y python

一般好像是内核直接有:

image-20231105095220933

要是没有的话,这个命令就可以安装。安装完毕后我们可以通过以下命令来查看版本,确保是否安装成功:

1
2
hk@vm:~$ python -V
Python 2.7.12

3. pip

3.1 安装pip

pip 是python 包管理工具,该工具提供了对python包的查找、下载、安装、卸载的功能。我们可以直接在线安装:

1
sudo apt-get install -y pip

然后貌似会出现这样的问题:

image-20231105095423095

额,好像是命令不对,我们执行以下命令:

1
sudo apt install python-pip

然后就可以开始安装了,安装完毕后我们可以通过下边的命令查看版本:

1
2
3
hk@vm:~$ pip -V
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)

这里有坑,巨坑,后边再说。

3.2 修改镜像源

安装成功后,可以开始修改镜像源啦,为什么要修改镜像源?原因就是从默认的镜像源下载一些包的时候可能会超级慢,也可能会下载失败,当然也可以不换,这里只是提供方法,我自己并未更换,因为换了之后,一堆的坑,总是找不到包,巨坑。我们可以参考这里pypi镜像_pypi下载地址_pypi安装教程-阿里巴巴开源镜像站 (aliyun.com),然后参考这一部分就可以啦:

image-20231105100033835

我们创建相应的文件,当然,要是发现有的话们就不用创建啦:

1
2
3
cd ~
mkdir .pip
touch pip.conf

然后再 pip.conf 文件中添加以下内容:

1
2
3
4
5
[global]
index-url=http://mirrors.cloud.aliyuncs.com/pypi/simple/

[install]
trusted-host=mirrors.cloud.aliyuncs.com

然后我们更新一下pip:

1
python -m pip install --upgrade pip

然后不出意外的话,就会报这个喽:

image-20231105100511149

说什么版本不够新,让先更新版本。

3.3 更新pip

还记得安装的时候说安装的时候有坑,巨坑,问题就在这里了,pip在线安装了,但是它不是最新的,无法更新,还无法使用,那该咋办?更新pip喽,在线安装的不是最新版本,那怎么更新?只能官网找方法了:Installation - pip documentation v23.3.1 (pypa.io)给我们提供了两种方式

image-20231105101007323

我这里选择了第二种(详细的文档可以看这里 GitHub - pypa/get-pip: Helper scripts to install pip, in a Python installation that doesn’t have it.),我们先下载bootstrap.pypa.io/get-pip.py,然后执行下边的命令:

1
python get-pip.py

不出意外的话,又凉了:

image-20231105101447182

怎么办?按照提示下适用于2.7版本python的对应的文件喽:bootstrap.pypa.io/pip/2.7/get-pip.py。下载完后重新执行就行了。绝了,不出意外,按照上边的步骤一步一步走下来的话,又又又凉了:

image-20231105102032508

后来发现,这是因为我们前边修改镜像源的原因,所以,删掉之前的镜像源文件 ~/.pip/pip.conf然后重新执行下边的命令:

1
python get-pip.py

然后就可以开始正常安装啦:

image-20231105102200025

安装完毕后如下图所示:

image-20231105102306550

然后我们重开一个终端,原来的可能是环境变量没生效吧,直接查看版本会找不到pip命令,所以重开一个就行了:

1
2
hk@vm:~$ pip -V
pip 20.3.4 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7)

然后我们再更新源就可以了。

4. setuptools和wheel

这两个是工具,具体什么用没深究,安装就是了:

1
2
pip install setuptools
pip install wheel

安装完毕后如下图:

image-20231105102757129

5. aos-cube

5.1 工具安装

接下来就是aos-cube工具了,这个后边AliOSThings会用到,注意一点,我在写这个笔记的时候,使用阿里的pip源会报找不到这个包,这个时候把源搞成默认的就行了,真的是坑:

1
pip install -U aos-cube

然后就可以开始安装啦:

image-20231105103310551

下载完毕后如下图所示:

image-20231105104521791

我们可以看一下工具被安装到了哪里:

1
2
hk@vm:~$ which aos
/home/hk/.local/bin/aos

可以看到对应的工具都在这里了:

image-20231105104841330

5.2 验证是否可用

我们在终端执行:

1
aos -h

就会打开aos的帮助界面啦:

image-20231105105228196