Page 1 of 2 12 LastLast
Results 1 to 10 of 12

Thread: Citroen C5 Intelligent In-Car Computer Project

  1. #1
    Newbie
    Join Date
    Sep 2012
    Posts
    6

    Citroen C5 Intelligent In-Car Computer Project

    Hi guys, this is my first post here, and also this is my first in-car project, although i have working on it for almost 3 years.
    At the beginning, i just want to install a real computer in my car. I bought all the modules online and integrated to the vehicle. It was chaos! Wires and modules everywhere .
    As a software programmer, i have to make my product better.So the long journey starts.

    First of all , talk about it's a project, we need to know the requirement clearly. In my plan, it's a long list.

    1. basic power control, start with the vehicle start up and shutdown after engine stop.
    2. Bluetooth hand-free , gps navigation
    3. parking assist, integrated with radar and cameras
    4. vehicle status (can-bus)
    5. driving assist prompt (over heat, under inflated, malfunction..)
    6. text to speech
    7. centralize all the programs, like "centralfuse"
    8. remote query & control (via SMS)
    9. motion detection


    I's not that simple actually, hardware and software part make you crazy. anyway, i summary and split it into 4 parts.
    • choose a micro size mother board
    • build a small-pack circuit board that combined all modules and sensor. it also need to write a firmware.
    • make a fit case
    • write my own central control application.


    Let's start

    The whole project blue print

    Name:  art.jpg
Views: 931
Size:  634.7 KB


    PC parts


    Mother board EPIC 3.5' intel HM77, supports 2th 3th gen i-7
    RAM: 4G DDR 1600
    HDD: Mini-PCIE 128G/6Gps SSD [/td]
    LCD: 7' 1280 * 800 IPS Screen[/td]
    Touch: 4 wires resistance touch screen

    Name:  hm77.jpg
Views: 870
Size:  263.7 KB

    Name:  lcd.jpg
Views: 840
Size:  181.6 KB

    Name:  msata.jpg
Views: 836
Size:  28.6 KB


    --------------------------------

    The circuit board separate into two boards,
    the big I named it Powerboard, its the main embed board, technically it obtains a Cotext-M3 mcu to control all the chips report to host.

    Processor: NXP LPC1768 100Mhz
    CAN-BUS: two CAN 2.0 , which directly connect to my car
    12V Regulator : provide 100W 12DC to pc
    Bluetooth: supports HFP & A2DP
    GPS : U-blox 6 serial receiver
    TTS : Chinese mandarin , she can speak english , oops..
    Sensors: 6 Axis Gyro & Gravity Sensor/3 Axis e-compass/temperature sensor/Barometric Pressure Sensor
    Other: PWM fan and lcd light control

    Name:  pbv3.jpg
Views: 904
Size:  628.7 KB

    Since it's base on CAN-bus , I bind most chips to car status. It's a heavy work. I spent 3 months to decode my car's can-bus message.
    for example
    * power up while unlocking car, and shutdown after locked.
    * force to change the audio source while there's an incoming call
    * control the screen back-light by in-car light sensor signal

    Citroen C5(x7) got four CAN-buses , each of then connect to a central unit which they call "BSI"
    "CAN-Comfort" responsible for head-unit, doors, windows and seats
    "CAN-HS" is ECU network, connect gearbox/ABS/ESP/steering wheel/AC...
    "CAN-Car" connect to Air-bags , wiper and lights
    "CAN-Diag" is for ODBII diagnostic


    The small one is MuxHub , actually it is a connector dock, there're too many cameras need to be connected.
    I put a 8-channels video capture and GSM module in it.

    Name:  muxhub.jpg
Views: 837
Size:  461.0 KB

    -----------------------------------------------------------------------------
    The Case

    C5 only has a crowd space in central console, if i wanna put all stuff in it , the case has be fit the space precisely....the precision is about 1mm , almost same as my pc board.

    Name:  c51.jpg
Views: 801
Size:  612.5 KB

    I don't think i can make it by hand , so, have to find a factory...

    Name:  case1.jpg
Views: 797
Size:  518.0 KB

    design time draft

    Name:  case2.jpg
Views: 807
Size:  580.0 KB

    the factory make it perfect , and also the cost is heavy

    Name:  case3.jpg
Views: 783
Size:  462.6 KB

    final assembly, seem great!

    P.S.: I have finish the draft last December, and got final sample on April this year....

    -----------------------------------------------------------------------------



    making wire and connectors is a night mate, i don't wanna recall the memory , let's skip this step and just see the lighting up on the table.

    Name:  pro.jpg
Views: 771
Size:  565.5 KB

    Name:  pro2.jpg
Views: 765
Size:  764.8 KB

    Name:  q1.jpg
Views: 1070
Size:  67.5 KB

    seems pretty good, isn't it?

    the most important reason that i choose intel i7 CPU is it's so fast, it only took 9 seconds from power up to windows desktop, and it also supports hybrid hibernate, event faster than cool start.

    -----------------------------------------------------------------------------
    Software

    I have to say, those designing hardware, case, mechanism are not my expertise. Without goggle's help will be nothing i can do.

    I'm a .net programmer in the real world. Actually , the program is not that complicated as you imaging.

    main function:

    *receive messages from powerboard via USB, display on the screen
    *analyst the CAN-bus status and let something start stop. in some case, popup prompt messages or speak
    *play mp3/ape/flac/wav audio file
    *integrated with video capture card , render them in the right timing
    *take care of steering wheel button and map to keyboard or short-cut
    *integrated with navigation application, scale it to fit my screen


    Name:  11.jpg
Views: 789
Size:  81.0 KB
    #main view, i guess your guys can not understand what the Chinese text means.
    basically, show the main car status in numerical format. like engine PRM, Volt, coolant and oil temperature, trip summary
    the circle on the right with a citroen logo is my favorite, fill color shows steering wheel rotation, the middle logo represent current towards(by GPS data)

    Name:  12.jpg
Views: 768
Size:  81.4 KB
    *wheel speed monitor, it's generated by ESP, i think we can use it to calculate turn angle

    Name:  13.jpg
Views: 767
Size:  78.6 KB
    Name:  20.jpg
Views: 769
Size:  164.6 KB

    *TPMS monitor, my C5 has an original TPMS system, i have decoded the data

    Name:  14.jpg
Views: 763
Size:  78.1 KB
    *the jukebox, nothing else. Video playing is not support now, watching video while driving is not allowed.

    Name:  15.jpg
Views: 754
Size:  92.5 KB
    *Audio DSP , this plug-in is from AMPlayer, i integrated it into my audio player. sounds not bad.

    Name:  16.jpg
Views: 752
Size:  74.7 KB
    *navigation system, a famous chinese navi program. i can also use Garmin, but Garmin has no reality photo preview on the crossroad

    Name:  17.jpg
Views: 744
Size:  60.7 KB

    Name:  18.jpg
Views: 760
Size:  59.6 KB
    *parking assist, with radar and video , the cyan wheel can also show the current steering wheel rotation.

    Name:  19.jpg
Views: 754
Size:  83.6 KB
    *curve view, including PRM/speed/gear/gas/brake/acceleration


    ---------------------------------------------------
    Installation

    Name:  2011112722_4a6627e7c05522fa89c6KUcQG7wXfDRQ.jpg
Views: 738
Size:  108.6 KB
    seems Citroen had pull out of north america, may you guy never see this car before.

    Main 12V supply, direct from fusebox, usually there's spare fuse
    Name:  2013041819_0819429bd701fcab79f0a0aXdy51i14a.jpg
Views: 731
Size:  85.6 KB

    Name:  IMG_20140616_233851.jpg
Views: 734
Size:  127.3 KB


    Mainframe

    Name:  IMG_20140405_145516.jpg
Views: 723
Size:  102.0 KB
    test console dock place
    Name:  IMG_20140501_153729.jpg
Views: 734
Size:  118.3 KB

    the controller, a factory part. the original here is a reserve button, i replace it
    Name:  2013041819_86cedad34c975bb72402o8FExkuVD4RX.jpg
Views: 729
Size:  94.0 KB



    still editing...... please forgot my poor english, two words per minute...
    Last edited by kemp; 07-09-2014 at 10:18 PM.

  2. #2
    Newbie
    Join Date
    Apr 2013
    Posts
    52
    Wow, awesome work. As with everyone here I am curious as to your control application and detail.s

  3. #3
    Maximum Bitrate
    Join Date
    May 2012
    Location
    Grandville, MI
    Posts
    618
    Quote Originally Posted by Deephaven View Post
    Wow, awesome work. As with everyone here I am curious as to your control application and detail.s
    +1

    I have an interest in this stuff as well. I am in the process of installing an i5 based system in my truck and hope to tap into many of the trucks resources.
    I would be very interested in more information about the add on boards you are using and possibly how you tracked down the CANbus stuff..

    I want a similar interface for my GM based truck.

    Sounds awesome otherwise. There are some on here that are making computer controls from scratch for older cars but still think integration with the factory system is the best when possible.

    Also would be nice to see a wider view of your interior to see how your computer integrates into the interior since many of us have never seen the type of car you are using.

    (I am in school to be a software engineer and I have done some work with .net. I am hoping to use .net to interface into my truck as well. I also have experience in C and C++ as well as Java and others.)

    Is the software behind your project open source or are you going to make it available?

    Rodney
    Last edited by redheadedrod; 07-09-2014 at 05:40 PM.

  4. #4
    Newbie
    Join Date
    Sep 2012
    Posts
    6
    Quote Originally Posted by redheadedrod View Post
    +1

    I have an interest in this stuff as well. I am in the process of installing an i5 based system in my truck and hope to tap into many of the trucks resources.
    I would be very interested in more information about the add on boards you are using and possibly how you tracked down the CANbus stuff..

    I want a similar interface for my GM based truck.

    Sounds awesome otherwise. There are some on here that are making computer controls from scratch for older cars but still think integration with the factory system is the best when possible.

    Also would be nice to see a wider view of your interior to see how your computer integrates into the interior since many of us have never seen the type of car you are using.

    (I am in school to be a software engineer and I have done some work with .net. I am hoping to use .net to interface into my truck as well. I also have experience in C and C++ as well as Java and others.)

    Is the software behind your project open source or are you going to make it available?

    Rodney
    First of all , u need an electric diagram to find out where is the network entrance.
    like the picture below, i point the key place out. Can-bus is a two wires bus, most modern car use it for internal communication. it's a start network, which means you can just attach to those two wires then can receive everything.

    Name:  rd4.jpg
Views: 660
Size:  208.8 KB

    second, need a CAN receiver, it translate CAN signals to digital, such as NXP TJA1040, TJA1050. then connect it to MCU, i see all the contex-m3 MCUs support can-bus stack. like stm32, LPC17xx. i see there are lot of CAN-USB translator available now, can easily receive the can-message from USB virtual comm port, may you can just order one online.

    third, find a tools to analyze data. can-bus is a broadcast, low-delay network. each message contain 8 byte data max, broadcast speed can reach 1000 messages per second while running on 500kps, looking into the raw scrolling data is not that smart.

    I wrote my own analyst tools. organize by id and capture any changes. I can share it but you guy still to adapt the protocol

    Name:  IMG_20140710_101456.jpg
Views: 629
Size:  129.4 KB

    those're decoded , only get 100 values yet.
    Name:  IMG_20140710_101231.jpg
Views: 626
Size:  118.3 KB

    Hope those information can help u.


    About the central control software. I bind it to my board and car, so it would be useless if running on other platform.

    I'm planning to implement an open source common central control application, may be in months, ....

  5. #5
    Newbie
    Join Date
    Sep 2012
    Posts
    6
    the administrator masked my reply about decode CAN-bus?? my reply disappeared....

  6. #6
    Maximum Bitrate
    Join Date
    May 2012
    Location
    Grandville, MI
    Posts
    618
    Sometimes messages disappear on here if it was a full message. I have noticed that before myself. I think the system has an error and gets restored to an earlier time. I would hope the messages don't just get deleted without a response of why they were deleted.

    Anyhow, I have a couple ODBII to USB adapters. More generic but they do cover the CAN bus.

    I have the shop manual for my vehicle and I have not yet dug deep into the wiring yet. Still trying to get my computer together to install.

    Would certainly like to see what you are using to capture your codes. Would simplify my work dramatically. I am at a point that I could be "sniffing" my databuses within a couple weeks.

    I have some ARM development boards through freescale that come with a CANBUS connection. I believe all I have to do is hook the wires to the bus and the rest is software. But I plan to use my i5 based computer to do most of the sniffing with the USB

    Still am interested in the boards you are using. They look like a real cool solution that must have been designed for a specific purpose.

  7. #7
    Newbie
    Join Date
    Sep 2012
    Posts
    6
    Quote Originally Posted by redheadedrod View Post
    Sometimes messages disappear on here if it was a full message. I have noticed that before myself. I think the system has an error and gets restored to an earlier time. I would hope the messages don't just get deleted without a response of why they were deleted.

    Anyhow, I have a couple ODBII to USB adapters. More generic but they do cover the CAN bus.

    I have the shop manual for my vehicle and I have not yet dug deep into the wiring yet. Still trying to get my computer together to install.

    Would certainly like to see what you are using to capture your codes. Would simplify my work dramatically. I am at a point that I could be "sniffing" my databuses within a couple weeks.

    I have some ARM development boards through freescale that come with a CANBUS connection. I believe all I have to do is hook the wires to the bus and the rest is software. But I plan to use my i5 based computer to do most of the sniffing with the USB

    Still am interested in the boards you are using. They look like a real cool solution that must have been designed for a specific purpose.

    Be precise, ODB-II is a higher level protocol, it use can-bus as its physical network link. It like our internet, in this case, can-bus is actually a Ethernet but ODB-II act as FTP/HTTP. This are still many other techs like udp/snmp/dns over eth.
    So, ODB-II is not what you need, it just contains few particular engine emissions information, it's designed for common diagnostic, but not all.

    As I mentioned in my last reply, I wrote a tools to analyse can-bus data. If you have grepped raw CAN data from ur vehicle, it's a good option.

    About the board, it is my favorite toy. I did produced a few pieces for some others who owned the same model car , but I have no idea whether it can be compatible with other brands.

    In your freescale board, u still need to write a firmware to transfer raw CAN data bytes from receiver to your i5 computer may via USB or TTL. Before that, the Baud Rate also need to be figured out. ODB-II use 500Kbps. I don't known what your vehicle used.

  8. #8
    Maximum Bitrate
    Join Date
    May 2012
    Location
    Grandville, MI
    Posts
    618
    Yes I am aware the ODBII connectors are a higher level device. They handle a lot of the low level handshaking for you and allow you to use them on most vehicles for diagnostics. THey are a good tool to learn the ODBII/Canbus protocol.

    I am not sure why they won't work to do all the CAN BUS stuff but I guess I have to learn yet. I am sure the Freescale boards I have are likely able to communicate just fine but I would have to figure out the parameters for it etc.

    I can capture the raw data now from my car. Is your tool just a log scanner that allows you to track what is coming through and try to identify what it is or does it actually take the readings too? Might be cool to make it work on a text file of a specific format so it can be used to sniff any canbus data regardless of source.

    Would love to see your code regardless.

    As to the boards. Are you saying you made these boards yourself? I think you might find people on here very interested if that is the case. I personally would want at least one set if possible depending on the cost. You have much of the hardware already built in that I am currently trying to spec out pieces for.

    Rodney

  9. #9
    Newbie
    Join Date
    Sep 2012
    Posts
    6
    Of course, The analyst tools supports plain text log playback, this allow you do offline work.

    These two add-on boards shown in my post r designed by myself, see my name in print text on the board?

    But you known that it likes development board, will not work until it flashed with right firmware. I currently have a hard-code version for Citroen vehicles, there are lot of works to do if I want to make it to be more compatible.

    the manufacturing costs of this these two boards about USD $200+$50, small quantities manufacturing is too expensive, especially the chips and SMD soldering...

  10. #10
    Newbie
    Join Date
    Nov 2007
    Posts
    19
    What navigation software is this?
    It is not IGO8,right?
    Is this navi soft available with european map content and german language?

Page 1 of 2 12 LastLast

Similar Threads

  1. Bmw Z3 Computer Project
    By mrluke in forum Show off your project
    Replies: 12
    Last Post: 01-25-2009, 05:50 AM
  2. My CitroEn Xantia 1996 Project
    By aydin131 in forum Show off your project
    Replies: 2
    Last Post: 08-23-2008, 06:35 AM
  3. odd project... a backpack computer
    By davidp in forum General Hardware Discussion
    Replies: 7
    Last Post: 05-22-2008, 06:16 AM
  4. Citroen Xsara VTS, 2nd Carpc project
    By _dopehead_ in forum Worklogs
    Replies: 8
    Last Post: 04-11-2008, 07:16 PM
  5. Laforza car computer project
    By laforza in forum Show off your project
    Replies: 13
    Last Post: 08-16-2005, 07:25 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •