@טופ-שבמתמחים אם יש לך אוזניות מסדרת הגיימינג של JBL (למשל דגמי Quantum 300, 400, 600, 800, 910 או Quantum TWS), ל-JBL יש תוכנה רשמית וייעודית למחשב (Windows בלבד) בשם JBL QuantumENGINE. לשאר הסדרות - לא קיים.
@2580 כתב בשיתוף | תוכנת שליטה לאוזניות Soundcore למחשב - תחליף לאפליקציית האנדרואיד:
השאלה בגדול היא האם האפליקציה מצליחה לשנות משהו באוזניות עצמם כלומר להפעיל מניפולציות על האוזניות ולא רק ברמת התוכנה של המחשב/המכשיר המחובר... כי אם כן אז זו התשובה...
Spoiler
ג'מיני:
האפליקציה אכן משנה את ההגדרות בתוך השבב של האוזניות עצמן, ולא מבצעת מניפולציית תוכנה (כמו אקולייזר ממוחשב) על המחשב או הטלפון.
כדי להבין את האינטרס ואת הסיבה שהוא מתמקד רק ב-Soundcore, הנה כמה עובדות מתוך קוד המקור והתיעוד של הפרויקט שמסבירות את התמונה המלאה:
1. מיהו המפתח ומה האינטרס שלו?
מדובר במפתח חיצוני עצמאי (בשם Kyle Scheuing / Oppzippy), וזהו פרויקט קוד פתוח (Open Source). האינטרס המרכזי לפרויקטים כאלה הוא לרוב פשוט: חברת Anker (היצרנית של Soundcore) מספקת אפליקציה רשמית רק לאנדרואיד ול-iOS. משתמשי מחשב – במיוחד לינוקס ו-Windows – לא יכלו לשלוט באוזניות שלהם מהמחשב (למשל לשנות מצבי סינון רעשים, אקולייזר פנימי, או פעולות כפתורים). המפתח יצר את התוכנה כדי לפתור את הבעיה הזו עבורו ועבור קהילת הקוד הפתוח.
2. איך זה עובד ולמה רק Soundcore?
המפתח הצליח "לפצח" את שפת התקשורת (הפרוטוקול) של אוזניות Soundcore.
בתיקיית התיעוד שלו (docs/development.md), הוא ממש מסביר איך הוא עשה את זה (תהליך שנקרא Reverse Engineering - הנדסה לאחור):
הוא הפעיל את האפליקציה הרשמית של Soundcore באנדרואיד, הקליט את כל תעבורת ה-Bluetooth (באמצעות כלי שנקרא Wireshark), ובדק אילו רצפים של "ביטים" נשלחים לאוזניות כשלוחצים למשל על "סינון רעשים".
כך הוא בנה בעצמו מילון של פקודות ויצר אפליקציה שיודעת לדבר ב"שפת Soundcore" ישירות מול החומרה דרך בלוטות' (בפרוטוקול RFCOMM).
3. למה לא להוסיף אוזניות של Sony, Bose או Jabra?
בגלל שאין סטנדרט אחיד בתעשייה לדברים האלה.
כל חברה משתמשת בפרוטוקול סגור, סודי ושונה לחלוטין משלה.
כדי לתמוך באוזניות של חברה אחרת, המפתח יצטרך לקנות את האוזניות שלהם, להקליט את תעבורת הבלוטות' מחדש, ולפצח שפה שונה לחלוטין מאפס.
אפילו בתוך Soundcore עצמה יש שינויים קטנים בין דגם לדגם! זו בדיוק הסיבה שהוא בנה את כלי ה-State Update Packet שדיברנו עליו קודם – הוא מבקש ממשתמשים שיש להם דגמים שלו אין בבית, לשלוף את הנתונים ולשלוח לו, כדי שהוא יוכל למפות איך הדגם הספציפי שלהם מדבר. (יש לו אפילו תיקייה בפרויקט שנקראת tools/soundcore-device-faker שהיא סימולטור שהוא בנה כדי לדמות אוזניות ולבדוק עליהן פקודות).