[Ovmsdev] Nissan LEAF: HVAC Metrics

Jaunius Kapkan jaunius at gmx.com
Tue Nov 5 15:29:59 HKT 2019


Thanks for the feedback Anko,

Will adjust the code according to your comments and get back here.

Regards,

Jaunius Kapkan [Sent from cellphone]
Global Market Operations
Cell:      +370 650 11 752

> On 2019-11-04, at 22:11, Anko Hanse <anko_hanse at hotmail.com> wrote:
> 
> 
> Hi Jaunius,
>  
> Awesome work. Browsed through most of your changes and only have some small comments:
>  
> Naming conventions and code style all look fine
>  
> I do not quite understand why there is both an m_climate_on and an m_climate_off.  Is it not sufficient to have just a m_climate_on with value true/false ?
>  
> Similar for the m_climate_vent_off / face / facefeet, etc. Maybe better to change into one variable which is a string or enum with values off / face / facefeet / feet, etc
> And the same comment for m_climate_air_recirc / fresh / def.
> 
> Look into how it was done for m_battery_type which uses an enumeration of values (enum battery_type).
> Or otherwise StandardMetrics.ms_v_charge_state which uses strings ‘stopped’, ‘charging’, ‘done’
>  
> I will try and test your code on my 2016 30kwh Leaf.
>  
> Kind regards,
> Anko Hanse
>  
>  
> From: Jaunius Kapkan <jaunius at gmx.com> 
> Sent: Tuesday, 5 November 2019 12:09 am
> To: OVMS Developers <ovmsdev at lists.openvehicles.com>
> Subject: [Ovmsdev] Nissan LEAF: HVAC Metrics
>  
> Hi,
>  
> I have enhanced Nissan LEAF HVAC metrics as well as added additional ones under xnl.cc
>  
> I have built and tested the changes and so far all works as intended.
>  
> I have also updated documentation.
>  
> So I think it is time to merge this in to current edge build, but I just wanted to check with you if all the code style and naming conventios are according to standards.
>  
> Would appreciate if someone could review and advise if something needs to be corrected.
>  
> Here is the link to the repo and main file I worked on: https://github.com/mjkapkan/Open-Vehicle-Monitoring-System-3/commits/master/vehicle/OVMS.V3/components/vehicle_nissanleaf/src/vehicle_nissanleaf.cpp
> 
> Kindly,
>  
> Jaunius Kapkan [Sent from cellphone]
> Global Market Operations
> Cell:      +370 650 11 752
> 
> 
> On 2019-10-17, at 15:14, Jaunius Kapkan <jaunius at gmx.com> wrote:
> 
> 
> Thanks Mark,
>  
> [renaming subject]
>  
> In regards to config store. Where would you recommend placing the timers? I was thinking about putting them under vehicle conf:
> OVMS# config list vehicle
> vehicle (readable writeable)
>   bms.alerts.enabled: yes
>   bms.dev.temp.alert:
>   bms.dev.temp.warn:
>   bms.dev.voltage.alert:
>   bms.dev.voltage.warn:
>   cctimer.evening: 1715-1730
>   cctimer.morning: 0800-0815
>   id: ******
>   minsoc: 20
>   name:
>   timezone: EET-2EEST,M3.5.0/3,M10.5.0/4
>   timezone_region: Europe/Helsinki
>   units.distance: K
> Any other suggestions?
>  
> Regards,
> Jaunius
>  
> Sent: Monday, October 14, 2019 at 4:01 AM
> From: "Mark Webb-Johnson" <mark at webb-johnson.net>
> To: "OVMS Developers" <ovmsdev at lists.openvehicles.com>
> Subject: Re: [Ovmsdev] WifiConsole V1.0
> Probably not. The majority of power consumption is from the modems (cellular and wifi).
>  
> Regards, Mark
>  
> P.S. If all you need is a 10 second notification, you can pubsub subscribe to the standard event ticker.10.
>  
> On 14 Oct 2019, at 7:22 AM, Jaunius Kapkan <jaunius at gmx.com> wrote:
>  
> Delayed events seem to be working fine, thanks for the examples!
> However, do you think spamming the events API every 10 seconds might substantially increase power consumption?
>  
> [2:17:04 AM]usr.CCtimer.heartbeat
> [2:17:04 AM]usr.CCtimer.Night.stopped
> [2:17:14 AM]usr.CCtimer.heartbeat
> Regards,
> Jaunius
> Sent: Sunday, October 13, 2019 at 8:54 PM
> From: "Michael Balzer" <dexter at expeedo.de>
> To: ovmsdev at lists.openvehicles.com
> Subject: Re: [Ovmsdev] WifiConsole V1.0
> Sending notifications is now also supported directly:
> 
> https://docs.openvehicles.com/en/latest/userguide/scripting.html#ovmsnotify
> 
> Regards,
> Michael
> 
> 
> Am 13.10.19 um 16:09 schrieb Jaunius Kapkan:
> > Great,
> >
> > Will try that out!
> >
> > Regards,
> > Jaunius
> >
> >> Sent: Sunday, October 13, 2019 at 11:20 AM
> >> From: "Michael Balzer" <dexter at expeedo.de>
> >> To: ovmsdev at lists.openvehicles.com
> >> Subject: Re: [Ovmsdev] WifiConsole V1.0
> >>
> >> Jaunius,
> >>
> >> I've added scheduled (delayed) events & the native OvmsEvents API:
> >> https://docs.openvehicles.com/en/latest/userguide/scripting.html#internal-objects-and-functions-methods
> >>
> >> So you can now also implement millisecond resolution timeouts and intervals in scripts.
> >>
> >> Regards,
> >> Michael
> >>
> >>
> >> Am 11.10.19 um 10:36 schrieb Jaunius Kapkan:
> >>> Thanks Michael,
> >>>  
> >>> 1 second will do just fine as this is for climate control timer plugin I'm doing. Will try to use that event listener. Of course some standartized way would
> >>> be better.
> >>>  
> >>> Regards,
> >>> Jaunius
> >>>  
> >>> *Sent:* Friday, October 11, 2019 at 8:48 AM
> >>> *From:* "Michael Balzer" <dexter at expeedo.de>
> >>> *To:* ovmsdev at lists.openvehicles.com
> >>> *Subject:* Re: [Ovmsdev] WifiConsole V1.0
> >>> Jaunius,
> >>>
> >>> setTimeout() is not a standard Javascript function, it's a method of the browser window object.
> >>>
> >>> https://developer.mozilla.org/de/docs/Web/API/WindowTimers/setTimeout
> >>>
> >>> As a workaround, subscribe to the "ticker.1" event as shown in the foglight example:
> >>>
> >>> http://docs.openvehicles.com/en/latest/components/ovms_script/docs/foglight.html#listen-to-events
> >>>
> >>> Resolution is limited to 1 second though. I thought about scheduled events some time ago, i.e. being able to tell the event system to trigger an event after a
> >>> specific delay. That would also offer a clean & simple solution for this. Another option would be a script API for the timer service.
> >>>
> >>> I'll have a look at scheduled events.
> >>>
> >>> Regards,
> >>> Michael
> >>>
> >>>  
> >>> Am 11.10.19 um 08:29 schrieb Jaunius Kapkan:
> >>>
> >>> Thanks Mark,
> >>>  
> >>> One other thing I stumbled upon is that standard setTimeout() does not seem to work. Is there any workaround for this? Sample Code:
> >>>
> >>> |function intervalFunc() { print('Next try in 1.5s') } setInterval(intervalFunc, 1500)|
> >>>
> >>>  
> >>> Basically I need the script to check certain conditions each n seconds.
> >>>  
> >>> Regards,
> >>> Jaunius
> >>> *Sent:* Thursday, October 10, 2019 at 3:35 AM
> >>> *From:* "Mark Webb-Johnson" <mark at webb-johnson.net>
> >>> *To:* "OVMS Developers" <ovmsdev at lists.openvehicles.com>
> >>> *Subject:* Re: [Ovmsdev] WifiConsole V1.0
> >>> I think in v2 that could have been the case (as we didn’t have any standardised functions for things like climate control). But in the v3 architecture we
> >>> now have these and the vehicle modules should support the standard functions to the best of their abilities.
> >>>
> >>> If we still need mappings like Homelink 1 -> Climate On, then that should be done either by scripts or by some centralised mapping framework.
> >>>
> >>> Regards, Mark.
> >>>
> >>> > On 9 Oct 2019, at 2:19 PM, Jaunius Kapkan <jaunius at gmx.com> wrote:
> >>> >
> >>> > I am making a couple of plugins (initially for leaf) and the JS functions are great for that. However I assume the functions are not unifed accross
> >>> different vehicles. For example for leaf to turn on pre-heat you need to issue Homelink 1 instead of ClimateControl. What would be the best way to change
> >>> this? Or is this something that need to be changed on the lower level?
> >>> >
> >>> > Greetings,
> >>> > Jaunius
> >>> >
> >>> >> Sent: Tuesday, October 08, 2019 at 9:05 AM
> >>> >> From: "Michael Balzer" <dexter at expeedo.de>
> >>> >> To: ovmsdev at lists.openvehicles.com
> >>> >> Subject: Re: [Ovmsdev] WifiConsole V1.0
> >>> >>
> >>> >> Mark,
> >>> >>
> >>> >> yes, the OLEDs are perfect for these things, bright enough for daylight use with very little energy usage.
> >>> >>
> >>> >> Thanks for the link to that combined ESP32 module, that's a real beauty, even includes a LiPo supply / charger. I need to check that one out.
> >>> >>
> >>> >> Regarding our Javascript support, I already had stunned some users with the foglight plugin, they thought stuff like this would need builtin
> >>> >> support. That brought me back to my point about how little users know about our capabilities, so I added an explanation to our docs:
> >>> >>
> >>> >> http://docs.openvehicles.com/en/latest/components/ovms_script/docs/foglight.html
> >>> >>
> >>> >> But we really need something like an OVMS cheat sheet as an overview of what is possible.
> >>> >>
> >>> >> Regards,
> >>> >> Michael
> >>> >>
> >>> >>
> >>> >> Am 08.10.19 um 05:40 schrieb Mark Webb-Johnson:
> >>> >>> Michael,
> >>> >>>
> >>> >>> I really like those little OLED SSD1306 based displays. I use them on my esphome+hassio projects like this little water tank level (using an
> >>> >>> ESP32, a BME280 pressure/humidity/temperature sensor, waterproof ultrasonic distance sensor, and SSID1306 OLED yellow/blue display):
> >>> >>>
> >>> >>>
> >>> >>> Adding a display to a project makes it so much more useful and easy to diagnose problems.
> >>> >>>
> >>> >>> AliExpress has them very cheap:
> >>> >>>
> >>> >>> * https://www.aliexpress.com/item/32844104782.html
> >>> >>> US$2 for the 0.96” yellow/blue 128x32
> >>> >>> US$3 for the 1.3” white 128x64
> >>> >>>
> >>> >>>
> >>> >>> There is also a 4MB ESP32 with a 0.96” OLED display on-board:
> >>> >>>
> >>> >>> * https://www.aliexpress.com/item/32822105291.html
> >>> >>> US$9 plus shipping
> >>> >>>
> >>> >>>
> >>> >>> Glad that you are finding a use for our JavaScript support. I really think that has so many possibilities.
> >>> >>>
> >>> >>> Regards, Mark
> >>> >>>
> >>> >>>> On 6 Oct 2019, at 10:43 PM, Michael Balzer <dexter at expeedo.de <mailto:dexter at expeedo.de>> wrote:
> >>> >>>>
> >>> >>>> FYI: I've just implemented an OVMS v3 style replacement for the SimpleConsole:
> >>> >>>>
> >>> >>>> https://github.com/dexterbg/WifiConsole
> >>> >>>>
> >>> >>>> V3 makes it pretty easy now to add stuff like this. It's using a script plugin to provide custom functions via the web API.
> >>> >>>>
> >>> >>>> Regards,
> >>> >>>> Michael
> >>> >>
> >>> >> --
> >>> >> Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
> >>> >> Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
> >>> >>
> >>> >> _______________________________________________
> >>> >> OvmsDev mailing list
> >>> >> OvmsDev at lists.openvehicles.com
> >>> >> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> >>> >>
> >>> > _______________________________________________
> >>> > OvmsDev mailing list
> >>> > OvmsDev at lists.openvehicles.com
> >>> > http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> >>>
> >>> _______________________________________________
> >>> OvmsDev mailing list
> >>> OvmsDev at lists.openvehicles.com
> >>> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> >>>  
> >>>  
> >>>
> >>> _______________________________________________
> >>> OvmsDev mailing list
> >>> OvmsDev at lists.openvehicles.com
> >>> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> >>>
> >>>  
> >>> --
> >>> Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
> >>> Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
> >>> _______________________________________________ OvmsDev mailing list OvmsDev at lists.openvehicles.com http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> >>>
> >>> _______________________________________________
> >>> OvmsDev mailing list
> >>> OvmsDev at lists.openvehicles.com
> >>> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> >> --
> >> Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
> >> Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
> >>
> >> _______________________________________________
> >> OvmsDev mailing list
> >> OvmsDev at lists.openvehicles.com
> >> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> >>
> > _______________________________________________
> > OvmsDev mailing list
> > OvmsDev at lists.openvehicles.com
> > http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> 
> --
> Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
> Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
> 
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.openvehicles.com
> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.openvehicles.com
> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> _______________________________________________ OvmsDev mailing list OvmsDev at lists.openvehicles.com http://lists.openvehicles.com/mailman/listinfo/ovmsdev
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.openvehicles.com
> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20191105/5b6e803e/attachment.htm>


More information about the OvmsDev mailing list