今年杭州云栖大会上,AliOS Things正式发布,10月20号在github上开源v1.1.0版本。经过AliOS Things团队及合作伙伴1个多月的努力,很高兴有些更新可以和大家分享。
AliOS Things回顾
作为公众号的第一篇文章,在展开之前,先简单回顾一下AliOS Things的一些基本特性。
AliOS Things的愿景是,通过云端一体,创造新的服务,提供更好,更丰富的用户体验,并在不同的行业应用中降低运营成本,提高效率。
AliOS Things是一个Layered Architecture,自下而上包含:
- BSP:芯片厂商的板级代码
- HAL:硬件抽象层
- Kernel:包含自研的Rhino内核,Yloop,VFS,KV文件系统
- Protocols:协议栈,包括TCPIP,BLE,uMesh等
- Security:各类安全组件,包括TLS,TFS安全框架,TEE(可信执行环境)
- 中间件及服务:Alink/MQTT/CoAP连接协议,FOTA,JS引擎,AT指令框架
AliOS Things也是一个Component Architecture,开发者可以以非常直观的方式增减包括上述的各类组件。
AliOS Things通过Yloop异步事件框架,让开发者在大部分场景免去多线程开发的复杂性。同时,丰富的调试工具,包括内存泄露溢出检测,栈溢出检测,System Trace等,帮助开发者提升效率。我们称之为极简开发。
uMesh是为了丰富设备接入IP网络的方式而自研的自组网框架,它不依赖于具体的无线标准,已经支持802.11/802.15.4/BLE多种通信方式,并支持混合组网。uMesh是一种Routing Mesh实现,支持树状和网状拓扑。uMesh配合各类传感器,可以搭建各种有趣又有用的应用。
后续我们将陆续邀请AliOS Things团队的核心成员在云栖社区为大家详细讲解AliOS Things的各类特性,敬请关注。
AliOS Things v1.1.1的新特性
v1.1.1虽然是一个小版本升级,但是包含了不少新特性:
新平台支持:ESP32
ESP32是上海乐鑫科技开发的一款业界领先的WiFi/BLE Combo芯片。
AliOS Things for ESP32支持了绝大部分重要特性,包括:
- Rhino内核
- WiFi Station
- uMesh WiFi
- BLE
- FOTA
- Alink/MQTT/CoAP
AT框架
v1.1.1引入AT Parser,支持对不同AT通信模块的抽象,使得各类AT应用可以以统一的方式来访问AT功能。
在此基础上,引入了SAL(Socket Adapter Layer),支持LwIP over AT,让应用可以通过socket访问网络。SAL LwIP模式要求AT通信模块支持IP包的直接收发,目前庆科的MOC108已经支持该模式。
3BINs
多BIN框架,进一步升级,允许系统切割成kenel,framework,app三个镜像,支持更细粒度的FOTA。多BIN框架也进一步降低开发者的使用门槛,开发者可以以简单的方式把API从比如kernel层export给framework层使用,或者把framework层export给app层使用。
JS(JavaScript)运行环境
v1.1.1把自研的JS引擎Bone Engine通过AliOS Things开放给广大开发者使用。
BoneEngine for AOS, 是一套为AliOS Things优化定制的JavaScript引擎, 集成了各IoT模块,为AliOS Things及运行AliOS的设备提供一套JavaScript的编程及运行环境。采用 BoneEngine for AOS来构建物联网应用,可以极大的降低开发门槛,让更多开发者得以进入到硬件开发领域中。
进一步细节请参考上手指南。
Testbed for uDevice Center
v1.1.1也开放了用于搭建多设备调试环境的Testbed基础设施。配合AliOS Studio IDE环境的uDevice Center功能,开发者可以以图形化界面来操作调试多块设备。对于支持uMesh组网的设备,你甚至可以实时看到设备的组网情况,包括拓扑信息,信号强度等。我们会在近期发出如何基于Testbed/uDevice Center构建多设备调试环境的文章,敬请期待。
小结
AliOS Things将不断的把各类能力开放到广大开发者,有什么需求或者指教,欢迎访问github官网:https://github.com/alibaba/AliOS-Things