<!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>