[Ovmsdev] Adding Pollers object to Duktape
Michael Geddes
frog at bunyip.wheelycreek.net
Wed Jul 3 14:31:19 HKT 2024
OH, and also,
What do you think of treating the OvmsPoller.Times.GetStatus() items as an
associative array - or should I treat it as a normal array?
//.ichael
On Wed, 3 Jul 2024 at 14:24, Michael Geddes <frog at bunyip.wheelycreek.net>
wrote:
> I figured I may as well add an OvmsPoller object to DukTape for Ovms.
> I'm waiting to get back to my OVMS so that I can test it.. but this is the
> documentation I have for the stuff I have coded. Thoughts on this?
>
> What do people think of OvmsPoller.Times sub-object? I've added a
> general mechanism for this.
>
> Also should I have OvmsPoller.Pause() or OvmsPoller.SetUserPaused(true) ?
> //.
>
>
> OvmsPoller
> ^^^^^^^^^^
> The Ovms Poller object represents the poller sub-system. It contains the
> following methods:
>
> - ``ispaused = OvmsPoller.GetPaused()``: Return true if the poller is
> paused by the system/user.
> - ``ispaused = OvmsPoller.GetUserPaused()``: Return true if the poller is
> paused by the user.
> - ``OvmsPoller.Pause()``: Pause the poller (adds User poller pause)
> - ``OvmsPoller.Resume()``: Remove the User poller pause.
>
> - ``tracemode = OvmsPoller.GetTrace()``: Return the current trace mode.
> - ``OvmsPoller.SetTrace(tracemode)``: Set the current trace mode.
>
> The Traces still require that 'Verbose' and 'Debug' levels (depending)
> for the 'vehicle-poll'
> debug tag are set.
> Trace modes for verbose logging can be one of:
> - ``on``: On for poller loop
> - ``txrx``: On for txrx queue (this can be hazardous for some cars)
> - ``all``: On for both poller loop and txrx queuing
> - ``off``: Logging Off
> Note that only ``on`` and ``off`` are recommended.
>
> The poller object also contains a ``Times`` property for the OBD Poll-Time
> tracing
> which contains the following methods:
> - ``isrunning = OvmsPoller.Times.GetEnabled()``: Returns true if the
> time-tracing is enabled
> - ``OvmsPoller.Times.SetEnabled(isrunning)``: Sets the enabled status of
> the timer-tracing
> - ``OvmsPoller.Times.Reset()``: Reset the timers (doesn't affect their
> current state).
> - ``OvmsPoller.Times.GetStatus()``: Gets the status of the various times.
> This returns an object
> of this format:
> .. code-block:: javascript
> return_value = {
> "items": {
> "Poll:PRI" : {
> "count_hz": 1,
> "avg_util_pm": 0.529,
> "peak_util_pm":0.652,
> "avg_time_ms": 0.052,
> "peak_time_ms":1.516
> },
> "Poll:SRX": {
> "count_hz": 1.47,
> "avg_util_pm": 0.302,
> "peak_util_pm":0.44,
> "avg_time_ms": 0.02,
> "peak_time_ms":0.573
> },
> "RxCan1[778]": {
> "count_hz": 0.74,
> "avg_util_pm": 0.427,
> "peak_util_pm":0.826,
> "avg_time_ms": 0.063,
> "peak_time_ms":1.872
> },
> "RxCan1[7a8]": {
> "count_hz": 0.35,
> "avg_util_pm": 0.183,
> "peak_util_pm":0.355,
> "avg_time_ms": 0.052,
> "peak_time_ms":1.382
> },
> "TxCan1[7b3]": {
> "count_hz": 0.07,
> "avg_util_pm": 0.005,
> "peak_util_pm":0.01,
> "avg_time_ms": 0.007,
> "peak_time_ms":0.099
> },
> "TxCan1[7c6]": {
> "count_hz": 0,
> "avg_util_pm": 0,
> "peak_util_pm":0.009,
> "avg_time_ms": 0.004,
> "peak_time_ms":0.098
> },
> "Cmd:State": {
> "count_hz": 0,
> "avg_util_pm": 0,
> "peak_util_pm":0,
> "avg_time_ms": 0.011,
> "peak_time_ms":0.109
> }
> },
>
> "tot_count_hz": 11.76,
> "tot_util_pm": 6.247,
> "tot_time_ms": 4.628
> };
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20240703/63517578/attachment.htm>
More information about the OvmsDev
mailing list