Benim mesele aslında basit başladı. 2023 model Dacia Jogger’ımın ekranına bakıp, “Bu ekran sadece radyo, navigasyon ve telefon bağlantısı için mi kullanılacak? Buraya başka programlar yükleyemez miyiz?” diye düşündüm.
İlk aklıma gelen USB bellekti.
Bilgisayarda programı USB’ye atıyoruz, televizyonda film açıyoruz, bazı cihazların yazılımını USB üzerinden güncelliyoruz. Otomobilde de benzer bir yol vardır diye düşünmek gayet normal.
Araştırmaya başlayınca iş değişti.
USB güncellemesi, Android Auto, Apple CarPlay, Android Automotive, AI Box, OBD cihazları, multimedya firmware’i, CAN hattı derken konu küçük çaplı bir otomotiv bilgisayar sistemine dönüştü.
En önemli ayrım da burada ortaya çıktı:
Arabayı daha akıllı hâle getirmek başka şey, arabanın beynini kurcalamak başka şey.
Benim istediğim birincisi.
Önce Hangi Ekrandan Söz Ettiğimizi Bilelim
Araçta gördüğümüz bütün ekranlar aynı işi yapmıyor.
Direksiyonun önündeki dijital gösterge paneli; hız, motor devri, yakıt, arıza uyarıları ve sürüşle ilgili kritik bilgilerle bağlantılı.
Orta konsoldaki multimedya ekranı ise Android Auto, Apple CarPlay, navigasyon, Bluetooth, müzik ve telefon bağlantılarının çalıştığı taraf.
Video oynatmak, farklı uygulamalar kullanmak veya kendi geliştirdiğimiz bir programı çalıştırmak istiyorsak mümkün olduğunca multimedya tarafında kalmak daha mantıklı.
Benim Jogger’da da hedefim ECU’ya veya güvenlik sistemlerine müdahale etmek değil. Fabrika ekranını daha kullanışlı hâle getirmek.
USB Belleğe APK Atıp Arabaya Takarsak?
İlk düşündüğüm yöntem buydu.
Bir Android uygulaması hazırlayalım, APK dosyasını flash belleğe atalım, USB girişine takalım ve ekrandan yükleyelim.
Kulağa kolay geliyor ama çoğu fabrika multimedya sistemi böyle çalışmıyor.
Dacia’nın Media Display ve Media Nav sistemlerinde USB kullanılabiliyor. Harita ve sistem güncellemeleri de USB üzerinden yapılabiliyor. Fakat USB burada bilgisayardaki gibi serbest bir program yükleme kapısı değil.
Araç kendi sistem bilgisini USB belleğe yazıyor. Bilgisayardaki resmi yazılım doğru güncelleme paketini hazırlıyor. Daha sonra araç kendisi için hazırlanmış paketi kabul ediyor.
Kabaca sistem şöyle:
Araç → USB → bilgisayar → resmi güncelleme → USB → araç
Bu mekanizmanın bulunması, belleğe youtube.apk koyup çalıştırabileceğimiz anlamına gelmiyor.
Dacia’nın belgelerinde Media Display ile Media Nav yazılımlarının birbirinin yerine kurulamayacağı da belirtiliyor. Yani Media Display’e Media Nav yazılımı yükleyip sistemi üst modele çevirmek gibi basit bir kestirme yol yok.
USB kullanılabiliyor ama üreticinin açtığı kapı kadar.
YouTube ve Netflix Nasıl Çalıştırılıyor?
Burada internette ciddi bilgi karışıklığı var.
Bazı videolara bakınca bütün Android Auto ekranlarında YouTube ve Netflix açılıyormuş gibi görünebiliyor. Oysa birkaç farklı sistem birbirine karıştırılıyor.
Android Auto
Android Auto’da uygulamanın asıl kısmı telefonda çalışıyor. Otomobil ekranı kontrollü bir arayüz görevi görüyor.
Google sürücünün dikkatini dağıtmamak için uygulamalara ciddi sınırlamalar koyuyor. Navigasyon, müzik ve sürüşe uygun belirli uygulamalar kullanılabiliyor.
Video desteği de gelişiyor ancak bundan “Android Auto bulunan her arabada YouTube açılır” sonucu çıkmıyor. Telefonun, aracın ve kullanılan Android Auto sürümünün desteklemesi gerekiyor.
Apple CarPlay
Apple tarafında da park hâlindeyken video uygulamalarının kullanılmasına yönelik destek genişliyor.
Buradaki önemli ifade yine aynı:
Park hâlindeyken.
Bence olması gereken de bu. Araba hareket ederken sürücünün önündeki ekranda Netflix açmanın teknolojik olarak mümkün olması, mantıklı olduğu anlamına gelmiyor.
AI Box Neyi Değiştiriyor?
Araştırırken dikkatimi en fazla çeken çözümlerden biri AI Box oldu.
Çalışma mantığı aslında akıllıca.
Araç kablolu CarPlay destekliyorsa kutu USB girişine bağlanıyor. Otomobil karşısındaki cihazı CarPlay cihazı gibi görüyor ancak kutunun içinde kendi Android işletim sistemi çalışıyor.
Kabaca:
Araç ekranı → CarPlay bağlantısı → AI Box → Android
Kutuda uygun donanım varsa Wi-Fi, telefon hotspot’u veya SIM üzerinden internete bağlanabiliyor. YouTube, Netflix, Spotify, navigasyon ve başka Android uygulamaları kullanılabiliyor.
Benim açımdan AI Box’ın asıl avantajı Netflix değil.
Geri dönüşünün kolay olması.
Beğenmezsem kutuyu çıkarırım.
Fabrika sistemine bilinmeyen firmware yüklememişim, bootloader açmamışım, aracın orijinal yazılımını değiştirmemişim.
Bu nedenle araçla gerçekten uyumlu ve düzgün bir cihaz bulunduğunda, fabrika sistemini kurcalamaktan daha mantıklı görünüyor.
Tabii her AI Box aynı değil. Isınma, yavaş açılma, bağlantı kopması, güncelleme desteğinin kesilmesi ve üreticisi belirsiz cihazlarda veri güvenliği gibi sorunlar çıkabilir.
Yani kutuyu USB’ye taktık diye risk tamamen bitmiyor.
Bu Kadar Uğraşıp Sadece Netflix Açmak Biraz Yazık
İşin burasında benim için konu daha ilginç bir yere geldi.
Bu kadar teknolojiyle uğraşıp sonunda arabaya sadece Netflix koyacaksak biraz az iş yapmış oluruz.
Kendi uygulamamızı geliştirmek çok daha faydalı olabilir.
Örneğin aracın bakım zamanlarını tutan bir sistem yapılabilir. Yağ değişimi, filtre, lastik, muayene ve sigorta tarihleri tek yerde görülebilir.
Yakıt tüketimi kaydedilebilir. LPG kullanan bir araçta benzin ve LPG harcamaları ayrı ayrı takip edilebilir.
Uzun yolculuklarda gidilen mesafe, ortalama tüketim, mola noktaları, hava durumu, kamp alanları, park yeri ve son konum gibi bilgiler tek uygulamada toplanabilir.
YouTube da olsun. İnsan park hâlinde birini beklerken video izlemek isteyebilir. Ama araç ekranını gerçekten geliştireceksek iş orada bitmemeli.
Android Auto İçin Kendi Uygulamamızı Yazabilir miyiz?
Evet, fakat Google’ın kuralları var.
Android Studio ile Android Auto uyumlu uygulamalar geliştirilebiliyor. Navigasyon, medya, hava durumu ve sürüşle ilgili bazı uygulama türleri için özel araç kütüphaneleri bulunuyor.
Normal telefon uygulaması gibi ekranı istediğimiz düğmeyle dolduramıyoruz. Google arayüzü bilerek sınırlıyor çünkü sürücünün karşısında bilgisayar masaüstü oluşmasını istemiyor.
Mesela Jogger için küçük bir uygulama yaptığımızı düşünelim:
Bugünkü yol: 183 km
Ortalama tüketim: 6,4 litre
Son bakım: 7.800 km önce
Sonraki yağ değişimi: 2.200 km sonra
Lastik kontrolü: 12 gün önce
Hava: Rize 18 °C, yağmurlu
Hesaplamaları telefon yapar, otomobil ekranı sürüş sırasında uygun olan bilgileri gösterir.
Bunun için aracın fabrika işletim sistemine tek satır yazılım yüklememiz gerekmeyebilir.
OBD-II ile Aracın Kendi Verilerini Okumak
OBD-II cihazları burada ayrı bir kapı açıyor.
Aracın OBD girişine takılan küçük Bluetooth veya Wi-Fi adaptörleriyle desteklenen bazı motor verileri okunabiliyor.
Araca göre motor devri, sıcaklık, hız, emme havası değerleri, yakıt sistemi bilgileri ve hata kodları gibi veriler alınabiliyor.
Burada benim çizeceğim sınır net:
Okumak başka, yazmak başka.
Motordan veri okuyup kendi ekranımızda göstermek güzel bir proje.
ECU’ya değer yazmak, motor parametrelerini değiştirmek veya CAN hattına ne yaptığı belli olmayan komutlar göndermek ise başka bir iş.
Arabayı daha kullanışlı yapalım derken çekici çağırmanın pek anlamı yok.
Android Automotive ile Android Auto Aynı Değil
Araştırırken en çok karıştırılan konulardan biri de bu.
Android Auto’da uygulamalar esas olarak telefonda çalışıyor.
Android Automotive ise doğrudan aracın işletim sistemi.
Bazı yeni otomobiller gerçekten Android Automotive kullanıyor ve uygun uygulamalar araca doğrudan kurulabiliyor.
Fakat Android Auto destekleyen bir otomobile bakıp:
“Bunda Android varmış, APK yükleriz.”
demek doğru değil.
Benim 2023 Jogger’daki Media Display veya Media Nav sistemi de Android Automotive olarak sunulan bir sistem değil. Android Auto ve CarPlay desteklemesi, içinde normal bir Android telefon sistemi bulunduğu anlamına gelmiyor.
USB’den APK yükleme fikrinin neden yürümediği burada daha net anlaşılıyor.
Fabrika Ekranını Tamamen Değiştirmek de Bir Seçenek
Android tabanlı aftermarket multimedya sistemleri de var. Bunlar aracın fabrika multimedya ünitesinin yerine geçebiliyor.
İmkânları geniş ama risk de artıyor.
Çünkü yeni cihazın aracın direksiyon kumandaları, geri görüş kamerası, mikrofonu, USB bağlantıları, ses sistemi ve bazı araç ayarlarıyla düzgün haberleşmesi gerekiyor.
Uyumsuz veya düşük kaliteli bir sistemde küçük ama sinir bozucu problemler çıkabilir.
Ses gecikebilir.
Direksiyon tuşlarından biri çalışmayabilir.
Geri görüş kamerası geç açılabilir.
Cihaz araç kapandıktan sonra uykuya geçmeyip aküyü tüketebilir.
Bu nedenle fabrika ekranını tamamen değiştirmek benim sıralamamda AI Box veya telefon tabanlı çözümlerden sonra geliyor.
Ben Kendi Jogger’ımda Hangi Yolu Seçerdim?
Araştırmaya başlamadan önce kafamda USB bellek vardı.
Şimdi daha farklı düşünüyorum.
Önce araçtaki multimedya sisteminin tam modelini ve yazılım sürümünü belirlerim.
USB girişinin gerçekten veri aktarımı yapan CarPlay bağlantısı olup olmadığını kesinleştiririm.
Sonra fabrika yazılımına dokunmadan çalışan çözümü denerim.
Benim sıralamam:
Android Auto/CarPlay → kendi telefon uygulamamız → uyumlu AI Box
olur.
Bunlarla istediğim sonucu alamazsam bağımsız ekran veya aftermarket multimedya ünitesine bakarım.
Bilinmeyen firmware yüklemek ise bu listenin sonunda bile yok.
Çünkü kazancımız birkaç uygulama olabilir. Kaybımız ise sorunsuz çalışan fabrika sistemi.
Video Olsun Ama Araba Dururken
YouTube ve Netflix konusunda sınırı baştan koymak gerekiyor.
Araç park hâlindeyken birini bekliyorsak ekranın video oynatması kullanışlı olabilir. Uzun yolculukta mola verirken veya feribotta beklerken de işe yarar.
Ama sürüş sırasında sürücünün önündeki ekranda film açmanın savunulacak tarafı pek yok.
Apple ve Google’ın araç sistemlerinde videoyu park durumuyla ilişkilendirmesinin nedeni de bu.
Teknoloji bir şeyi yapabilmemize izin veriyor diye onu yapmak zorunda değiliz.
Arabayı Hacklemek Yerine Akıllandırmak
Ben bu işe “Jogger’ın USB girişine bir yazılım yükleyebilir miyiz?” diye başladım.
Araştırmanın sonunda vardığım yer biraz farklı oldu.
Aracın kendi sistemine daha fazla müdahale etmek yerine aracın dışındaki bilgisayarları daha akıllı kullanmak bana daha mantıklı geliyor.
Telefon zaten güçlü bir bilgisayar.
AI Box küçük bir Android bilgisayar.
OBD cihazı araçtan veri okuyabiliyor.
Android Auto ve CarPlay de bunlarla otomobil arasında kontrollü bir köprü kuruyor.
Bunları doğru şekilde bir araya getirirsek fabrika sistemini bozmak zorunda kalmadan oldukça gelişmiş bir araç ekranı oluşturabiliriz.
Benim Jogger için bundan sonraki hedefim de bu.
USB belleğe ne olduğu belli olmayan bir dosya koyup “bakalım araba ne yapacak” denemesi değil.
Önce sistemi tanımak, sonra mümkünse kendi yazılımımızı geliştirmek, gerekiyorsa harici donanım eklemek.
Aracın motoruna, güvenlik sistemlerine ve fabrika yazılımına ise mümkün olduğunca dokunmamak.
Çünkü otomobilde iyi yazılım yalnız çok şey yapabilen yazılım değildir.
İstediğimiz işi yaptıktan sonra arabayı yine araba olarak bırakabilen yazılımdır.

Yorum Yaz