Tuesday, August 6, 2013

Car PC project(August 2013 update)

This is an update for my CarPC project.
You can download the latest image from the link on the top right corner of this blog(username:'pi', password:'a').
The main features are:
Hardware:
Software:
[Operating System]
    - Raspbian Wheezy 9.February.2013
    - Custom kernel 3.6.11
        - eGalax touch screen module
        - si470x usb radio module
        - snd-usb-audio module

[Media Center]
    - omxplayer
    - XBMC 12.2 Frodo
        - media formats supported:  listed here
        - sources with objects build on 27.July.2013
        - skin: CarPC-touch(download current version)
            - system shutdown button(safely stop xbmc and safely halt)
            - reload skin button
            - switch to camera view button
        - modified spectrum analyzer(OpenGL with no rotation)
        - eGalax touch screen calibrated
        - eGalax touch screen click&drag fix
        - black rectangle behind XBMC removed
        - patch to add getMousePosition feature to xbmcgui module(used to redirect clicks from the Navigation skin page to X11 using xdotool)

[Navigation]
    - Navit build from source
    - Zoom In, Zoom Out buttons
    - Click sent from XBMC to X11 (Navit Window)

GPS Setup
1. Connect GPS module to UART TX, UART RX, GND and 3.3V or on a usb port.
2. If you are using an UART GPS module, as I did, use this tutorial or any other to setup UART communication.
3. Connect GPS to gpsd:
sudo apt-get install gpsd
gpsd /dev/ttyAMA0

Adding maps to Navit
In order to add new maps to Navit, there is a simple process. First, go to Navit Planet Extractor and download your desired area file(this will be a .bin file).
After this, transfer the file to your Raspberry PI in the folder /home/pi/navit_export/build/navit/maps/. Here, you should also update the existing .xml file and add another entry for your new map. My .xml file is looking like this:
<map type="binfile" data="$NAVIT_SHAREDIR/maps/osm_bbox_11.3,47.9,11.7,48.2.bin" />
<map type="binfile" data="$NAVIT_SHAREDIR/maps/osm_bbox_20.3,43.5,29.9,48.4.bin" />
You can rename your .bin files for easier management

Car Modding
I had to relocate my original Radio/CD player in the trunk and keep it set on aux input source. This included buying about 60m of wires and also harness:
1. Metra 71-9003 Bmw Mini Factory Radio OEM Wire Harness
2. Scosche VW03B 2002+ Vw Audi BMW Radio Stereo Harness

 front without OEM Radio/CD player
trunk with relocated OEM Radio/CD player
Mounted Raspberry PI in the armrest
Safety:
    - The wires are 2mm in diameter with good insulation, resistant at temperature variations
    - I have added fuses(1.5A for the radio, 1A for Raspberry PI, 1A for display, 0.1A for reverse camera trigger, 0.1A for reverse camera video signal)

Bugs:
     - sound pops(will soon disappear by using this hdmi to hdmi and audio splitter)
    - Navigation is behind Video Player -> Navigation isn't visible while playing videos(this isn't a big issue)

241 comments:

  1. Brilliant can you post link to image so I can download and try??

    Thx Awesome work as usual!

    ReplyDelete
    Replies
    1. Hi!

      I have put a link at the beginning of the post for the whole image.

      Delete
  2. love to see more instructions on how to do.

    ReplyDelete
  3. Hey there,

    I'm trying to get my eGalax TS working under XBMC since, I dont know when. I really tried a lot. But your approach seems to be the most promissing. But when I tried to install the two patches you provided, i couldn't find the files to patch. So is there any special version of XBMC I have to install?

    Thanks for an answer

    Simon

    ReplyDelete
    Replies
    1. Okay, sorry...

      Didn't read your previous Posts. I'm just downloading your complete built image and trying to figure out how to get it working, by studying your previous posts.

      BTW: Awesome work! Trying to do the same on my 1990 Cheve Van...

      Simon

      Delete
  4. Buna ziua Andrei!
    First of all, I want to thank you for your awesome job. I'm making a project in my university and your work was really helpful for me.
    I wanted to ask you, how could you manage to connect the raspi and the screen to the power of the car? In my project, I want to connect both of them to a rechargeable battery, but I don't really know how to do it. Could you please give me some instructions?
    Multumesc mult!
    Regards

    ReplyDelete
    Replies
    1. Hola Shuco!

      I am glad that my work helped you.
      Well, regarding wiring the screen and the PI to the car I have did the following:
      Find constant 12V+ and 12V- behind my Car stereo and split the wire in 2xthree wires(actually used some harness wires from eBay: http://www.ebay.com/itm/Metra-71-9003-Bmw-Mini-Factory-Radio-OEM-Wire-Harness-/330529294873?pt=Car_Audio_Video&hash=item4cf514ca19).
      So, I have the following diagram:
      +--->12V to 5V adaptor with micro usb(cheap car charger)--> Raspberry PI
      |
      +--->OEM Car Radio(original wires)
      |
      +--->Display 12V DC in
      OEM Car Radio is used as sound amplifier(3.5mm jack to 3.5mm jack wire is used)
      Be careful with the current needed. My system needs:
      - 700mA for the Raspberry PI(but you can add 500mA maximum for each usb device plugged in -> mine works fine with 1A fuse for Raspberry PI USB touch screen and one USB Pen Drive)
      - 1.5A maximum for my Radio(at maximum volume)
      - 600mA for the display

      Regards,
      Andrei

      Delete
  5. Great job! I tried this out but why is my left and right axis swapped?

    ReplyDelete
    Replies
    1. Hi!

      Thank you!
      Try to set swap_axes=1 in /usr/share/eGalax/touchscreen_axes_calib

      Andrei

      Delete
  6. Andrei, thank you for the reply. But, it did not work.
    Here is my problem. For example. The Home button is in the top left corner. But, I have to
    touch the top right corner for it to work. The Videos/Music/Pictures, etc. is on the left side. But, I have to touch the right side of the screen for it to work. It seems everything is mirrored.
    Thank you!
    BTW. I found this for my startup and shutdown http://mausberrycircuits.com/car-power-supply-ignition-switch/

    ReplyDelete
    Replies
    1. Hi!

      Well, it seems that only your x axis is inverted. So. in order to switch this axis, we have to take a llok at the formula implemented in XBMC code, by my patch:
      pointer.x = screen_width - value_read.x * calib_x_fact - calib_x_d;
      In order to change axis orientation you have to do some changes to the /usr/share/eGalaxCalibration/touchscreen_axes_calib file:
      1. set calib_x_fact as a negative value
      2. set calib_x_d equal to screen width(in my case 1280)
      You can apply math to see what it does to the equation. You can read more about this on one of my previous posts: http://www.engineering-diy.blogspot.ro/2013/02/raspberry-pi-raspbian-xbmc-and-egalax-7.html on paragraphs 4 and 5.
      BTW: The car ignition switch is a very good solution, but in my car I have a general on/off switch to be sure that no current is drawn while I am away.

      Delete
    2. I got it to work! Thank you very much. I suck at math and coding. But am good at hardware hacking. So, not sure how I calculated it. But, it works.

      Now. where did you put your map file? I looked in Navit-Maps but did not see it. I want to replace it with my own .bin

      Delete
    3. Great!

      I have put my .bin file in the folder /home/pi/navit_export/build/navit/maps/
      Also I have updated the .xml file from the same location and added a new entry with path to the new map.

      Delete
  7. Hi! Have a nice day!
    Andrei, i want to repeat your great job, but i can't understand how to do - how to write the your image on to flash, to work raspberry? all images on the official site have another format. I don't understand (
    ps. thank you for y work!

    ReplyDelete
    Replies
    1. ok, I found answer to my question. I will use the "Win32 Disk Imager". Unfortunatelly, but to my sdhc flesh on 4 gb, this image can't install (

      Delete
    2. 4gb is too small. It will fit on a 8gb.

      Delete
    3. I am using a small sd card for boot partition and an usb flash disk(3.7GB) for the root system. The root system is exactly the same uploaded.
      You can also try to use a greater SD card, but I have encountered some speed improvements when running from usb disk.

      Delete
  8. Hi! Andrey, what about connect your phone to rpi with bluetooth and recieve the call?

    ReplyDelete
    Replies
    1. Hi Dimitry!

      Currently I can connect RPI using wifi dongle to Android phone using Official XBMC Remote app and sms messages and caller and also picture of caller are displayed on the XBMC screen.

      Delete
    2. Forget official remote, get yatse.

      Delete
    3. this would be interesting too since i have an iphone would be nice to make calls off the touch screen.

      Delete
  9. hi.
    Sorry, but i can't understand, how can i close or minimize the xbmc? I can't understand(

    ReplyDelete
    Replies
    1. After all+s you need to arrow over to get the option to exit instead of shutdown. I struggled with this

      Delete
    2. Hi, cant close the xbmc i use press s the press > intill i get the exit then i press enter but i only get a black screen please hellp
      p.s. i need to fix the touch settings

      Thanks

      Delete
    3. Hi!

      Try using ssh:
      sudo killall -9 xbmc.bin

      Delete
  10. Hello!
    What about pass for usr pi? and root?
    thks

    ReplyDelete
  11. You've done amazing work on this. Thank you so much for sharing, I am truly impressed and grateful for all you've done here.

    ReplyDelete
  12. Excellent work. Very organized.
    I was looking for Rasbian Wheezy + XBMC 12.2 (Frodo) combination every where!
    I'm going to try your image.
    Thank you.

    Mikey. (PR)

    ReplyDelete
  13. hi! Sorry, maybe you can help me.
    I have a two problem,
    1) The first with touch calibration, i'll download your image, try to x_input_calibration, but in my touch x is inverted, offcourse i'm read your message about calibrate but i cann't understand how can i disable the invert?
    2) The second problem - is image. I'll connect the rpi to touch with rpc connect(yellow), image is biggest about monitor (
    ps. maybee you can help me, thks.
    pps. sorry for my terrible english, hes not a my language.

    ReplyDelete
    Replies
    1. Hi!

      1) For the X axis you have this formula implementer in XBMC:
      pointer.x = screen_width - value_read.x * calib_x_fact - calib_x_d;
      To revert x axis orientation you have to set calib_x_fact as a negative value and calib_y_d equal to your screen width in pixels. The equation will become:
      pointer.x = screen_width - value_read.x * (-calib_x_fact) - screen_width;
      Which will be
      pointer.x = value_read.x * calib_x_fact;
      If you want to move the click frame left or right(if your pointer is left or right from your click point) you have to tweak calib_y_d(increase or decrease it).

      Delete
    2. Regarding the second issue I don't know how to help you. Maybe you have to tweak overscan values in the file /boot/config.txt. See http://elinux.org/RPiconfig

      Delete
  14. Hello Andrei,

    first of all: great job!

    I'm following your blog since i started my raspberry-experience a few months ago. I liked your blog, because it's very rare to find someone who is able to do the work on his own and THEN is still able to do the documentation! I really appreciate what you are doing!

    but: i can't download your latest image! google tells me that there are wrong permissions on the file?
    I hope you can fix that, because i hope that you have done the work i wasn't able to! (i destroyed my brain while testing with the xbmc and egalax-touchscreen! :D)

    Great job, and go on!

    Regards,
    Knut

    ReplyDelete
    Replies
    1. Hi Knut!

      Thank you for your appreciation and for letting me know about the issue with the download!
      I have fixed the download link. Please try again now.
      I have also spent a lot of time with XBMC and egalax until found the solution.
      I hope you will enjoy my latest build.

      Best Regards!

      Delete
  15. Hello Andrei,

    the download is working now, props for that! ;-)

    I have several SD-Cards with multiple builds and distributions, it just bothers me at the moment.
    I either have a running OS with supported and working Touchscreen but couldn't get XBMC up and running, or i had a working XBMC (like OpenELEC/Raspbmc) with no touch-Support... :-(

    I hope i can restart my project now. At least we BMW-drivers have to stick together, right? ;-)

    Do you have any plans for the CarPC to connect to your Home-WLAN and get synced with some kind of NAS? I'm an iTunes-Fanboy and have all my music and stuff on my NAS. So I want to have an automatic sync between my Car and my other devices.

    And one last question: Does your image support the Airplay-function? I Would LOVE to connect my iPhone to my car and quick buy and play music / videos from there! :D

    I hope the project is getting more viral, because it seems to be a very solib build! :-)

    Regards,
    Knut

    ReplyDelete
    Replies
    1. Hi Knut!

      I have used Edimax wifi dongle and created a hotspot with my Android phone. With this I have internet on the CarPC and also support for XBMC remotes. Official XBMC remote has some nice feature which display a nice popup for every call or SMS received on the phone.
      The build also contains airplay support but I haven't tested and don't know if it is working.
      At this moment I am trying to integrate my changes in OpenELEC(it boots in less than 30 seconds).

      Regards,
      Andrei

      Delete
    2. Hello Andrei,

      I am using a TP-Link Wifi Dongle. The one I use had some troubles on the raspberry (There were some version-troubles with the driver :-( ). I hope that i can use it with your image. I have downloaded it, but couldn't test ist yet. At least i can install the driver on my own, i already did this a few times on raspbian.

      Thank you for the info about the XBMC remote. I'll try it out!

      When I've tested the Airplay, i will give you Feedback about it. With the raspbmc i had some troubles using it. Bad connection or no video, just sound...

      Why do you now choose openELEC instead of raspbmc? Are there minor or major differences?

      Regards,
      Knut

      Delete
    3. Hi Knut,

      I suggest you to use EDIMAX EW-7811UN. It is about 10 euros and it is working out of the box with no issue.
      Regarding OpenElec, I am just experimenting with it but I don't know if I wil stick to it.Please have a look at my latest post:
      http://engineering-diy.blogspot.ro/2013/08/openelec-with-support-for-egalax-touch.html

      Delete
    4. I use TP-link it works with atheros drivers. Add them when adding drivers for touch before making new kernel.

      Delete
  16. Hello Andrei
    I'm wanting to make subtle changes to your skin.
    The volume slider for me is too close to the bottom of the screen and is fiddly to get the right volume.
    Where are the xml files stored that control the sizes and positions? I'm assuming that I don't have to build xbmc again to change this? Have you deleted the xbmc build directories from your image? If not could you tell me where they are.
    Thanks

    ReplyDelete
    Replies
    1. Hi!

      You don't have to build xbmc for this.
      You just have to edit the skin. The skin is located in the folder /home/pi/.xbmc/addons/skin.CarPC or something similar.
      Here, in the folder 16x9 you will find all the xml files needed.
      The volume controls are defined in the file includes.xml(search for "CommonVolumeBottom").
      This is include whenever is needed. For example, in the file Home.xml(which is the main screen).
      Please let me know about your setup :-)

      Good luck!
      Andrei

      Delete
    2. I'm looking at using th TDA7416 Car radio processor chip to do all my mixing. The chip is i2c controlled. I would need to add a screen that has all the input selection fading and equalization.
      I'm not sure what I'm writing it in yet. I haven't looked at it yet but am I able to redirect the volume control slider to control my master volume instead of the PI's sound card - without recompilation?

      Delete
    3. Hi!

      The easiest way to do this is to create two python scripts(one for volume up and another for volume down) and create two buttons in the XBMC skin which will call these scripts.
      Regarding the slider, I don't think you can do the same. Please look at:
      http://wiki.xbmc.org/?title=Slider_Control
      For the action tag only volume(for XBMC) and seek are avsilable.

      Andrei

      Delete
    4. This comment has been removed by the author.

      Delete
  17. Hello Andrei,

    I'm trying to setup your image. During startup the touchscreen reacts in proper way, cursor following finger, but in XBMC it is not correct. do you have any advice?

    Thanks

    ReplyDelete
    Replies
    1. Hi!

      I would advice you to check this link: http://www.engineering-diy.blogspot.ro/2013/02/raspberry-pi-raspbian-xbmc-and-egalax-7.html and read part 4. Touchscreen calibration.
      Basically, you need to change the values in the file /usr/share/eGalax/touchscreen_axes_calib according to your touch panel.

      Delete
  18. Where did you get the .png files for the skin? I would like to add a restart system icon next to the system shutdown. Or I can just change the refresh skin icon to a restart.

    ReplyDelete
    Replies
    1. Almost all icons are the ones from the skin(skin_dir/media/Textures.xbt)
      Regarding Navit logo, I have took it from the internet.

      Delete
  19. Hi Andrei,

    How do you exit from xbmc all the way to raspbian but how do you exit using command line?
    Thanks.

    ReplyDelete
    Replies
    1. Hi Jasmin!

      From the command line(via ssh) you can type
      sudo killall -9 xbmc.bin

      Delete
  20. Hi Andrei. Great work! Could you share details about how you managed to run x11 app in background before xbmc (I'm about navit)?

    ReplyDelete
    Replies
    1. Hi!

      Well, my system automatically boots into LXDE(you can enable this using raspi-config).
      After LXDE starts, it executes the script /etc/xdg/lxsession/LXDE/autostart.
      I have added at the end of the file this:
      cd /home/pi
      ./navigation_startup
      In /home/pi I have created a file named navigation_startup and put the following text inside:
      # Start Navit and gpsd
      sudo killall -9 gpsd
      gpsd /dev/ttyAMA0
      cd /home/pi/navit_export/build/navit/
      ./navit &
      # Start XBMC
      #/usr/local/lib/xbmc/xbmc.bin
      Don't forget to make the file executable:
      chmod a+x /home/pi/navigation_startup

      Thanks for the appreciation!

      Delete
    2. Cool, thanks you for your answer. One more thing: seems I cannot get to work your workaround to see things behind xbmc.
      "This allows applications behind XBMC to be visible(if the skin has transparent areas)" from code.google.com/p/andrei-development/downloads/detail?name=blackRemove.diff

      How I should define those transparent areas?

      Delete
    3. Can't get this patch work with xbmc 12.2 on ga-350 motherboard (amd fusion cpu & amd6310 gpu with proprietary drivers) additionally patched ./xbmc/rendering/gl/RenderSystemGL.cpp with same lines - not helped. I'm trying to see backgrounds with your skin from disk image. Could you give some advice for this situation?

      Delete
    4. Hi!

      In my build(for RPi) xbmc shows only what does the skin wants. If you remove all the items from on page, for example, you will only see what's behind xbmc.
      I have found this the hard way, by looking days through the code and searching where the transparency can be changed.
      In the latest firmware for RPI this is not working any more, so I have to use the firmware from February 2013.
      I don't know what to say regarding other systems than Raspberry PI, I am sorry.

      Good luck!

      Delete
    5. Hi!

      You can set transparent areas in the XBMC skin. Please have a look at the xml files from /home/pi/.xbmc/addons/skin.CarPC-touch/16x9/
      For example, Home.xml is the xml file which sets the Home page(first that appears after starting XBMC).

      Regards,
      Andrei

      Delete
  21. What about using rtlsdr and a DVB-T USB dongle for radio receiption?

    ReplyDelete
    Replies
    1. Hi!

      I have struggled alot with ADS Instant FM usb radio module but it is not working well. The output from it is very bad on Raspberry PI(http://www.raspberrypi.org/phpBB3/viewtopic.php?t=11182&p=208443).
      If you know any USB FM radio working on RPI please let me know, this is the next step in my project.

      Delete
  22. Any thoughts on connecting to the cars diagnostic port to pull data?

    ReplyDelete
  23. I have one cheap obd2 to bluetooth device from eBay and I can use it with my phone. I have to get the codes and use this plugin for XBMC:
    http://forum.xbmc.org/showthread.php?tid=134312

    ReplyDelete
  24. Hello,

    I download the img CarPC_aug_12_2013.img.tar, I installed whit windows "win32 disk imager". but i not found.

    not that I can be doing wrong?

    excuse my English, I speak Spanish.

    thank you very much for everything.

    ReplyDelete
    Replies
    1. Hi!

      Sorry but I don't know what do you mean. Please write in spanish and use google translate :)

      Regards,
      Andrei

      Delete
    2. hello,

      I have a problem when installing the image on the SD card, I started the raspberry pi.

      To install the image use windows and the "win32 disk imager", I install on a 32GB SD card, I use a raspberry pi B.

      I prodrias help install the image?, I also have ubuntu team.

      Thank you very much for everything,

      You have a fantastic blog

      Delete
    3. Diego, please add me to Google talk or Yahoo messenger or Skype.
      andrei.istodorescu@gmail.com
      bboyandru@yahoo.com
      andrei.istodorescu on skype

      Delete
  25. This comment has been removed by the author.

    ReplyDelete
  26. Hello,
    I managed to rip your image changed the "bootlader" by the new raspbian.

    I'll try with Touch LCD and GPS

    Thank you very much for everything, if I have any questions I will ask.

    advantage to learn English and computer.

    PS: I'm thinking of including a report to your test project I made with OpenCV traffic sign recognition. Although I think the raspberry pi is not enough to run on it. I thought about changing to "Udoo"

    ReplyDelete
  27. Been following your progress for a while with interest. Since compliments aren't meant to be kept to ones self: Keep up the amazing work!

    ReplyDelete
  28. Hi Andrei,

    Nice post! I just orderd a touchscreen to work this al out. ;)

    My plan is to get it working in a BMW E34 525tds Touring (1995). I have 2 problems i can't work out:

    1. how did you connect the GPS module (ST22) to your Raspberry Pi?
    2. when i want to download the Navit Map of Europe (total) I get a blank page that says: Selected planet does not exist.

    Can you help me with these problems?

    Many thanks!

    Regards,
    Richard

    ReplyDelete
    Replies
    1. Hi Richard!

      1. RPI pins are like this: http://www.homofaciens.de/bilder/technik/raspberry-gpio_g.jpg
      ST22 pins are like this: http://www.google.ro/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CDQQFjAA&url=http%3A%2F%2Fwww.perthold.de%2FBINARY%2Fgps-st22.pdf&ei=MpBlUvK8KoPt4gT1joGwCA&usg=AFQjCNFiMiS1df11g5-sDKxdrH2b8mQyIg&sig2=gM7LPcS82fXiGrsMRIxM1g&bvm=bv.54934254,d.bGE&cad=rja
      See page 5.
      The connections should be made like this:
      GPS ST22 RPI
      GND 3 black
      VIN 4 3.3V red
      UART RX 1 UART TX green 15
      UART TX 2 UART RX green 16

      2. Regarding Openstreetmaps you can download updated maps from here http://download.geofabrik.de/europe.html. The Navit planet extractor seems to have a bug.

      Regards,
      Andrei

      Delete
    2. Hi!

      Now Planet extractor works. Check it out!

      Regards,
      Andrei

      Delete
    3. Hi Andrei,

      I'm trying to install the image but it's not working. I'm having the same problem as Steven McCullough. When i start my RPI the green light blinks one time and the red one stays on.

      I also tried the new image you mentioned, didn't work. Can you help me out with this?

      btw: i've got my map (wohoo!)

      Regards,
      Richard

      Delete
    4. Hi Richard!

      I am sorry but at this moment my builds are based on the February RPI firmware which seems to be too old for the new versions of RPI.
      I will try to do something about this, but at this moment I am trying to finish the FM radio setup(which works great :D).
      I will try to find a solution for this as soon as I finish with the radio.

      Best Regards!
      Andrei

      Delete
    5. Hi Andrei,

      Any progress on the firmware problem?

      Delete
  29. Hi Andrei!

    Did you think about removing the mouse cursor?

    Regards,
    Richard

    ReplyDelete
    Replies
    1. Hi Richard!

      Yes I did, actually I have the cursor removed, but I cannot seem to disable it in Navit.

      Regards,
      Andrei

      Delete
  30. Hey Andrei

    I have replaced the maps with my own map, but whenever i wanted to search for an adress i start in Great Britain. How can i change this?
    And how can i put Navit into German?

    Regards,
    Stefan

    ReplyDelete
    Replies
    1. Hey
      I have Managed my Problem.
      But now, when I click on the Navigation button the Navigation opens but the screen is Dark on the Bottom and at the top. Further there are 2 Arrows in the right corner which i believe they should not be there.

      Regards,
      Stefan

      Delete
    2. Hello,

      I have the same problem. The navigation just stays dark and display to arrows in the bottom right corner. It does not seem to react on mouse clicks or key strokes.

      Regards

      Andreas

      Delete
    3. Hi!

      It is very strange that Navit is not showing. Can you please connect with ssh and see if navit is running?
      top -b -n1 | grep navit

      Andrei

      Delete
    4. Hello Andrei,

      Navit is running:

      root@raspberrypi:/home/pi# top -b -n1 | grep navit
      2349 pi 20 0 26908 11m 7700 S 0.0 3.2 0:02.98 navit

      Delete
    5. Hi Andreas!

      Please use my latest image https://drive.google.com/uc?id=0B__Rs5JF53-kdkt5azdINzNibm8&export=download.
      Also if it still doesn't work, please stop xbmc(sudo killall -9 xbmc.bin) and see if there is something behind it.

      Delete
    6. It works using your latest image.. thanks..

      Delete
  31. i bought raspberry pi last week.. and this is article what i search
    thanks,
    Ricky

    ReplyDelete
  32. Hi. Have you thought about using the audio lines feeding to the AMP to output directly to the AMP instead of going through the radio? You would only need to use the remote amp connection to power up the amp.
    I'm thinking about trying this in my BMW (E90 2008) and also considering to try to use as video output the CCC large screen.

    ReplyDelete
    Replies
    1. Hi!

      Well, I also have BMW E90 from 2008 but I have the basic sound system, with no amp.
      My radio is used instead of amplifier.

      Good luck with your project! :-)

      Delete
    2. Managed to log in :) So why not buy an amp? I found the aux in to have sub-par quality to be honest. I'm also from Bucharest :) maybe we can meet sometime and share some ideas. Still waiting to get a chip and cable to connect to my obd, until then i dont wanna start anything.
      I wanna try and route as much from my car controls to the raspberry, maybe even the iDrive knob wheel :) and i've recently started investigating a HUD solution.

      Chris

      Delete
    3. Hi Chris!

      I haven't bought an amp because I was advised that it is almost impossible to find an amp which will work perfectly for my original car's speakers. I have the basic system, so the high filtering is done from the OEM amplifier. I have done some work in adding external controls for XBMC(based on GPIO's) and I have connected so far buttons and rotary encoders, and are working very well. I will love to find one iDrive knob, because my car doesn't have one, but I haven't found yet.
      Please add me on google talk or yahoo messenger(andrei.istodorescu@gmail.com, bboyandru@yahoo.com)

      Regards,
      Andrei

      Delete
  33. Nice project buddy.

    Well i did download and have installed it on my RPi
    '
    Well is there a way that I can enable the mouse pointer back as it is present in the normal scenario's as I am setting up air mouse + Keyboard to be used as an input device.

    Thanks again in advance

    ReplyDelete
    Replies
    1. Hi!

      You can switch back to Confluence skin, or you can edit the CarPC-touch skin and remove the comments from the file /home/pi/.xbmc/addons/skin.CarPC-touch/16x9/Pointer.xml.
      Thank you for the recognition!

      Delete
  34. Can you help me with the same for beagle bone black???

    ReplyDelete
    Replies
    1. Hi!

      I am sorry but I don't know anything about this board and I also don't have time for it.

      Best regards,
      Andrei

      Delete
  35. Very informative blog.I really like your modern entertainment system that you had posted here,so nice to install it on a car.

    BMW GPS DVD player & Mazda GPS DVD player

    ReplyDelete
  36. I like the video review and had a few questions for you about this setup. Does the image you supplied at the top already have the xbmc setup with the touch skin already in it? Another thing related to the supplied image, is it setup for a reverse camera so it just needs to be plugged in? Also, the ST22 GPS module you linked to, I'm under the impression that needs to have a clear view at a window correct? Those are the three major things I'm worried about, the rest is mainly due to the steering wheel controls and bluetooth for my phone that my car already has. I figure I'll just hook the rasbpbrry pi up to the aux input and when I get an incoming call I can just hit the answer button my my steering wheel. At some point I do want to add displays for the rear seats and I'm thinking usb displays, which since it's linux based so I can work it pretty well having time with ubuntu, question is do you think a usb powered hub would work? Thanks in advance, I'm looking to make this my winter project so I want to thank you for all your information you've provided online!

    ReplyDelete
    Replies
    1. Hi!
      To answer your questions:
      - The image in this page have everything set up as in the video.
      - The reverse camera is directlly plugged into the screen controller via S-Video(there is no link with RPI, the display controller does the switch to S-Video when you put into Reverse - check out the page for the display in the eBay link)
      - I have put my gps right on top of the dash so it has directly window link and I don't know how it will behave when under the dash
      - Regarding the last issue, a usb powered hub will surely work, but you will be needing a powerful machine to handle this.

      Delete
    2. I appreciate it greatly! That is great to know, I was tempted to poke around the image just to see what's in it and maybe personalize it for maps etc. I'll probably be using raspberry pi model B with 512 Ram so if I do use rear displays they will be 100% mirrors no stretching or individual screens.

      The gps, I'm guessing those need to have wires soldered on? NO big deal just curious as to what type of line/adapter you used to help make my life more simple.

      I've been pondering the startup/shutdown procedure as I don't want to sit in the car and have to manually shut it down before getting out. I've been looking at startup/shutdown controllers so I can have it wired to a always on circuit and the controller to the ignition system so it goes up when on and sends the shutdown when off. I found on here:

      http://www.mo-co-so.com/MPEGbox-uSDC-p/mcs-atx-usdc.htm

      Not sure how much of a pain it'll be to wire it up to a pi but it's as close as I've been able to find as a solution unless you have an idea.

      Thanks again, this is a wealth of information that has been very useful.

      ReplyDelete

      Delete
    3. Hi Barrett!

      To hook up the gps receiver you have to do some soldering to add some pins. If you buy an usb you won't be needing any soldering, just plug and play. I don't know what do you mean by "line/adapter".
      For the power, the best choice will be to put an automatically switch. in my car, I have a on/off switch to be sure that everything(RPI, GPS and display) is off. If I leave this button in the on position, after one hour or so, my car switches off the power and when I unlock the car it restores power so RPI starts automatically.

      Delete
  37. Or is it stable enough to just let it power off with the car, would save time and effort.

    ReplyDelete
    Replies
    1. The best thing is to invoke the command sudo halt somehow and then wait for the complete shut down and after this cut off the power. I know that some guys are working at this kind of devices, just search for automatic switch.

      Delete
  38. Hello,

    Firstly, thank you for sharing your awesome work. Found you as soon as I googled 'Raspberry Pi Car PC'.

    My current hardware:
    -Raspberry Pi Model B (OpenELEC XBMC)
    -8GB Class 10 SD
    -7inch HD Touchscreen with USB

    I had a couple of question before starting the CarPC project...

    1) Will OpenELEC XBMC work as a CarPC OS?
    2) For the headunit to be relocated to the boot, did you get another harness and just link it to the exisiting harness behind the dash? Or was it a little more complex?
    3) How do you control your radio?

    Thanks again,
    Shane

    ReplyDelete
    Replies
    1. Hi!

      1) OpenElec does not have an X11 interface, so you cannot run Navit. It is very difficult to add new programs to OpenElec(such as gpsd or navit or the entire X11 window manager). I have tried to add gpsd without success. The trickiest part is that you have to add programs at build time.
      2) To relocate the head unit in the trunk I have used two harness sets, one for the original plug in the dash and another one for the radio plug and very long cables(~4m) between them.
      3) I do not control the radio at all. It is always set to aux and some high volume level. I control the volume from the PI. If you are referring to the AM/FM radio, I am waiting for a radio module from eBay to hook it up to RPI and control it completely from XBMC

      Delete
  39. Hi Andrei,
    First of all, your project is awesome, I like it very much.
    I'm thinking in a similar project but I don't know if it is possible, so I wait you can help me. The idea is to connect rpi to my car system. The car system has a LCD 7" (GCX156AKM-E). There are two options:
    1) Use a video interfaz for my car, in which case the rpi going to connect to interfaz via RCA. The question is, Can I use a board like this --- to manage touch screen?

    2) I don't know if there is a control board like you use for your project to control the car's LCD.

    What do you think about it?
    Thanks a lot!!

    ReplyDelete
    Replies
    1. The board that I said in point 1) is http://www.ebay.com/itm/4-wire-Resistive-LCD-touch-screen-panel-USB-port-controller-touch-panel-driver-/180836520468?pt=LH_DefaultDomain_0&hash=item2a1ab25214

      Delete
    2. Hi Carlos!

      1) You can use the S-Video output from the Raspberry PI, but the video quality won't be as good as with hdmi.
      2) The usb controller is just for the touch(which is a thin transparent film on top of the screen, if you do have one). This film should have 4 wires which can be connected to the USB controller pointed by you.

      Delete
    3. I think my explanation is not very clear, I mean the follow:
      1)The big problem to use a S-Video output from rpi is can be able to manage the system through car's LCD, then I'm asking if is possible make this with a USB controller.

      2)Regarding a control board, I mean this one http://www.ebay.es/itm/7inch-AT070TN92-LCD-HDMI-VGA-2AV-driver-board-Touch-Panel-For-Raspberry-Pi-/151074149637?pt=Bauteile&hash=item232cb89505, and my question is if there is a similar board to support my LCD.

      Is really apreciate the HDMI to LCD screen, because the resolution is 800x480?

      Delete
    4. Let's speak on Google Talk.
      I have added you.

      Delete
  40. Hey I love this guide! I just had one quick question, as this might be something I have been missing possibly (like really simple, not totally sure) I installed the august image you had up for download at the top of the page and installed it with win32 Disk Manager, it says the install went fine, however the pi wont boot up? Or is it a slow boot the first time round? I'm not getting any signal to RCA or HDMI, I'm sure this is a noobs mistake but it's mildy irritating that i cant figure out why its not booting up on the pi, Wheezy and plain RaspBMC boot up fine. Anyways its a cool guide!

    ReplyDelete
    Replies
    1. Hi!
      It must be something wrong with the card or the write process. Please try my latest image(https://drive.google.com/uc?id=0B__Rs5JF53-kdkt5azdINzNibm8&export=download). I will post it soon.

      Delete
    2. Ah I believe I found the issue, I did some researching around and some of the newer pi boards come a with newer micron processor that doesn't play nicely with older software (<September 2013) and I think all the builds of your stuff is February and July builds, so it kinda makes sense now, well thanks for helping out anyways! I'll figure out a way around I hope lol.

      Delete
    3. Does this image use the same source code as the August image? I tried it and it still wont give any signal, red LED is on and the OK light flashes once right when it turns on and that's it.

      Delete
    4. Hi!

      This is sad news for me:(
      The latest image contains latest packages instead of the RPI firmware, which is from February 2013.
      I cannot use the latest firmware because it adds a black screen behind XBMC and I cannot use Navit behind XBMC.

      Delete
    5. I see... well anyways thanks for your help!

      Delete
    6. I did find a patch that allows for removal of the black screen behind the newer XBMC builds, not sure if you would be interested or not, anyways I'll keep looking.

      Delete
    7. Hi Steven!

      This would be great if it works. I could update to the latest firmware.

      Delete
    8. Hi Andrei,

      I am facing the same issue as Steven is facing. Can you share the image with latest firmware.

      Delete
    9. Hi!

      I am sorry but I didn't got time for this and I don't have the latest firmware working. I need to find a way to remove the black screen that is behind XBMC. I am kind of stuck because I got no reply on xbmc forums.
      I will dig more when I will have some time and post the updates.

      Andrei

      Delete
  41. Hi Andrei,
    really great work.
    Two Questions:
    1) Have you managed to implement obd2 in xmbc ?
    2) How do you connect the remote app over wifi to raspi ?

    Thanks so far
    Sven

    ReplyDelete
    Replies
    1. Hi Sven!

      1) I haven't tried anything with OBD yet, but I am planing to do this after finishing with the FM radio SI4703.
      2) The remote app use sockets to send commands to XBMC, so, you have to run XBMC on a machine(with an ip address) and rpi-remote on another machine(with another ip address). Then, you just have to set the correct IP address in the config file. You can also compile the remote app for another architecture(make & sudo make install). You just have to disable the code for GPIO's, which works just on RPI.

      Andrei

      Delete
    2. Hi
      I asked because somewhere above you said that you wanted to add this feature with that addon, but radio would be cool anyway
      I would use it with my android phone so you would just setup a hotspot on raspi connected your phone nothing more ?
      Is this project open source or do you just publish binaries ?
      open source would be quite cool because i could add some thinhgs just for me

      Sven

      Delete
    3. Hi!

      At this moment I am working at radio feature.
      You are right, you just have to set up a hotspot with your phone. You can also use official xbmc remote or yatse from Android market.
      This project is open source, you can access the files from the rpi-controller at the link provided. You can also modify the code and rebuild it at your glance.

      Delete
    4. Hi
      which link do you mean ?
      I didn't find any
      Sven

      Delete
    5. Hi Sven!

      In the latest post(http://www.engineering-diy.blogspot.ro/2013/11/control-xbmc-from-raspberry-pi-gpios.html) I have the link to the remote app source code:
      https://code.google.com/p/andrei-development/source/browse/#svn%2Fbranches%2Fdev%2FCarPc%2FRPI_XBMC_Controller%253Fstate%253Dclosed

      Delete
  42. Hi
    Great image you have uploaded! I have tried it and everything works great accept for my wificard.
    I have a Alfa usb network card and it works in on my other Pi with untuched Raspbian Wheezy, but not on your image :/

    lsusb gives me:
    Bus 001 Device 004: ID 0cf3:9271 Atheros Communications, Inc. AR9271 802.11n

    but iwconfig:
    eth0 no wireless extensions.

    hmm any suggestions? Is this problem beacuse the custom kernel in your image? Ive search the internet but nothings seems to work.




    ReplyDelete
    Replies
    1. Hi!

      It seems that your card is not supported in my custom build kernel. I suggest you to start your PI with the default Raspbian image(which works for your wifi card) and then send me the result of "zcat /proc/config.gz". It should create a .config file which contains the kernel settings. I will use this to update my kernel for the future release.

      Delete
  43. So I'm starting from scratch as I'm using different hardware and everything is working except I can't mimic how you have navit embedded in xbmc. Can you tell me how that's done or point me to the xbmc files that need to be edited?

    ReplyDelete
    Replies
    1. Hi Barrett!

      Controlling Navit from XBMC was the trickiest part.
      While running the first Raspberry PI XBMC builds I saw that the default screensaver fades the screen and you can see what is behind XBMC(like X11 windows).
      My idea was to automatically boot in LXDE and then automatically start Navit and after this, start Xbmc. I have searched through the XBMC code and first I have created a patch for XBMC to add a new python method for sendind clik events to x11(via xdotool program). The patch is at http://code.google.com/p/andrei-development/downloads/detail?name=xbmcgui_getMousePosition.diff. This patch is available in the August image. After playing a while with this I have discovered that the response is kind of slow(from the moment you touch he screen until it does the click in the Navit window).
      So, to improve this I have added code to send clicks directly in the click process function(without any Python between). The file is:
      xbmc/input/MouseStat.cpp in function void CMouseStat::HandleEvent(XBMC_Event& newEvent)
      Include a new header:
      #include "guilib/GUIWindowManager.h"
      After this code:
      else if (newEvent.button.type == XBMC_MOUSEBUTTONUP)
      {
      if (newEvent.button.button == XBMC_BUTTON_LEFT)
      {
      I have added this code:
      m_mouseState.button[MOUSE_LEFT_BUTTON] = false;
      if(g_windowManager.GetActiveWindow() == 11114)
      {
      char command[60];
      memset(command, 0, 60);
      sprintf(command, "xdotool mousemove %i %i click 1",
      newEvent.motion.x,
      newEvent.motion.y);
      system((const char*)command);
      }
      If you don't know how xdotool works you can find documentation on the web.
      This code sends clicks to X11 windows only from the XBMC skin page which has window id 1114(I dont know why there should be a '1' less).
      The Navigation skin xml page should start with this:

      After this I have removed the background in this skin page and put only one button in the bottom right to allow going back.

      If I can help you more please contact me on G+
      Good luck!

      Andrei

      Delete
    2. Hi,
      its me again
      there one or two questions left if you have time could you please contact me on G+.
      I've already added you
      Sven

      Delete
    3. Hi Sven!

      I have contacted you on Google Talk.

      Delete
  44. Hi Andrei.

    Great job on the img! I am very new to the RPi and you have done exactly what I wanted to do! I have flashed the img you have provided and it works great.

    I would like to change the way it starts and remove the Navigation/gps from starting as this is only going to be used for music and I have no need for them. What would I need to change to make this happen... and please be gentle, I'm new to the RPi and linux in general!

    many thanks!

    ReplyDelete
    Replies
    1. Andrei.

      Me again! I am currently trying to calibrate the screen and I just cannot get it to work. I have used the calibration tool in raspbian preferences and it works flawlessly within wheezy but it just doesnt work within xbmc.

      I have read over and over your calibration posts but I just cant get my head around it. Would you be able to assist using the most simplistic terms!

      many thanks!

      Delete
    2. Hi Micheal!

      To see what it is starting automatically you have to edit the file /home/pi/StartCarPC or something like this. I don't have it runing at the moment. The simplest way is to completely remove navit by deleting the folder /home/pi/navit_export.
      I will be glad to assist you, but please add me on Google talk. This week I will be busy during the day but I can help you in some evening

      Andrei

      Delete
    3. Hi Andrei

      Thanks for the kind offer, never used G+ so I hope I got it right! I also found your openelec build and have to say I much prefer that one.... altho I am still having issues with calibration. It must be something I am doing! I look forward to speaking to you soon.

      Delete
  45. i'm sorry guys but i'm going to speak in romanian because my english is not so good... scuza-ma ca nu o "ard" in engleza. nu stiu daca te-ai gandit sau ti-a mai zis cineva, dar nu ai incercat sa introduci raspi-ul intr-o carcasa DIN sau 2DIN al unui cd-player vechi, cu tot cu componentele auxiliare?...Ma gandesc ca ar putea incapea raspi + o sursa in comutatie + modul gps (desi nu stiu cat de precis mai e inchis intr-o carcasa metalica) + un hub usb + un mic amplificator audio care sa creasca putin semnalul pana la o eventuala statie din portbagaj. stiu ca sunt multe chestii de inghesuit intr-o cutiuta mica, dar cu rabdare de chinez batran si daca incepi sa mergi pe filosofia japoneza (cica aia sunt maestrii la inghesuit o gramada de lucruri in spatii foarte mici) cred ca ar iesi un raspi-player superb :)

    ReplyDelete
  46. Nice work, Andrei!
    How's this display in direct sunlight? Any good?

    ReplyDelete
    Replies
    1. Thanks!

      It is not good at all in direct sunlight. You can find one good for direct sunlight on eBay but it is little more expensive. You can also add some tint to your rear windows of your car and you won't have issues with the sun.

      Delete
  47. Hi Andrei,

    I'm trying to compile the si470x usb radio module on a fresh install of Raspbian, but I'm having some issues.

    When compiling gcc gives me this error:
    fatal error: linux/usb.h: No such file or directory

    I have tried installing libusb-dev but still no sucess! Could you tell me how you managed to compile this module?

    Thanks a lot,
    Alex.

    ReplyDelete
    Replies
    1. Hi!

      I have added the module in the kernel directly and it compiled.
      If you want to build it by yourself you have to check the include paths in the makefile(the ones starting with -I) and make sure that usb.h is in one of those folders.

      Delete
  48. I am having trouble booting CarPC_aug_12_2013.img. I have flashed the image 4 times using DD and a freshly formatted SD card to no avail. The activity light flashes for a split second and then just the power light stays on. I have the RPI model B with 512mb RAM. Perhaps this is the issue? Any advice would be appreciated. Thanks and great job!

    ReplyDelete
    Replies
    1. Hi!

      I am having Raspberry PI model B rev 2. I have seen this kind of issues with cards that has stopped working with my card reader also.
      Also, there are some new Raspberry pi boards which seems that are not supported by the February firmware, which I am using.

      Delete
  49. Hello Andrei,

    we are still trying to use your image. We have a Touchscreen from Faytech and the Raspberry Pi with 512MB. We bring the Image on the SD Card an than we will start it. It starts but the X and the Y Axis are mirrored. In XBMC and outside XBMC. We tried to change the swap_axis to 1 and we changed the X and Y calib_.._fact with * -1.

    We don't know how to fix it. Can you pleas help us?

    We paste it first in the wrong thread, sorry ;)

    ReplyDelete
  50. This specific HDMI leads can handle promises as much as 1080p. Most of these cables tend to be HDCP compliant. The particular spec handles high-bandwidth, uncompressed online video and also multi-channel electronic sound at the same time, all in a lead.
    http://www.dueltek.com.au/collections/hdmi-cables

    ReplyDelete
  51. Most of these adaptors are designed to change the connection variety & let ideal on the web connectivity to be able to a variety of units.

    http://www.dueltek.com.au/pages/vga-cables

    ReplyDelete
  52. Hi,

    Excelent work !! how can i acess super user in xbmc to exit to wheezy? i have done s and then exit but i get only black screen !!

    Thnkz

    ReplyDelete
    Replies
    1. Hi!

      You can use sudo in every command you like(in a skin or in a python script).
      You can add a button in the home screen like this:
      Edit the file /home/pi/.xbmc/addons/skin.CarPC-touch/16x9/Home.xml and add the following item at the end of the file where are other items:

      RunScript("special://skin/scripts/xbmc_quit.py")
      icon_logoff.png

      After this, add/edit the file:
      /home/pi/.xbmc/addons/skin.CarPC-touch/scripts/xbmc_quit.py
      And put hte folowing code:
      import os
      import xbmc

      xbmc.executebuiltin('XBMC.Quit');
      os.system("sudo killall -9 xbmc.bin");
      Now, reload the skin and test.

      Delete
  53. Hi,

    Cant find file /home/pi/.xbmc/addons/skin.CarPC-touch/16x9/Home.xml is it in other place?

    Thanks

    ReplyDelete
    Replies
    1. Hi!
      Are you using one of my builds?
      The skin should be in there. Can you post the output of:
      ls /home/pi/.xbmc/addons/

      Delete
    2. Hi,

      Yes i download it from the link that you post at the start.
      Whot i get is:

      metadata.album.universal plugin.video.youtube
      metadata.artists.universal script.artwork.downloader
      metadata.common.allmusic.com script.common.plugin.cache
      metadata.common.fanart.tv script.favourites
      metadata.common.hdtrailers.net script.globalsearch
      metadata.common.imdb.com script.module.elementtree
      metadata.common.last.fm script.module.parsedom
      metadata.common.musicbrainz.org script.module.simple.downloader
      metadata.common.theaudiodb.com script.module.xbmcswift2
      metadata.common.themoviedb.org script.playalbum
      metadata.musicvideos.theaudiodb.com script.tv.show.next.aired
      metadata.themoviedb.org service.skin.widgets
      metadata.tvdb.com skin.CarPC-touch
      packages weather.wunderground
      plugin.audio.radio_de

      I get another problem the pi cant reconize my usb wifi in my "normal" wheezy can and works very god

      Thanks

      Delete
    3. Hello!

      Well, it seems that the skin is in there(skin.CarPC-touch). Please search again inside it for the file Home.xml
      try the command: find /home/pi/.xbmc/addons -name Home
      Regarding the wifi issue I will build a new kernel with the default wheezy configuration. At this moment I have used the default RPI kernel configuration + touch screens.

      Delete
  54. I had already setup my image before I saw this but am using your Skin, it works great on my Lilliput 7" :)
    I don't plan to use the NAV portion and get the mouse coordinates at the top of each screen. I tried to look myself to see how to remove them but could not figure it out. Can you tell me what file in the skin has this so I can remove it?

    Thanks,
    Scott

    ReplyDelete
    Replies
    1. Nevermind, I found it :) It was in addon.xml debugging="False">

      Delete
  55. Hi,

    Just find the file ( didont now that the file is not visable and rwiting the way /home/pi/.xbmc/addons/skin.CarPC-touch/16x9/Home.xml it apears im new to rpi sory). Ive made the change but the Rpi shut-down !!! any ideas?

    Thanks

    ReplyDelete
    Replies
    1. Hi,

      Now i get the same black screen on pi is on like using de s a then exit
      Any help please.

      Thanks

      Delete
    2. Hi!

      What is displayed when going to the Navigation page in XBMC?

      Delete
    3. Hi,

      In nav page in XBMC i get the same black screen and 2 arrows.

      Thanks

      Delete
    4. Hi!

      Maybe you have updated the firmware. Please try with a fresh install.

      Delete
  56. Thank you for making this. I have a question on the navit.xml file edit. Where should this file be placed? I can't seem to get the map to load on this build but on my linux laptop it works. On the laptop the navit.xml file is under /home/user/.navit/navit.xml. I tried creating this path but it won't work on the pi. Appreciate your help.

    ReplyDelete
    Replies
    1. Hi!

      The navit.xml configuration file is in /home/pi/navit_export/build/navit/
      Please refer to this guide for adding a new map.
      Also, keep an eye on this blog, I am working at a new great update for this CarPC.

      Andrei

      Delete
    2. Hello,
      is it possible to use the image (CarPC_aug_12_2013.img) with virtual box ??

      Thank you in advance.

      Delete
    3. Hi!

      I have no experience with this, sorry.

      Delete
  57. Very nice project :)

    Are you tried include audio delay functionally? If it works then you don't need DSP on your car audio system.
    Here is some information which can be useful http://forum.xbmc.org/showthread.php?tid=161958

    ReplyDelete
    Replies
    1. Hi!

      Thank you! :)
      I haven't tried this. I am using the viewHD hdmi to hdmi+audio converter which has very good quality audio and also supports 7.1 via spdif.

      Delete
  58. Thanks for sharing this blog.I like this blog very much. really such an nice and decent information shared here with awesome stuff.Car Detailing Pickering Ontario Detailing Knights delivers stunning results with our car cleaning and auto detailing services. We will make your vehicle look brand new again. Schedule today.
















    ReplyDelete
  59. whats the web server port 8080 password for xbmc? "a" does not work

    ReplyDelete
    Replies
    1. Hi!

      Please check System->Services->Web Server in XBMC.

      Delete
  60. This is a great project. Thank you for all your work. I loaded an sd card with your OpenElecRPIeGalax.tar.gz files from Nov and xbmc works great except the touch x and y axis are inverted. I had worked with you pre-build image and found the config file but in this new build I am at a lose. Where is the touchscreen_axes_calib file or how can I fix this issue?

    ReplyDelete
    Replies
    1. i too am having issues with the current build where my touch screen is not calibrated. how do we recalibrate it? how do we get back to a command line or the os desktop to make the changes needed? Thanks again. Would love to see if youve done anuthing else with this project.

      Delete
    2. Hi!

      The file touchscreen_axes_calib should be put in /storage for the OpenElecRPIeGalax.tar.gz image. For other images it should be put in /usr/local/share/eGalaxCalibration/
      If you have a working touchscreen_axes_calib file for your display it should work for all the releases.
      Justin, for getting into command line you can always use ssh.
      For calibrating the X11 using xinput-calibrator you have to kill xbmc from ssh and after this connect using a keyboard and callxinput-calibrator. Also, if you have a calibration file from an old build(/usr/share/X11/xorg.conf.d/01-input.conf) you can use it, without being necessary to recalibrate.
      If you have more issues, please contact me directly via Gtalk, Skype or YM.

      At this moment I am working on a better touch support for Navit and also I am adding an FM radio and some universal hardware buttons support.

      Andrei
      Andrei

      Delete
  61. Hi mate, thanks for sharing your hard work. Just wondering - does your XBMC build remembers its last played position in music/movies? Is this a feature in XBMC at all if we are to shut it down and start up every time?

    ReplyDelete
    Replies
    1. Hi!

      My build does not do this. Maybe there is something in the xbmc forums.

      Andrei

      Delete
  62. Thanks for sharing this blog.I like this blog very much. really such an nice and decent information shared here with awesome stuff.mini truck parts Parts for Japanese 4x4 Mini Truck, Suzuki Carry, Daihatsu Hijet, Mitsubishi Minicab, Honda Acty, Subaru Sambar, Cushman, White Truck, Haulster, Truckster

    http://japanminitruckparts.com



























    ReplyDelete
  63. Thanks for sharing this blog.I like this blog very much. really such an nice and decent information shared here with awesome stuff.mini truck parts New and used mini truck parts for all brands, Daihatsu Hijet, Honda Acty, Suzuki Carry, Cushman White Truck, Mitsubishi Minicab and many others from
    www.mini-truck-parts.com

    ReplyDelete
  64. Hi Andrei
    I have been searching for someone to finally do this with a raspberry pi! You are my hero!
    So I have the image working, it boots up plays videos,music..theres only a couple of issues..
    My edimax WiFi USB is non working.
    And also my x axis touch is inverted..I can live with the WiFi not working for now but I am eager to get the touch screen working perfect.
    I am willing to try and calibrate it but the settings or commands you provide in previous post have me lost. I don't know where to implement them as I have no experience in using them. Can you please help me fix my calibration or point me to where I can know how to input your calibration settings? Thank you!!!

    ReplyDelete
    Replies
    1. Hi fatcak!

      I am glad my work is appreciated:)
      I will try to build a new kernel starting from the kernel configuration from Raspbian. I am also having an Edimax wifi dongle and it is working fine.
      As for the screen calibration please add me on Gtalk or Skype or Ym to help you.

      Andrei

      Delete
  65. I've been trying to get your latest image to work with raspberry pi (really started to like the pi) and haven't been able to get it to boot yet, have formated with the sd format tool, shows 7.31 gb. I used win disk imager safely umount but haven't gotten anything put out to hdmi yet, did get noobs to load once though. This is revision B with 512, maybe thats the problem?

    ReplyDelete
  66. Hi barret
    i have the same model pi that you have, so that is not the problem
    you have to make sure you use a tool that can burn image to sd card properly, then it will boot.

    ReplyDelete
  67. Hey there Andrei,

    Not sure if you ever got it setup for a power up and down system, I found this though:
    http://www.mausberrycircuits.com/collections/car-power-supply-switches
    Turns it on and off with the car, and properly too. I'm going to try and duplicate your setup on the new firmware for pi cause that's what i'm using now if I can get it to be the same I'll let you know.

    ReplyDelete
    Replies
    1. Hi Barett!

      This is a great project, but in my car set-up I prefer to have a physical on/off switch to be able to turn off everything if something goes wrong.
      I have tried my setup on the latest firmware, but I cannnot get rid of the black screen behind XBMC. That's why Navit cannot be seen. I haven't found a solution for this. If you find anything regarding this, please let me know.

      Delete
  68. Well I want to dive into xbmc skin to see whats going on with it, I know linux decently and xbmc pretty well but as far as the skin I don't even know where to look as far as how you made a certain area transparent to show the x11 app behind it.

    Is there anyway you could tell me which file in the xbmc retouched skin you edited to show an x11 app? And specifically what it was you changed? My idea is to start from scratch with the latest software and begin going through it, just need a starting place of where your at.

    Thanks :) And I agree about the on off button.. maybe I'll put in an on/off switch between it and leave it in on mode unless there's a problem.

    ReplyDelete
    Replies
    1. What I mean is, I looked at the skin and found the myvideonav file but can't seem to figure out how you have the navigation option on the home screen.

      Delete
    2. Hi Barrett!

      Please have a look at the file: /home/pi/.xbmc/addons/skin.CarPC-touch/16x9/Home.xml. Here I am setting the buttons for the Main Menu. The Navigation button looks just like this:

      ActivateWindow(1114)
      special://skin/media/navit_logo.png

      This jumps to the window with ID 1114. This window is defined in the file: custom_navit_1114.xml from the same location as above. This page contains just a button for the back action(or several buttons I don't remember well). The trick is that XBMC will render just what you have in your skin. If you have just a button that is all that XBMC will render and in the rest of the screen you will see what is behind(which is Navit runing on LXDE).
      For click to work I had to insert some code in the XBMC code and say that if the window ID is 1114 to redirect all the clicks to X11(using xdotool). This is a bit more complicated, but it works so you don't have to bother with it.

      Delete
  69. hey andrei just added you on YM!
    hopefully you can help me calibrate my touch screen

    ReplyDelete
    Replies
    1. Hi!

      Please send me an email bboyandru@yahoo.com and I will add you. I don't know why I haven't received your invite.

      Delete
  70. I am just getting my plan together for my project car. 1988 caprice classic
    what raspberry pi would you recommend if I want to have navi, multiple usb that can support the os and external hard drive (250gb +), plays videos (vlc or xbmc), Bluetooth connection with mic support for phone call, and still be able to pick up radio stations? the stock dash on this has a tape player and radio.

    I am hoping to be able to add subs and after market speakers/amps to have a nice sound system if its adaptable with a pi. Please let me know. What ever information anyone can give me is appreciated. I am a tech guy that would like to mix old school vehicles with new technology. Possibly make a few demo systems to create a group/club of people with similar ideas.

    ReplyDelete
    Replies
    1. Hi!

      Raspberry PI model B with 512MB will be enough for this job.
      I have this all set up in my car without the phone support(I am planning to add it soon).
      The biggest impediment is that the sound from the PI analog out jack has a lot of pops. For me, the fix was to buy one HDMI to HDMI+audio board (viewHD) and set the PI to output the sound to HDMI. This viewHD box has also the capability to output 5.1 via SPDIF if I remember well.

      Good luck and please let me know of your progress!

      Delete
  71. Hello again andrei!
    I have managed to get my screen and raspberry pi working 100% with calibration.
    The only thing I need to fix is my WiFi!
    How can I make my pi recognize my edimax adapter? Where should I start?

    ReplyDelete
    Replies
    1. Hi!

      Well, I have to make a new kernel build with much more drivers enabled by default. You can use a working raspbian to get the kernel configuration(using zcat/proc/config.gz > configuration)and then use one of my previous posts to build your kernel using that configuration obtained above.

      Delete
  72. Hi Andrei

    I actualy hoped that you'd have a link to a movie in which you assemble the touchscreen into your car. I've ordered everything but my main concern at the moment is that it'll look horrible in my car, and the touchscreen will not hold the pushing. I somehow need to make a rack that can hold the touchscreen and other hardware in place, and I'll need to finish it with some sort of plastic so it won't look like something I've must have done myself ;-).

    Thanks in advance,
    Tim

    ReplyDelete
    Replies
    1. Hi Tim!

      First of all you have to start from the 2 din case for your car. After I had this I started to build a basic frame from styrofoam and double adesive tape. This is staying good after almost one year of weakly mounting/unmounting it.
      https://docs.google.com/file/d/0B__Rs5JF53-kSktta0JKZWhremM/edit
      I will make some new photos.

      Delete
  73. My compliments for this excellent piece of work! Like some others, I was unable to boot the PI, obvious because of the newer firmware. I copied the BOOT directory of a recent Raspbian installation, and copied all entries over your files in the BOOT folder, except the older .elf files (didn't try yet what would happen) . It now boots on a recent PI 512MB! The only problem is still the back navigation screen, I still have to read all comments here in detail, but I'm very glad I now have a bootable system.
    Do you have any plans to build a newer version of xvmc? Especially because the newer version is able to play .ISO and TS files with their menu's.

    ReplyDelete
    Replies
    1. I tried removing the black image from the skin itself under the custom navit xml should be the first or second content item. Just haven't had a chance to check but maybe it it doesn't load the black.png image it might show? Or make it a transparent image by having the skin look at a transparent image of the same size with a different name as that might harm other parts of the skin using the same black.png that it refers to for the background.

      Delete
    2. Hi!
      FrankLee: I will build the system with the Gotham version. I am planning to do this in the future.
      Barrett: I think the problem is with XBMC rendering using OpenGLES. I have tried with removing all the images but still a black background is left.

      Andrei

      Delete
  74. Yeah I tried editing it and pointing to a blank since I couldn't unpackage the texture file. It was worth a try even if it was something so simple it couldn't be it. Up till today I thought it was cause of my firmware but after taking another look at cpuinfo I gathered mine was a Q4 2012 model (000e got the year from elinux.org) so I'm going to try on a new card as it should boot and doesn't. I'm going to order a newer model to try and find a solution as now I'm curious since it's not in xbmc.

    ReplyDelete
  75. Awesome project that I will soon be replicating. I do have one question, have you thought about integration of steering wheel controls....I have a ford F350 with the five button (L, R, Up, Down and center enter button) on the left side of the steering wheel. If not I'll be spending time integrating the GPIO pins for cursor movement.

    ReplyDelete
    Replies
    1. Hi Eric!

      I have worked on adding controls and developed an application for this. It is called carpc-controller. I have it integrated in my latest image(please see my latest post: http://engineering-diy.blogspot.com/2014/02/opencarpc.html)
      At this moment you can use push buttons(which I think is the case for steering wheel controls) and also rotary encoders. As actions, you can trigger almost any XBMC action or radio FM action, if you have the fm radio module.

      Delete
    2. Awesome! That will save some time in dev...now to incorporate obdii

      Delete
  76. I am working on a similar project and your stuff is great, and I was wondering how you handled the reverse camera and reverse camera trigger any help would be greatly appreciated.

    ReplyDelete
    Replies
    1. Hi!

      I didn't handle anything from RPI regarding camera. The camera is powered by any power source: licence plate light(will be always on) or reverse bulb(will be on just when the car is in reverse). Now, the display controller, is connected using the svideo output of camera. The display controller has a special pin, which, when connected to 12V, will change the view from whatever it is(hdmi, vga, av1, av2 etc) to AV2 in my case(you can find this info in the ebay link). When that pin will stop receiving 12V the displa controller will switch back to whichever view was before. So, simply connecting this pin to car's + signal of the reverse bulb will do the trick. Remember to put a maximum 100mA fuse to be sure that the current sunk from the car's bulb is always low. So it goes:
      car bulb + connector -------wire------ 120mA fuse ------wire----- ACC pin on display controller

      Delete
  77. Hi Andrei,
    great work - thank you so much for your effort.

    I'm actually using your guides to get it running like your project and went quite far.
    But I have one problem: I just don't get the touch signals passed from xbmc to to the back xsession.

    Ok, I'm not using xbmc version 12.2 (or less) but version 12.3-Frodo. I could patch it without problems, at least LinuxInputDevices.cpp, MouseStat.cpp, MouseStat.h and RenderSystemGLES.cpp.
    Touch function works perfect and in the Navit screen I can see the lxde destop perfectly. Just the signals from xbmc to lxde are not working.

    The code of AddonModuleXbmcgui.cpp is different so I'm not able to patch this. But as I understand this is not necessary anymore if you use xdotool.

    Now, regarding the xdotool code in MouseStat.cpp I'm not sure if I'm applying it correctly.
    Should it be like this?
    else if (newEvent.button.type == XBMC_MOUSEBUTTONUP)
    {
    if (newEvent.button.button == XBMC_BUTTON_LEFT)
    {
    m_mouseState.button[MOUSE_LEFT_BUTTON] = false;
    if(g_windowManager.GetActiveWindow() == 11114)
    {
    char command[60];
    memset(command, 0, 60);
    sprintf(command, "xdotool mousemove %i %i click 1",
    newEvent.motion.x,
    newEvent.motion.y);
    system((const char*)command);
    }
    }
    if (newEvent.button.button == XBMC_BUTTON_RIGHT) m_mouseState.button[MOUSE_RIGHT_BUTTON] = false;
    ....
    So I'm replacing just the code of
    if (newEvent.button.button == XBMC_BUTTON_LEFT) m_mouseState.button[MOUSE_LEFT_BUTTON] = false;
    by the code mentioned before, right?
    xdotool is installed and within lxde I can manage to act with the mouse using terminal.

    Any idea what I'm missing?

    Thank you in advance for your help.

    Cheers,
    Eric

    ReplyDelete
    Replies
    1. Eric, great work!
      First of all, I have some questions, have you started from a fresh raspbian image? what firmware and what kernel version?
      Regarding the click redirection ou just have to put the code as you already pointed. The code from AddonModuleXbmcgui.cpp was very slow so I haven't used it any more. The code I am using at this moment is exactly what you wrote. You can set a printf to see if the message is displayed on the console when you press the screen in the Navigation window.
      Please add me on Gtalk or YM

      Delete