Here's a short demo video that shows the permission UI: https://drive.google.com/file/d/1Y_Ito9P-EourYa7ofL_qQMOmmvBIhwpT/view
Demo source: https://nondebug.github.io/bluetooth-serial-port-demo/ Off-screen I connected a HC-06 wireless Bluetooth serial transceiver <https://amzn.com/dp/B01FCQZ8VW> to a USB serial adapter <https://amzn.com/dp/B07BBPX8B8>. The demo uses Web Serial API to connect to both devices, then sends data over USB and shows that it is received from the HC-06 over Bluetooth. On Wed, Jul 26, 2023 at 2:13 PM Mike Taylor <[email protected]> wrote: > LGTM1 - thanks for the well-written explainer. > On 7/26/23 4:20 PM, Alex Russell wrote: > > Sounds good; thanks for explaining. > > On Wednesday, July 26, 2023 at 1:02:00 PM UTC-7 Reilly Grant wrote: > >> On Wed, Jul 26, 2023 at 10:03 AM Alex Russell <[email protected]> >> wrote: >> >>> A screenshot would go a long way. >>> >>> Exciting to hear there's a partner that want this. >>> >>> Also, was there consideration of an OT? A strong reason to avoid? >>> >> >> The change to the API is very small and we had strong developer feedback >> during development that the API worked for them. I also feel that this kind >> of feature is a poor fit for an Origin Trial because it's not something >> where you can measure the impact with or without the capability as the >> capability is fundamentallyᅠnecessary for the existenceᅠof the web app. At >> that point the only benefit of an OT would be to ship an end-user >> application early, but it wouldn't be a true experiment. >> >> >>> On Wednesday, July 26, 2023 at 9:55:25 AM UTC-7 Reilly Grant wrote: >>> >>>> On Wed, Jul 26, 2023 at 9:05 AM Alex Russell <[email protected]> >>>> wrote: >>>> >>>>> I'm going to have to stay recused on this vote, but just want to lend >>>>> my fullest non-voting support to shipping ASAP. This is excellent work, >>>>> and >>>>> I can see you've dotted i's and crossed t's in anticipation of a full >>>>> shakedown here. Thanks for doing it. >>>>> >>>>> It might be helpful for others evaluating the proposal to have a demo >>>>> or video to look at regarding the permissions UI/UX that this will sit >>>>> behind; is it possible to add something like that to your Explainer? And >>>>> are there users who can vouch for the utility of this feature for their >>>>> use-cases? >>>>> >>>> >>>> Unfortunately the hardware our partner is working on is still >>>> confidential so I can't share a real-worldᅠuse case. They're very excited >>>> about being able to use a web app. We can put together a demo video with a >>>> generic Bluetooth serial device but it will be pretty boring because >>>> theᅠpermissions UIᅠlooks identical toᅠselecting a wired serial port. We >>>> only support connecting to devices that are already paired with the system >>>> so it doesn't use the more complex scanning UX that you see for Web >>>> Bluetooth.ᅠᅠ >>>> >>>> >>>>> Thanks, >>>>> >>>>> Alex >>>>> >>>>> On Tuesday, July 25, 2023 at 1:47:30 PM UTC-7 [email protected] >>>>> wrote: >>>>> >>>>>> Contact emails >>>>>> >>>>>> [email protected], [email protected] >>>>>> >>>>>> >>>>>> Explainer >>>>>> >>>>>> https://github.com/WICG/serial/blob/main/EXPLAINER_BLUETOOTH.md >>>>>> >>>>>> Specification >>>>>> >>>>>> https://github.com/WICG/serial/pull/189 >>>>>> >>>>>> Summary >>>>>> >>>>>> Support Bluetooth RFCOMM services in the Web Serial API. The >>>>>> Bluetooth RFCOMM (Radio frequency communication) protocol provides >>>>>> emulated >>>>>> RS-232 serial ports. This feature enables applications to make >>>>>> connections >>>>>> to RFCOMM services on paired Bluetooth Classic devices using the Web >>>>>> Serial >>>>>> API. >>>>>> >>>>>> Blink component >>>>>> >>>>>> Blink>Serial >>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ESerial> >>>>>> >>>>>> TAG review >>>>>> >>>>>> https://github.com/w3ctag/design-reviews/issues/854 >>>>>> >>>>>> TAG review status >>>>>> >>>>>> Pending >>>>>> >>>>>> Risks >>>>>> >>>>>> Interoperability and Compatibility >>>>>> >>>>>> Web Serial API is only implemented in Chromium. Other browser vendors >>>>>> have expressed negative views regarding the API and are unlikely to >>>>>> implement it. >>>>>> >>>>>> This feature will not affect compatibility in existing apps. The >>>>>> feature only adds support for connecting to new types of devices. There >>>>>> are >>>>>> no changes for currently-supported devices. >>>>>> >>>>>> Gecko: Negative ( >>>>>> https://github.com/mozilla/standards-positions/issues/687) Previous >>>>>> thread: https://github.com/mozilla/standards-positions/issues/336 >>>>>> >>>>>> WebKit: Negative ( >>>>>> https://github.com/WebKit/standards-positions/issues/199) See also: >>>>>> https://webkit.org/tracking-prevention/ >>>>>> >>>>>> Web developers: Positive ( >>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1043300) Other >>>>>> Web developers have asked for this feature privately. >>>>>> >>>>>> Other signals: >>>>>> >>>>>> >>>>>> Activation >>>>>> >>>>>> Developers can take advantage of this feature immediately. A polyfill >>>>>> is not possible because Bluetooth Classic devices cannot be accessed >>>>>> through any other web platform API. >>>>>> >>>>>> Security >>>>>> >>>>>> See >>>>>> https://github.com/WICG/serial/blob/main/security-privacy-questionnaire-bluetooth-rfcomm.md >>>>>> and Security Considerations in >>>>>> https://github.com/WICG/serial/blob/main/EXPLAINER_BLUETOOTH.md >>>>>> >>>>>> WebView application risks >>>>>> >>>>>> N/A >>>>>> >>>>>> >>>>>> Debuggability >>>>>> >>>>>> Debuggability is identical to wired serial ports. >>>>>> >>>>>> Will this feature be supported on all six Blink platforms (Windows, >>>>>> Mac, Linux, Chrome OS, Android, and Android WebView)? >>>>>> >>>>>> No, this feature will be supported on desktop platforms only to begin >>>>>> with, matching the existing state of support for the Web Serial API. >>>>>> Support for Android could be added in the future since unlike USB serial >>>>>> devices, Android provides an API for Bluetooth RFCOMM. >>>>>> >>>>>> Is this feature fully tested by web-platform-tests >>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> >>>>>> ? >>>>>> >>>>>> No, the majority of this extension to the API is implemented in the >>>>>> browser process (connecting to Bluetooth devices through the native >>>>>> platform APIs) and so isn’t testable with WPT. >>>>>> >>>>>> Flag name >>>>>> >>>>>> chrome://flags#enable-bluetooth-spp-in-serial-api >>>>>> >>>>>> Requires code in //chrome? >>>>>> >>>>>> Yes >>>>>> >>>>>> Tracking bug >>>>>> >>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1043300 >>>>>> >>>>>> Launch bug >>>>>> >>>>>> https://launch.corp.google.com/launch/4232649 >>>>>> >>>>>> Estimated milestones >>>>>> >>>>>> 117 >>>>>> >>>>>> Anticipated spec changes >>>>>> >>>>>> None >>>>>> >>>>>> Link to entry on the Chrome Platform Status >>>>>> >>>>>> https://chromestatus.com/feature/5686596809523200 >>>>>> >>>>>> Links to previous Intent discussions >>>>>> >>>>>> Intent to prototype: >>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/kOOZ3RIh0Ik >>>>>> >>>>>> This intent message was generated by Chrome Platform Status >>>>>> <https://chromestatus.com/>. >>>>>> >>>>>> >>>>>> -- > You received this message because you are subscribed to the Google Groups > "blink-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/07d9fd57-e4c6-49d9-afac-5adc1c905eabn%40chromium.org > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/07d9fd57-e4c6-49d9-afac-5adc1c905eabn%40chromium.org?utm_medium=email&utm_source=footer> > . > > -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGhmGSPvPwG-jSKdYV8q2W_hA6064jLPm8CWumg_AUJouCu0GQ%40mail.gmail.com.
