TMC is an independent, primarily volunteer organization that relies on ad revenue to cover its operating costs. Please consider whitelisting TMC on your ad blocker and becoming a Supporting Member. For more info: Support TMC

VisibleTesla

Discussion in 'Model S: User Interface' started by jpasqua, Aug 8, 2013.

  1. efusco

    efusco Moderator - Model S & X forums

    Joined:
    Mar 29, 2009
    Messages:
    5,147
    Location:
    Nixa, Missouri, United States
    Just a suggestion, please update the first post of the thread with the most current version available. This is the 3rd link I've clicked on this morning!

    - - - Updated - - -

    On 2 separate machines I get a JavaFX error, failure to execute.
     
  2. jpasqua

    jpasqua P19325

    Joined:
    Feb 19, 2013
    Messages:
    696
    VisibleTesla doesn't support the spoiler yet. It's simple to add it, but I just haven't done it yet. I will.

    All I'm really able to do is eyeball the location of the charge port door. I might be able to improve its placement with some careful scrutiny of iOS screen captures, but it's not at the top of the list.

    Thanks for your continued attention to the app and for creating the Mac bundle.

    - - - Updated - - -

    I replied via PM to offer suggestions on the JavaFX error.

    Good idea about updating the first post of the thread.
     
  3. JohnQ

    JohnQ Active Member

    Joined:
    Jan 1, 2012
    Messages:
    1,594
    Location:
    Redding, CT
    Minor item--black roof doesn't get rendered on the car. Not nitpicking as this is fantastic but thought you would be interested.
     
  4. ZBB

    ZBB Emperor

    Joined:
    Feb 27, 2013
    Messages:
    1,518
    Location:
    Scottsdale
    Done...
     
  5. irishstoutaz

    irishstoutaz Member

    Joined:
    Apr 7, 2013
    Messages:
    304
    Location:
    Cave Creek, AZ
    Great job and thanks for taking the time to put this together!!! :biggrin:

     
  6. jpasqua

    jpasqua P19325

    Joined:
    Feb 19, 2013
    Messages:
    696
    #46 jpasqua, Aug 13, 2013
    Last edited: Aug 13, 2013
    VisibleTesla 0.16

    Note:
    • As requested, I will update the first post of the thread any time I make an update. This content will be appended there.
    • You can always find the latest version of VisibleTesla in this repository. There will usually be a number of previous versions there as well. If you have problems with the latest version, you can back off to a previous version to see if it works better.

    VisibleTesla 0.16 is available for download here.

    If you have a spoiler on your Model S, please give it a try. If possible, try it with your trunk open and closed.
    Changes:
    • The app never used to display the spoiler on cars that had it. I've implemented experimental support for that. Since my car doesn't have a spoiler, I was only able to test through simulation. If you have a spoiler on your Model S, please give it a try. If possible, try it with your trunk open and closed and let me know if you have problems or notice anomalies. [Thanks @araxara for reminding me about this]
    • The details dialog in the Overview tab now lists the firmware version of the vehicle.
    • If your car has a black roof you may have noticed that the app displayed it as a solid body color. This should be fixed. Since I don't have this configuration, I'd appreciate some testing from someone who does. [Thanks to @JohnQ for point this out]
    • The controls for the panoramic roof (open, close, vent) used to be toggle buttons, now they are just regular buttons. This fits better with what they actually do and how they work.
    • Minor code cleanup to the app and the underlying client library with no visible changes.
    • Minor documentation changes
     
  7. MrOteece

    MrOteece Member

    Joined:
    Jan 19, 2013
    Messages:
    48
    Location:
    California
    I would like logging of the hvac (temps) as well as the charge state info, with configurable refresh intervals for that data. Would be nice to have some interop between the different tools being developed (common logging standards/database schema). I've never done anything with MongoDB before, so still just mucking around with the teslams scripts so far. Not having a lot of luck with the visualize.js.
     
  8. jpasqua

    jpasqua P19325

    Joined:
    Feb 19, 2013
    Messages:
    696
    I wasn't planning on it since the app typically isn't running all the time in order to collect the telemetry. It seems like it may make more sense to use the work that has been done by @hans and @dirkhh for this.

    I'm interested in how people think this sort of functionality could effectively be integrated into VisibleTesla.
     
  9. dirkhh

    dirkhh Middle-aged Member

    Joined:
    Jul 7, 2013
    Messages:
    3,646
    Location:
    Portland, OR, USA
    I thought this would be fairly easy. Have VisibleTesla connect to the database. Then you can give people all the statistics they want. Things like
    • miles driven per day
    • time spent charging
    • total charge amount
    • ...
    I don't think you want the replay feature (watch the car's path on a map in 'fast forward' mode) that I implemented in the javascript version, but there are a ton of other visualizations that I am planning and I think most of them would be better delivered in Visible Tesla (it's only I barely speak JS and no JavaFX at all...)

    I am trying to add some more data to the database interface, but sadly had a script run amok on me last night (in Europe right now) and have since received a very nice email from Tesla informing me that my IP address was blocked as I was causing substantial load on their servers. So be warned when playing with the API (and don't be silly like me and let this run over night without being 100% sure that it does what you think it does...)

    - - - Updated - - -

    Danger, danger. I was implementing just that last night. The problem is that these data don't come in the streaming API so you have to make individual API calls to track them - and Tesla clearly doesn't want that to happen at high frequency. After getting my IP address blocked by Tesla I asked them what they would consider reasonable use of those APIs :)
    The DB part is really easy. I picked mongo because it's so much easier than a full blown SQL database. There are only a hand full of calls that you need in order to get the data out of the database.
    Can you let me know what's not working for you (either here or in email)? I'll be happy to try to explain / fix things... The whole point of making this open source is so that others can play with it and make it better!
     
  10. wormhole

    wormhole Banned

    Joined:
    Mar 31, 2013
    Messages:
    427
    Location:
    Westchester, New York
    This is awesome, i'd say even more informative than the app....where does the 'estimated' range come from, is that based on a historical w/mi figure?
     
  11. dirkhh

    dirkhh Middle-aged Member

    Joined:
    Jul 7, 2013
    Messages:
    3,646
    Location:
    Portland, OR, USA
    The Tesla API charge_state call returns it - so it should be the same estimate as the car shows.
     
  12. JohnQ

    JohnQ Active Member

    Joined:
    Jan 1, 2012
    Messages:
    1,594
    Location:
    Redding, CT
    #52 JohnQ, Aug 14, 2013
    Last edited: Aug 14, 2013
    The black roof does render successfully. Note that the pano roof appears first then gets overlaid with the black roof within 0.5s ...

    Just a note, the title bar on the app still shows v0.15.
     
  13. jpasqua

    jpasqua P19325

    Joined:
    Feb 19, 2013
    Messages:
    696
    @JohnQ: Thanks for testing the black roof. Let me explain why the pano roof renders first and is then replaced by the black roof.

    To acquire all of the information required by the Overview Tab I need to make a number of REST API calls to Tesla. I could display nothing (just the spinner) until I get all of the required information and then display it all at once. That's what I did originally and is more like the iPhone app when it first starts. I didn't like seeing a big empty space so I decided to display what I could with the basic data that I had by the time you were logged in, then refine it. I launch a number of background requests to Tesla and as the information arrives I refine what is displayed. That's why the Odometer reading, the wheel selection, and the roof type might get updated shortly after the Overview Tab is first loaded.

    Long story short, this is an expected behavior based on a conscious choice - which may be the wrong one :)

    In other news:

    The version number has been fixed (now reads 0.16).

    I tried VisibleTesla in a Linux vm (Mint 15) and it seemed to work fine. I did not test extensively. I was doing something else so I decided to try it. Installing java took a few steps, but after that it was smooth sailing.
     
  14. JohnQ

    JohnQ Active Member

    Joined:
    Jan 1, 2012
    Messages:
    1,594
    Location:
    Redding, CT
    Your choice makes sense, not an issue at all.
     
  15. Tytanium

    Tytanium New Member

    Joined:
    Nov 12, 2012
    Messages:
    3
    Location:
    San Francisco
    Where is the source published? I'd like to take a look :)
     
  16. brianman

    brianman Burrito Founder

    Joined:
    Nov 10, 2011
    Messages:
    16,907
    I haven't tried the app so this may be a dumb question.

    Do you cache any of the "answers" across runs of the application? If so, just remember the "car attributes" (color, roof, wheels, interior, spoiler, etc.) and use that as the initial rendering until you get updated data. I would argue that for most cars your cached answer will be right 100% of the time. (For example, I don't plan to change any of these attributes -- ever -- on my vehicle.)
     
  17. jpasqua

    jpasqua P19325

    Joined:
    Feb 19, 2013
    Messages:
    696
    Not a dumb question at all. This approach makes perfect sense and I have considered it. It's actually very easy to do - in sort of a brute force way. I feel that there is a cleaner way to do it by serializing the underlying objects, but I haven't had the time to think about it carefully. It's on the list to consider, but my next chunk of continuous time will probably be spent on charge percentages.
     
  18. dbullard

    dbullard Member

    Joined:
    Jul 31, 2012
    Messages:
    173
    If you're looking for a place to host the code, I've got several slots open in my Google Code section. Git or Subversion.

    BTW, I've got the source for 1.4 working with Gradle, and generating native OS X version of the app. It's pretty easy to shuffle the dirs around to what Gradle or Maven want (Gradle is nice because it can auto generate IDEA and Eclipse projects. Not sure what NetBeans has for Gradle).

    Are you doing the fxml files by hand, or using Scene Builder?
     
  19. jpasqua

    jpasqua P19325

    Joined:
    Feb 19, 2013
    Messages:
    696
    VisibleTesla Sources

    The sources for VisibleTesla are posted on github. I'm a github neophyte to say the least, so I've been following the guidance given by @dirkhh. Thank you.

    There are two repos. One is for the underlying client library and the other is for the app. You need them both. The readme for each project lists other libraries that you'll need to have, where to download them, and how to set up the expected directory structure. The repos are here:

    TeslaClient
    VisibleTesla

    I haven't gone through all the sources and added open source licenses yet, but I will do a cleanup pass on that some time soon.
     
  20. dtich

    dtich #P708

    Joined:
    May 31, 2012
    Messages:
    428
    Location:
    Los Angeles
    o/t: just opened the app and was checking the fixed behavior with google maps in satellite view and noticed the image of my house was now current, for the last few years it showed an image without the solar panels on my roof, about two years old now, and all of the sudden this am, BOOM, solar panels. that was... creepy actually. not sure how i feel about it all! lol.

    anyway, back to topic, thanks again for doing this! love it.
     

Share This Page

  • About Us

    Formed in 2006, Tesla Motors Club (TMC) was the first independent online Tesla community. Today it remains the largest and most dynamic community of Tesla enthusiasts. Learn more.
  • Do you value your experience at TMC? Consider becoming a Supporting Member of Tesla Motors Club. As a thank you for your contribution, you'll get nearly no ads in the Community and Groups sections. Additional perks are available depending on the level of contribution. Please visit the Account Upgrades page for more details.


    SUPPORT TMC