« Tüm yayınlar

iPod Classic'in Belgesiz Mikey Çipi Tersine Mühendislikle Çözüldü

iPod Classic'in belgesiz Mikey çipi, register taraması ve eski bir reverse engineering yazısıyla çözüldü; Rockbox'a düğme desteği geldi.

Rockbox, iPod Classic (6G/7G) üzerinde kablolu kulaklıkların oynat/duraklat ve ses tuşlarını hiçbir zaman desteklememişti. Sorumlu, Apple'ın kulaklık jakı denetleyicisi 'Mikey' (I2C adresi 0x72) hakkında hiçbir kamuya açık belge bulunmamasıydı; kaynak kodundaki TODO notu 2017'den beri bekliyordu. Bir geliştirici, 16 yıllık ölü bir bloğun wiki yedeğinden kalan tek referans kaynağını bularak işe koyuldu ve chip'in kayıt defterini cihazın üzerinde 256 değer boyunca tarayarak düğme raporlamasını etkinleştiren modu (0x2f) tespit etti.

Çalışma, kulaklık uzaktan kumandasının aslında dijital bir protokol değil, basit bir analog gerilim bölücü olduğunu doğruladı: orta tuş mikrofon hattını kısa devre yapıyor, ses tuşları farklı dirençlerle hattı belirli seviyelere düşürüyordu. Ayrıca chip'in olay motorunun yaklaşık 5 saniye sonra uykuya geçtiği ve tuş bırakma olaylarını 1,8 saniye geciktirerek bildirdiği gibi tuhaf donanım davranışları da ortaya çıktı.

Sonuç, Rockbox'a gönderilen ve incelemede olan bir sürücü (Gerrit değişikliği 7677) ile üç düğmenin de tam çalıştığı önceden derlenmiş bir imaj (ipod6g-mikey-v1) oldu. Bu çalışma, belgelenmemiş donanımı topluluk çabasıyla anlamanın ve eski açık kaynak projelerine hâlâ katkı sağlanabileceğinin iyi bir örneği.