按安裝、插線、交棒。 Press Install, plug in, hand over.
這一頁只做一件事:經 USB-C 把韌體寫入裝置。之後電腦就完成任務,WiFi 和揀版全部用手機做。
This page does one thing: write the firmware over USB-C. After that the computer is done — Wi-Fi and pages both happen on your phone.
燒錄要用電腦(Windows、Mac 或 Linux)加 Chrome 或 Edge。iPhone、iPad、Android 和 Safari 都不行 —— 不是你做錯,是它們沒有這個功能。
手上沒有?借一部電腦燒一次就可以,之後裝置自己運作。
Flashing needs a desktop computer running Chrome or Edge; Safari and every phone browser lack the hardware access. Borrowing a computer once is enough — the device runs on its own afterwards.
燒錄韌體Flash the firmware
先不要插線。揀型號,按「安裝」;等揀 port 那個視窗彈出來,才插 USB-C 線 —— 新出現那一項就是你的裝置。瀏覽器會自己讓它進入下載模式,不用按裝置上任何掣。Don't plug in yet. Pick your model and press Install; when the port picker appears, then plug the USB-C cable in — the entry that appears is your device. The browser handles download mode itself; no button on the device needs pressing.
查詢 GitHub 中… Checking GitHub…
USB Serial、wchusbserial… 或 CH340:
揀剛剛出現那一個,按「連接 Connect」。
插了都沒有新項目?多數是那條線只能充電、傳不到資料 ——
換一條數據線,或者換一個 USB 插口再試。
A small popup asks you to pick a serial port. It opens empty — that is the moment to plug the USB-C cable in. An entry appears at once, named something like USB Serial, wchusbserial… or CH340: pick the new one and press Connect. Nothing appears? The cable is almost certainly charge-only — swap in a data cable or try another USB port.
—
等它重新開機Wait for it to come back up
燒錄完,裝置會自己重啟,再畫第一個畫面。電子紙刷新一次就要 30 秒,所以大約 40 秒才見到東西。這一格會自己問裝置,你只要不拔線就可以。
燒錄完成之後,這裡會自動開始檢查。This starts by itself once the flash finishes.
交棒給你的手機Hand over to your phone
韌體寫好了,電腦就沒有事做。WiFi 和揀版,設定頁會教你用手機和綠色掣完成 —— 不用再插線。
設定頁只是教你看螢幕 —— 真正的設定介面由裝置自己開,用手機就可以。The setup page only teaches you to read the device's screen; the interface itself is served by the device and runs fine on a phone.
進階:由這部電腦動手Advanced — do it from this computer instead
正常設定用不著下面這些。這裡是給出了問題、或者想看裝置逐句在說什麼的人。
經 USB 直接設定 WiFi Set Wi-Fi from this computer over USB
憑證經 Improv-serial 直接送入裝置,不經伺服器。裝置要醒著才會回應 —— 先按住綠色掣,聽到「嘀」一聲才放手(通常 5–10 秒)。掃描有時不準,手動輸入 SSID 一定可以。Credentials go over Improv-serial, server-free. The device must be awake — hold the green button until you hear the beep, usually 5 to 10 seconds. Scanning can be unreliable in setup mode; typing the SSID by hand always works.
ESP32-S3 連不到只有 5 GHz 的網絡。The ESP32-S3 cannot join a 5 GHz-only network — the most common setup failure.
裝置日誌 Device log — what it is saying, line by line
出問題的時候,拍一張截圖給人看快得多。When something goes wrong, a screenshot of this beats a paragraph of description.
序列設定(開發用)Serial content setup — development only
?dev=serial 舊的序列內容設定路徑,保留只是為了開發和救援。正常設定在裝置自己的設定頁做。 The legacy serial path for pages and the voice key, kept for development and recovery only. Bulk transfers over this link are fragile — the supported route is the device's own portal.
揀版(序列)Choose what it shows — over serial
裝置一次最多放 16 版。這個面板經 USB 線讀寫裝置上面的設定檔和 pack。
聲控鎖匙(序列)Voice key — over serial
按掣說「天氣」就轉版。要用 ElevenLabs 語音辨識,即是要一條 sk_ 開頭的鎖匙。整個 YAT 只有這一項要開帳戶。
設定鎖匙 Set the key
會發生什麼事What actually happens
- 只有你按掣那幾秒才會錄音 —— 沒有「一直聽著」,沒有喚醒詞。The microphone only runs for a few seconds after you press the button.
- 那幾秒錄音會經 WiFi 送去 ElevenLabs 做聽寫,換成一句文字。Those few seconds go to ElevenLabs, which turns speech into text.
- 鎖匙經這條線直接進入裝置,不經任何網站,也不會出現在日誌。The key travels down the cable into the device's own storage — never a server of ours, never the log on this page.
開一個 ElevenLabs 帳戶,取一條鎖匙Create an ElevenLabs account and get a key
下面那些格是示意圖,不是截圖 —— ElevenLabs 隨時會改版面,但按哪裡大致一樣。The boxes below are drawings, not screenshots — ElevenLabs may restyle their site, but where to click shouldn't move.
-
去 elevenlabs.io/sign-up,按「Sign up」開一個新帳戶 —— 電郵或 Google 都可以。Go to elevenlabs.io/sign-up and click "Sign up" — email or Google both work.
elevenlabs.io/sign-upSign up -
打開你的電郵信箱,按 ElevenLabs 寄來那封信裡面的連結,確認電郵地址。Open your email and click the verification link ElevenLabs sends you.
MailVerify email -
登入之後,按右上角的頭像圖示,揀「Settings」(設定)。After signing in, click the avatar icon top-right and choose "Settings".
elevenlabs.io/app -
在左邊一長串設定裡面揀「API Keys」,然後按「Create API Key」。Pick "API Keys" from the settings list on the left, then click "Create API Key".
elevenlabs.io/app/settings/api-keys+ Create API Key -
改一個名(例如
YAT),按「Create」,然後按「Copy」複製整條匙。整條匙是sk_開頭的英文數字。Name it (e.g.YAT), click "Create", then click "Copy" to copy the whole key — it starts withsk_.elevenlabs.io/app/settings/api-keysYATsk_••••••••••••••••Copy -
回到這一頁,貼在下面「你的鎖匙」那一格,按「儲存到裝置」就完成。Come back here, paste it into "Your key" below, and click "Save to the device".
yat.hk/tools.htmlsk_••••••••••••••••
裝置清醒的時候接受這幾個指令。路徑白名單只容許 /config.json 和 /packs/…,所以這個協定永遠碰不到韌體本身。
YAT STATUS | 版本、電量、WiFi、下次喚醒時間Version, battery, WiFi, next wake |
YAT LS | 列出 config 同已安裝的 packList config and installed packs |
YAT GET <path> | 讀取一個檔案Read one file |
YAT PUT <path> <bytes> | 寫入(先驗證 JSON 才落盤)Write — validated as JSON before it lands |
YAT RM <path> | 刪除一個版檔案Delete a page file |
YAT PAGES | 列出裝置現在載入了的版,* 是正在顯示的一版List the pages the device booted with; * marks the active one |
YAT USE <id|index> | 換到另一版(即時寫入 NVS)Switch the active page, persisted immediately |
YAT PORTAL | 即刻開裝置自己的設定頁伺服器(等同按住綠色掣直到「嘀」一聲)Start the device's own setup server — the green-button gesture, over the cable |
YAT SAY <text> | 用文字試關鍵詞比對,回 MATCH 或 NOMATCHTest the voice matcher with typed text |
YAT SECRET stt <key> | 寫入語音辨識鎖匙(- 為清除);STATUS 只報有沒有,永不回讀Store the speech-to-text key (- clears it); STATUS reports only whether one exists |
YAT REBOOT | 立即重啟Restart now |
燒錄出問題的時候When flashing goes wrong
| 徵狀 Symptom | 通常是什麼事 What it usually is |
|---|---|
| 插了線,揀 port 的視窗還是空白The port picker stays empty after you plug in | 空白才對 —— 視窗開了之後才插線,就會即刻多了一項。插了都沒有?多數是那條線只能充電,換一條數據線或換一個 USB 插口再試。Empty before you plug in is expected — plug in with the window open and an entry appears at once. If nothing appears, it is almost always a charge-only cable: try a data cable or another USB port. |
| 自動進入下載模式失敗Automatic bootloader entry fails | 快速按兩下 RESET 掣,然後即刻再按安裝。還是不行就換一條數據線或換一個 USB 插口。Double-tap RESET, then press Install again. If it still fails, swap in another data cable or USB port. |
| 燒錄途中卡住The flash stalls midway | 勾選「完全清除快閃記憶體」再試一次 —— 這個是救援用的。Tick “erase the whole flash first” and retry. |
| 燒錄完,第 2 步一直等不到回應Step 2 never gets an answer | 確認線還插著,按「再檢查一次」。還不行就拔線再插,然後按住綠色掣,按到「嘀」一聲叫醒它。螢幕有畫面就代表韌體正在運行,可以直接去設定頁。Check the cable is still seated and press “Check again”. Still silent? Re-plug and hold the green button until it beeps. If the screen has drawn anything at all, the firmware is running — carry on to setup. |
| 燒完之後螢幕完全沒有變The screen never changes after a flash | 先等夠 40 秒。還是一模一樣,就拔線、插回,再按一次安裝 —— 有機會停在下載模式。Give it a full 40 seconds. If it is still identical, re-plug and flash again — it may have stayed in download mode. |
| 按「安裝」之後說下載失敗Pressing Install reports the download failed | 這個部署未附帶同源的韌體檔案,退回用 GitHub 下載 —— 瀏覽器會因為跨網站限制擋住這一步。等網站補上同源複本,或者自己由 repo build 一個放在 site/ 再試。This deployment has no same-origin firmware copy, so it fell back to downloading from GitHub — which the browser blocks for cross-site reasons. Wait for the site to ship its own copy, or build one from the repo and drop it in site/. |