Hi all,

I'm pushing up my current progress on a reworking of the polling loop. I'm not doing a pull request of this as it absolutely needs to be incorporated in manageable chunks, and I understand that requires time that the devs currently don't have.

In broad strokes, this:

*  Reduces the amount of word done in the Scheduler thread, which under routeros should be kept as lite as possible. This work is done on the (beefed up) Polling thread.
*  Allows keeping separate OBD state for each polling bus (while maintaining a single thread).
*  Better compartmentalises the poller operations.
* Allows once-off poller actions that don't require blocking the thread.  (Which particularly if this is the Scheduler thread - the one that provides the 1s ticks- is not recommended)
* Effectively Extends the number of poll 'states' available without changing the base structure. 

https://github.com/frogonwheels/Open-Vehicle-Monitoring-System-3/tree/poller-changes-all

I'm still very much interested in feedback and in making this available.

In a practical sense, this is what I run on my OVMS and in particular for the OBD2ECU it is working very nicely!

//.ichael Geddes