嵌入式架构学习1--前言
1 前言
最近有点时间,总结了一下之前项目中的问题,感觉还是对于除了路由器,手机之外的产品,宏观还是不很清楚。所以借着这段时间,对手表,耳机,眼镜,智能音箱/机器人,汽车座舱这些产品做一些小结。主要还是以学习开源的优秀项目为主。
产品特点如下:
| 产品 | 重点学习 |
|---|---|
| 手表 | RTOS/Linux、低功耗、Sensor、UI |
| TWS耳机 | RTOS、Bluetooth、Audio、低功耗 |
| AI眼镜 | Android/Linux、Camera、Display、Audio、AI |
| 路由器 | Linux、Network、Driver、容器 |
| 智能音箱/机器人 | Audio、AI、Linux、IPC |
| 汽车座舱 | Linux/Android、IPC、Power、Graphics、Network |
一些技术差异
| 手表 | TWS | AI眼镜 | 路由器 | |
|---|---|---|---|---|
| OS | RTOS/Linux | RTOS | Android/Linux | Linux |
| CPU | ARM | ARM | ARM | ARM |
| DSP | ★★★ | ★★★★★ | ★★★★★ | ★ |
| NPU | ★ | ★ | ★★★★★ | ★ |
| GPU | ★★★ | ★ | ★★★★★ | ★ |
| Camera | ★ | ★ | ★★★★★ | ★ |
| Audio | ★★★ | ★★★★★ | ★★★★★ | ★ |
| Display | ★★★★★ | ★ | ★★★★ | ★ |
| Sensor | ★★★★★ | ★★★ | ★★★★ | ★ |
| Bluetooth | ★★★★★ | ★★★★★ | ★★★★★ | ★★★ |
| WiFi | ★★★ | ★ | ★★★★★ | ★★★★★ |
| Network | ★★ | ★ | ★★★★ | ★★★★★ |
| Power | ★★★★★ | ★★★★★ | ★★★★★ | ★★★ |
| IPC | ★★★ | ★★★ | ★★★★★ | ★★★★ |
| OTA | ★★★★ | ★★★★ | ★★★★★ | ★★★★★ |
| Linux | ★★★ | ★ | ★★★★★ | ★★★★★ |
选出的可以用来学习的开源项目:
| 类别 | 项目1 | 项目2 | 项目3 |
|---|---|---|---|
| 🎧 TWS/耳机 | OpenPineBuds | OpenEarable 2 | OpenEarable 1 |
| ⌚ 手表 | ZSWatch | InfiniTime/PineTime | Bangle.js 2 |
| 📡 路由器 | OpenWrt One | NanoPi R4S + OpenWrt | OpenWrt x86 |
| 🥽 AI眼镜 | Brilliant Labs Frame | AugmentOS | OpenSQZ Glass |
| 🔊 音箱 | Xiaozhi ESP32 | Home Assistant Voice/ESPHome | Nest Audio Open PCB |
| 🤖 机器人 | TurtleBot 4 | OpenAMR | OpenEAI-Arm |
| 🚗 汽车座舱 | AGL | Android Automotive / Car Samples | OCTAVE |
重点大概是:OpenPineBuds → ZSWatch → OpenWrt One → Frame → Xiaozhi → TurtleBot 4 → AGL

2 OpenPineBuds
这是非常值得你研究的一个。
它的价值不是代码量有多大,而是:
真实 TWS 产品 + Firmware + Bluetooth + Audio + 双耳协同 + Power
它属于那种很适合你“拆架构”的项目。
可以重点研究:
Phone
│
Bluetooth
│
┌───────┴───────┐
│ │
Left Right
Bud Bud
│ │
├── BT ─────────┤
│ │
Audio Audio
│ │
DSP/Codec DSP/Codec
│ │
Speaker Speaker
重点看:
- Bluetooth
- TWS synchronization
- Audio pipeline
- Codec
- DSP
- touch
- battery
- charging case
- OTA
- bootloader
- low power
非常适合研究“实时系统 + Audio + Power”。
3 ZSWatch
Hardware + Firmware + RTOS + BLE + Sensor + Display
而且是:
Zephyr RTOS
硬件使用 nRF5340,双核,带:
nRF5340
├── CPU
├── BLE
├── SPI
├── Display
├── Touch
├── BMI270
└── BMP581
项目同时公开硬件设计和软件。
可以重点研究:
Zephyr
├── DeviceTree
├── Drivers
├── Threads
├── Work Queue
├── BLE
├── Power
└── LVGL
这个项目非常适合你目前的水平。
4 OpenWrt One
这是最值得研究的路由器项目。
原因非常简单:
它就是 OpenWrt 社区自己设计的硬件。
官方提供硬件文档和对应软件源码。
可以完整研究:
BootROM
↓
U-Boot
↓
OpenWrt Kernel
↓
Drivers
↓
Network Stack
↓
Netfilter
↓
ubus
↓
procd
↓
netifd
↓
hostapd
↓
LuCI
这对你学习:
Embedded Linux System Architecture
价值非常高。
5 Brilliant Labs Frame
这个项目非常漂亮。
它不是简单 ESP32 + 摄像头。
它的系统架构直接分成:
Frame
│
┌────────┴────────┐
│ │
nRF52 FPGA
│ │
System Control Camera/Graphics
│
┌────────┼────────┐
↓ ↓ ↓
Lua BLE AI
│
Power
官方代码库包括:
- nRF52 Application
- nRF52 Bootloader
- FPGA RTL
其中 nRF52 负责系统控制、Lua、Bluetooth、AI、Power Management,而 FPGA 负责 graphics/camera acceleration。
这个特别值得研究。因为现在准备学习 Camera。
这里正好能看到:
MCU + FPGA + Camera + Display + BLE + AI + Power
这就是非常典型的 Wearable Architecture。
6 Xiaozhi ESP32
核心项目:
它特别适合。因为它已经把:
Mic
↓
Audio
↓
Wake Word
↓
WiFi
↓
Cloud / LLM
↓
TTS
↓
Audio
↓
Speaker
完整串起来了。
而且是 ESP32-S3,非常适合实际购买开发板后研究。
应该重点看:
Audio
Network
WebSocket
Protocol
State Machine
OTA
Power
UI
AI
7 TurtleBot 4
这个是必看。
硬件:
Raspberry Pi 4
│
├── Camera
├── LiDAR
├── WiFi
└── ROS2
│
Create 3 Base
硬件资料也是公开的。
它非常适合研究:
Linux
↓
ROS2
↓
DDS
↓
Node
↓
microcontroller
↓
Motor
这其实就是:
Embedded Linux + MCU + Distributed IPC
8 Automotive Grade Linux
这是汽车 Embedded Linux 非常重要的参考项目。
它直接就是:
Yocto
↓
Linux
↓
AGL
↓
Automotive Services
↓
IVI
↓
Applications
仓库里面可以看到:
meta-agl-ivi
meta-app-framework
meta-pipewire
meta-netboot
...
这对学习:
大型 Embedded Linux BSP
非常有价值。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)