<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Jack,<div><br></div><div>[took the liberty of replying to this via ovmsdev, for wider dissemination]</div><div><br></div><div><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">When I first opened the OVMS app my phone had lost service and of course the app wasn't working. </span></blockquote><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">After a few minutes I restarted the app and had data right away.  No big deal, just a note.</span></blockquote></div><div><br></div><div>We have logic in the iOS App to cope with a complete loss of service. If the iPhone says 'no network', the App will give you a big ugly warning alert dialog. We need this to pass Apple's AppStore gatekeepers (it is one of the top 5 reasons an App gets rejected). I suspect that either (a) something nasty happens in the phone if you continually try to access the network with no network connection, or (b) this was one of Steve's pet peeves.</div><div><br></div><div>If the phone has network, but the iOS App can't access the server, then things are handled badly. There is no retry attempt, and not a very clear indication. Exit and re-enter the app (or select another car) is the only way to get it back.</div><div><br></div><div>This is something I would like to improve, and it should not be too hard. But, it is in the App and we can relatively easily release updates.</div><div><br></div><div><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">When in the heating state, the app has the plug icon (nice!) but no indication ( other than the icon) that the car is heating or acting like it's in the charging state (amps/volts whatever).  This is OK, just noting it.</span></blockquote><br></div><div>I can add this to the iOS App. No biggy.</div><div><br></div><div><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">If I select the wake up car command and then try to cancel, it just kind of hangs for a bit, maybe a minute before being able to cancel.  Selecting wake up works right away.  Again, no big deal, just a note.  Might be my connection, but it is repeatable.</span></blockquote><br></div><div>I guess some network issue. The car can only queue one command at a time, which is a bit limiting but we are tight on RAM.</div><div><br></div><div>Interestingly, there is another 'quirk' of the Tesla. If you transmit on the CAN bus a "START CHARGE" command while the car is sleeping, it doesn't actually start the charge. A couple of hours later, press the door handle to wake up the car, and the charge will start ;-) Kind of freaked me out the first time I saw it. Our current approach is to handle start charge in the car module by first transmitting the START CHARGE can command, followed by the WAKEUP can command - this is the same approach used by the VDS.</div><div><br></div><div><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">Slide pilot switch off on cable during heating state:<br>  SMS ALERT = "charging, preparing". Ideally we would get a "charge stopped" MSG <br>  OVMS PUSH = "charging, preparing"<br>  After a short time app shows "prepare - 1V@0A" on plug icon<br></span></blockquote></div><div><br></div><div>I think we made a mistake in the reverse-engineering labeling of the charge states as 'charge state' and 'charge sub-state'. The sub-state seems to be a much more useful and granular indication of what is going on with the car, and the charge state is only really useful to know what happened with the last charge.</div><div><br></div><div>In your case, when you stop the charge during heating, you get 'preparing' state. Not useful.</div><div><br></div><div>That said, the car's handling of these states is also a mess (witness the stuck in 'preparing-to-charge' state when a charge is requested and the car charge port is closed).</div><div><br></div><div>At the moment, for this case, the Alert is raised and that should at least tell the user that something is wrong. I think we can emphasis the sub-state in the App (particularly when the car is unplugged).</div><div><br></div><div><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">Car lock/unlock worked perfectly.</span></blockquote><br></div><div>US car, right? Be afraid, very afraid.</div><div><br></div><div>With what we now know, plugging a laptop with a canbus usb adaptor into the diag port, a blackhat could easily output "unlock 0000", "unlock 0001", in very quick succession until the code is guessed. Remotely via OVMS (if he knows the car id and password) is also possible, but much much slower (perhaps one guess every three or four seconds).</div><div><br></div><div>Thankfully, the non-US cars have separate immobilisers and alarms, so are more secure.</div><div><br></div><div><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; ">You have really done an outstanding job.  I'm excited to have this in our car.  So is my wife, who is the one that uses the car the most and has seen the most failed charges (leaving her with a low battery when she needs a full one!).  Nice work</span></blockquote><br></div><div>It has been a truly amazing project. Thanks to everyone's help, we've built something to bring the Tesla Roadster up to the level of, and in some cases surpassing, other more modern EVs. I actually prefer to look at the iPhone App screen rather than the VDS (particularly since Felix cleaned it up so nicely).</div><div><br></div><div>The next step is to open this up to end-users. I really hope that the people that have been using this for the past few months will step forward and help the not-so-technically-capable roadster owners in their areas get it running.</div><div><br></div><div>Regards, Mark.</div><div><br></div><div><div><div>On 22 Feb, 2012, at 12:31 PM, Jack West wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><br>Some notes on my experience using RC5 and the updated app today.  I'd like to stress that I think things are looking very good.<br><br>When I first opened the OVMS app my phone had lost service and of course the app wasn't working.  My phone did find service a minute later but the app never did start reporting.  Changing tabs didn't help.  I didn't try to send any commands.  After a few minutes I restarted the app and had data right away.  No big deal, just a note.<br><br>When in the heating state, the app has the plug icon (nice!) but no indication ( other than the icon) that the car is heating or acting like it's in the charging state (amps/volts whatever).  This is OK, just noting it.<br><br>If I select the wake up car command and then try to cancel, it just kind of hangs for a bit, maybe a minute before being able to cancel.  Selecting wake up works right away.  Again, no big deal, just a note.  Might be my connection, but it is repeatable.<br><br>From battery screen, plug icon slide to stop -> looks good!  Stops heating mode perfectly.<br><br>Icon slide to start restarts heating exactly as advertised.<br><br>Slide pilot switch off on cable during heating state:<br>  SMS ALERT = "charging, preparing". Ideally we would get a "charge stopped" MSG<span class="Apple-converted-space"> </span><br>  OVMS PUSH = "charging, preparing"<br>  After a short time app shows "prepare - 1V@0A" on plug icon<br>Slide physical pilot switch 'on'<br>  "prepare - 1V@0A" disappears from Icon<br>  Car goes back to heating<br><br>Using the VDS stop by request during heating mode:<br>  Plug icon shows "charge stopped"<br>  No alerts or push<span class="Apple-converted-space"> </span><br>This part is perfect<br><br>Car lock/unlock worked perfectly.<br><br>You have really done an outstanding job.  I'm excited to have this in our car.  So is my wife, who is the one that uses the car the most and has seen the most failed charges (leaving her with a low battery when she needs a full one!).  Nice work<br><br>Jack<br></span></blockquote></div><br></div></body></html>