The start of this project has been moved to a new thread:
Come join us!
Actually for such a project you want to use HTML5. It is the direction everything is moving towards and will run on virtually every device. I have not looked into it much myself yet but Web based applications is the future and HTML5 is designed to provide the technology needed to do it all.
So in essence any device with a browser should be able to access an HTML5 application. Much more secure than Java.
I haven't researched this yet but my guess is that with HTML5 you can build a web server machine that pulls the information from all of the systems and provides them via the web server. This will allow you to then access the web server with any device.
So as an example, lets setup a Pi with a web server and hook it to a Fusion Brain and an ODBII device to pull the information it needs. Since it is just an information server it shouldn't take much in the way of resources and can be continuously running since it is very low powered. Now you can use conventional web access to pull up the information on your car and interact with the vehicle via an interactive web page. You could setup the server to provide different content to different devices dependent on their IP addresses or by the webpage called.
Yes if you didn't pick up on it... You can have multiple screens doing different things... Install tablets in the rear running android and access your data fine. Your PC then accesses the host and can do stuff as well or your phone... If you want to have access to other hardware you could setup the server to provide services if available so you could do all sorts of things easily.
So yes, HTML5 is the way to go for the frontend... Could be driven by Linux or PC...
I am hesitant to use HTML for a front end only because I have not seen any really good implementations in the past. I'm not ruling it out, just want a better idea of how it will work in the long run. I can see it used as an auxiliary control but not the front end in front of the driver.
I am thinking the server side will have some sort of an API where the front end would do a query for information, or the server can push notifications to the FE. We would also have to code how various sensors talk and share information with the server software.
Keep in mind I am by no means a programmer, mostly a tinkerer, idea man and interface design, so I will defer.
Interesting project.. up until I read Arduino, Raspberry Pi and Android. My first carpc was Android. It could do a lot, except sound quality sucked then without USB DAC support, and indexing more than 50 MP3's took forever and you could not use this format or that, and OH, you cant just plug any USB device into it.
The main feature is to be able to play music in any format from a large local storage device, and not have to wait for indexing of songs. Bells and whistles are a must too.
So I moved to Windows, and it seems to do ALMOST everything. It's also the easiest, since Windows is about 20 years old. If I can plug it into a Windows PC, i'm happy.
Average guys can assemble a PC, setup networks, and install devices of any sort as long as it has drivers, and load softwares, but to do all those same things on Arduino, Raspberry Pi and Android, are NOT intuitive, rather cryptic compiler hexadecimal assembly language voodoo bull$#!t, that scares all but the most 1337 h4x0rz from cult of the dead cow.
That said, please keep the above paragraph in mind when starting your project.
rray you are correct at the moment but I think we are looking at trying to create something that will work nicely across the board. If you know you can write this file to your SDcard and install it in your PI, odroid or otherwise there is not much you need to do.
At to HTML5, This is a major improvement to the web experience. It was designed to be able to create apps on your browser and be truly multi device capable. I have read it can do anything Java or Flash can do. I am not experienced enough with it to know how it all works but I have seen mentions of it in a few places. It is relatively new technology so it hasn't been used much to do much crazy stuff. If you have a an android with jellybean and you view videos you are using html5 for instance.. HTML5 is why android stopped supporting Flash and is why iOS won't even consider flash or java.
Tesla has some advantages. Hardware & Interface are allways the same.
Most carPC Software tries to support so many Hardware and people want it skinable. And all projects i've seen come in a big package and aren't compatible to each other.
I've made a custom software for my carPC which uses FLTK for the GUI, so it runs on Linux (x86/ARM) & Windows. and it's modular, for example the mediaplayer is standalone which talks to the rest of the Software over TCP/IP.
if something doesn't run on another plattform only that part of software needs an replacement using the same network protocol.
webinterface is also available to control from any Device over network which has a webbrowser. (but this part still need's a lot of work, cause it will work better if the daemons support websockets)
my advice is to bake small cakes to make a nice dinner :p
PS.. I'm spending a lot of time attempting to create an indexing solution for Android locally stored media.