HarmonyOS鸿蒙Next关于ESP32-S3烧录OpenHarmony

HarmonyOS鸿蒙Next关于ESP32-S3烧录OpenHarmony 最近在尝试将Openharmony烧录到S3上,但是关于一些适配问题不是很理解,有哪些佬能提供一下完整的学习路径吗,或者有优质的学习视频路径

5 回复

学习参考:

目标:懂 S3 硬件、ESP-IDF、OH 目录结构、GN 编译
1、ESP32-S3 原厂基础

学习内容:S3 内核架构、Flash/PSRAM 分区、GPIO/WiFi/BLE/USB/Camera、menuconfig 配置、idf.py 编译烧录、分区表
视频资源:乐鑫官方 ESP-IDF 入门正点原子 ESP32-S3

2、OpenHarmony 整体框架入门

学习内容:3 大目录:device/(板级+芯片)、vendor/(产品配置)、build/(GN编译体系)BUILD.gn、bundle.json、config.gni、subsystem_config.json四大配置文件含义

工具:DevEco Device Tool(VSCode 插件)、Ubuntu 编译环境、串口日志抓取

文档资源:设备开发文档

更多关于HarmonyOS鸿蒙Next关于ESP32-S3烧录OpenHarmony的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


可以先学习下《ESP32U4WDH》。除了官方,CSDN资料和哔哩哔哩视频教程也比较多。
先NiobeU4跑通,再搞s3。

ESP32-S3 烧录 OpenHarmony 这块,建议先别一上来就研究“完整系统移植”,不然很容易被:

  • 编译链
  • HDF驱动
  • LiteOS
  • board适配
  • linker
  • partition
  • bootloader

这些东西直接劝退 😂

因为 ESP32-S3 上跑的其实不是“标准 HarmonyOS NEXT”,而是:

OpenHarmony 的轻量化版本(通常是 small / mini 系统)。

底层一般是:

  • LiteOS-M
  • FreeRTOS适配层
  • ESP-IDF

本质更偏 IoT 开发。

建议学习路径这样走,会顺很多:

第一阶段:先搞懂整体架构(非常重要)

先理解:

OpenHarmony
  ↓
轻量系统
  ↓
LiteOS-M
  ↓
BSP
  ↓
ESP32-S3

重点理解几个概念:

  • OpenHarmony 不是只有手机系统
  • ESP32-S3 跑的是轻量版本
  • 很多能力来自 ESP-IDF
  • OpenHarmony 更多是“框架层”

建议先看:

《OpenHarmony轻量系统架构》

官方:

OpenHarmony Docs

重点搜:

轻量系统
LiteOS-M
南向驱动
HDF

第二阶段:先不要自己移植,先跑官方Demo

这是最关键的。

很多人一开始就:

“我要移植OpenHarmony到ESP32-S3”

结果:

编译都过不了。

建议:

先跑通官方已有开发板。

ESP32-S3 目前社区里常见的是:

  • ESP32-S3-DevKitC
  • 乐鑫官方板
  • HiSpark WiFi IoT
  • BearPi

先跑:

  • HelloWorld
  • GPIO
  • WiFi
  • LVGL

这些。

先确认:

编译 -> 烧录 -> 启动 -> 日志

完整链路通了。

第三阶段:重点学习 ESP-IDF

这个其实比 OpenHarmony 本身还重要。

因为:

ESP32-S3 的底层驱动,

大量还是 ESP-IDF。

包括:

  • WiFi
  • BLE
  • Flash
  • PSRAM
  • USB
  • Camera

很多最终都会走 ESP-IDF。

建议重点学:

menuconfig
partition
idf.py
flash
monitor
component

官方:

ESP-IDF Programming Guide

这个非常重要。

第四阶段:学习 OpenHarmony 的 Board 适配

这时候再看:

  • vendor目录
  • board目录
  • device目录
  • bundle.json
  • BUILD.gn
  • subsystem_config.json

会容易很多。

OpenHarmony BSP 适配核心其实是:

芯片初始化
驱动适配
文件系统
启动流程

重点学习:

device/
vendor/
kernel/
drivers/

第五阶段:学习 HDF(驱动框架)

如果你以后想:

  • 自定义传感器
  • SPI设备
  • UART设备
  • Camera
  • LCD

那 HDF 必学。

但:

别一开始学。

因为 HDF 对新人非常痛苦。

先会:

  • GPIO
  • UART
  • WiFi

再碰 HDF。

视频学习路径(推荐)

目前真正质量比较高的 OpenHarmony IoT 视频,其实不多。

推荐几个相对靠谱的:

  1. OpenHarmony官方视频

B站搜:

OpenHarmony 轻量系统
OpenHarmony南向开发
OpenHarmony IoT

官方账号:

OpenHarmony哔哩哔哩官方

  1. 乐鑫 ESP32 + OpenHarmony

B站搜:

ESP32 OpenHarmony
ESP32-S3 OpenHarmony

很多是社区实战。

比官方文档更容易入门。

  1. HiSpark / BearPi 教程

这类教程其实很适合入门:

因为:

  • 文档完整
  • BSP完整
  • 社区多

哪怕你最后不用这些板子,

学习价值也很大。

建议重点避坑:

  1. 不要一开始就自己移植板子

先用已有 BSP。

  1. 不要先研究 HDF

先学应用层。

  1. 不要先研究 GN 编译系统

会非常痛苦。

  1. 不要直接研究源码

OpenHarmony 源码非常大。

先跑Demo。

最后给你一个最实用的建议:

ESP32-S3 + OpenHarmony,

真正难的不是“烧录”。

而是:

工具链 + BSP + 驱动适配

很多时候:

  • 编译不过
  • flash失败
  • PSRAM异常
  • partition错误
  • WiFi起不来

都和 OpenHarmony 本身关系不大。

而是 ESP-IDF 环境问题。

所以:

先把 ESP-IDF 学扎实,

再学 OpenHarmony,

效率会高很多。

ESP32-S3烧录OpenHarmony需先获取适配该芯片的源码(如OH社区版本),使用hb工具编译生成固件。随后通过串口连接设备,利用esptool.py或IDE内建烧录工具将bin文件写入。注意OH对ESP32-S3非官方原生支持,需自行适配或使用第三方移植。

想要在ESP32-S3上运行OpenHarmony,目前社区主要通过三方适配方案实现。推荐的学习路径如下:

  1. 基础环境搭建:先掌握官方Device开发指南,熟悉轻量系统(LiteOS-M)的编译与烧录流程。
  2. 社区适配库:直接查阅社区维护的 esp32-openharmony 仓库,里面有基于ESP-IDF的适配代码、编译脚本和详细移植文档。
  3. 手把手视频:在B站搜索“ESP32 适配 OpenHarmony”或“鸿蒙让ESP32重新复活”,能找到从环境配置到点灯的全流程实操视频。
  4. 调试重点:重点理解OpenHarmony的HDF驱动框架如何对接ESP32-S3的外设,可参考社区中已适配的GPIO、I2C等例程。

整个过程关键在适配核与驱动的移植,先按社区方案跑通编译,再逐步修改自己的板级配置。

回到顶部