<html><head></head><body><div class="ydp4bb748c7yahoo-style-wrap" style="font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 13px;"><div></div>
        <div>Hi Mark, </div><div><br></div><div><span><span style="color: rgb(0, 0, 0); font-family: Helvetica Neue, Helvetica, Arial, sans-serif;">I am killing batteries and </span></span>I think I will have some time to look into the power consumption and sleep modes. </div><div><br></div><div>Where should I start?</div><div>I saw that there is some mention of NetDeepSleep and other states, as well as <span>esp_deep_sleep in the code.</span></div><div>Are they functioning or are they there but not running yet (implemented in firmware)? </div><div>Maybe I should have implemented something in the code for the Think City?</div><div><br></div><div>Thanks in advance,</div><div>Nikolay</div><div><br></div>
        
        </div><div id="yahoo_quoted_2160338459" class="yahoo_quoted">
            <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                
                <div>
                    On Wednesday, May 2, 2018, 2:50:50 AM GMT+2, Mark Webb-Johnson <mark@webb-johnson.net> wrote:
                </div>
                <div><br></div>
                <div><br></div>
                <div><div id="yiv3992118154"><div>Greg,<div class="yiv3992118154"><br clear="none" class="yiv3992118154"></div><div class="yiv3992118154">Every peripheral class in the OVMS v3 system (both physical and virtual) should be derived from pcp (Power Controlled Peripheral). That base class implements the concept of a power state, as well as standardised commands to change state (and for sub-classed peripherals to implement those states).</div><div class="yiv3992118154"><br clear="none" class="yiv3992118154"></div><blockquote class="yiv3992118154" style="margin:0 0 0 40px;border:none;padding:0px;"><div class="yiv3992118154"><div class="yiv3992118154"><font class="yiv3992118154" face="Andale Mono"><span class="yiv3992118154" style="font-size:18px;">class obd2ecu : public pcp</span></font></div><div class="yiv3992118154"><font class="yiv3992118154" face="Andale Mono"><span class="yiv3992118154" style="font-size:18px;">  {</span></font></div><div class="yiv3992118154"><font class="yiv3992118154" face="Andale Mono"><span class="yiv3992118154" style="font-size:18px;">  public:</span></font></div><div class="yiv3992118154"><font class="yiv3992118154" face="Andale Mono"><span class="yiv3992118154" style="font-size:18px;">    obd2ecu(const char* name, canbus* can);</span></font></div><div class="yiv3992118154"><font class="yiv3992118154" face="Andale Mono"><span class="yiv3992118154" style="font-size:18px;">    ~obd2ecu();</span></font></div><div class="yiv3992118154"><font class="yiv3992118154" face="Andale Mono"><span class="yiv3992118154" style="font-size:18px;"><br clear="none" class="yiv3992118154"></span></font></div><div class="yiv3992118154"><font class="yiv3992118154" face="Andale Mono"><span class="yiv3992118154" style="font-size:18px;">  public:</span></font></div><div class="yiv3992118154"><font class="yiv3992118154" face="Andale Mono"><span class="yiv3992118154" style="font-size:18px;">    virtual void SetPowerMode(PowerMode powermode);</span></font></div></div></blockquote><div class="yiv3992118154"><br clear="none" class="yiv3992118154"></div><div class="yiv3992118154">At the moment, we don’t use this much. Some peripherals implement it, some don’t, and some only partially. Have a look at ::SetPowerMode() in the peripheral code itself.</div><div class="yiv3992118154"><br clear="none" class="yiv3992118154"></div><div class="yiv3992118154">In general:</div><div class="yiv3992118154"><br clear="none" class="yiv3992118154"></div><blockquote class="yiv3992118154" style="margin:0 0 0 40px;border:none;padding:0px;"><div class="yiv3992118154">Undefined<span class="yiv3992118154Apple-tab-span" style="white-space:pre;">    </span>Power mode is undefined</div><div class="yiv3992118154">On<span class="yiv3992118154Apple-tab-span" style="white-space:pre;">                      </span>Fully powered on</div><div class="yiv3992118154">Sleep<span class="yiv3992118154Apple-tab-span" style="white-space:pre;">          </span>Reduced power mode (but all functions expected to be fully operational)</div><div class="yiv3992118154">DeepSleep<span class="yiv3992118154Apple-tab-span" style="white-space:pre;">       </span>Minimal power deep sleep mode (may turn off some functions to save power)</div><div class="yiv3992118154">Off<span class="yiv3992118154Apple-tab-span" style="white-space:pre;">                   </span>Fully powered off</div></blockquote><div class="yiv3992118154"><div><br clear="none" class="yiv3992118154"></div><div>This will become important later when we implement the sleep and deep sleep modes in OVMS firmware (primarily to save those little 12V batteries).</div><div><br clear="none" class="yiv3992118154"></div><div>Regards, Mark.</div><div class="yiv3992118154yqt8769640332" id="yiv3992118154yqt92294"><div><br clear="none" class="yiv3992118154"><blockquote class="yiv3992118154" type="cite"><div class="yiv3992118154">On 2 May 2018, at 8:10 AM, Greg D. <<a rel="nofollow" shape="rect" class="yiv3992118154" ymailto="mailto:gregd2350@gmail.com" target="_blank" href="mailto:gregd2350@gmail.com">gregd2350@gmail.com</a>> wrote:</div><br clear="none" class="yiv3992118154Apple-interchange-newline"><div class="yiv3992118154"><div class="yiv3992118154">Hi folks (mostly Mark, probably),<br clear="none" class="yiv3992118154"><br clear="none" class="yiv3992118154">I just noticed that there is a power command for OBD2ECU as well as<br clear="none" class="yiv3992118154">ext12v.  I understand (or thought I did) what controlling the ext12v<br clear="none" class="yiv3992118154">power does, but how is "power" related to OBD2ECU?  Is this related to<br clear="none" class="yiv3992118154">firing up the opened CAN bus, or is there some tie to the ext12v power?<br clear="none" class="yiv3992118154"><br clear="none" class="yiv3992118154">I have manually created scripts for vehicle.on and vehicle.off to<br clear="none" class="yiv3992118154">explicitly control ext12v, so that an attached HUD will follow the key. <br clear="none" class="yiv3992118154">We talked about having this sort of thing done automatically, but I<br clear="none" class="yiv3992118154">didn't think it was ever implemented, nor what the particulars would be<br clear="none" class="yiv3992118154">regarding some of the device corner cases.  Is that what is happening here?<br clear="none" class="yiv3992118154"><br clear="none" class="yiv3992118154">Related, what do the other states do?  (Sleep, deepsleep, etc.)<br clear="none" class="yiv3992118154"><br clear="none" class="yiv3992118154">Thanks,<br clear="none" class="yiv3992118154"><br clear="none" class="yiv3992118154">Greg<br clear="none" class="yiv3992118154"><br clear="none" class="yiv3992118154">_______________________________________________<br clear="none" class="yiv3992118154">OvmsDev mailing list<br clear="none" class="yiv3992118154"><a rel="nofollow" shape="rect" class="yiv3992118154" ymailto="mailto:OvmsDev@lists.openvehicles.com" target="_blank" href="mailto:OvmsDev@lists.openvehicles.com">OvmsDev@lists.openvehicles.com</a><br clear="none" class="yiv3992118154">http://lists.openvehicles.com/mailman/listinfo/ovmsdev<br clear="none" class="yiv3992118154"></div></div></blockquote></div></div><br clear="none" class="yiv3992118154"></div></div></div><div class="yqt8769640332" id="yqt15720">_______________________________________________<br clear="none">OvmsDev mailing list<br clear="none"><a shape="rect" ymailto="mailto:OvmsDev@lists.openvehicles.com" href="mailto:OvmsDev@lists.openvehicles.com">OvmsDev@lists.openvehicles.com</a><br clear="none"><a shape="rect" href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev" target="_blank">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a><br clear="none"></div></div>
            </div>
        </div></body></html>