乐于分享
好东西不私藏

极客星闪 | 内功:烧录还得下载软件?这套开源网页烧录器,让浏览器直接给 WS63/BS2X 传功

极客星闪 | 内功:烧录还得下载软件?这套开源网页烧录器,让浏览器直接给 WS63/BS2X 传功

海星(StarFish)社区出品的网页在线烧录库,纯前端、零依赖、开箱即用。

TL;DR (核心摘要)

面向星闪 WS63 / BS2x(BS21 / BS21E)系列芯片的网页在线烧录库 nearlink-web-flasher:基于浏览器原生 Web Serial API,无需安装任何烧录软件,在 Chrome / Edge / Opera 里直接完成 .fwpkg 固件的解析、握手、传输与烧录。Apache 2.0 开源。

1. 为什么烧录需要这套「轻功」?

在嵌入式江湖里,烧录这门功夫,门槛一直不低:

  • • 重兵器:先要下载、安装对应的烧录工具,还常常只认 Windows;
  • • 门派林立:不同芯片、不同系统,工具各不相同;
  • • 入门难:拿到一块新板子,光配环境就要折腾半天;
  • • 传功难:想给用户发一个固件,用户还得先学会用烧录软件。

有没有一种方式,打开浏览器就能烧录?

就像轻功高手——不搬重兵器,隔空一点,内力直达芯片。

nearlink-web-flasher,就是这套「轻功」。

👉 在线体验:不用写代码,直接打开 https://hinearlink.com/firmware,浏览器里就能给星闪芯片烧录固件。

2. 核心心法:三条内功经脉

整套烧录流程,拆开就是三步内功:

2.1 解析 .fwpkg(固件包)

.fwpkg 是海思(HiSilicon)的固件封装格式,把引导程序(LoaderBoot)和多个固件分区打包成一个文件。解析器会做魔数校验、CRC 校验、分区表解析,一步到位。

2.2 LoaderBoot 握手

基于串口的烧录握手协议:握手、切换波特率、发送分区、复位,WS63 / BS2x 通用。

2.3 YMODEM 传输

经典文件传输协议,CRC 模式、1024 字节数据块,稳定可靠。

这三条经脉都在 src/ 目录里,docs/ 还有完整的协议文档与格式说明,想深入研究的开发者可以直接看源码。

3. 快速上手:三招入门

第一招:安装

1

npm install nearlink-web-flasher

第二招:调用

1
2
3
4
5
6
7
8
9

import { NearLinkFlasher } from 'nearlink-web-flasher';const flasher = new NearLinkFlasher();const file = document.querySelector('#firmware').files[0];await flasher.flash(file, {  baudRate: 115200,               // 可设 460800 / 921600 / 2000000 / 4000000  onProgress: ({ percent, message }) => console.log(`[${percent}%] ${message}`),});

第三招:复位

烧录过程中按提示给芯片按一下复位键(RST)完成握手,剩下的交给浏览器。

🧰 准备:浏览器用 Chrome / Edge / Opera 89+;Windows 用户先装一次 CH340 串口驱动(macOS 与多数 Linux 免驱)。

💡 不习惯 npm?还有更省事的两招:从 Git 直接装,或者浏览器里直接 import 源码文件(连 npm 都不需要)。

4. 加入 StarFish 社区,如何开始修炼?

  • • 获取秘籍:GitCode 仓库 → https://gitcode.com/hinearlink/nearlink-web-flasher
  • • 在线体验:https://hinearlink.com/firmware
  • • npm 安装:npm install nearlink-web-flasher
  • • 开源许可:Apache 2.0(含专利授权条款)
  • • 作者:GaoXiaolong

📝 本节总结 (Key Takeaways)

  • • 零依赖:纯前端 ES 模块,无构建步骤,开箱即用;
  • • 一个库通吃:WS63 与 BS2x(BS21 / BS21E)统一支持;
  • • 可扩展:完整进度回调,方便接入任意 UI;
  • • 开源免费:Apache 2.0,可自由使用、修改、分发。

❓ 常见问题 (FAQ)

Q:一定要用 npm 吗?A:不用。也可以从 Git 直接装,或浏览器里直接 import 源码文件,零依赖使用。

Q:需要装驱动吗?A:Windows 用户需装一次 CH340 串口驱动;macOS 和多数 Linux 发行版免驱。

Q:支持哪些芯片?A:星闪 WS63 与 BS2x(BS21 / BS21E)系列。

Q:安全上下文是什么?A:Web Serial API 要求页面通过 http://localhost 或 https 访问,file:// 下不可用。

往期文章回顾

1.极客星闪 | 见地:这颗国产芯片,凭什么敢叫板蓝牙和 Wi-Fi?
2.极客星闪 | 见地:速率翻 6 倍,时延破毫秒?深挖星闪底层“黑科技”
3.极客星闪 | 筑基:工欲善其事,必先利其器 WS63 开发环境与 SDK 深度指引
4.极客星闪 | 筑基:拿到板子先看哪?润和 HH-D02 硬件资源与接口全透视
5.极客星闪 | 筑基:轻量级方案之 VS Code + HiSpark 插件开发环境搭建
6.极客星闪 | 筑基:轻量级方案之 VS Code + HiSpark 插件开发环境搭建
7.极客星闪 | 内功:AI 又乱用 printf 了?这套开源心法彻底锁死 WS63 开发边界

本文档由海星(StarFish)社区整理发布,旨在为 WS63 开发者提供精准的技术参考。

社区地址:https://gitcode.com/hinearlink

相关学习资料