- ผู้เขียนบทความพบปัญหาว่าระดับเสียงของเอียร์บัดบลูทูธ Tozo T6 ของตนดังเกินไป
- ผู้เขียนตัดสินใจแก้ปัญหาด้วยการแก้ไขเฟิร์มแวร์ของอุปกรณ์ด้วยตนเอง
- แผนเริ่มต้นของผู้เขียนคือค้นหาไฟล์ไบนารีสำหรับอุปกรณ์ของตน ทำความเข้าใจโครงสร้างของไบนารี ค้นหาไฟล์เสียงภายในไบนารี ทำให้เสียงเบาลง แล้วแฟลชเฟิร์มแวร์ที่แก้ไขแล้วกลับเข้าอุปกรณ์
- ผู้เขียนพบว่าสมมติฐานบางอย่างผิดพลาด และจำเป็นต้องทำ reverse engineering มากกว่าที่คิดไว้ในตอนแรก
- ผู้เขียนค้นพบว่าชิปเซ็ตของอุปกรณ์ตนคือ Airoha AB1562 ซึ่งใช้ Tensilica Xtensa ISA และมี "Cadence HiFi DSP coprocessor" รวมอยู่ด้วย
- ผู้เขียนพบแอปพลิเคชันแอนดรอยด์ชื่อ "AirReps156X" ที่ให้ข้อมูลการวินิจฉัยสำหรับอุปกรณ์ Airoha และสามารถแฟลชเฟิร์มแวร์ใหม่ได้
- ผู้เขียนสังเกตว่าแอป Tozo แสดงเวอร์ชันเฟิร์มแวร์และสถานะปัจจุบัน ซึ่งบ่งชี้ว่าแอปสื่อสารกับเซิร์ฟเวอร์เพื่อตรวจสอบการอัปเดต
- ผู้เขียนใช้ intercepting proxy เพื่อตรวจสอบทราฟฟิกเครือข่ายของแอป และพบว่าในคำตอบของคำขอไปยัง
/api/v1/getOtaVersionV3 มีลิงก์ไปยังไฟล์ bin ของเฟิร์มแวร์ที่กำลังตามหาอยู่
- ผู้เขียนพบว่าไฟล์เฟิร์มแวร์ถูกเข้ารหัสหรือบีบอัด และไฟล์ไบนารี FotaPackage ของฝั่งซ้ายและขวามีความแตกต่างกันเล็กน้อย
- ผู้เขียนค้นหาสำเนา SDK ของชิปเซ็ตบนอินเทอร์เน็ต และยืนยันได้ว่าไฟล์ mp3 ภายใน SDK ถูกใส่รวมไว้ในอิมเมจระบบไฟล์แบบตรง ๆ
- ผู้เขียนสามารถแก้ไขระดับเสียงของไฟล์เสียงภายในอิมเมจเฟิร์มแวร์ได้ โดยไม่ต้องเข้ารหัสใหม่หรือเปลี่ยนความยาวของไฟล์
- ผู้เขียนแฟลชเฟิร์มแวร์ที่แก้ไขแล้วกลับเข้าอุปกรณ์ได้สำเร็จ และได้เสียงที่เบาลงมาก
- ผู้เขียนสรุปว่าการปรับระดับเสียงของเสียงระบบควรเป็นความสามารถพื้นฐานในอุปกรณ์ที่เล่นเสียงได้
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News