taskManager.scheduleOnce(10000, [] {startFilter();}); // schedule in 10sec works
and
taskManager.scheduleOnce(198000, [] {startFilter();}); // schedule in 3min18sec doesn't work, startFilter is executed immediately
The border is between 196607 millis (works) and 196608 millis (doesn't work).
what am I doing wrong here? I'm aware of TIME_SECONDS but I have to time fractions of seconds. Hope I have just some misconceptions.
I could make a 32 bit schedule info struct available as a compile option. For example setting something like TASKMGR_32BIT_SCHEDULE as a commented out define in taskManager.h. So a simple change to that file would modify your scheduling at the expense of slightly higher ram use. Albeit only about 20 or 30 bytes for most cases. This would allow more than a day of millisecond scheduling.