Menghubungkan ke perangkat yang tidak umum dari aplikasi Anda.
Apa itu WebHID API?
Banyak perangkat antarmuka manusia (HID) yang terlalu baru, terlalu lama, atau terlalu tidak umum untuk diakses oleh driver perangkat sistem. WebHID API mengatasi hal ini dengan menyediakan cara untuk menerapkan logika khusus perangkat di JavaScript.
Kasus penggunaan yang disarankan untuk WebHID API
HID mengambil input dari atau memberikan output kepada manusia. Contoh perangkat meliputi keyboard, perangkat penunjuk (mouse, layar sentuh, dll.), dan gamepad. Protokol HID memungkinkan akses ke perangkat ini di komputer desktop menggunakan driver sistem operasi. Platform web mendukung HID dengan mengandalkan driver ini.
Ketidakmampuan untuk mengakses perangkat HID yang tidak umum sangatlah merepotkan jika terkait dukungan gamepad. Gamepad yang dirancang untuk PC sering menggunakan HID untuk input gamepad (tombol, joystick, pemicu) dan output (LED, getaran). Namun, input dan output gamepad tidak distandarisasi dengan baik dan browser web sering kali memerlukan logika kustom untuk perangkat tertentu. Hal ini tidak berkelanjutan dan menghasilkan dukungan yang buruk untuk perangkat lama dan tidak umum. Hal ini juga menyebabkan browser bergantung pada keanehan yang ada dalam perilaku perangkat tertentu.
Demo, demo, demo
Jika Anda ingin tahu cara kerja contoh ini, kode sumber untuk semua contoh tersedia di GitHub. Ada contoh kode sederhana dalam penjelasan.
Lampu latar keyboard MacBook Pro
Hambatan terbesar untuk mencoba demo ini adalah kurangnya akses ke perangkat. Untungnya, jika memiliki MacBook Pro dengan TouchBar, Anda tidak perlu membeli apa pun. Demo ini memungkinkan Anda menggunakan API langsung dari laptop. Contoh ini juga menunjukkan cara WebHID dapat digunakan untuk membuka fungsi perangkat bawaan, bukan hanya periferal.
Penulis: FWeinb
Demo/Sumber: Keyboard Backlight
Pengontrol game
Pengontrol Nirkabel PlayStation 4
Berikutnya adalah sesuatu yang mungkin tidak dimiliki oleh banyak orang. DualShock 4 Sony adalah pengontrol nirkabel untuk konsol game PlayStation 4.
Demo DualShock 4 menggunakan WebHID untuk menerima laporan input mentah dari DualShock 4 dan menyediakan API tingkat tinggi untuk mengakses input giroskopi, akselerometer, touchpad, tombol, dan thumbstick pengontrol. Fitur ini juga mendukung getaran dan menyetel warna LED RGB yang ditempatkan dalam pengontrol.
Penulis: TheBITLINK
Demo: Demo DualShock 4 (Sumber)
Kontroler Joy-Con Nintendo Switch
Mainkan game offline Chrome dino 🦖 dengan benar-benar melompat menggunakan pengontrol Joy-Con Nintendo Switch di saku celana Anda. Demo ini didukung oleh Joy-Con WebHID, driver WebHID untuk pengontrol Joy-Con Nintendo Switch.
Penulis: Thomas Steiner
Demo: Chrome Dino WebHID
(sumber demo,
sumber driver)
Strip BlinkStick
BlinkStick Strip adalah strip lampu yang kompatibel dengan HID dengan 8 LED RGB. Demo ini memungkinkan pengguna memilih dari beberapa pola kedipan, termasuk pengejaran, kedipan, dan pemindai Larson (alias Cylon).
Penulis: Robat Williams
Demo: blinkstick-strip (sumber)
Berkedip, berkedip, berkedip
Apa fungsi demo ini? (Tunggu.) Lampu berkedip. Sebenarnya ada tiga demo yang menggunakan lampu notifikasi USB blink(1).
blink(1) sederhana dan terdokumentasi dengan baik, sehingga menjadikannya opsi yang bagus untuk memulai HID.
Penulis: Tod E. Kurt
Demo: blink(1) (source)
Ucapan terima kasih
Terima kasih kepada Pete LePage dan Kayce Basques atas peninjauan artikel ini.
Foto oleh Ugur Akdemir di Unsplash