<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Yes, sounds good to me.<br>
<br>
Regards,<br>
Michael<br>
<br>
<br>
<div class="moz-cite-prefix">Am 09.02.20 um 09:53 schrieb Mark
Webb-Johnson:<br>
</div>
<blockquote type="cite"
cite="mid:0C5F9CD4-AC22-4373-96EC-6C64787DE17F@webb-johnson.net">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<div class="">The Tesla Roadster transmits it’s sleep/awake
status:</div>
<div class=""><br class="">
</div>
<blockquote style="margin: 0 0 0 40px; border: none; padding:
0px;" class="">
<div class="">ID 0x100 B1=0x96</div>
</blockquote>
<blockquote style="margin: 0 0 0 40px; border: none; padding:
0px;" class="">
<blockquote style="margin: 0 0 0 40px; border: none; padding:
0px;" class="">
<div class="">B4=doors3</div>
</blockquote>
</blockquote>
<blockquote style="margin: 0 0 0 40px; border: none; padding:
0px;" class="">
<blockquote style="margin: 0 0 0 40px; border: none; padding:
0px;" class="">
<blockquote style="margin: 0 0 0 40px; border: none; padding:
0px;" class="">
<div class="">bit1 = awake/asleep (awake=1 / asleep=0)</div>
</blockquote>
</blockquote>
</blockquote>
<div class=""><br class="">
</div>
<div class="">In the v2 code, we simply sent this as doors3 value
(in the ‘D’ protocol message).</div>
<div class=""><br class="">
</div>
<div class="">The v3 code has this as:</div>
<div class=""><br class="">
</div>
<blockquote style="margin: 0 0 0 40px; border: none; padding:
0px;" class="">
<div class="">
<div class="">case 0x96: // Doors / Charging yes/no</div>
<div class=""> {</div>
<div class=""> m_awake = d[3] & 0x01;</div>
</div>
</blockquote>
<div class="">
<div><br class="">
</div>
<div>Which was wrong (bit #0). I fixed it in recent commit
39cdb7e19e5a3b88ab7217a9adb0cb6008278ab1 to 'm_awake = d[3]
& 0x02’ (bit #1), and that now correctly tracks the
vehicle state. This was to address bug 'Tesla Roadster:
Vehicle AWAKE metric not correct #328’.</div>
<div><br class="">
</div>
<div>Over the years, it seems that the meaning of doors3 has
changed. It originally just specified bit #1, but now the
protocol specifies:</div>
<div><br class="">
</div>
</div>
<blockquote style="margin: 0 0 0 40px; border: none; padding:
0px;" class="">
<div class="">
<div>
<div class="page" title="Page 11">
<div class="layoutArea">
<div class="column">
<ul style="list-style-type: none" class="">
<li class="">
<p class=""><span style="color: rgb(0, 0, 10);
font-style: normal; font-size: 14px;" class=""><font
class="" face="Andale Mono">Door state #3
</font></span></p>
<p class=""><span style="color: rgb(0, 0, 10);
font-style: normal; font-size: 14px;" class=""><font
class="" face="Andale Mono">bit0 = Car awake
(turned on=1 / off=0)<br class="">
bit1 = Cooling pump (on=1/off=0)<br class="">
bit6 = 1=Logged into motor controller<br
class="">
bit7 = 1=Motor controller in configuration
mode</font></span><span style="font-size:
12.000000pt; font-family: 'ArialMT'; color:
rgb(0.000000%, 0.000000%, 3.921000%)" class=""> </span></p>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</blockquote>
<div class="">
<div>The Tesla Roadster code in v2 never adhered to that, and
just set doors3 to whatever it saw on the bus. However, I’ve
never seen values other than 0x00 or 0x02 on that byte.
Certainly, no known value for bit#0 (car turned on). I guess
this is where the confusion from the conversion v2 -> v3
came from (the protocol document saying ‘awake’ in bit#0, vs
cooling pump in bit #1). Tesla Roadster users know the cooling
pump as ‘awake/sleep’.</div>
<div><br class="">
</div>
<div>So, where are we now? A general car can be defined as at
least these states:</div>
<div><br class="">
</div>
<div>
<ol class="MailOutline">
<li class="">Ignition off, asleep, consuming as little power
as possible</li>
<li class="">Ignition off, awake, with some systems using
power</li>
<li class="">Ignition on to the first stop (just some
systems on, but car not started)</li>
<li class="">Ignition on all the way (engine running or
starting)</li>
<li class="">Ignition past on all the way (turning the
engine starter motor)</li>
</ol>
</div>
<div><br class="">
</div>
<div>We can ignore #5 for electric cars.</div>
<div><br class="">
</div>
<div>In v3, we have these metrics:</div>
<div><br class="">
</div>
<div>
<ul class="MailOutline">
<li class="">v.e.awake</li>
<li class="">v.e.on</li>
<li class="">v.e.charging12v</li>
</ul>
</div>
<div><br class="">
</div>
<div>I assumed that v.e.awake corresponds to state #2, and
v.e.on to states #3 and/or #4.</div>
<div><br class="">
</div>
<div>The v.e.charging12v doesn’t really work for the Roadster.
The cooling pump is not related to the little 12v battery
charging system.</div>
<div><br class="">
</div>
<div>I guess I could add a standard metric ‘v.e.aux12v’ to
indicate the auxiliary 12v system is on (and then set
v.e.awake and v.e.ok corresponding to the ignition switch). Is
that acceptable?</div>
<div><br class="">
</div>
<div>Regards, Mark.</div>
<div><br class="">
</div>
<div>
<blockquote type="cite" class="">
<div class="">On 8 Feb 2020, at 5:46 AM, Greg D. <<a
href="mailto:gregd2350@gmail.com" class=""
moz-do-not-send="true">gregd2350@gmail.com</a>>
wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8" class="">
<div text="#000000" bgcolor="#FFFFFF" class=""> Hi
Michael, Mark,<br class="">
<br class="">
Ok, very interesting that this is an old feature. I
only just started seeing the message very recently.
What changed?<br class="">
<br class="">
As to "Awake" vs "On" vs "Ignited", they are definitely
different. I am seeing the correct state reflected in
v.e.awake and v.e.on. Simply opening the car door when
the car is asleep will wake it up (v.e.awake turns to
yes), and inserting the key and moving it to the
"Accessory" position (first notch) moves the state to
"On" (both metrics are "yes"). Note that the car is not
On (drivable) until the key is moved one notch farther;
I'm presuming that's "Ignited" in your terminology. <br
class="">
<br class="">
But something has changed. I have an event script tied
to vehicle.on which activates ext12v power to enable a
HUD or similar (*). Simply awakening the car triggers
the script, a behavior I believe is new, and incorrect.
The script should get activated only when the key is
moved to Accessory (your "On" state). When the car goes
directly back to sleep after a few minutes, the
vehicle.off script correctly does not trigger. Turning
the car to Accessory, then Off (removing the key), does
correctly trigger the vehicle.off script, even though
the car is still Awake at the time.<br class="">
<br class="">
So what I think is happening with the "Vehicle is
idling" message is that it's a side effect of some logic
change to what "on" is, that it's being sensed and
triggered by "Awake" instead of "On". The car is
definitely Awake during charging, but it is not On. And
not being On, the Idle message shouldn't be triggered,
nor should my HUD be turned on.<br class="">
<br class="">
What changed?<br class="">
<br class="">
Greg<br class="">
<br class="">
(*) Actually, the script does a bit more, to work
around the CAN3 bus hangs:<br class="">
<meta http-equiv="content-type" content="text/html;
charset=UTF-8" class="">
<br class="">
<tt class="">power ext12v off</tt><tt class=""><br
class="">
</tt><tt class="">obdii ecu stop</tt><tt class=""><br
class="">
</tt><tt class="">obdii ecu start can3</tt><tt class=""><br
class="">
</tt><tt class="">power ext12v on</tt><br class="">
<br class="">
<br class="">
<br class="">
<div class="moz-cite-prefix">Michael Balzer wrote:<br
class="">
</div>
<blockquote type="cite"
cite="mid:39ff043f-34e9-4f28-29cb-4d24ce43a65c@expeedo.de"
class="">
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8" class="">
<div class="moz-cite-prefix">Greg, Mark,<br class="">
<br class="">
that's actually a very old feature originating from
V2. It's meant to alert about a car left turned on,
which is both a potential security issue (key is
plugged) and a potential fire/explosion threat on
vehicles that may overcharge the 12V battery from
the DC/DC converter. It's also main battery
drainage.<br class="">
<br class="">
This also needs to trigger during charging, but of
course not if the vehicle wakes itself for some
internal checks or OTA updates / whatever.<br
class="">
<br class="">
This was/is using the definition of "awake" as
"turned on", and "on" as "ignited". It seems all
cars except the roadster follow this scheme now, so
maybe we should separate the "maintenance awake"
state?<br class="">
<br class="">
Regards,<br class="">
Michael<br class="">
<br class="">
<br class="">
Am 07.02.20 um 08:43 schrieb Mark Webb-Johnson:<br
class="">
</div>
<blockquote type="cite"
cite="mid:2E9FB03E-E1F9-4471-85DC-3530F197795B@webb-johnson.net"
class="">
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8" class="">
Greg,
<div class=""><br class="">
</div>
<div class="">That would be the system thinking the
vehicle is asleep, but speed > 0.</div>
<div class=""><br class="">
</div>
<div class="">I did fix the roadster awake/sleep
flag (which was not being set correctly before),
so most likely this is something new.</div>
<div class=""><br class="">
</div>
<div class="">The logic is in VehicleTicker1() in
vehicle.cpp. It is:</div>
<div class=""><br class="">
</div>
<blockquote style="margin: 0 0 0 40px; border: none;
padding: 0px;" class="">
<div class="">
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class="">// Idle alert:</span></font></div>
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class="">if
(!StdMetrics.ms_v_env_awake->AsBool()
|| StdMetrics.ms_v_pos_speed->AsFloat()
> 0)</span></font></div>
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class=""> {</span></font></div>
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class=""> m_idle_ticker = 15 * 60;
// first alert after 15 minutes</span></font></div>
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class=""> }</span></font></div>
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class="">else if (m_idle_ticker
> 0 && --m_idle_ticker == 0)</span></font></div>
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class=""> {</span></font></div>
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class=""> NotifyVehicleIdling();</span></font></div>
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class=""> m_idle_ticker = 60 * 60;
// successive alerts every 60 minutes</span></font></div>
<div class=""><font class="" face="Andale Mono"><span
style="font-style: normal; font-size:
14px;" class=""> }</span></font></div>
</div>
</blockquote>
<div class="">
<div class=""><br class="">
</div>
<div class="">So, that resets the fifteen minute
timer whenever the vehicle is either asleep OR
speed>0 (driving). Otherwise the timer counts
down, and after 15 minutes the alert is raised
(and every 60 minutes thereafter until either
the vehicle goes to sleep or speed>0).</div>
<div class=""><br class="">
</div>
<div class="">For roadster, that work work. The
car can ‘awake’ itself for charging,etc.</div>
<div class=""><br class="">
</div>
<div class="">I am not really sure why we are
using ms_v_env_awake in the first place here.
Why do we care if the vehicle is awake or not?
Surely we should be looking at ms_v_env_on (ie;
vehicle switched on)? But for JDEMO users that
would cause a problem (as for they have to leave
the vehicle ignition on while charging).</div>
<div class=""><br class="">
</div>
<div class="">Maybe simplest to disable this alert
for Roadster, unless someone else has any better
ideas. In any case, we need to think about using
ms_v_env_awake vs ms_v_env_on.</div>
<div class=""><br class="">
</div>
<div class="">Regards, Mark.</div>
<div class=""><br class="">
</div>
<div class="">
<blockquote type="cite" class="">
<div class="">On 7 Feb 2020, at 2:22 AM, Greg
D. <<a href="mailto:gregd2350@gmail.com"
class="" moz-do-not-send="true">gregd2350@gmail.com</a>>
wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div class="">Hi folks,<br class="">
<br class="">
I'm starting to get an alert "Vehicle is
idling / stopped turned on"<br class="">
when my Roadster is charging. Seems to
occur every hour.<br class="">
<br class="">
Is this something new with OVMSv3, or did
something change / break on my<br class="">
car?<br class="">
<br class="">
Greg<br class="">
<br class="">
_______________________________________________<br class="">
OvmsDev mailing list<br class="">
<a
href="mailto:OvmsDev@lists.openvehicles.com"
class="" moz-do-not-send="true">OvmsDev@lists.openvehicles.com</a><br
class="">
<a class="moz-txt-link-freetext"
href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev"
moz-do-not-send="true">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a><br
class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
<br class="">
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
OvmsDev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OvmsDev@lists.openvehicles.com" moz-do-not-send="true">OvmsDev@lists.openvehicles.com</a>
<a class="moz-txt-link-freetext" href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev" moz-do-not-send="true">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a>
</pre>
</blockquote>
<br class="">
<br class="">
<pre class="moz-signature" cols="144">--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
</pre>
<br class="">
<fieldset class="mimeAttachmentHeader"></fieldset>
<br class="">
<pre class="" wrap="">_______________________________________________
OvmsDev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OvmsDev@lists.openvehicles.com" moz-do-not-send="true">OvmsDev@lists.openvehicles.com</a>
<a class="moz-txt-link-freetext" href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev" moz-do-not-send="true">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a>
</pre>
</blockquote>
<br class="">
</div>
_______________________________________________<br
class="">
OvmsDev mailing list<br class="">
<a href="mailto:OvmsDev@lists.openvehicles.com" class=""
moz-do-not-send="true">OvmsDev@lists.openvehicles.com</a><br
class="">
<a class="moz-txt-link-freetext" href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a><br
class="">
</div>
</blockquote>
</div>
<br class="">
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
OvmsDev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OvmsDev@lists.openvehicles.com">OvmsDev@lists.openvehicles.com</a>
<a class="moz-txt-link-freetext" href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a>
</pre>
</blockquote>
<br>
<pre class="moz-signature" cols="160">--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
</pre>
</body>
</html>