# 用網頁使用你的硬體設備Web Serial 及Web Bluetooth - 戴均民 {%hackmd @JSDC2024/INuUpOqWS42gD1_pz5S4Bg %} Slide: https://hackmd.io/@taichunmin/JSDC2024 Slido:https://app.sli.do/event/sMx4WP8uSpnzDc8BjFgkYk > 開始做筆記 [簡報連結](https://hackmd.io/@taichunmin/JSDC2024) # About Me ![截圖 2024-12-21 上午10.53.41](https://hackmd.io/_uploads/ByPppi7r1l.png) - 車能網 - blog: https://taichunmin.idv.tw/blog/ # 若可以在網頁上使用資源 - ![截圖 2024-12-21 上午10.53.22](https://hackmd.io/_uploads/Hyke0sXHyx.png) - [chameleon-ultra.js](https://taichunmin.idv.tw/chameleon-ultra.js/) - 最小的 RFID / NFD https://hackmd.io/@taichunmin/JSDC2024#/15 ## Web Serial API https://hackmd.io/@taichunmin/JSDC2024#/19 https://developer.mozilla.org/en-US/docs/Web/API/Web_Serial_API ## Chrome for Developers https://developer.chrome.com/?hl=zh-tw ### Experience - [Https Only](https://hackmd.io/@taichunmin/JSDC2024#/29) - [Event Action Limited for securily issues](https://hackmd.io/@taichunmin/JSDC2024#/30) ## Web Bluetooth API - In iphone, Bluefy - https://hackmd.io/@taichunmin/JSDC2024#/49 ### [@taichunmin/buffer](https://github.com/taichunmin/js-buffer) 需要使用圖形介面的情境,可以用 Web API ## Q&A by 講者均民 > Q: Web API 適合使用的情境是什麼?能夠操控滑鼠或是耳機嗎? A: 目前 Web Serial 及 Bluetooth 適合使用的情境是需要幫你的硬體製作圖形化介面的時候,目前還沒辦法支援滑鼠或是耳機。但以控制器來說,可能可以研究看看 WebHID? > Q: 不論是走 serial 還是 bluetooth,使用上都有一個限制是距離無法太遠,且一次的傳輸量都不大。想詢問會有哪些實際應用? A: serial 的距離理論上是看線有多長,bluetooth 距離的確沒辦法太遠,但現在其實也有人嘗試透過網路轉送資料然後模擬成 serial,但這個我比較沒有研究,傳輸量的部分,藍牙速度不快,但 Serial 目前速度應該夠應付大多數的使用情境。實際應用的話,目前比較常看到的是韌體更新的功能,或是像我 DEMO 影片那樣幫讀卡機的硬體做出圖形化介面。 > Q: 請問 Web Bluetooth 是否支援 BLE Peripheral 和 Central 兩種模式? 目前 Web Bluetooth 只支援 BLE 的 Client,如果想要當 Server 需要使用其他程式語言,例如 Node.js。 > Q: Web Serial API 要存取 Serial 的設備會需要使用者在瀏覽器上允許什麼權限嗎? 目前 Windows 及 macOS 不需要特別權限,至於 Linux 需要讓使用者加入可以使用 USB 裝置的 group。 > 感謝分享!小建議:希望投影片可以加上「各個裝置之間互動的架構圖」,幫助理解資訊傳輸的流向 感謝建議。 ![](https://hackmd.io/_uploads/rkLAu6QSJe.png) > 聊天區 >