<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Not sure if that's the problem, but I've found a different behaviour
with the new PollSetState() implementation.<br>
<br>
The old version only did anything if the new state actually was
different from the previous one. The Twizy relies on this behaviour,
calling PollSetState() from the per second ticker (see
OvmsVehicleRenaultTwizy::ObdTicker1).<br>
<br>
The new implementation apparently always sends the PollState command
to the task, and that in turn always at least locks the poller
mutex. Not sure if/how that could cause the observed issues, but it
definitely adds quite some (unnecessary?) lock/unlock operations.<br>
<br>
<br>
<br>
<div class="moz-cite-prefix">Am 28.04.24 um 16:05 schrieb Michael
Balzer via OvmsDev:<br>
</div>
<blockquote type="cite"
cite="mid:56cd4281-9761-4864-869a-e6c7b7951100@expeedo.de">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
The Twizy uses the poller to query the VIN (once) and DTCs (every
10 seconds while driving), see rt_obd2.cpp.<br>
<br>
It also has its own version of the OBD single request
(OvmsVehicleRenaultTwizy::ObdRequest), which was the precursor for
the generalized version. This is used by custom/user Twizy plugins
and scripts to access ECU internals.<br>
<br>
The Twizy doesn't use IncomingPollRxFrame, but the Twizy's
IncomingPollReply handler will log any poll responses it doesn't
know about, so that could lead to a lot of log output if something
goes wrong there.<br>
<br>
<br>
<div class="moz-cite-prefix">Am 28.04.24 um 15:49 schrieb Michael
Geddes via OvmsDev:<br>
</div>
<blockquote type="cite"
cite="mid:CAH0p7uJ7=H=6ue2=sMgtJ_K48Vc05LiOojp+X53pV0xAzsy6XA@mail.gmail.com">
<meta http-equiv="content-type"
content="text/html; charset=UTF-8">
<div dir="ltr">
<div>AFAICT the twizzy doesn't use the poller list at all. So
is it missing a call-back or something??</div>
<div><br>
</div>
<div>I can see a potential problem with IncomingPollRxFrame
being called twice as much as it should be but only when
there is a poll list. Maybe commenting out this would do
it. (I can find another away to get this called on the
thread I want). This might be the problem with the smarted</div>
<div><br>
</div>
<div><font face="monospace">void
OvmsVehicle::OvmsVehicleSignal::IncomingPollRxFrame(canbus*
bus, CAN_frame_t *frame, bool success)<br>
{<br>
//if (Ready())<br>
// m_parent->IncomingPollRxFrame(frame, success);<br>
}<br>
</font></div>
<div><br>
</div>
<div>//.</div>
<div><br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sun, 28 Apr 2024 at
21:10, Michael Balzer via OvmsDev <<a
href="mailto:ovmsdev@lists.openvehicles.com"
target="_blank" moz-do-not-send="true"
class="moz-txt-link-freetext">ovmsdev@lists.openvehicles.com</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div> There may also be an issue with the Renault Twizy,
I've received a report of a user who is using the edge
builds, that the latest build wouldn't work.<br>
<br>
He reports all kinds of errors and warnings signaled by
the car during driving, and switching back to the
previous build fixed the issues.<br>
<br>
I've asked him to provide a debug log excerpt if
possible.<br>
<br>
Regards,<br>
Michael<br>
<br>
<br>
<div>Am 28.04.24 um 14:29 schrieb Michael Geddes via
OvmsDev:<br>
</div>
<blockquote type="cite">
<div dir="auto">
<div>OK. That's bad.</div>
<div dir="auto"><br>
</div>
<div dir="auto">Does the reading work in general?</div>
<div dir="auto"><br>
</div>
<div dir="auto">Is it just the writing commands?</div>
<div dir="auto"><br>
</div>
<div dir="auto">Raise a ticket on github and tag me
in and we can address it that way.</div>
<div dir="auto"><br>
</div>
<div dir="auto">Michael</div>
<div dir="auto"><br>
<div class="gmail_quote" dir="auto">
<div dir="ltr" class="gmail_attr">On Sun, 28 Apr
2024, 19:49 Thomas Heuer via OvmsDev, <<a
href="mailto:ovmsdev@lists.openvehicles.com"
target="_blank" moz-do-not-send="true"
class="moz-txt-link-freetext">ovmsdev@lists.openvehicles.com</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div lang="DE">
<div>
<p class="MsoNormal"><span
style="font-size:11pt">Hi,</span></p>
<p class="MsoNormal"><span
style="font-size:11pt"> </span></p>
<p class="MsoNormal"><span
style="font-size:11pt" lang="EN-GB">The
new poller code doesn't seem to work
properly with the smarted.</span></p>
<div
style="border:1pt solid rgb(204,204,204);padding:7pt;background:whitesmoke">
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (218831)
vehicle-poll:
[1]PollerNextTick(PRI): cycle
complete for ticker=215</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (218831)
vehicle-poll: Standard Poll Series:
List reset</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (218831)
vehicle-poll:
PollSeriesList::NextPollEntry[!v.standard]: ReachedEnd</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (218831)
vehicle-poll: [1]PollerSend: Poller
Reached End</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219691)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219691)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219691)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219691)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219691)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219691)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219691)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><b><span
style="font-size:10pt;font-family:"Cascadia Mono";color:rgb(0,34,0)"
lang="EN-GB">OVMS#</span></b><span
style="font-size:10pt;font-family:"Cascadia Mono";color:rgb(0,34,0)"
lang="EN-GB"> </span><span
style="font-size:9pt;font-family:"Cascadia Mono";color:white;background:rgb(51,51,51)"
lang="EN-GB">unlock 22</span><span
style="font-size:10pt;font-family:"Cascadia Mono";color:rgb(0,34,0)"
lang="EN-GB"><br>
Vehicle unlocked</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219691)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219691)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219691)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">V (219701)
vehicle-poll: Pollers:
FrameRx(bus=2)</span></p>
<p class="MsoNormal"
style="margin-bottom:7.5pt;background:whitesmoke;word-break:break-all;border:none;padding:0cm"><span
style="font-size:8.5pt;font-family:"Cascadia Mono";color:gray"
lang="EN-GB">D (219701)
vehicle-poll: Poller: Queue
PollerFrame()</span></p>
</div>
<p class="MsoNormal"><span
style="font-size:11pt" lang="EN-GB"> </span></p>
<p class="MsoNormal"><span
style="font-size:11pt" lang="EN-GB"> </span></p>
<div
style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(225,225,225);padding:3pt 0cm 0cm">
<p class="MsoNormal"><b><span
style="font-size:11pt;font-family:Calibri,sans-serif">Von:</span></b><span
style="font-size:11pt;font-family:Calibri,sans-serif"> OvmsDev <<a
href="mailto:ovmsdev-bounces@lists.openvehicles.com" rel="noreferrer"
target="_blank"
moz-do-not-send="true"
class="moz-txt-link-freetext">ovmsdev-bounces@lists.openvehicles.com</a>>
<b>Im Auftrag von </b>Michael
Geddes via OvmsDev<br>
<b>Gesendet:</b> Sonntag, 28. April
2024 12:27<br>
<b>An:</b> OVMS Developers <<a
href="mailto:ovmsdev@lists.openvehicles.com" rel="noreferrer"
target="_blank"
moz-do-not-send="true"
class="moz-txt-link-freetext">ovmsdev@lists.openvehicles.com</a>><br>
<b>Cc:</b> Michael Geddes <<a
href="mailto:frog@bunyip.wheelycreek.net" rel="noreferrer"
target="_blank"
moz-do-not-send="true"
class="moz-txt-link-freetext">frog@bunyip.wheelycreek.net</a>><br>
<b>Betreff:</b> [Ovmsdev] OVMS
Poller module/singleton</span></p>
</div>
<p class="MsoNormal"> </p>
<div>
<p class="MsoNormal">Hey all,</p>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">The poller
singleton code that I've been
working on for over a year now is
merged in. (Thanks Michael for
expediting the final step).</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">This includes
separate multi-frame states per bus
and multiple poll lists as well as
non-blocking one off queries. As
well as more 'states'.</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">I have included
some programming documentation in
the change but am happy to supply
more if needed. </p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">The ioniq 5 code
has some examples of how it can be
used. Some examples are:</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">* grabbing the
vin as a one shot without blocking </p>
</div>
<div>
<p class="MsoNormal">* having a short
list of queries that are polled
quickly for obd2ecu (this also
demonstrates using a shorter frame
break value and then a break after
successful a response)</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">Have a play
please!</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">Also interested
in hearing what user tools might be
worth looking at next for the poller
object.</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">//.ichael G.</p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
</div>
</div>
</div>
_______________________________________________<br>
OvmsDev mailing list<br>
<a
href="mailto:OvmsDev@lists.openvehicles.com"
rel="noreferrer" target="_blank"
moz-do-not-send="true"
class="moz-txt-link-freetext">OvmsDev@lists.openvehicles.com</a><br>
<a
href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev"
rel="noreferrer noreferrer" target="_blank"
moz-do-not-send="true"
class="moz-txt-link-freetext">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a><br>
</blockquote>
</div>
</div>
</div>
<br>
<fieldset></fieldset>
<pre>_______________________________________________
OvmsDev mailing list
<a href="mailto:OvmsDev@lists.openvehicles.com" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">OvmsDev@lists.openvehicles.com</a>
<a href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev"
target="_blank" moz-do-not-send="true"
class="moz-txt-link-freetext">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a>
</pre>
</blockquote>
<br>
<pre cols="72">--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26</pre>
</div>
_______________________________________________<br>
OvmsDev mailing list<br>
<a href="mailto:OvmsDev@lists.openvehicles.com"
target="_blank" moz-do-not-send="true"
class="moz-txt-link-freetext">OvmsDev@lists.openvehicles.com</a><br>
<a
href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev"
rel="noreferrer" target="_blank" moz-do-not-send="true"
class="moz-txt-link-freetext">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a><br>
</blockquote>
</div>
</div>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
OvmsDev mailing list
<a class="moz-txt-link-abbreviated moz-txt-link-freetext"
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>
<pre class="moz-signature" cols="72">--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26</pre>
<br>
<fieldset class="moz-mime-attachment-header"></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="72">--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26</pre>
</body>
</html>