ディスカッション (11件)
Firefoxブラウザ上で直接Adafruitのプロジェクトをビルドできる環境が整いました。開発効率を大幅に向上させるこの機能をぜひ試してみてください。
初心者には最高の機能だね。Arduinoでも同じことができるのかな?
以前、ハードウェアの試作でWebSerialとWebSocketsを組み合わせて使ったことがあるよ(WiFi非対応のボードでね)。USBに繋いでウェブアプリを立ち上げれば、ニューヨークからボタンを押してサンフランシスコのLEDを光らせるなんてこともできて、めちゃくちゃ興奮した!WebSerial経由で実際にボードをプログラミングしようとは考えたことなかったけど、それができれば用途は一気に広がるね。p5.jsがクリエイティブコーディングのコミュニティで成功した理由を考えると、やっぱりウェブブラウザさえあれば始められるというハードルの低さが鍵だったんじゃないかな。
Firefox 151でようやくWebSerialが導入されたんだね。Chromiumベースのブラウザではもう5年も前から使えていたのに。Firefoxではまだ新しすぎて、caniuseすら更新が追いついてないみたいだね: https://caniuse.com/web-serial
iOS版だと、App StoreのFirefoxに誘導されるけど、あれはWebKitベースだからWebSerialには非対応なんだよね。
Firefoxが対応してくれて嬉しいよ。自分はChromeで動作するArduinoのシリアルプロッターの代替ツールを作ったんだけど、Firefoxでも動くようにするのはそれほど難しくないかな?パッチは大歓迎だよ:
ブラウザからシリアル通信ができるようになるのは、教育用ロボットのプログラムにおいて本当に重要だよ。FirstやVexのプラットフォームは両方とも対応してるし、子供たちがChromebookのウェブベースの環境からUSBケーブルでロボットにコードを送れるようになるからね。最近、中学校のロボットクラブを再開したんだけど、学校にある古いVex EDRの機材はWindows専用のソフトが必要で、プログラミング関連でかなり制限されてたんだ。Firefoxがこれに追いついてくれて本当によかった。
おっと、これはFirefoxがこれまで掲げてきたWebSerialに対する方針からの劇的な方針転換だな。でも、これは良いことだよ!
FirefoxでWebSerial!?ついに来たか!Chromeを使い続けていた数少ない理由の一つがこれだったんだよね。
2020年6月、「Web標準に対するMozillaのスタンスへのリクエスト」に対するMozillaの回答はこんな感じだった:
一部のAPI(Web USB、Web Bluetooth、Web NFC、Web MIDI)が想定しているような生のデバイスアクセスにおいて、それらのAPIをユーザーに公開するリスクを合理的に伝えることはできない。これは、プロトコルに関わらず、生のセマンティクスを持たないデバイスへのアクセスを許可することに付随する、本質的に解決不可能な欠陥である。
具体的な問題は、悪意のあるサイト(malicious-site.com)にBluetoothキーボードへのアクセスを許可した際、そのサイトが保存されたパスワードにアクセスしたり、DNS設定をハイジャックしたり、あるいはハードドライブを暗号化して身代金を要求したりできる可能性が、ユーザーにとって直感的ではないということだ。そして、それらがどのように可能なのかが直感的に理解できないという事実こそが、リスクを理解させることの難しさと、パーミッションのプロンプトで説明しようとすることの困難さを物語っている。
https://github.com/mozilla/standards-positions/issues/95#issuecomment-644962468
次はWebUSBかな?自分のキーボードの設定をしたいんだけど、今のところWebUSBを要求する公式サイトからしかできないんだよね。