@mainpage AliOS Things 概述
AliOS Things 发布于2017年杭州云栖大会, 是 AliOS 家族旗下的、面向IoT领域的、高可伸缩的物联网操作系统,于2017年10月20号宣布在github上开源,当前最新的版本是 AliOS Things 3.3 。
AliOS Things 支持多种CPU架构,包括:ARM,C-Sky,MIPS,RISCV等。
AliOS Things 适配了分层架构和组件架构。包括以下部分:
- BSP: 板级支持包
- HAL: 硬件适配层,包括WiFi,蓝牙,I2C,SPI,UART,Flash 等
- Kernel: 包括Rhino RTOS 内核,VFS,KV Storage,CLI,C++ 等
- Network: 包括LwIP 轻量级TCP/IP协议栈,BLE 低功耗蓝牙协议栈,LoRaWAN 协议栈等
- Security: 包括TLS(mbedTLS and cutomized iTLS),ID2,SST(Trusted Storage),Crypto,TEE(Trusted Execution Environment) 等
- AOS API: AliOS Things 提供给应用软件和组件的API
- VFS驱动框架:设备驱动提供给组件和应用的服务接口
- Component: 阿里巴巴增值和常用的物联网组件,包括LinkSDK,OTA(安全差分升级),ulog(日志服务),uData(传感器框架),uDisplay(图形接口),WiFi配网 等
- Application: 丰富的示例代码
所有的模块都作为组件的形式存在,通过yaml进行配置,应用程序可以很方便的选择需要的组件。
- 统一的VFS接入方式,更标准的应用开发模式
- 更小的系统,yaml构建方式更直观
- 更全面的JavaScript和MicroPython轻应用开发框架的支持
- 全面完善的组件、解决方案和系统文档。格式更规范与开发者友好
- 升级了LinkSDK,新增设备引导服务、设备诊断、日志上报功能
- 新增蓝牙配网、Wi-Fi Camera、OLED等组件,解决方案能直接调用
AliOS Things 3.3 版本支持官方已适配如下硬件
- HaaS100
- HaaS EDU K1
- HaaS200
快速上手
-
参考:HaaS100快速开始
-
参考:HaaS200快速开始
文档中心
- 请到HaaS官方网站 文档中心查看。
贡献代码
- 参考:开发者贡献。
物联网平台
- AliOS Things 能帮助你更加快速地接入阿里云物联网平台。
AliOS Things 开源源码遵循 Apache 2.0 license 开源协议。
- py_engine: 新增ESP32模组芯片支持,删除冗余的micropython-lib文件
- oasl_aos: 修改不匹配的返回类型
- posix: 增加ESP_IDF_VERSION以区分不同的IDF版本
- ota: 用mbedtls_md5_starts_ret替换mbedtls_md5_starts
- amp_adapter: 支持IDF4.4
- nodemcu_c3: 新增ESP32-C3开发板支持
- py_engine: 修改python引擎程编译方式为CMake,
- HaaS200 支持HaaS-Python 2.0标准
- haas1000: 解决手动重启设备无法进行烧录的问题
- rtl872xd: 解决手动重启设备无法进行烧录的问题
- documentation: 添加驱动开发说明
- haas_lib_bundles_python: HaaS2.0 API说明文档、趣味案例和硬件积木驱动
- riscv64位架构支持
- posix: 清理warning, 支持scandir api
- haas1000 ,haas200, pwm组件支持 pwm的南向接口
- 修复timer oneshot模式下reload失效问题
- 解决在windows下编译eduk1时提示命令过长,无法生成lds文件引起的编译失败问题
- JavaScript轻应用:IoT-Device修复publish内存泄漏问题、优化物模型初始化流程;IoT-Gateway增加NTP时间获取功能、完善拓扑管理、子设备注册和登陆登出等API;新增以太网配网功能,支持静态IP配网;新增UDP功能;更新JS轻应用版本信息获取接口;修复setTimeout、SPI的write问题等
- python轻应用:micropython引擎升级到V1.17;API对齐HaaS轻应用接口标准;新增BLE支持;GPIO适配层重构;封装Python视觉AI接口
- components:新增linkkit、ble_mesh、genie_service组件用于天猫精灵IoT生态的接入;
- ucloud_ai:增加车牌识别和人体检测接口
- solutions:根据系统性能决定-j线程数量提升编译速度;新增linkkit_genie_demo案例:基于HaaS200通过Wi-Fi接入天猫精灵IoT生态的案例;新增genie_mesh_demo案例:基于HaaS200实现可被天猫精灵连接的ble mesh
- posix:头文件标准化
- libc_stub:支持libc多线程
- rhino:支持libc多线程
- http:修复因为http buffer大小更新导致ota栈溢出问题
- ota:修复ota断点续传失效问题
- driver:新增PWM AOS接口;修复UART发送数据流中间会有过长的间隔的问题。
特别感谢为本期迭代提出宝贵意见和建议的开发者:陈文源、莫学良等
- JavaScript轻应用:修改http对接问题、支持tcp及mqtt组件、新增智慧农业样板间示例代码等
- python轻应用:增加智能对话机器人python接口、增加token获取接口
- ucloud_ai:增加智能对话机器人、增加token获取接口
- ai_agent:增加“HaaS HaaS”语言唤醒功能、增加TFLite-Micro推理引擎
- solution:添加TFLite-Micro离线快捷词唤醒案例
- netmgr:支持根据指定channel进行扫描、修复wifi.conf内容为空导致异常问题等
- HaaS100:更新驱动库、优化二级boot、产测功能可配置等
- HaaS200:更新驱动库、优化二级boot等
- 文档:新增haas-studio使用说明和代码风格规范
特别感谢为本期迭代贡献代码的开发者:WilliamArthur、忙碌的死龙等
- JavaScript轻应用:支持oss上传及下载功能、支持promise功能、添加ulog示例、修复问题若干
- python轻应用:支持ota功能、linksdk动态注册、支持在线文件传输、framebuf显示功能、kv功能
- ota:统一haas100和haas200的ota升级相关接口
- HaaS100:支持MTD驱动子系统、修复SPI初始化失败等问题
- vfs:修复多任务并发访问设备节点的互斥问题
- netmgr:支持AP功能、完善连接失败的重试机制、修复上电无法自动重连问题等
- cli:修复命令回显没有发送至云端问题
- 文档:优化贡献代码说明、添加ping/ifconfig/tftp/iperf等命令说明
特别感谢为本期迭代提出宝贵意见和建议的开发者:空空、刘洪峰、刘超、莫学良、李大棚等
- JavaScript轻应用框架v3.0发布
- 新增案例:JavaScript和Python双引擎运行环境,一个镜像同时包含两套轻应用框架
- HaaS200支持PSRAM,4MB内存全解锁
- HaaS200 OTA支持压缩升级,增加更多空间给系统分区
- 优化HaaS200烧录成功率
- 增加HaaS200 windows编译支持
- 优化文档,优化各案例名称
- 发布蓝牙配网小程序
- HaaS200 OTA功能发布
- HaaS200 支持Python/Javascript轻应用
- HaaS200 加强debug能力
- HaaS200 驱动子系统发布(UART/GPIO/MTD/Watchdog/I2C)
- 增加HaaS200支持
- CSI驱动系统发布,支持I2C,flash,Uart,GPIO,watchdog
- 增加继电器外设案例
- 优化蓝牙协议栈
- 优化EDU K1烧录
- 实现蓝牙配网的功能
- 优化文档
- 解决linksdk_gateway_demo案例无法配网问题
- mbedtls: 解决在package.yaml配置不生效问题
- audio_demo: 解决打包文件找不到问题,感激空空发现这个问题
- rfid_demo: 解决uart2打开失败问题,感激蒋才林发现这个问题
- audio_demo: 优化步骤,自动下载三方代码
- 新增语音播放、千里传音、屏幕显示、蓝牙配网、IDE一键热更新等众多功能
- 使用支付宝小程序对HaaS100进行配网、配置三元组以及操控HaaS LED灯的案例 客户紧急需要支付宝小程序案例
- 统一的VFS接入方式,更标准的应用开发模式
- 更小的系统,yaml构建方式更直观
- 更全面的JavaScript和MicroPython轻应用开发框架的支持
- 全面完善的组件、解决方案和系统文档。格式更规范与开发者友好
- 升级了LinkSDK,新增设备引导服务、设备诊断、日志上报功能
- 新增蓝牙配网、Wi-Fi Camera、OLED等组件,解决方案能直接调用