Steve, have a look at API methods PollSetThrottling() and PollSetResponseSeparationTime(): void PollSetThrottling(uint8_t sequence_max) { m_poll_sequence_max = sequence_max; } uint8_t m_poll_sequence_max; // Polls allowed to be sent in sequence per time tick (second), default 1, 0 = no limit /** * PollSetResponseSeparationTime: configure ISO TP multi frame response timing * See: https://en.wikipedia.org/wiki/ISO_15765-2 * * @param septime * Separation Time (ST), the minimum delay time between frames. Default: 25 milliseconds * ST values up to 127 (0x7F) specify the minimum number of milliseconds to delay between frames, * while values in the range 241 (0xF1) to 249 (0xF9) specify delays increasing from * 100 to 900 microseconds. * * The configuration is kept unchanged over calls to PollSetPidList() or PollSetState(). */ The defaults are conservative & very cooperative for both parameters, but keep in mind you're not alone on the bus. Regards, Michael Am 22.12.20 um 14:34 schrieb Steve Davies:
Hi,
On the i3 I have to poll for everything - at least if I use the OBD2 port.
It seems that the poller only sends one request per second. That's how it looks in the logs.
This severely limits how many pids I can poll and basically means I might as well not bother with any of the "real time" metrics.
Is there a reason why PollerSend couldn't look through the whole poll list and poll all the entries that are due/overdue on each call? At the moment it just looks until if finds one to do and then it returns.
Or maybe if we can't take too long then say do 10 on each call?
Thanks, Steve
_______________________________________________ OvmsDev mailing list OvmsDev@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