Building a center dash display - feedback?

I'm building a center dash display for both all the entertainment pieces, but also to visualize data coming off the car and would love to get your feedback on an early sample. I wrote a few words about it and did a screencast demo on my blog / build log: A working IVI system prototype « blog.timtt by Tim Trampedach (I'd post the video directly here, but you can't like you can do with pictures)

The underlying assumptions are that I'm building a street car which I'll take to non-racing track days here and there. I'm trying to lay the groundwork for upgrading to a great interior after I get the car on the road. Any suggestions you have on what to show, how to organize the data, visualizations, etc. would be greatly appreciated. Feel free to respond here, on my blog or email me at [email protected].

Thanks,

Tim
 
While I wasn't planning on quite the same as I think that kind of display lends itself more to the SLC than the GT40 but I was still planning on gathering the same information and recording it.

I've had a play with gathering information from our road cars, its pretty easy to get data off the CANBUS, in the case of our car (RX-8), I got wheel speed, yaw, roll, G, revs, brake pressure, steering wheel angle, throttle amount, brake on/off, air temp, inlet temp, oil temp, coolant temp etc.

I used an Arduino to do mine but with only a small 2 line display. In the GT40 I plan on using that plus a Raspberry Pi. The Raspberry Pi is cheap, small and a full computer, it will have lots of add-ons as the project grows and will do HDMI/DVI or direct LCD out plus also runs Linux.

I could probably do it purely with the Raspberry Pi but I already have the Arduino monitoring things so I'm going to keep that and have the RPI as the overlord. :)
 

Ken Roberts

Supporter
Here is a link to a display that reads from the canbus. It simply plugs into the OBD2 port. Drew Technologies : Home

GPS is also a feature. It can hold music files as well. Sells for about $700

Tim you will be limited by the small area of the center dash. The Dash Daq-XL is very compact.
 
I forgot GPS, I also bought a USB GPS receiver, no problem to get it working under Linux, although its another matter to actually then 'use' that data! :)
 
Wow- excellent start, and kudos for working directly with the CAN data stream- it's much harder, but of course gives you access to literally everything the ECU puts on the bus.

I wasn't aware of Tizen- it's very interesting. I like that there is an emulator as it makes coding and testing way easier.

Re the visualization, there are some good tools and samples on the Palmer Performance website for their DashCommand product. It's one of the tools I'm using for a tablet-based IVI system for my SLC (which I've got mostly running now on a Galaxy Tab 7.7, which just fits in the center binnacle). Torque Pro is another, but the graphics are more primitive.

Have you decided what size and technology display you are using? I assume it will have a touch interface?

Please keep us posted on this- as a tech guy, I love to see this kind of thing working on the SLC as the car is very modern looking, and deserves a modern approach like yours.

My tablet-based approach uses a Bluetooth interface for the OBDII port, and apps from the Google Play store with no explicit code except for Tasker macros. So it's easy to implement, but without the extreme flexibility your approach has.
 
Tim,
Awesome job! Amazing what can be done with today's technology.

Will you incorporate features like traction control via this interface?

I assume you can run software like google maps on this? Will you have a cellular modem interface to provide outside data?

Very cool!
Doug
 
I was wondering if DashCommand was going to be brought up, it's just a shame the community forum hasn't taken off so well.

Reading directly from CAN will be fast enough to use as a proper dash, ODBII it just too slow...
 
Good to see there is interest in this type of project within the SLC community. I'm also thinking along these lines for a solution to get additional vehicle data displayed to compliment what the Koso dash can display.My thinking so far has been to utilize an Android tablet as a starting point since it already packs a nice set of built in hardware and a polished user interface with an endless supply of other apps that can come in handy for music/navigation, etc.

Question for you Tim, in your video you mentioned the CANBUS protocol is built into the linux kernel. If that's the case wouldn't it also be available in the Android kernel as well? Or maybe a recompile with the proper settings would be in order to enable it?
 
Very impressive Tim, The talant of the people on this forum never ceases to amaze me. I can't imagine what this car is going to tranform in to after couple more years.
The dash I found to be very short on real estate and makes it a challenge to stuff all the things everyone it getting accustom to. Keep up the great work you may be on to something that will be very marketable. I know I would interested in a dedicated all in one data center, Very cool.
 
While I wasn't planning on quite the same as I think that kind of display lends itself more to the SLC than the GT40 but I was still planning on gathering the same information and recording it.

I've had a play with gathering information from our road cars, its pretty easy to get data off the CANBUS, in the case of our car (RX-8), I got wheel speed, yaw, roll, G, revs, brake pressure, steering wheel angle, throttle amount, brake on/off, air temp, inlet temp, oil temp, coolant temp etc.

I used an Arduino to do mine but with only a small 2 line display. In the GT40 I plan on using that plus a Raspberry Pi. The Raspberry Pi is cheap, small and a full computer, it will have lots of add-ons as the project grows and will do HDMI/DVI or direct LCD out plus also runs Linux.

I could probably do it purely with the Raspberry Pi but I already have the Arduino monitoring things so I'm going to keep that and have the RPI as the overlord. :)
Interesting. Raspberry Pi sounds like a super cheap platform with a good community and lots of add-ons being built, as is the case with Arduino. It's a very basic board though which I question the amount of hassle in getting various pieces to work together reliably. CAN adapter, accelerometer, GPS, LVDS output rather than HDMI are the ones that come to mind, as well as being able to power a large display with intensive graphics.

That said, it does seems like a great little embedded controller board. I'd be curious about either one as an adjunct device if it can read CAN data reliably, though I would only want to use it if I can program it in C.

Keep us posted on your project... any links to or pics of it?

Tim
 
Here is a link to a display that reads from the canbus. It simply plugs into the OBD2 port. Drew Technologies : Home

GPS is also a feature. It can hold music files as well. Sells for about $700

Tim you will be limited by the small area of the center dash. The Dash Daq-XL is very compact.
I looked at this device early on. The main issue is that it requires CAN bus and even if I retrofit that, it would be a hassle to configure for my Pectel ECU. Seems neat and pluggable, etc, but I actually don't fully understand the overall product-market fit of this product. I'm probably missing something...

Tim
 
Wow- excellent start, and kudos for working directly with the CAN data stream- it's much harder, but of course gives you access to literally everything the ECU puts on the bus.

I wasn't aware of Tizen- it's very interesting. I like that there is an emulator as it makes coding and testing way easier.

Re the visualization, there are some good tools and samples on the Palmer Performance website for their DashCommand product. It's one of the tools I'm using for a tablet-based IVI system for my SLC (which I've got mostly running now on a Galaxy Tab 7.7, which just fits in the center binnacle). Torque Pro is another, but the graphics are more primitive.

Have you decided what size and technology display you are using? I assume it will have a touch interface?

Please keep us posted on this- as a tech guy, I love to see this kind of thing working on the SLC as the car is very modern looking, and deserves a modern approach like yours.

My tablet-based approach uses a Bluetooth interface for the OBDII port, and apps from the Google Play store with no explicit code except for Tasker macros. So it's easy to implement, but without the extreme flexibility your approach has.
Thanks Will! The CAN data stream turned out not to be as hard to work with as I thought. If you have docs for the frame protocol and have a board with a CAN adapter, it's quite easy under Linux. It's really a matter of figuring out how to manage the quantity of data. For example, the Pectel Omega stream has at least 4 frames at 100Hz, plus a bunch of others at 20Hz. A C program handles the read load easily and can write the data to disk in a breeze, but you have to figure out how to selectively send data to the fronted for display. I've gotten the overall CAN server -> frontend rate down to about 10 frames / sec, but I'm also considering not sending individual CAN frames and instead aggregating data into larger frames. Optimizations if/when I have to.

I'm very interested in how you do with the Galaxy tablet approach. I thought about that a lot and haven't ruled it out fully yet. In that case I would use a different smaller embedded PC and pump data via Ethernet to a tablet that's the frontend. This would then just be one app of many on the tablet display. I wouldn't use Wifi as the network connect due to reliability/interference reasons, but I have found a few Android tablets with a wired Ethernet port that would probably work ok. I'm just scared that they're no-name manufacturers and I can't get a replacement board in 2 years when it breaks.

So in the end, the Nexcom VTC1000 looks good for a few reasons:
1) It's got CAN bus, GPS, WiFi, Ethernet, video (VGA or LVDS) all integrated into a ruggedized enclosure specific for car applications. No hassle with drivers, USB dongles (except TPMS).
2) Support from the company (they've been around and look like they will be for a while) and the community for this board.
3) Supreme flexibility of OS distro, displays, etc.

And even if I use the Nexcom, I can convert to using a tablet frontend at a later time too. Still an option I'm exploring.

Regarding the display, I plan to use the largest one possible that can sit near the top of the center dash. I really don't like the Tesla Model S full touch screen interface, as I think tactile feedback from buttons and switches for some stuff crucial. Mine will be a 7-10" LVDS touchscreen which I'll figure out once I have the car (supposed to be this coming weekend - hooray!)

Keep me posted on how you do with your system. Very curious!

Tim
 
Good to see there is interest in this type of project within the SLC community. I'm also thinking along these lines for a solution to get additional vehicle data displayed to compliment what the Koso dash can display.My thinking so far has been to utilize an Android tablet as a starting point since it already packs a nice set of built in hardware and a polished user interface with an endless supply of other apps that can come in handy for music/navigation, etc.

Question for you Tim, in your video you mentioned the CANBUS protocol is built into the linux kernel. If that's the case wouldn't it also be available in the Android kernel as well? Or maybe a recompile with the proper settings would be in order to enable it?
I'm pretty sure you'd need to recompile, but that's not the biggest deal. It just becomes cumbersome as you want to upgrade Android releases. The more important question is whether you can find a CAN adapter (likely USB) that you can plug into an Android tablet that the kernel will then recognize. I tend to think most USB adapters will work with any kernel where SocketCAN is turned on because the chips are so standard, but I can't confirm that.

If you have OBD on your ECU, you could do an Android tablet with a Bluetooth OBDII adapter, though it being wireless concerns me and I wouldn't put anything mission-critical on the display in that case.

Will can probably tell you a lot more about this setup though. Looks like he's made quite a lot of headway on it.

Tim
 
Tim,
Awesome job! Amazing what can be done with today's technology.

Will you incorporate features like traction control via this interface?

I assume you can run software like google maps on this? Will you have a cellular modem interface to provide outside data?

Very cool!
Doug
Thanks Doug! The Pectel ECU does traction control, but right now I have the wiring schematic laid out to have it be an on/off switch and a gain control directly into ECU pins. I'm more comfortable than doing this via the display and it's one less thing to code and find connection method for.

But I like the idea. :)

Tim
 
Interesting. Raspberry Pi sounds like a super cheap platform with a good community and lots of add-ons being built, as is the case with Arduino. It's a very basic board though which I question the amount of hassle in getting various pieces to work together reliably. CAN adapter, accelerometer, GPS, LVDS output rather than HDMI are the ones that come to mind, as well as being able to power a large display with intensive graphics.

That said, it does seems like a great little embedded controller board. I'd be curious about either one as an adjunct device if it can read CAN data reliably, though I would only want to use it if I can program it in C.

Keep us posted on your project... any links to or pics of it?

Tim
There is a DSI to LVDS adapter in the works for the RPI which now makes me consider fitting one in the remains of my old IBM thinkpad 'butterfly' but I digress.
The arduino is programed in C, well its wiring but essentially its C. The RPI runs linux mostly so anything you want pretty much!

I actually started out using a usb elm327 based device, quickly ran into issues of not bring able to keep up with the data stream, got past that by upping the rs232 speed (the usb elm327 is really just a usbrs232 converter tacked onto the rs232 chip) and dropping all unneeded data. Still nasty and hacky plus it was one way. Moved on to using the arduino which is easy. I intend to use CANBUS in my car and plan to get some boards made up rather than plug the arduino boards together.

Acceleration is easy with the arduino, 3axis sensor boards are cheap and easily available, or just get a 'combined sensor' out of anything with bosch dsc and then it's just a case of measuring voltages. I also plan on fitting a steering angle sensor out of an RX8, any type of rotary encoder would work but I already have one and it nicely outputs angle data over CANBUS!

I'll sort out the links later, bit tricky from the phone!
 
Tim,
Will and I have been scheming for some time and have teamed up on the project. I opted for the 7.7 as it fit perfectly in the available space and Will just HAD to copy my lead :) Will is the lead Tech on the project and I will be the install/bezel designer. At some point you will have a local example of this work to review.
 
... Raspberry Pi. ...
Had the same idea using it with a USB CANBus reader since I am old school and like needle gauges over digit displays and you really do not have the space on the dash to add manual gauges unless you go with custom made ones. In addition, it also allows me to use it as a diagnostics reader too.
You can then change the gauge package with a push of button. Speedo center for street driving and change it to tach center for track days.
 
Ever get the idea when you walk in on a conversation you immediately feel like your the dumb one.....I'll be leaving now. Continue on.
 
Top