# 用網頁使用你的硬體設備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

- 車能網
- blog: https://taichunmin.idv.tw/blog/
# 若可以在網頁上使用資源
-

- [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。
> 感謝分享!小建議:希望投影片可以加上「各個裝置之間互動的架構圖」,幫助理解資訊傳輸的流向
感謝建議。

> 聊天區
>