<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Michael,<div><br></div><div>Rethinking this, I'm pretty sure it can be done just by looking at car state, with all the notification code removed from the vehicle modules.</div><div><br></div><div>The core of what I'm suggesting is to make the alerts more granular, and to give the user more control over what alerts he receives (as opposed to the current situation where they are pretty hard coded into the vehicle modules). And to standardise the available alerts across all vehicle types (as all current alerts in all current vehicle modules, so we don't lose anything).</div><div><br></div><div>The problem is demonstrated by NET_NOTIFY_CHARGE just saying charge has ended and being used in two ways at the moment - some modules always signal it after a charge completes, others only when a charge is interrupted. The decision of what to do is currently per-vehicle (not per-user decision). It is also wrong, sometimes, as it is just a general signal to send out current status (which may have changed by the time the alert is actually sent).</div><div><br></div><div>What I'm suggesting is to have the vehicle modules set shared status variables (car_soc, car_doors1, etc), as they do at the moment, and not to call NET_NOTIFY_* at all.</div><div><br></div><div>For example, the vehicle modules already set the 'charging' bit, so we can use that to internally infer a charge has started / stopped. We even have a charge status that we could look at, if the charge ends, to determine if this is an interrupted charge.</div><div><br></div><div>Things like charge reaching N% SOC / Nmiles could also be centrally determined and available for all cars.</div><div><br></div><div>The new centralised shared module would monitor the car status, determine the status of the car (charging, parked, driving, etc), and internally signal these alerts as necessary. It would also raise the actual NET_NOTIFY notifications, based on a richer set of user preferences.</div><div><br></div><div>So, more granular, more uniform, and let the user choose what sort of alerts he gets.</div><div><br></div><div>Apart from the code required for user-specified granular control, I think this would actually be a saving in code size and just 2 or 3 extra bytes of RAM.</div><div><br></div><div>Regards, Mark.</div><div><br><div><div>On 8 May, 2013, at 1:56 AM, Michael Balzer wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">
  
    <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type">
  
  <div bgcolor="#FFFFFF" text="#000000">
    Mark,<br>
    <br>
    maybe I don't get the point: isn't that the way it's working
    already? I.e.<br>
    <br>
          net_req_notification(NET_NOTIFY_CHARGE);<br>
    <br>
    sets the bit, the net module polls the bitmap and sends the message
    by SMS and/or NET as configured.<br>
    <br>
    Do you mean to split the common NET_NOTIFY_CHARGE bit into it's
    separate types?<br>
    <br>
    If so, what is the benefit of doing this in the vehicle module? An
    SMS user will need all messages, so why not put the NET config into
    the App?<br>
    <br>
    Regards,<br>
    Michael<br>
    <br>
    <br>
    <div class="moz-cite-prefix">Am 06.05.2013 05:13, schrieb Mark
      Webb-Johnson:<br>
    </div>
    <blockquote cite="mid:B6D463EF-A6E3-43A4-8F33-CEB15D5725CF@webb-johnson.net" type="cite">Michael(s),
      <div><br>
      </div>
      <div>Is it better to move this notification stuff out of the
        vehicle modules into one single separate module? Then, we can
        have user controlled settings to control what is alerted, in one
        single central place.</div>
      <div><br>
      </div>
      <div>I'm thinking of just a couple of global bitmaps. When an
        event happens (charge interrupted, charge stopped, charge
        started, etc), the vehicle module just sets the appropriate
        bitmap.</div>
      <div><br>
      </div>
      <div>The central module polls those bitmaps, and if any are set it
        alerts (as configured) and then clears the bitmap. It can also
        trigger notifications elsewhere in the firmware (for example for
        the advanced charge control I'm working on).</div>
      <div><br>
      </div>
      <div>Nice thing about this is that we can migrate to it vehicle
        module by vehicle module.</div>
      <div><br>
      </div>
      <div>What do you think?</div>
      <div><br>
      </div>
      <div>Regards, Mark.</div>
      <div><br>
      </div>
      <div>
        <div>On 5 May, 2013, at 5:58 PM, Michael Jochum wrote:</div>
        <br class="Apple-interchange-newline">
        <blockquote type="cite">
          <meta http-equiv="Content-Type" content="text/html;
            charset=ISO-8859-1">
          <div style="word-wrap: break-word; -webkit-nbsp-mode: space;
            -webkit-line-break: after-white-space; ">Hi,
            <div><br>
            </div>
            <div>i implement the "charge complete" message, cause at
              work i have some probs with the voltage. I must reduce the
              current to 14,5A to get the charge done.</div>
            <div>But sometimes i got an error too. Second is that i got
              a reminder that my car is full and i can release the cord
              so an other car can charge.</div>
            <div>I think a "switch" is a good idea. So the user can got
              the messages he want.</div>
            <div><br>
            </div>
            <div>Now we have a other part to think about:</div>
            <div>We can set the Volt/Ampera to start the charge based on
              departure time. But now the OVMS sends every 28 MInutes a
              message "not charging" until charge starts. I know that
              this is a problem since we don't have the right CAN ID.
              I'm still looking for.</div>
            <div>Do you think we can stop sending this messages without
              having the ID?</div>
            <div><br>
            </div>
            <div>Bye</div>
            <div>Michael J.</div>
            <div><br>
            </div>
            <div><br>
              <div>
                <div>Am 03.05.2013 um 12:53 schrieb Michael Balzer <<a moz-do-not-send="true" href="mailto:dexter@expeedo.de">dexter@expeedo.de</a>>:</div>
                <br class="Apple-interchange-newline">
                <blockquote type="cite">
                  <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type">
                  <div bgcolor="#FFFFFF" text="#000000"> Mark, Michael,<br>
                    <br>
                    for the Twizy I've been sending alerts on charge
                    completion from the beginning. That's my preference,
                    but I also received no complaints from other users
                    up to now. If you're limited to SMS, this is also
                    the only sensible way IMO, you'd otherwise need to
                    query the charge state manually using the "STAT?"
                    command.<br>
                    <br>
                    So may be the configuration could be on the App
                    side? The App could check for the notification text.<br>
                    <br>
                    I also send an additional optional alert on partial
                    completion (sufficient charge level = "topping
                    off"), that can be set by the "CA" command -- IMO
                    quite useful and as well suitable as a standard
                    function.<br>
                    <br>
                    Regards,<br>
                    Michael<br>
                    <br>
                    <br>
                    <div class="moz-cite-prefix">Am 03.05.2013 02:51,
                      schrieb Mark Webb-Johnson:<br>
                    </div>
                    <blockquote cite="mid:E47A3237-C2DF-4B16-BA32-94B4A77867D3@webb-johnson.net" type="cite">
                      <div><br>
                      </div>
                      Michael (J),
                      <div><br>
                      </div>
                      <div>I merged this.</div>
                      <div><br>
                      </div>
                      <div>I'm a unsure about the message when charge is
                        done part. You have it set to alert whenever a
                        charge completes (even if normally up to 100%
                        SOC), which is not normally. We would usually
                        only alert if the charge is interrupted.</div>
                      <div><br>
                      </div>
                      <div>Michael B: What do you do for Twizy on this?
                        Do we need a standard option that the user can
                        set to be alerted whenever a charge is completed
                        (no matter succeed / fail)?<br>
                        <div><br>
                        </div>
                        <div>Regards, Mark.</div>
                        <div><br>
                          <div>Begin forwarded message:</div>
                          <br class="Apple-interchange-newline">
                          <blockquote type="cite">
                            <div style="margin-top: 0px; margin-right:
                              0px; margin-bottom: 0px; margin-left:
                              0px;"><span style="font-family: Helvetica;
                                font-size: medium; "><b>From: </b></span><span style="font-family:'Helvetica';
                                font-size:medium;">"Michael J." <<a moz-do-not-send="true" href="mailto:notifications@github.com">notifications@github.com</a>><br>
                              </span></div>
                            <div style="margin-top: 0px; margin-right:
                              0px; margin-bottom: 0px; margin-left:
                              0px;"><span style="font-family: Helvetica;
                                font-size: medium; "><b>Subject: </b></span><span style="font-family:'Helvetica';
                                font-size:medium;"><b>[Open-Vehicle-Monitoring-System]

                                  Driven km and Charge done message
                                  (#105)</b><br>
                              </span></div>
                            <div style="margin-top: 0px; margin-right:
                              0px; margin-bottom: 0px; margin-left:
                              0px;"><span style="font-family: Helvetica;
                                font-size: medium; "><b>Date: </b></span><span style="font-family:'Helvetica';
                                font-size:medium;">3 May, 2013 3:55:48
                                AM GMT+08:00<br>
                              </span></div>
                            <div style="margin-top: 0px; margin-right:
                              0px; margin-bottom: 0px; margin-left:
                              0px;"><font class="Apple-style-span"><b><br>
                                </b></font></div><p>Add CAN ID with driven km on Battery for
                              calc for expected km<br>
                              Add Messagen when Charhe is done</p>
                            <hr>
                            <h4>Commit Summary</h4>
                            <ul>
                              <li>Driven km and Charge done message</li>
                            </ul>
                            <h4>File Changes</h4>
                            <ul>
                              <li> <strong>M</strong> <a moz-do-not-send="true" href="https://github.com/markwj/Open-Vehicle-Monitoring-System/pull/105/files#diff-0">vehicle/OVMS.X/net_msg.c</a>
                                (1) </li>
                              <li> <strong>M</strong> <a moz-do-not-send="true" href="https://github.com/markwj/Open-Vehicle-Monitoring-System/pull/105/files#diff-1">vehicle/OVMS.X/vehicle_voltampera.c</a>
                                (32) </li>
                            </ul>
                            <h4>Patch Links:</h4>
                            <ul>
                              <li><a moz-do-not-send="true" href="https://github.com/markwj/Open-Vehicle-Monitoring-System/pull/105.patch">https://github.com/markwj/Open-Vehicle-Monitoring-System/pull/105.patch</a></li>
                              <li><a moz-do-not-send="true" href="https://github.com/markwj/Open-Vehicle-Monitoring-System/pull/105.diff">https://github.com/markwj/Open-Vehicle-Monitoring-System/pull/105.diff</a></li>
                            </ul>
                          </blockquote>
                        </div>
                        <br>
                      </div>
                      <br>
                      <fieldset class="mimeAttachmentHeader"></fieldset>
                      <br>
                      <pre wrap="">_______________________________________________
OvmsDev mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:OvmsDev@lists.teslaclub.hk">OvmsDev@lists.teslaclub.hk</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.teslaclub.hk/mailman/listinfo/ovmsdev">http://lists.teslaclub.hk/mailman/listinfo/ovmsdev</a>
</pre>
                    </blockquote>
                    <br>
                    <pre class="moz-signature" cols="72">-- 
Michael Balzer * Paradestr. 8 * D-42107 Wuppertal
Fon 0202 / 272 2201 * Handy 0176 / 206 989 26
</pre>
                  </div>
                  <span><dexter.vcf></span>_______________________________________________<br>
                  OvmsDev mailing list<br>
                  <a moz-do-not-send="true" href="mailto:OvmsDev@lists.teslaclub.hk">OvmsDev@lists.teslaclub.hk</a><br>
                  <a moz-do-not-send="true" href="http://lists.teslaclub.hk/mailman/listinfo/ovmsdev">http://lists.teslaclub.hk/mailman/listinfo/ovmsdev</a><br>
                </blockquote>
              </div>
              <br>
            </div>
          </div>
          _______________________________________________<br>
          OvmsDev mailing list<br>
          <a moz-do-not-send="true" href="mailto:OvmsDev@lists.teslaclub.hk">OvmsDev@lists.teslaclub.hk</a><br>
          <a class="moz-txt-link-freetext" href="http://lists.teslaclub.hk/mailman/listinfo/ovmsdev">http://lists.teslaclub.hk/mailman/listinfo/ovmsdev</a><br>
        </blockquote>
      </div>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
OvmsDev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OvmsDev@lists.teslaclub.hk">OvmsDev@lists.teslaclub.hk</a>
<a class="moz-txt-link-freetext" href="http://lists.teslaclub.hk/mailman/listinfo/ovmsdev">http://lists.teslaclub.hk/mailman/listinfo/ovmsdev</a>
</pre>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">-- 
Michael Balzer * Paradestr. 8 * D-42107 Wuppertal
Fon 0202 / 272 2201 * Handy 0176 / 206 989 26
</pre>
  </div>

<span><dexter.vcf></span>_______________________________________________<br>OvmsDev mailing list<br><a href="mailto:OvmsDev@lists.teslaclub.hk">OvmsDev@lists.teslaclub.hk</a><br>http://lists.teslaclub.hk/mailman/listinfo/ovmsdev<br></blockquote></div><br></div></body></html>