[Ovmsdev] OVMS Poller module/singleton
Michael Balzer
dexter at expeedo.de
Wed Jan 29 03:12:45 HKT 2025
Chris,
>> The best option to capture anything going on with the bus over the
>> night is activating an unfiltered can log to the SD card.
> Do you mean setting the global log level to verbose?
No, I mean activating a CAN logger. You can simply start one on the
monitor channel, which outputs the CAN log to the system log:
OVMS# log level verbose canlog-monitor
OVMS# can log start monitor crtd
For more info on CAN logging, see the user guide:
https://docs.openvehicles.com/en/latest/crtd/can_logging.html
I've now added output of the TX queue fill level to the CAN status
outputs, that should help identifying the effect. Hint: you can use "git
pull --rebase --autostash" to merge this with your local changes.
On my UpMiiGo (which switches off the bus), the ESP32CAN most of the
time recognizes an immediate failure for a TX with the vehicle being
off. That means the TX buffer (in the controller) gets cleared
immediately, with an immediate "TX_Fail" result for the frame. Ideally
that would be the case always while the bus is off.
But the ESP32CAN controller sometimes tries to send the frame, waiting
for an ack, repeating the transmission and then ending up in the frame
being stuck in the TX buffer. Then the TX queue (software) gets filled
with the status ping request frame from there, up to the 30 frames
capacity of the TX queue, then counting TX overflows.
This continues until the ESP32CAN, due to unknown reasons, thinks it
could send the frame. The TX queue then gets flushed immediately, with
the frames appearing as being sent successfully (although there is no
ECU active, the bus is still off).
After the queue has been cleared, this loop starts over.
So it may happen, that the TX queue gets filled, and the ESP32CAN thinks
it can send frames, even while the bus is shut off.
Reading the Leaf code, I don't see any regular status ping polling, but
it may still be, the Leaf queued some TX packets just before switching
off the vehicle. Those would stick in the queue until the ESP32CAN
enters the state described above, so actually tries to send the frames
queued.
You should be able to determine if that's the case from the TX fill
level being logged & displayed in the status output.
Regards,
Michael
Am 28.01.25 um 00:20 schrieb Chris Box:
>
> On 2025-01-27 21:50, Michael Balzer via OvmsDev wrote:
>
>>> 0x8048d9 was logged twice last night while parked and locked, with
>>> nothing going on
>>
>> So please verify there really was nothing going on. Maybe you didn't
>> see the vehicle was actually active due to reduced log levels or
>> missing log entries in the leaf code?
> Logging to SD card was globally at info level, except with debug for
> can, esp32can, mcp2515 & events. Here's all I saw:
>
> 2025-01-26 19:56:25.997 GMT I (92702057) housekeeping: 2025-01-26
> 19:56:25 GMT (RAM: 8b=79720-82596 32b=12560 SPI=3263128-3285676)
> 2025-01-26 20:01:25.997 GMT I (93002057) housekeeping: 2025-01-26
> 20:01:25 GMT (RAM: 8b=79720-82596 32b=12560 SPI=3263128-3285644)
> 2025-01-26 20:03:57.337 GMT E (93153387) can: can1: intr=4800273
> rxpkt=4799065 txpkt=900 errflags=0x8048d9 rxerr=0 txerr=128 rxinval=0
> rxovr=5 txovr=0 txdelay=51 txfail=281 wdgreset=0 errreset=0
> 2025-01-26 20:03:58.337 GMT E (93154387) can: can1: intr=4800319
> rxpkt=4799065 txpkt=901 errflags=0x8048d9 rxerr=0 txerr=135 rxinval=0
> rxovr=5 txovr=0 txdelay=51 txfail=282 wdgreset=0 errreset=0
> 2025-01-26 20:06:05.337 GMT E (93281387) can: can1: intr=4800334
> rxpkt=4799065 txpkt=902 errflags=0x8048d9 rxerr=0 txerr=134 rxinval=0
> rxovr=5 txovr=0 txdelay=51 txfail=289 wdgreset=0 errreset=0
> 2025-01-26 20:06:26.007 GMT I (93302057) housekeeping: 2025-01-26
> 20:06:25 GMT (RAM: 8b=79720-82596 32b=12560 SPI=3263128-3285676)
> 2025-01-26 20:11:25.997 GMT I (93602057) housekeeping: 2025-01-26
> 20:11:25 GMT (RAM: 8b=79720-82596 32b=12560 SPI=3263128-3285612)
>
> 2025-01-26 23:16:26.017 GMT I (104702057) housekeeping: 2025-01-26
> 23:16:25 GMT (RAM: 8b=79720-82596 32b=12560 SPI=3263128-3285488)
> 2025-01-26 23:21:26.017 GMT I (105002057) housekeeping: 2025-01-26
> 23:21:25 GMT (RAM: 8b=79720-82596 32b=12560 SPI=3263128-3285456)
> 2025-01-26 23:23:04.347 GMT E (105100387) can: can1: intr=4801533
> rxpkt=4799065 txpkt=903 errflags=0x8048d9 rxerr=0 txerr=131 rxinval=0
> rxovr=5 txovr=0 txdelay=51 txfail=888 wdgreset=0 errreset=0
> 2025-01-26 23:26:26.017 GMT I (105302057) housekeeping: 2025-01-26
> 23:26:25 GMT (RAM: 8b=79720-82596 32b=12560 SPI=3263128-3285488)
> 2025-01-26 23:31:26.017 GMT I (105602057) housekeeping: 2025-01-26
> 23:31:25 GMT (RAM: 8b=79720-82596 32b=12560 SPI=3263128-3285456)
>
>>
>> The best option to capture anything going on with the bus over the
>> night is activating an unfiltered can log to the SD card.
> Do you mean setting the global log level to verbose?
>> The normal behaviour of a parked car is doing 12V battery maintenance
>> every few hours, i.e. topping up the 12V battery from the main
>> battery. That will normally also cause a limited CAN wakeup of the
>> ECUs taking part in that process.
> With the MQTT metrics I observe charging of 12V ceased at 18:40. The
> batterythen went into gradual decline starting at 12.8V until it
> reached 12.4V the next morning.
>> Another option is some plugin or script doing a wakeup to query values.
> The only activity I have is an MQTT idle update interval of 10
> minutes. Overnight this just sends things like free memory, 12V
> voltage and signal strength.
>> As you don't see any issues yet, proceed with both buses active to
>> see if the new timing solved that.
> Both buses now set to active.
>
> Thanks
> Chris
--
Michael Balzer * Am Rahmen 5 * D-58313 Herdecke
Fon 02330 9104094 * Handy 0176 20698926
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20250128/6cf2d748/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 203 bytes
Desc: OpenPGP digital signature
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20250128/6cf2d748/attachment.sig>
More information about the OvmsDev
mailing list