架构:
特性:
基础能力:内核资源占用少(RAM < 1KB, ROM < 2KB),提供系统和芯片级别安全保护、硬实时能力、低功耗框架、差分OTA等功能。
核心协议栈技术:产品级 TCP/UDP/IPv6/IPv4 支持;MQTT,CoAP,HTTP 支持;WiFi, 蓝牙,LoRA,NB-IoT等协议支持。
自组织网络:支持阿里巴巴自研的uMesh 即插即用网络技术,支持物联网设备上电自动建立通信网络。
设备安全:提供TEE可信计算框架、KM密钥管理、Crypto密码、ID2身份认证、SST安全存储等安全环境,提供需要高安全的应用场景。
可移植性:支持主流的芯片,包括STM32、平头哥、小博通、Nordic蓝牙芯片、NXP、乐鑫、ASR、瑞昱等100多类不同芯片。
调试手段:支持栈回溯以及coredump技术,具备cli终端命令调试;支持日志上传到云端然后智能解析日志定位bug。
HAL 抽象
硬件抽象HAL层最主要的目的是为了屏蔽不同芯片平台的差异,对上提供统一硬件访问接口,从而使上面的软件不会随芯片而改变。目前AliOS Things定义了全面的HAL抽象层,只要对接相应的HAL接口就能控制芯片的控制器,从而达到控制硬件外设的目的。
AliOS Things定义的HAL层硬件包括如下模块:
1 | GPIO |
2 | UART |
3 | SPI |
4 | I2C |
5 | FLASH |
6 | PWM |
7 | TIMER |
8 | WDG |
9 | RTC |
10 | ADC |
11 | DAC |
12 | RNG |
13 | I2S |
14 | QSPI |
15 | CAN |
16 | NAND |
17 | NOR |
目前HAL抽象层的定义已经能兼容各主流芯片公司的标准,比如STM32,Beken,全志,NXP等芯片厂商,用户可参照已有平台的HAL封装实现。
hal相关头文件定义可参考:include/aos/hal
网络支持
AliOS Things提供了具备如下功能的Wifi Service模块,方便快速连入Wi-Fi网络。
AliOS Things在支持LwIP 2.0.0协议栈的基础上,对速率吞吐进行了专项优化,性能优于Linux。
云平台适配
Haas 100搭载的AliOS Things3.1 上提供了LinkKit 3.0.1连云组件。提供以下应用层协议:
- MQTT;
- HTTP;
- HTTP2;
- CoAP等。
同时针对阿里云IoT平台提供定制化接入方案。包括:
- 认证鉴权;
- 动态连接(一型一密);
- 安全通道(MbedTLS/iTLS);
- 物模型;
- 子设备代理;
- 设备影子;
- Wi-Fi配网与账户绑定(仅针对飞燕平台)等。
使用LinkKit,可帮助客户快速接入阿里云IoT平台或其细分业务平台(如飞燕)。