From c232332d69a34132c5e1a58efb8b2f27e0b86c1f Mon Sep 17 00:00:00 2001 From: yczpf2019 Date: Sat, 24 Jan 2026 20:17:46 +0800 Subject: [PATCH] =?UTF-8?q?feat(websocket-bu):=20MicroPython=20=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0/=E7=83=A7=E5=BD=95=E5=A7=94=E6=89=98=E7=BB=99?= =?UTF-8?q?=E6=9C=AC=E5=9C=B0=20Web=20Serial=20API=20=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mixly-modules/web-socket/burn-upload.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/mixly/common/modules/mixly-modules/web-socket/burn-upload.js b/mixly/common/modules/mixly-modules/web-socket/burn-upload.js index 2bded58a..d6937575 100644 --- a/mixly/common/modules/mixly-modules/web-socket/burn-upload.js +++ b/mixly/common/modules/mixly-modules/web-socket/burn-upload.js @@ -12,6 +12,7 @@ goog.loadJs('web', () => { goog.require('Mixly.MString'); goog.require('Mixly.LayerProgress'); goog.require('Mixly.Boards'); + goog.require('Mixly.Web.BU'); goog.require('Mixly.WebSocket.Serial'); goog.provide('Mixly.WebSocket.BU'); @@ -28,7 +29,10 @@ goog.loadJs('web', () => { WebSocket } = Mixly; - const { SELECTED_BOARD } = Config; + const { SELECTED_BOARD, BOARD } = Config; + + // 引入本地 Web.BU 模块,用于 MicroPython 本地上传 + const WebBU = Mixly.Web?.BU; const { Serial } = WebSocket; @@ -69,6 +73,11 @@ goog.loadJs('web', () => { } this.initBurn = function () { + // MicroPython 板卡使用本地 Web Serial API 烧录,而非通过服务器 + if (SELECTED_BOARD?.language === 'MicroPython' && WebBU) { + return WebBU.initBurn(); + } + if (!this.mixlySocket.isConnected()) { layer.msg(Msg.Lang['websocket.offline'], { time: 1000 }); return; @@ -101,6 +110,11 @@ goog.loadJs('web', () => { } this.initUpload = function () { + // MicroPython 板卡使用本地 Web Serial API 上传,而非通过服务器 + if (SELECTED_BOARD?.language === 'MicroPython' && WebBU) { + return WebBU.initUpload(); + } + if (!this.mixlySocket.isConnected()) { layer.msg(Msg.Lang['websocket.offline'], { time: 1000 }); return;