1. Attachments are working again! Check out this thread for more details and to report any other bugs.

Software Mods/Specs ?

Discussion in 'Gen 2 Prius Audio and Electronics' started by egs, Mar 30, 2004.

  1. egs

    egs Junior Member

    Joined:
    Mar 24, 2004
    25
    0
    0
    Location:
    Cary, NC
    Does anyone have any documentation on the internal software applications and/or operating system that Toyota uses in their computers?

    Being a software developer myself, I'd love to see some discussion on what is being used within the Prius and how 'hackable' the applications are. Does anyone know what OS is being used - maybe Linux?

    Maybe some of the commercial developers (PriusXM, Coastal, etc.) can divulge some info to people that want to tinker inside too.

    Thanks.
     
  2. bookrats

    bookrats New Member

    Joined:
    Mar 12, 2004
    2,843
    2
    0
    Location:
    Seattle, WA
    Don't know about the Prius. From what I know about embedded software in other cars, the OSes are usually custom -- and usually pretty minimal. And they're built to be intentionally non-customizable by customers/owners -- legal and safety reasons.

    However, as more cars become signficantly more "software-driven" (ouch! :roll:), having a software environment that supports many different requirements (many co-dependent on other requirements) is going to be important for the developers themselves, and (to a lesser extent) for service people.

    I wish I was down at the Embedded Systems Conference in San Francisco this week -- I bet there would be some great information along these lines being presented. (And if there wasn't, you could always talk to Wind River about VxWorks in the Mars Rover... 8) )
     
  3. naterprius

    naterprius Senior Member

    Joined:
    Mar 15, 2004
    1,843
    11
    0
    Location:
    USA
    Vehicle:
    Other Non-Hybrid
    VxWorks was what crashed in the Mars Rover? Wow! No wonder they had problems!


    Nate
     
  4. bookrats

    bookrats New Member

    Joined:
    Mar 12, 2004
    2,843
    2
    0
    Location:
    Seattle, WA
    To get an idea of how far away a widely-used embedded architecture (much less an OS) is for use in cars, take a look at this EE Times article on a proposed universal software system named Autosar, proposed by a consortium of German car makers.

    There was a good response (I thought) on Autosar on SlashDot:
     
  5. norman

    norman New Member

    Joined:
    Mar 21, 2004
    77
    0
    0
    Location:
    Australia
    Hmm, I accept the point about not tampering for safety reasons. Given that the throttle and the brakes are computer contolled, I'd rather not get a BSOD as I'm crossing over those train tracks !!!!
     
  6. egs

    egs Junior Member

    Joined:
    Mar 24, 2004
    25
    0
    0
    Location:
    Cary, NC
    I'm not talking about modifying critical systems within the car's computer... More along the lines of NAV, radio, voice recognition, etc...
     
  7. HTMLSpinnr

    HTMLSpinnr Super Moderator
    Staff Member

    Joined:
    Dec 8, 2003
    5,339
    917
    251
    Location:
    Surprise, AZ (Phoenix)
    Vehicle:
    2018 Tesla Model 3
    Model:
    N/A
    Remember two caveats:

    1. There are many separate ECU's which control different things - it's not one main computer doing everything.

    2. That being said, they still do talk to each other. I'm not sure how "intelligent" other ECU's are in rejecting "bad" commands (i.e. forced engine start or emergency braking triggered from a button press on the MFD) from ECU's that shouldn't be issuing them.

    Many of the ECU's are flash upgradable, so I imagine it's only a matter of time before someone gets a hold of a ROM and starts tweaking.
     
  8. bookrats

    bookrats New Member

    Joined:
    Mar 12, 2004
    2,843
    2
    0
    Location:
    Seattle, WA
    Right -- and then there's whatever the bandwidth is for the communications bus that all the ECUs communicate on. One unit starts to spew, and uh-oh, communications gridlock. And the brakes don't work...

    That said, I'm assuming that since access to the main screen is available for 3rd party products like PriusXML and Coastal Dave's MP3 player, that standards for allowing UI access to the screen must be published somewhere. Anyone know if that's correct?
     
  9. bookrats

    bookrats New Member

    Joined:
    Mar 12, 2004
    2,843
    2
    0
    Location:
    Seattle, WA
    I think the one thing that would make me cancel my Prius order and go buy another car would be the discovery that the Prius computer OS was Windows CE.

    (Hmmm... there appears to be no Emoticon for "deranged fear".)
     
  10. HTMLSpinnr

    HTMLSpinnr Super Moderator
    Staff Member

    Joined:
    Dec 8, 2003
    5,339
    917
    251
    Location:
    Surprise, AZ (Phoenix)
    Vehicle:
    2018 Tesla Model 3
    Model:
    N/A
    No Windows there :)

    The Coastal Tech stuff is using existing connections with known protocols. In both cases, the devices connecting are Toyota parts themselves and already "know" how to communicate.

    The XM unit uses the AVC-LAN protocol, and our head unit probably already has the firmware code to understand what the XM unit is sending.

    As for the DVD unit - Dave has tapped the camera-in on the NAV unit in order to facilitate this. Controls for DVD itself don't appear to be on-screen, so there really is little communication there. Not sure how the audio portion of that has been handled, however.

    If you could come up with a device that spoke the AVC-LAN protocol in a way that the Prius understood, it could possibly work. The protocol, while documented, may be something shared only with partners developing devices - i.e. Panasonic, etc. Not sure if they're openly published.
     
  11. sibtrag

    sibtrag Junior Member

    Joined:
    Jan 23, 2004
    44
    0
    0
    Location:
    New York State
    Vehicle:
    2012 Prius
    Model:
    Four
    I know nothing about the Prius hardware and auto electronics is not my area of expertise. I do know that these protocols are often designed with very well thought-out priority schemes. Some include physical-level protocols in which high priority messages can inhibit lower priority messages even when its a malfunctioning unit sending out the low priority issues.

    You certainly don't want your kids' playing with the power windows to interfere with ABS.
     
  12. bookrats

    bookrats New Member

    Joined:
    Mar 12, 2004
    2,843
    2
    0
    Location:
    Seattle, WA
    Thanks Rick! Your explanation (as usual) filled things in for me admirably.
     
  13. HTMLSpinnr

    HTMLSpinnr Super Moderator
    Staff Member

    Joined:
    Dec 8, 2003
    5,339
    917
    251
    Location:
    Surprise, AZ (Phoenix)
    Vehicle:
    2018 Tesla Model 3
    Model:
    N/A
    No problem.

    FYI - there are 3 main "lan"'s in the car - the critical functions occur on the CAN network (Engine control, braking, vsc, etc.), which runs at a much higher speed than the BEAN network (Power Windows) or AVC LAN (Multi-function display, audio, etc.).

    There is a bridge between the three of course so that they can inter-operate where needed (i.e. display showing engine trouble lights, etc.). I'm curious if that bridge is capable of filtering, or if it's more of a "router" of sorts - i.e. it has some intelligence on what it passes.
     
  14. thockin

    thockin New Member

    Joined:
    Mar 28, 2004
    57
    0
    0
    Location:
    San Francisco, CA
     
  15. bookrats

    bookrats New Member

    Joined:
    Mar 12, 2004
    2,843
    2
    0
    Location:
    Seattle, WA
  16. djc

    djc Junior Member

    Joined:
    Feb 18, 2004
    24
    0
    0
    Location:
    Oak Park, IL
    if you're not afraid to get your hands dirty, someone has figured out how to install an Empeg/Rio Car hard-drive MP3 player. I have one of these in my current vehicle, and plan on installing one in the Prius if it ever arrives. :)

    Information is here, with pictures and detailed info starting about halfway through the thread.

    --Dan.