Site icon Tech Blog

ADB – שליטה במכשירים מבוססי AndroidTV דרך מערכת הבית החכם

בעידן של היום, בו ישנה תחרות גדולה בין ספקיות התוכן שללא ספק עושה לנו הלקוחות טוב, השימוש בסטרימרים השונים גדל מיום ליום. לאחרונה חיפשתי דרך לשלוט בכלל הסטרימרים בצורה פשוטה ונוחה דרך מערכת הבית החכם. אחד האתגרים בהם נתקלתי היה ליצור משהו אחיד שיוכל לשלוט בסוגים שונים של סטרימרים וכך הגעתי ל ADB.

ADB או Android Debug Bridge הוא בעצם מצב מיוחד שמאפשר גישה של מפתחים אל המאפיינים השונים של המערכת ולקבל ממנה פידבקים ומידע נוסף בזמן הפיתוח. ADB מאפשר לנו לבצע שלל פעולות על המכשיר דרך הרשת ובניהן ניתן לעשות:

במדריך זה אסביר כיצד ניתן להשתמש ב ADB על מנת לשלוט בסטרימרים ובטלויזיות מבוססות AndroidTV, שנתחיל?

שלב א' – הפעלת מצב מפתחים בסטרימרים / מכשירים מבוססי AndroidTV

על מנת שנוכל לשלוט באותם מכשירים עלינו בעצם להפעיל את היכולת לכך על המכשיר עצמו. לצורך כך עקבו אחר השלבים הבאים (שימו לב כי יתכן ומיקום הכפתורים והתפריטים משתנים בין גרסאות ה Android השונות):

שלב ראשון, כנסו למסך ההגדרות:

כעת, נווטו אל האיקון של אודות (About):

כעת, נווטו על האייקון "Build" ולחצו עליו 7 פעמים

כעת חזרו אל מסך הבית ולחצו שוב על הגדרות. וגללו עד אשר תראו את האופציה להכנס ל "מצב מפתחים" (Developer Options).

2 השלבים הבאים מיועדים עבור בעלי Xiaomi Mibox s אשר משתמשים במתאם Usb to Lan. על מנת שתוכלו להפעיל מצב של "ניפוי באגים" יש לשנות את תצורת ה USB מתצורת טעינה לכל תצורה אחרת, למשל MTP. לצורך כך גללו מטה עד אשר תגיעו לתפריט של בחירת "תצורת USB":

כעת, בחרו בתצורת ה USB הרצויה:

השלב הבא (מיועד לכולם), הוא הפעלת ניפוי באגים. על מנת לאפשר את החיבור יש להפעיל את "ניפוי באגים ב USB" ולאחר מכן על אישור.

שלב ב' – התקנת ADB Server

ADB Server הוא בעצם רכיב התקשורת שיקשר בין מערכת הבית החכם לבין מכשיר האנדרואיד עליו תרצו לשלוט. את המערכת ניתן להתקין במספר אופנים אך במדריך זה אתמקד הבהתקנה באמצעות docker container.

לצורך ההתקנה, פתחו את קובץ ה docker-compose שלכם והכניסו פנימה את הקוד הבא:

כאשר:

לפני התקנת הדוקר על ידי הפקודה docker-compose יש ליצור קובץ סקריפט על פי הנתיב שצויין בנתיב של ה command. הסקיפט הזה יהיה אחרי על החיבור בין שרת ה ADB לבין מכשירי האנדרואיד השונים. לצורך כך צרו את הקובץ startup.sh והדביקו פנימה את קטע הקוד הבא:

כאשר תחת DEVICES הכניסו את כתובות ה IP של מכשירי האנדרואיד אשר תרצו לשלוט עליהם. את הכתובות יש להכניס עם רווחים. שמרו את הקובץ והתקינו את הקונטיינר באמצעות הפקודה הבאה:

כעת תופיע על המסך של מכשיר האנדרואיד שלכם הודעה שנראת כך:

הודעה זו מבקשת את אישורכם לביצוע החיבור בין שרת ה ADB למכשיר האנדרואיד. סמנו את "אפשר תמיד ממחשב זה" אחרת היא תקפוץ שוב לאחר כל אתחול.

על מנת לוודא שהשרת אכן רץ וכי החיבור למכישיר האנדרואיד נריץ את הפקודה הבאה בתוך הקונטיינר:

הפלט אמור להראות כך:

שלב ג' – חיבור למערכת הבית החכם

בשלב זה אסביר כיצד ניתן לחבר את הסטרימר אל מערכת הבית החכם, במקרה שלנו Home-Assistant ואיך להגדיר את התצוגה שלו.

בשלב הראשון נוסיף קונפיגורציה פשוטה שתוסיף את הסטרימר כ Media Player (בהמשך נבצע הגדרות מתקדמות יותר). לצורך כך, הוסיפו את קטע הקוד הבא לקובץ ה configuration.yaml:

כאשר:

כעת, שמרו את ההגדרות ואתחלו את Home-Assistant. אם ביצעתם הכל כראוי, תוכלו לראות ב Developer Tools את הסטרימר בצורה הבאה:

ואם תכניסו את הכתובת שתחת entity_picture לדפדפן תוכלו לראות את מה שהסטרימר מציג כרגע (בהמשך אסביר גם איך להציג אותה בצורה יפה יותר):

שלב ג' – הוספת שלט והגדרתו באמצעות Lovelace

בעזרתו של Dima Goltsman המוכשר שפיתח את generic-remote-control-card ניתן עכשיו ממש בקלות להוסיף את השלט לתצוגה בצורה פשוטה ונוחה ולהגדיר אותו לשימוש ב ADB, Broadlink או כל שיטה אחרת בה נבחר.

על מנת להתחיל יש תחילה להוסיף את הקבצים הנחוצים לתצוגה ולתפקוד השלט. את זה ניתן לבצע באחת משתי השיטות הבאות:

  1. שימוש ב HACS (מועדפת).
  2. העתקה ידנית של הקבצים.

במדריך זה אסביר על השיטה הראשונה, שימוש ב HACS. ראשית יש להתקין את HACS על פי ההוראות כאן ולאתחל את Home-Assistanr. אם ההתקנה עברה כראוי תוכלו לראות כי לתפריט הראשי נוספה אופציה של Community:

כעת, עברו למסך של HACS והכנסו להגדרות, שם נוכל להוסיף את הריפו של דימה ולהתקין את הקבצים:

כעת, בתחתית במסך הכניסו את כתובת הריפו של דימה, בחרו קטגוריה ולחצו על סמל הדיסקט (שמירה),
כתובת הריפו היא: https://github.com/dimagoltsman/generic-remote-control-card.

כעת, ניתן לחזור למסך הראשי של HACS ולבצע את ההתקנה של הקבצים הנחוצים לשלט. עברו לקטגורית ה Plugins ושם הקלידו את המילה remote ולחצו על "Generic Remote Control Card":

כאן, תקבלו תפריט עם האפשרויות השונות (התקנה, עדכון ועוד), לחצו על התקנה:

על מנת שנוכל להשתמש בכרטיס, ערכו את קובץ ה ui-lovelace.yaml והוסיפו את השורות הבאות בתחילת הקובץ תחת resources בצורה הבאה:

ואתחלו את Home-Assistant על מנת שהשינויים יכנסו לתוקף.

ועכשיו נוסיף את השלט עצמו לתצוגה. כפי שציינתי, הכרטיס של דימה תומך במספר שלטים ולכל שלט ניתן להגדיר באמצעות איזה רכיב הוא יעבוד (ADB, Broadlink או כל רכיב אחר שנמצא לנכון). בחלק הזה נוסיף שלט ל Mibox S ונתמש ב ADB שהתקנו בשלבים הקודמים של המדריך.

לצורך כך, פתחו שוב את קובץ ה ui-lovelace.yaml והדביקו פנימה את הקוד הבא:

כאשר:

שמרו את הקובץ ורעננו את התצוגה. אם ביצעתם הכל כראוי תוכלו לראות ב Home-Assistant כי השלט נוסף בהצלחה:

בהצלחה!

Exit mobile version