Uygulamanızdan nadir kullanılan cihazlara bağlanma
WebHID API nedir?
Birçok insan arabirim cihazı (HID), sistemlerin cihaz sürücüleri tarafından erişilemeyecek kadar yeni, eski veya nadir bulunur. WebHID API, cihaza özel mantığı JavaScript'te uygulamanın bir yolunu sunarak bu sorunu çözer.
WebHID API için önerilen kullanım alanları
HID, insanlardan girdi alır veya insanlara çıktı sağlar. Cihaz örnekleri arasında klavyeler, işaretleme cihazları (fareler, dokunmatik ekranlar vb.) ve oyun kumandaları yer alır. HID protokolü, işletim sistemi sürücülerini kullanarak bu cihazlara masaüstü bilgisayarlardan erişmeyi mümkün kılar. Web platformu, bu sürücülere dayanarak HID'leri destekler.
Yaygın olmayan HID cihazlara erişilememesi, özellikle oyun kumandası desteği söz konusu olduğunda can sıkıcıdır. PC için tasarlanan oyun kumandaları, oyun kumandası girişleri (düğmeler, joystick'ler, tetikler) ve çıkışları (LED'ler, titreşim) için genellikle HID kullanır. Ancak gamepad giriş ve çıkışları iyi bir şekilde standartlaştırılmamıştır ve web tarayıcılar genellikle belirli cihazlar için özel mantık gerektirir. Bu durum sürdürülebilir değildir ve eski ile yaygın olmayan cihazların uzun kuyruğu için yetersiz destek sunulmasına neden olur. Ayrıca tarayıcının, belirli cihazların davranışlarındaki tuhaflıklara bağlı olmasına da neden olur.
Demolar, demolar, demolar
Bu örneklerden herhangi birinin nasıl çalıştığını merak ediyorsanız hepsinin kaynak kodunu GitHub'da bulabilirsiniz. Açıklayıcıda basit bir kod örneği yer almaktadır.
MacBook Pro klavye aydınlatması
Bu demoların herhangi birini denemenin önündeki en büyük engel, cihaza erişimin olmamasıdır. Neyse ki Touch Bar'lı bir MacBook Pro'nuz varsa herhangi bir şey satın almanız gerekmez. Bu demo, API'yi doğrudan dizüstü bilgisayarınızdan kullanmanıza olanak tanır. Ayrıca, WebHID'nin yalnızca çevre birimlerinin değil, yerleşik cihazların işlevlerinin kilidini açmak için nasıl kullanılabileceği de gösterilmektedir.
Yazar: FWeinb
Demo/Kaynak: Keyboard Backlight
Oyun kumandaları
PlayStation 4 kablosuz kolu
Sıradaki öğe, daha az kullanıcının sahip olabileceği bir öğe. Sony'nin DualShock 4'ü, PlayStation 4 oyun konsolları için kablosuz bir kumandadır.
DualShock 4 Demo, DualShock 4'ten gelen ham giriş raporlarını almak için WebHID'yi kullanır ve kontrol cihazının jiroskopuna, ivmeölçerine, dokunmatik alanına, düğmesine ve analog çubuğuna erişmek için üst düzey bir API sağlar. Ayrıca titreşimi ve kontrol cihazında bulunan bir RGB LED'in rengini ayarlamayı da destekler.
Yazar: TheBITLINK
Demo: DualShock 4 Demosu (Kaynak)
Nintendo Switch Joy-Con kumandaları
Pantolon cebinizdeki Nintendo Switch Joy-Con kumandasıyla zıplayarak Chrome dinozor 🦖 çevrimdışı oyununu oynayın. Bu demo, Nintendo Switch Joy-Con kumandaları için bir WebHID sürücüsü olan Joy-Con WebHID tarafından desteklenmektedir.
Yazar: Thomas Steiner
Demo: Chrome Dino WebHID
(demo kaynağı,
sürücü kaynağı)
The BlinkStick Strip
BlinkStick Strip, 8 RGB LED'li, HID uyumlu bir ışık şerididir. Demoda kullanıcı, kovalama, yanıp sönme ve Larson tarayıcı (diğer adıyla Cylon) gibi çeşitli yanıp sönme desenleri arasından seçim yapabilir.
Yazar: Robat Williams
Demo: blinkstick-strip (kaynak)
Yanıp sönme, yanıp sönme, yanıp sönme
Bu demo ne işe yarar? (Bekleyin.) Yanıp söner. Aslında blink(1) USB bildirim ışığını kullanan üç demo var.
blink(1) basit ve iyi belgelenmiş bir kitaplıktır. Bu nedenle, HID ile çalışmaya başlamak için mükemmel bir seçenektir.
Yazar: Tod E. Kurt
Demolar: blink(1) (kaynak)
Teşekkür
Pete LePage ve Kayce Basques'e teşekkür ederiz.