Welcome to Tesla Motors Club
Discuss Tesla's Model S, Model 3, Model X, Model Y, Cybertruck, Roadster and More.
Register

SW/Firmware: Model S Apps

This site may earn commission on affiliate links.
Rear Camera?
imagesCAS5AI4K.jpg
 
If Merapi really is used on the console, then I would imagine that 3rd party apps would be written with Adobe Air / Flex and communicate not directly to the hardware, but to a Java service running in the backend that does that communication (according to Merapi's google project its purpose is to communicate between AIR apps and Java apps). This would all be separated from the computer that drives the car so a crash in an app would be once removed from the Java service talking to the hardware, twice removed from the hardware, and three times removed from the computer running the car (if my assumptions are correct).

So my bet is the SDK being an AIR API connected through Merapi to a vehicle API supplied by a Java service.
 
So my bet is the SDK being an AIR API connected through Merapi to a vehicle API supplied by a Java service.

Considering a lot of our recent dev has been in either Flash or AIR, that would be pretty sweet for me. Would be cool to be able to install your own apps even if you never submit them to whatever app store is out there.
 
I think they probably did use Flex, but I'd imagine that going open source wouldn't change much as far as decision for Tesla using it. As AnOutsider noted, Adobe continues to develop AIR which Flex relies on. Flex isn't abandoned, just open sourced to the Apache Foundation. Both products will continue to be developed.

Personally I'd prefer an approach similar to PhoneGap -- extend javascript for the added functionality the hardware provides and base UI development on current web standards like HTML and CSS (preferably HTML 5 and CSS 3). With an approach like that the learning curve is reduced for people who don't do AIR/Flex development. I don't have the numbers, but I'd imagine the number of people who do web app development using web standards are higher. Even if it isn't the case, skills with HTML, CSS, and Javascript have a much wider application.
 
Well, Flash Player ~= AIR, at least in many people's minds. And, it's a lot harder to write an AIR app without the Flex framework. Do you think that's what Tesla did?

Flex is a mishmash of HTML and Actionscript 3m and I personally dislike it. It's slow and cumbersome (Flex apps tend to run slower on native devices). AIR can be coded directly in AS3. You can use flash builder but we just use the Flash Professional IDE for graphics and compiling and the standalone FlashDevelop program for managing the code.

AIR is similar to flash, yes, but it's sort or a branch that has a lot of integration with the native OS (file management, native hooks etc). AIR also compiles to a native app capable of running in windows, linux, osx, android, qnx, and iOS whereas the flash player runs with a plugin in your browser.

As for Tesla, if they did use AIR then I'd guess they either did indeed use Flex or just one of the IDEs (flash builder or flash pro). Keep in mind you can develop an air app without using any IDE (just directly compile from command line), though it makes it easier to do so.
 
Personally I'd prefer an approach similar to PhoneGap -- extend javascript for the added functionality the hardware provides and base UI development on current web standards like HTML and CSS (preferably HTML 5 and CSS 3). With an approach like that the learning curve is reduced for people who don't do AIR/Flex development. I don't have the numbers, but I'd imagine the number of people who do web app development using web standards are higher. Even if it isn't the case, skills with HTML, CSS, and Javascript have a much wider application.

There's certainly a big push to use HTML5, which I'm down with, but it's just not ready for prime time IMO. Browsers implement it differently, your source code is VERY exposed etc. Though if Tesla releases a framework like WebOS' Enyo (which has been open sourced), then it wouldn't matter as you'd only be developing for that platform and not a diversified range of browsers.
 
The Volt iPhone app is a killer app.

1. Find any address in the iPhone and then send it to the GPS navigation system in the car. (a lot faster way of finding addresses)
2. Send a signal from the iPhone app so that the car honks and flashes (great in a parking lot if you forget where u parked)
3. Remotely start the car (A/C or Heater)
4. When fully charged, the car sends a text message to my iPhone
5. I can remotely check battery charge and range
6. I can also remotely check air pressure, how much gasoline in the tank, engine oil life left
7. Program recharge start during hours of least Kw cost
and many others