Uzun süredir yavaş yavaş ilerlettiğim projem olan Carputer hakkında bir makale yazmak istedim. Bu uzun soluklu projenin ilk aşamalarından bu zamana ilerleyişi adım adım paylaşmaya çalıştım. Zaten blog’umda bir çok yazdığım makale Carputer projemle ilgiliydi.Carputer Projesiyle ilgili diğer yazdığım makaleler :
Carputer projesi ilk 2009 yılında başladı. İlk amacım 7 inç dokunmatik bir ekran temin edip bu ekranı aracıma “in-dash” olarak monte etmek ve eski bir laptop’u bu ekrana bağlayıp araçta bilgisayar kullanımına imkan sağlamaktı.
Bu amaçla ilk olarak internette dokunmatik ekran arayışına girdim. CarTFT mağazasını buldum ve birçok seçenek arasından CTF700-SH modelini seçip siparişini verdim. Bu ürün 7 inç boyutlu, güneş altında parlamayı engellemek için güçlü bir arkaışık, ve yansımayı engelleyen özel bir kaplama kullanılmış bir LCD ekrandı. Native ekran çözünürlüğü 800×480 olup 800×600’da interpolasyon edilmiş çözünürlükle de sorunsuz kullanılıyor. Çok arzu ederseniz ürün 800×480 intel sürücüleriyle de destekleniyor. Bu şekilde Windows’un standartta desteklememesine rağmen modifiye edilmiş sürücü ile bilgisayaraınızı 800×480 çözünürlükte kullanabiliyorsunuz. Ama bu düşük çözünürlük windows içinde hiç de kullanışlı değil. Bu arada vakit çok eski değil doğru ama 7 inç bir ekranın 800×480 çözünürlükte olması, 2010 yılı öncesi için hiç de fena bir çözünürlük değildi.
Ekran üstüne üstlük gümrükte takılınca bu ilk hamle bana oldukça pahalıya patladı. Şimdiki imkanlar daha uygun, bu ekranı aradığımda Türkiye’de bulmak mümkün değildi.
Ekran 1 hafta sonra elime ulaştı. Bundan sonraki aşama dizüstü bilgisayarıma bağlayıp denemelere başlamak oldu.
Araçta kullanmak için her zaman basit bir ön yüze ihtiyaç duyuyorsunuz. Bu amaçla yazılmış bir çok Carputer uygulaması var ücretli ve ücretsiz olarak. İlk olarak kullandığım uygulama yukarıdaki fotoğrafta gördüğünüz arayüzdü. Bu arayüz CarTFT tarafından ücretsiz dağıtımı yapılan bir uygulama. Basit bir arayüz sunuyor ve kullanımı kolaydı.
Biraz bu tip uygulamaları gördükten sonra kendi uygulamamı kendim yazmam gerektiğini düşündüm ve C#.NET ile 3 yıl boyunca 3-4 farklı birbirini takip eden uygulama geliştirdim.
Eskiden yeniye 3 ekran görüntüsü paylaşıyorum :
Aşağıdaki görüntü aynı zamanda Doğuş Üniversitesi Projistör ’11 Teknik proje yarışmasında birincilik alan proje prototipinden:
Aşağıdaki görüntü uygulama ön yüzünü Windows standardı kontrollerden kurtarıp Photoshop’ta kendi tasarımımı yapmam gerektiğini anladıktan sonraydı. Temel uygulama özellikleri ve ‘code behind’ büyük oranda aynı kaldı.
Temel olarak uygulamada bulunan özellikleri ve bunları nasıl implimente ettiğimden bahsedeyim:
Aşağıdaki görüntü Centrafuse için geliştirdiğim bir arayüz çalışmasından;
Centrafuse demişken o durumdan da bahsedeyim. En son uygulama için yeni arayışlara gittiğimde Centrafuse adlı bir ön yüz uygulamasını gördüm. Uygulamanın güzel tarafı standart ön yüzleri, özellikleri ve uygulamaları yanında API ve SDK ‘ları aracılığıyla size plug-in’ler ve temalar geliştirme olanakları sağlaması. Bu yüzden bu uygulamayı incelemeye değer buldum ve kurdum. Son 5 ayımı askerde geçirdiğimi saymazsanız 3-4 ay kadar da Centrafuse’u kullandım. Askere gitmeden öncede yukarıdaki temayı tasarlamıştım. Araca CAN-BUS’la bağlanıp araca özel verileri alabildiğimden bunları Centrafuse’a dahil edebilecek bir plug’in ve tema çalışması yapıyordum.
Buraya kadar projenin yazılımsal tarafından bahsettik. Proje yarışmasına katılmadan önce projeyi artık in-dash duruma getirmeye karar verdim. Bunun için önce Maslak Sanayide ses&görüntü sistemleriyle uğraşan yerlerle görüştüm. Çoğu açık söyleyim sallamadı bile beni. Baktım bizim ustalarda vizyon yok, iş başa düştü dedim ve araştırmalara başladım.
2007 model Citroen C4 aracımın fabrika çıkışı ön konsol durumu:
Aşağıdaki fotoğraf 7 inç ekranın ön konsola fabrika çıkışı olarak konmuş hali. Avrupa’daki araçlara (opsiyon olarak) 2-DIN ‘lik bir alana navigasyon, bluetooth ile telefon görüşmesi vb. medya ortamı sağlayan bir sistem takılı. Türkiye’deki araçlarda bu opsiyon yok ve yukarıdaki fotoğrafta görüldüğü gibi 1-DIN’lik, yol bilgisayarı ve Radyo&CD-Çalar bilgilerini gösteren basit bir segment lcd bulunuyor. Altındaki 1-DIN’lik boş alanı değerlendirmek içinde kapaklı bir bölme yerleştirilmiş.
İlk fotoğraftaki ön konsolu kullanıp ikinci fotoğraftaki gibi in-dash şekilde 7 inç’lik monitörümü yerleştirebilmek için bildiğiniz ön konsolu kestim. İşe aşağıdaki gibi ön gövdeyi havyayla keserek başladım 🙂
Ön konsol parçasını yukarıdaki şekilde kaba haliyle havyayla eriterek kestikten sonra maket bıçağıyla ve zımparayla plastik çapakları düzelttim.
CarTFT’den aldığım 7içnlik ekran dış plastik kasasıyla birlikte konsol parçasının arka kısmına sığmayınca, ekranın plastik kasasının alt ve üst kısmından çok az keserek konsola tam olarak oturmasını sağladım.
Dokunmatik ekranın, kestiğim konsola yandan oturtulmuş şekli:
Yukdarıdaki görüntü hiç de iç açıcı değil kabul etmek gerek. Yukarıdaki parça kalından inceye zımparalandı. Daha sonra sağ ve soldan içe doğru boşlukları kapatılmak üzere şampuan şişsesinden plastik parçalar yapıştırıldı kesilerek. Daha sonra macunla boşluklar doldurularak zımparalama işlemine başlandı. Bu macun + zımpara döngüsü 2-3 gün boyunca sürdü. Elimde süreçle ilgili çok daha fazla fotoğraf vardı ama macunlamanın son haliyle ilgili sadece aşağıdaki fotoğrafı bulabildim.
Boyamadan önce konsolun son hali:
Macunlamadan sonra 3 kat mat siyah sprey boya attım ve aşağıdaki görüntüyü elde ettim:
Ekran bağlantısının tamamlanmasından sonraki problemimiz bilgisayar. Laptop ile bu geminin yürümeyeceğini anladığımda mini-atx bir anakartla torpidoya bir sistem gerektiğine karar verdim. Asus’un DDR3 Ram ve USB 3.0 destekli, video ve ses onboard bir anakartını aldım. Intel i3 bir işlemci ve 60 GB SSD, OCZ marka bir sabit disk kullandım. Mekanik disk araç titreşimleri göz önüne alındığında uzun vadeli değildi ve tabi SSD’nin boot hızına etkisinin gazına geldiğimi söyleyebilirim.
Yukarıdaki görüntünün hala korkutucu olduğunu kabul ediyorum 🙂 Torpido bu şekilde dağınık gözüküyor ama kapağını kapatınca hiçbir sorun yok. Torpido’nun içinde bulunan havalandırma özelliği ve yeterli bulduğum hacim, kapak kapatıldığında bile bilgisayara güzel bir yaşam alanı sağlıyor.
Bu arada yukarıdaki ekranın sol altından çıkmış soket Carputer Projesinin devamı niteliğinde sürdürdüğüm çalışmalarımın temelini oluşturuyor. Eskiden 7 inç lcd’nin yerinde bulunan küçücük yol bilgisayarı ekranımızın bağlantı soketi. Hem güç hem de veri iletişimi bu hat üstünden sağlanıyor. 3 yıl önce bu veri haberleşmesinin tipinin VAN (Vehicle Area Network) olduğunu sanmış ve konuyla ilgili bir araştırma yapıp aldığım verileri de blogta yazdığım bir makaleyle paylaşmıştım. Osiloskopla yaptığım veri analizinin beni yanılttığını düşündüm ve USB ile bilgisayara bağlanabilen bir Protocol Analyzer satın aldım.
Tam markası modeli aklımda değil ama bunun başka bir varrasyonuydu: http://r.ebay.com/4bgJNr
CAN-BUS varsayımıyla çalışmama bir bakış açısı kazandırınca, anlamlandıramadığım verileri daha anlamlı halde toplamaya başladım. CAN-BUS’tan sniff ederek ulaştığım pek çok veri bulunmakta şu an. Ama daha çalışma tamamlanmadı.
CAN-BUS ‘ta uyguladığım reverse engineering başlı başına bir makale konusu bence. Çünkü bu verilerle ilgili herkese açık hiçbir döküman bulunmamakta. Citroen’le de yazıştım. Fransa’da bir kaç firma önerdiler. CAN-BUS ile ilgili test ekipmanları vs. satışı ve eğitimi sunuyorlar. Şimdilik ticari amaçlarımız olmadığına göre, ücretsiz CAN-BUS node ID’lerini ve değerleri de paylaşmadıklarına göre geriye tek kalan Reverse Engineering ile yola devam etmek
Aşağıda araçtan veriyi alıp bunlardan 1 sn – 50 saniye süreler arasında sample’lar alıyorum. Analiz için çok fazla veriye ihtiyacım olduğu için tüm verileri MYSQL veritabanında tutup o şekilde veri üstünde çalışıyorum. Analiz sırasında SQL komutlarıyla veri analizi yapmak hız ve kolaylık açısında son derece beni hızlandırıyor. Ama dediğim gibi bu çalışmanın konusu burası değil. Tamamlandığında bu konu ayrı bir makaleyi hak ediyor 🙂
Değinmediğimiz diğer bir konu da bilgisayar ile orjinal teyp arasındaki ses bağlantısı. Blaupunkt marka teybin AUX girişinin yazılımsal olarak etkin duruma getirilmesi gerekiyor. Bu işi Altunizade Citroen Servisi’ne gidip yaptırdım. 30 TL’ye mal oldu. (5 dakikalık bir işlem )
Ses bağlantısı için teybin arka kısmından 3 adet pin kullanıyoruz (Sağ Ses+, Sol Ses+, ortak toprak). (Aşağıdaki imajı çok zaman önce bir türkçe forumdan almıştım. Yazan arkadaş kusura bakmasın kaynağı hatırlayamadığım için belirtemiyorum.)
Yapacağımız kablonun bir ucu bu şekilde oluyor. Diğer ucu ise 3.5mm stereo jack. E-Bay’de hazır kitler bulmak mümkün. Ben yaklaşık 3 yıldır kendi yaptığım haliyle kullanıyorum arada temassızlık sorunları oluyor. Bağlantı için hazır kit almanın daha sağlıklı olduğu kesin.
Diğer bir konumuz ise Carputer projemizde kullandığımız bilgisayar anakartını beslemek. Bu amaçla DC-DC bir çevirici kullanıyorum. M4-ATX diye bir güç kartı.
Bu yukarıda gördüğünüz küçük kart bilgisayarı beslemekle kalmıyor aynı zamanda ‘ignition’ beslemesiyle yarım kontak yapıldığında bilgisayarı otomatik çalıştırıyor, tekrar araç durdurulduğunda bilgisayarı hibernate&shutdown&sleep edebiliyor. Akü voltajı kritik duruma geldiğinde elektriği otomatik olarak kesebiliyor. Daha bir çok işlevsel özelliği var. Cihazın teknik dökümanını buradan indirebilirsiniz.
Torpidoda bulunan ekipman: Asus Mini-ATX Anakart + M4-ATX DC-DC Güç Kaynağı + SSD Disk
ve Sonuç:
Projenin devam niteliğindeki yazılarıma aşağıdan ulaşabilirsiniz:
Linux Timezone değiştirme işlemini komut satırından kolaylıkla yapabilirsiniz. Tüm bölgeler için timezone bilgileri /usr/share/zoneinfo/ altında saklanır. /etc/localtime ise zoneinfo altındaki… Read More
Avaya SAL Gateway (Secure Access Link), Avaya tarafından ürünlerine uzaktan destek vermek için kullanılan bir uzak bağlantı çözümü. Read More
Ping, işletim sisteminden bağımsız en çok kullandığımız komutlardan biri. Ağ erişim problemlerinde sorunu izole etmeden tutun da bir cihazın çalışıp… Read More
Haberleşme birden fazla paydaş gerektirir ve tıpkı bir orkestra gibi uyumlu olması şarttır. Nasıl müzikte bas gitar davul "kick"iyle uyumlu… Read More
Bilgi işlem sektöründeyseniz özellikle gün içinde bir çok farklı Linux/Unix sunucuya erişiminiz varsa şifre hatırlamak, bunları saklamak, hem zulüm hem… Read More
View Comments
harika bir çalışma benimde bu tarz biraz daha farklı bir çalışma projem var şimdilik konuya hakim olmak için bulabildiğim sizin gibi paylaşımları okuyarak bahsi geçen teknik konuları araştırarak devam ediyorum tabiki beklentilerimin tam oluşmasıda bu şekilde oluyor artık ne istediğimi biliyorum
mail attım
Selamlar
Benim durum için önereceğiniz bir çözüm varmıdır acaba
Şehir dışındaydım. Önümüzdeki hafta gönderdiğiniz fotoğrafları inceleyeceğim
Selamlar
Benim enteresan bir problemim yar sıkıntı vermezsem size sormak istiyorum 2 aydır işin içinden çıkamadım.
mitsubishi L200 için 2 din müzik sistemi aldım içinde araç bilgi ekranı için canbus decoderde çıktı montajı yaptıktan sonra araç soketleri can bus soketleriyle farklı çıktı araç bilgi ekranına tadilat yaparak yani devre kartını daha küçük bir kutuya koyup LCD paneli iptal etsem müzik sistemine çıkış alabilirmiyim ve tuşları dokunmatik şekilde kullanmam lazım bu olabilirmi ? yada can bus giriş soketlerinde bir tadilat yapmak mümkünmüdür ? teşekürler iyi çalışmalar dilerim
Soketlerin fotoğrafını gönderebilir misiniz ?
Selamlar
Fotoğrafları burakalakus@gmail.com adresinize yolladım
Teşekkürler
Aldım inceleyeceğim. Teşekkürler
Selamlar
fotografları nasıl yollayabilirim
hocam kolay gelsin yazılımı gönderme sansınız nedir cllsolmaz@gmail.com
Kod çok eski. Hala bilgisayarımda durduğunu sanmıyorum .NET projesinin. Ama senin için bir bakacağım.
Anliyorum.Sıkıntılı bır zaman benı beklıyo o zaman :)
paylasımlarınızda ıyı bıseyler bırıkmesını beklemeyın uzun bı zaman olmus son postunuzdan bu gune takıpcısıyım bundan sonra :)
ıyı calışmalar
Merhaba konu biraz eski ama arastirma yaparken buldum konunuzu ,
Tesekkurler oncelikle detayli bi sekilde aciklamalar yaparak anlattiginiz icin.
Ben de canbus sistemi uzerinde calismak icin on arasitrma yapiyorum, anladigim kadariyla obd 2 ile sadece arac hakkinda bilgilere sahip olabilirken, canbus la hangi id de ne oldugunu ya da canbus hattini dinleyebilen bi sniffer yaratip data alanilizi yapilabildigini anliyorum dogru mudur?
Ayrica canbus uzerinden bugune kadar ne tur kontroller saglayabildiniz?
ornek olarak radyo degistirmek, camlari acip kapatmak farlari yakmak direksiyon gaz pedali hareket ettirmek gibi seyler yapilabiliyor mu.
ya da direksiyonun konumu alinabiliyor mu mesela
Selamlar, dediklerinin hepsi doğru. Çok sık vakit ayıramasamda projeye devam ediyorum aslında. Blog güncellemek için sadece elimde iyi birşeyler Olmasını bekliyorum. Son yazdıklarımdan sonra ipad teki uygulamayı güncelleştirmekle uğraştım. Araç Kontrolü sniff edilerek de bulması çok zor. Teknik detayları çok uzun ama bu zorluk sebebiyle şu ana kadar tek yapabildiğim, çocuk kilidi etkinleştirmek, 4 camın kontrolünü ayrı ayrı sağlayabilmek vs. Tabi bu çalışmalar citroen değil de belki bir alman araçla daha kolay yada daha zor olabilir. Çalıştığımız katman dökümante edilmiş bir katman değil, reverse engineering ten başka bir çare yok.
Burak ustam. ben hali hazırda obd soketini kullanıyorum dash command ve ayrıca centrafuse de obd aracılığıyla bir çok bilgiyi görüyorum. radyo ve araçla ilgili diğer bilgileri göremiyoruz Birincisi MCP2551 ve dspic kullanarak aracın CANBUS’ından veri almaya dayanıyor diyorsunuz. obd soketinden bu veriyi alıyorsunuz benim merak ettiğim aracımda orjinal cylone marka ekrana gelen boşta olan soket uçlarındanda veri alabilirmiyiz . bu bilgileri alabilmemiz için devre donanım vs sizden alabilirmiyiz veya nerden alacağız bu konuyla ilgili bizi bilgilendirmenizi merakla ve önemle bekliyoruz. 05063309910
Elimde Arduino kullanarak hazırladığım bir kit var. Ama bu bilgiler dökümante edilen şeyler olmadığı için reverse engineering kullanarak elde edebiliyorum. Bu da araç üstünde günlerce çalışmayı gerektiren, emek isteyen bir iş. Mail adresime yapmak istediğiniz çalışma hakkında daha ayrıntılı bilgi verebilirseniz. Parça temini ve yöntem konusunda yardımcı olabilirim. burakalakus@gmail.com
burak ustam eline sağlık çok güzel bir iş çıkarmışsın. bilgini paylaştığın içinde ayrıca çok teşekkür ederim. bende astra j aracıma car pc yaptım her şey çok güzel ancak radyo ve araç bilgileri klıma vs bilgileride car pcye aktarabilmeyi başaramadım bu konuyla ilgili görüşlerinize ihtiyacım var.
Öncelikle Selamlar. Yaptığınız projeyi inceledim. Açıkcası çok güzel bir çalışma olmuş. Bende yaklaşık olarak 4-5 senedir bu konularda çalışmalarım var ancak programlama bilgim hiç yok. Donanım olaran intel D510 (1.6 ghz) Atom Mini ITX anakart, 320 gb 7200 HDD, 2 gb ram, radyo karı, tv kartı, GPS, donanımlarım var. Demonte olarak devreyi kurup çalıştırdım. Yazılım olarak, İşletim sistemi Micro XP ve Ön Yüz Olarak Riderunner ( Roadrunner) olarak bilinen programı kullanıyorum. Tabiki bazı eksiklikler çıkabiliyor. özellikle Ön Yüz Programının kontrol ettiği Winamp ta türkçe karakterlerde çalma listesinde problem çıkabiliyor.
http://www.mp3car.com/road-runner/
adresinde ki yazıları ve makalaleri okursanız daha iyi şeyler çıkacağına eminim.
İyi günler dilerim.
Güzel çalışma tebrikler Ben de bir c4 sahibi olarak 4 yıldır car pc kullanıyorum.Sizin çalışmalarınızı takip edeceğim.yol bilgilerini gösteren ekrandaki bilgileri 7" ekrana taşıyabilirmiyiz
Evet şu an iki çalışmam var bu konu hakkında: Birincisi MCP2551 ve dspic kullanarak aracın CANBUS'ından veri almaya dayanıyor. İkincisi bu verileri bluetooth üstünden ipad'e atıyor. Atıyor yada yapıyor dediğime bakma şu an birincisi şöyle böyle çalışır durumda ikincisi hakkında çalışmaya doğru düzgün başlamadım bile. Ancak iş temposundan boşluk buldukça ilgilenebiliyorum.
Evet işin sonunda LCD'deki veriler bilgisayara taşınmış oluyor. Zaten makale de de bahsettiğim üzere CANBUS'ı sniff ederek LCD üzerindeki verilerin bir kısmını alabilecek hale geldim (neyi nasıl gönderdiğini biliyorum)
Valla şuraya bir Samsung galaxy note 10 koyayım deyip ekranı koyduğumda aynı hayal kırıklığına bende düştüm. ve açıkçası orta havalandırmaları feda etmeye cesaret edemedim.
Bu işi başarırsanız muhteşem bir şey olur.Hatta olursa şu an kullandığım 7" ekranı (ucuz çin malı, gündüz kullanımı berbat) 10" ekranla değiştireceğim havalandırma peteklerini feda edeceğim.
Çalışmalarınızda Allah kolaylık versin.
.