duzgun.org/blog
Alfa Romeo Giulietta/ 2011 · 2.0 JTDm/ orijinal radyo

Giulietta'nın orijinal radyosunda Bluetooth müzik

2011 model Alfa Romeo Giulietta 2.0 JTDm aracımda Bluetooth üzerinden telefon görüşmesi yapabiliyordum ama müzik dinleyemiyordum. Benim istediğim de telefondaki müziği arabada dinlemekti.

Bunun için birkaç seçenek vardı:

  1. CD değiştirici girişine takılan bir adaptör.
  2. AUX (3.5 mm) ve USB girişlerine takılan bir Bluetooth adaptörü.
  3. Radyo komple sökülüp yerine takılan, çoğu Çin malı multimedya üniteleri.

AUX Bluetooth adaptörünü seçip beş yıldan uzun süre kullandım. Müzik çalıyordu ama direksiyon tuşlarıyla kontrol edemiyordum. Radyo AUX'tayken aracın kendi Bluetooth'u üzerinden görüşme de yapamıyordum. Sonra orijinal Blue&Me modülü bozuldu ve AUX çözümüm de çalışmaz oldu. Yıllardır kullandığım geçici çözümü de kaybetmiştim.

fmntf'nin Medium'daki yazı dizisini ve fiatcan projesini bulunca bu modülü kendim yapabileceğimi düşündüm. Başka bir Fiat grubu araçta işin zor kısmını çözmüş, nasıl yaptığını da anlatmıştı. Onun çalışmasını başlangıç noktası alarak ve LLM'lerden de yardım alabileceğimi bilerek kendi modülümü yapmaya karar verdim.

Orijinal radyoyu korumak, Bluetooth üzerinden çalan müziği direksiyondan kontrol etmek ve görüşmelerde aracın kendi mikrofonunu kullanmak istiyordum. Bunların hepsinin birlikte çalışmasını istiyordum.

Tezgâhın üzerinde açık Blue&Me kutusu: kutunun dört vida yuvasına vidalanmış beyaz bir baskı çerçeve, altında renkli kablolar, ön kenarda, üzerinde büyük bir kondansatör olan yeşil bir delikli pertinaks.
Neredeyse bitmiş hâli. Fotoğrafı 1 Ekim 2026'da, aracıma taktığım gün çektim. Bastığım çerçeveyi, eski kartın oturduğu dört vida yuvasına sabitledim. Altında Pi, CAN modülü ve ses kartı var. Öndeki delikli pertinaks da marş sırasında beslemeyi desteklemek için eklediğim kondansatörü taşıyor.

Fikir

İşe, ön konsolun arkasındaki Blue&Me modülünden başladım. Telefon görüşmelerini radyoya aktaran parça buydu. Benimki bozulduğuna göre, yerine kendi yaptığım modülü koyabilirdim.

Raspberry Pi Zero W ile yaptığım modülü eski kutuya yerleştirdim. Telefonum Pi'ye Bluetooth üzerinden bağlanıyor; müzik ve görüşme sesi buradan radyoya gidiyor. Araç da onu Blue&Me olarak tanıyor. Böylece radyoda Blue&Me'yi seçebiliyor, direksiyon tuşlarını kullanabiliyorum. Ses için eski modülün kablolarını kullandım; CD değiştirici emülatörüne veya AUX adaptörüne gerek kalmadı.

Arabamda artık neler çalışıyor

Bluetooth üzerinden müzik
MEDIA'ya bastığımda telefondaki müzik aracın hoparlörlerinden geliyor. FM'e geçince müzik duraklıyor.
Direksiyondan kumanda
Sonraki ve önceki parçaya direksiyondan geçiyorum. Ses tuşları eskisi gibi çalışıyor.
Ekranda parça bilgisi
Radyonun ekranında sanatçı ve parça adı, altında da geçen süre görünüyor.
Eller serbest görüşme
Görüşmeleri hoparlörlerden duyuyor, tavandaki mikrofonu kullanıyorum. Direksiyondan aramayı cevaplayıp bitirebiliyorum. Karşımdaki kişi hâlâ hafif bir yankı duyuyor.
Telefonun asistanı
Direksiyondaki sesli komut tuşuyla telefonumun asistanını açıyorum. Aracın mikrofonundan konuşuyor, yanıtı hoparlörlerden duyuyorum.
Temiz ses
Motor çalışırken sesi sonuna kadar açıp denedim. Ne bozulma ne de motor kaynaklı bir uğultu duydum.
Kendiliğinden açılıyor
Aracımın kilidini açınca uyanıyor, telefon da birkaç saniye içinde kendiliğinden bağlanıyor. Park hâlindeyken uyuyor.
Kilometre sayacı artık yanıp sönmüyor
Aracım onu orijinal parça olarak kabul ediyor. Bir modül eksik olduğunda yanıp sönen kilometre sayacı da sabit duruyor.

Ne gerekiyor

Yapımda küçük elektronik modüller, havya ve multimetre kullandım. Kutunun içindeki parçaları sabitlemek için 3D yazıcıdan da yararlandım. En çok zamanımı ölçüm yapmak ve araçtan aldığım kayıtları incelemek aldı. Parça ve alet listesinin tamamını kılavuza koydum.

Asıl uğraştıran, radyonun yeni modülü kabul etmesiydi. Ses girişini ancak tanıdığı bir modüle açıyordu. Müzik dinleyebilmek için önce aracın bu modülden ne beklediğini anlamam gerekiyordu.

Radyonun modülü kabul etmesi

Ses ile kontrolü ayrı ayrı çözmem gerekiyordu. Ses, eski modülün analog kablolarından radyoya gidiyor. CAN hattında ise modülün varlığı, radyonun seçtiği kaynak ve basılan tuşlar gibi bilgiler var. Pi'den ses alabilsem bile, radyo o girişi açmadığı sürece müzik dinleyemiyordum.

Elimde mesajlarını örnek alabileceğim çalışan bir Blue&Me yoktu. Önce modül sökülüyken araçtan kayıt aldım. Sonra aracı Blue&Me takılıymış gibi yapılandırıp bir kayıt daha aldım. İkisini karşılaştırınca eksik modüle hangi soruların yöneltildiğini gördüm. Daha sonra bozuk modülü yeniden bağladım. İşini yapamıyordu ama hâlâ gönderdiği mesajlar, protokolü çözmeme yardımcı oldu.

İlk sevindiğim şey müzik değildi: araç Pi'yi kabul etmiş, kilometre sayacının yanıp sönmesi durmuştu. Radyoda Blue&Me kaynağının seçili kalması için yeniden uğraşmam gerekti. Pi'nin kendiliğinden gönderdiği “ses hazır” mesajını radyo dikkate almıyordu. Önce radyonun sorması, ardından Pi'nin yanıt vermesi gerekiyordu. Küçük Pi zamanında yanıt verebilsin diye gelen gereksiz mesajları da filtreledim.

Başka Fiat grubu araçlar için bulunan mesajlar işime yaradı, ama kendi aracımın kaydında görmeden onları kullanmadım. Kayıtların adını yazılımda ilgili mesajların yanına da ekledim. Böylece bir mesajı neden gönderdiğimi, hangi denemede doğruladığımı sonradan görebiliyorum.

Açık ön panelin yanında Pi ve bağlı kartlar.
Araçtaki ilk denemelerden birinde geçici kurulum.

Müzik, görüşmelerden daha kolaydı

CAN tarafıyla uğraşırken sesi evde denemeye başladım. Pi'de olmayan ses çıkışını ve mikrofon girişini USB ses kartıyla ekledim. Kulaklıkta müzik dinlemek kolaydı. Görüşmeler daha çok uğraştırdı: iki tarafın da birbirini duyması, mikrofon sesinin birikip gecikmemesi gerekiyordu.

Müzik sorunsuz çalsa da görüşmelerde hâlâ sorun vardı. Mikrofon sesini aktarmak için ilk kurduğum bağlantıda eski ses birikiyor, sonraki görüşmeye kalıyordu. Müzik ve görüşme için aynı çalıcıyı kullandığımda da telefonu kapattıktan sonra müzik geri gelmiyordu. Çalıcıları ayırdım ve mikrofon sesini gecikmeden aktaran bir servis yazdım. Geniş bant Bluetooth görüşmelerini açınca kısık sesle söylenen sözler de daha anlaşılır oldu.

Tavandaki mikrofonu ses kartına doğrudan bağlayamadım; kulaklıklardaki mikrofonlardan farklıydı. Bunun için ayrı bir devre kurdum. Beslemesini ölçtüm, konuşma ve ıslık kaydı aldım, sonra da bir görüşmeyle denedim. Karşı tarafın sesimi iyi duyduğunu söylemesi, ölçümlerin yanında içimi rahatlatan asıl sonuçtu. Araçta müziğin ses düzeyini de FM ile karşılaştırdım ve motor çalışırken dinledim. Uğultu duymayınca izolatör eklemedim.

Direksiyon tuşları ve radyo ekranı

Müziği değiştirmek için telefonu elime almak istemiyordum. Direksiyon tuşlarına basınca kayıtlarda hangi bitlerin değiştiğini görebiliyordum. Ama iş bununla bitmiyordu: aynı tuşun görüşme sırasında başka bir görevi olabiliyor. Bu yüzden uygulama, ne yapacağına karar vermeden önce telefona arama durumunu soruyor.

Bazı tuşların işini radyo zaten kendisi yapıyormuş. Sessize alma ve kaynak değiştirmeyi araçta deneyince bunu gördüm. Ekranda da hangi metin alanının hangi satıra çıktığını, hangi karakterlerin göründüğünü tek tek denedim. Sonunda üst satırda sanatçı ve parça adını kaydırabildim; alt satıra da geçen süreyi koydum.

İlk montajda besleme sorunu ortaya çıktı

Modülü 1 Ekim 2026'da araca taktım. Marşa basana kadar her şey çalışıyordu. İlk marşta Pi yeniden başladı. Diyot ve kondansatör eklemek de sorunu çözmedi. Dönüştürücüyü tezgâhta denediğimde, etiketine göre çalışması gereken bir giriş geriliminde çıkış vermediğini gördüm. Dönüştürücüyü değiştirince yeniden başlamalar bitti. İlk tezgâh testinde Pi'yi besleyebilmişti; marş sırasında da çalışmaya devam edeceğini ise o testten anlayamamıştım.

Park hâli için de bir karar vermem gerekiyordu. Araç, ben daha anahtarı çevirmeden, uyanır uyanmaz modüllerini kontrol ediyor. Pi kapalıysa açılması bu sorguya yetişmiyor. Bu yüzden Pi'yi 72 saat düşük tüketimli beklemede kalacak, ardından kapanacak şekilde ayarladım. Günlük kullanımda hemen yanıt veriyor; uzun parkta da sürekli açık kalmıyor. Yine de kapalıyken akım çekiyor, bu yüzden aracı uzun süre kullanmayacaksam beslemeyi kesiyorum.

Eski kutuya yerleştirmek

Eski kutuyu kullanınca aracın konnektörünü ve montaj yerini değiştirmem gerekmedi. Ama parçaları kutuya sığdırmak düşündüğüm kadar kolay olmadı. İçerideki çıkıntılar, klipsler ve vida yuvaları epey yer kaplıyordu. Fotoğraflardan ve ölçülerden yararlanarak OpenSCAD'de bir çerçeve ve montaj tabanı tasarladım. Tamamını basmadan önce ince deneme baskılarıyla kutuya oturup oturmadığını kontrol ettim.

Orijinal Blue&Me modülü: havalandırma yarıkları ve 32 pinli mavi bir konnektörü olan yassı, siyah plastik bir kutu.
Eski modülün kapalı hâli. Aracın fişi mavi konnektöre takılıyor.
Açılmış kutu; içinde orijinal yeşil devre kartı duruyor.
Kapağı açınca karşıma çıkan orijinal devre kartı.

İlk denemede, çizimde gözümden kaçan birkaç sorun çıktı. Ses kartının kablosu bir desteğe takılıyor, USB adaptörü de CAN kartının üstüne taşıyordu. Desteğin yerini değiştirdim; kabloyu kısaltıp doğrudan Pi'ye lehimledim. Konnektör için birkaç seçenek denedikten sonra delikli pertinaksa takılan pinleri kullandım. Bu değişikliklerle parçaları kutuya sığdırabildim. Bağlantı ve montaj ayrıntılarını kılavuzda anlattım.

Kutuya uzanan kablolar ve konnektör pinleri olan küçük delikli pertinaks.
Kutu açıklığındaki konnektör taşıyıcısı ve delikli pertinaks.
Kutudaki ilk deneme yerleşimi: bastığım montaj tabanının üzerinde Pi, mavi CAN modülü ve siyah USB ses kartı var. Adaptörün kablosu parçaların üzerinden geçiyor. Takıldığı yerleri kırmızı kalemle işaretledim.
İlk deneme yerleşimi. Kırmızı işaretler, parçaların birbirine takıldığı yerler. Desteğin yerini değiştirdim; USB adaptörünü de kaldırdım.

Müzikteki kesilmeleri gidermek

Montajdan sonra müzik ara sıra kesilmeye başladı. İşlemci maksimum kullanımda değildi, ses kartı da hata bildirmiyordu. Bluetooth'ta ise paket kaybı vardı. Zero W'de Wi-Fi ve Bluetooth aynı radyo çipini kullanıyor; ben de Pi'ye telefonun hotspot'u üzerinden bağlanıyordum. Wi-Fi'yi kapatınca kesilmeler durdu, yeniden açınca geri geldi.

Sonunda bunu otomatik hâle getirdim: müzik veya görüşme sırasında Wi-Fi kapanıyor, ses durunca yeniden açılıyor. SSH ile bağlanmak için biraz beklemem gerekiyor ama artık müzik dinlediğim her seferde ağı elle kapatmıyorum. Tezgâhta sorunsuz çalışan sistemi araca takınca karşıma çıkan sorunlardan biri de buydu.

Görüşmelerdeki gürültü

Üniteyi kutusuna yerleştirdikten sonra yaptığım ilk görüşme kötü geçti. Karşımdaki kişi sesimi değil, motor sesine benzeyen boğuk bir gürültü duydu. Üniteyi eve götürdüm ve tezgâhta, mikrofon girişine hiçbir şey bağlı değilken kayıt aldım. Gürültü orada da vardı. Pi'yi powerbank ile çalıştırınca da sürdü, mikrofon fişini ses kartından çekince kayboldu.

Bu, fişin çevresindeki kablolamaya işaret ediyordu. Multimetreyle iki şase hatası buldum. Mikrofon fişinin şasesi devrenin ortak şasesine ulaşmıyordu. Ses kartının kendi şasesi de Pi'nin şasesinden daha yüksek gerilimdeydi: mikrofon fişi çekiliyken 60–80 mV, takılıyken 30–38 mV. Buna, kutuya sığsın diye kısaltıp lehimlediğim USB kablosu yol açıyordu. İlkini ortak şaseye bağladım, ikincisi için kısa bir kablo lehimledim. Fiş takılıyken fark 4.5 mV'a düştü. Mikrofon girişinin iki ucunu birbirine bağlayarak ölçtüğüm gürültü de, araçta breadboard devresiyle ve mikrofon bağlıyken ölçtüğüm seviyeye yaklaştı. Bu ikisi aynı test değil. İki hata da lehimlemeyle gelmişti: görüşmeleri denediğim breadboard'da ikisi de yoktu.

Üniteyi araca geri takıp montajı tamamladıktan sonra görüşmeler yeniden çalışıyor. Bunu 11 Ekim 2026'da denedim. Karşımdaki kişi hafif bir yankı duyuyor, onunla sonra ilgileneceğim.

Açık kalan konular

  • Görüşmelerde karşı tarafın duyduğu hafif yankı. Pi henüz yankı giderme yapmıyor.
  • WhatsApp aramasını direksiyondan cevaplamak. Direksiyon tuşu normal aramayı cevaplıyor ama WhatsApp aramasını henüz cevaplamıyor.
  • Araç 72 saatten uzun süre parkta kaldıktan sonra Pi PROXI sorgusuna geç yanıt verirse ne olacağını henüz denemedim.
  • Kök dosya sistemini henüz salt okunur yapmadım. Şimdiye kadarki güç kesintilerinde kart bozulmadı; bu, ileride de bozulmayacağını göstermiyor.
  • Torpido gözündeki USB girişi. Beslemesini eski modül sağladığı için şimdilik büyük olasılıkla çalışmıyor. Bunu henüz ölçmedim.

Kendi modülünü yapmak

Sonunda istediğim oldu: orijinal radyoda müzik, görüşmeler ve kumandalar birlikte çalışıyor. Buradaki sonuçlar kendi aracımda yaptığım ölçüm ve denemelere dayanıyor; başka bir araçta aynı kontrolleri yapmak gerekiyor. Kendi modülünü yapmak isteyenler için ayrı bir kılavuz hazırladım. Parça listesi, bağlantılar, tezgâh ve araç testleri, komutlar ve şemalar orada.

Teşekkürler ve emeği geçenler

Doblò projesini ve protokolü nasıl çözdüğünü paylaşan fmntf ile Alfa 159 çalışması için karolkrupa’ya teşekkür ederim. Yaptığım modülün yazılımı GitHub’da.