חיבור מהאפליקציה למכשירים נדירים.
מהו WebHID API?
הרבה מכשירים לממשק אנושי (HID) הם חדשים מדי, ישנים מדי או נדירים מדי כדי שדריברי המכשירים של המערכות יוכלו לגשת אליהם. WebHID API פותר את הבעיה הזו על ידי מתן דרך להטמיע לוגיקה ספציפית למכשיר ב-JavaScript.
תרחישי שימוש מומלצים ל-WebHID API
HID מקבל קלט מבני אדם או מספק פלט לבני אדם. דוגמאות למכשירים: מקלדות, התקני צביעה (עכברים, מסכי מגע וכו') ומכשירי משחק. פרוטוקול HID מאפשר לגשת למכשירים האלה במחשבים שולחניים באמצעות מנהלי התקנים של מערכת ההפעלה. פלטפורמת האינטרנט תומכת ב-HIDs באמצעות מנהלי ההתקנים האלה.
חוסר היכולת לגשת למכשירי HID פחות נפוצים כואב במיוחד כשמדובר בתמיכה ב-Gamepad. לרוב, במשחקי מחשב שמתוכננים לשימוש עם משחקי מחשב נעשה שימוש ב-HID להזנות (לחצנים, ג’ויסטיקים, טריגרים) ולפלט (נורות LED, רעידות). עם זאת, הקלט והפלט של משחקי ה-Gamepad לא סטנדרטיים, ולרוב דפדפני האינטרנט דורשים לוגיקה מותאמת אישית למכשירים ספציפיים. זה לא בר קיימא, והתוצאה היא תמיכה חלשה בחלק הארוך של המכשירים הישנים והלא נפוצים. בנוסף, היא גורמת לדפדפן להסתמך על תכונות חריגות בהתנהגות של מכשירים ספציפיים.
הדגמות, הדגמות, הדגמות
אם אתם רוצים לבדוק איך כל אחת מהדוגמאות האלה פועלת, קוד המקור של כולן זמין ב-GitHub. יש דוגמה בסיסית לקוד במאמר.
התאורה האחורית של המקלדת ב-MacBook Pro
המכשול הגדול ביותר לניסיון של כל אחת מההדגמות האלה הוא חוסר הגישה למכשיר. למרבה המזל, אם יש לכם MacBook Pro עם TouchBar, אתם לא צריכים לקנות כלום. הדמו הזה מאפשר לכם להשתמש ב-API ישירות מהמחשב הנייד. בנוסף, מוסבר איך אפשר להשתמש ב-WebHID כדי לפתוח את הנעילה של פונקציונליות של מכשירים מובנים, ולא רק של ציוד היקפי.
מחבר: FWeinb
הדגמה/מקור: תאורת מקלדת
שלטים למשחקים
בקר אלחוטי של PlayStation 4
השלב הבא הוא משהו שפחות אנשים כנראה יש להם. DualShock 4 של Sony הוא שלט אלחוטי לקונסולות המשחקים PlayStation 4.
הדמו של DualShock 4 משתמש ב-WebHID כדי לקבל את דוחות הקלט הגולמיים מ-DualShock 4, ומספק ממשק API ברמה גבוהה כדי לגשת לקלטים של הגירוסקופ, ה-accelerometer, משטח המגע, הלחצנים וסטיק האגודל של השלט. הוא תומך גם ברטט ובהגדרת הצבע של נורת ה-LED מסוג RGB שבתוך השלט.
מחבר: TheBITLINK
דמו: DualShock 4 Demo (מקור)
שלטי Joy-Con ל-Nintendo Switch
אתם יכולים לשחק במשחק Chrome Dino 🦖 אופליין, על ידי קפיצה עם שלט Joy-Con של Nintendo Switch בכיסים. הדגמה הזו מבוססת על Joy-Con WebHID, מנהל התקן WebHID למכשירי הבקרה Joy-Con של Nintendo Switch.
מחבר: Thomas Steiner
דמו: Chrome Dino WebHID
(מקור הדמו,
מקור הנהג)
BlinkStick Strip
BlinkStick Strip הוא פס תאורה תואם HID עם 8 נוריות RGB. הדמו מאפשר למשתמש לבחור מבין כמה דפוסי הבהוב, כולל 'מעקב', 'הבהובים' ו'סורק Larson' (נקרא גם 'סיילון').
מחבר: Robat Williams
דמו: blinkstick-strip (מקור)
הבהוב, הבהוב, הבהוב
מה ההדגמה הזו עושה? (מתי? עוד רגע.) הוא מהבהב. למעשה, יש שלוש הדגמות שמשתמשות בנורת ההתראה של ה-USB(1) שמהבהבת.
blink(1) הוא פשוט ומתוועד היטב, ולכן הוא אופציה מצוינת לתחילת העבודה עם HID.
מחבר: Tod E. Kurt
דמואים: blink(1) (source)
תודות
תודה ל-Pete LePage ול-Kayce Basques על הביקורות על המאמר הזה.
תמונה של UgurAkdemir ב-Unsplash