You can actually somewhat infer when it occurs by watching the logs. The restoreOnStartup cannot start until some time (milliseconds) after you see “Loading model mapdb.persist” (replace mapdb.persist with the database you are using for restoreOnStartup) in openhab.log. Most of the time on my system this occurs after the .items are loaded.
I don’t recall writing something for this in particular but I’m constantly coming across posts I’ve written that I have no memory writing. It would just be a standard timer as you describe I think.
Indeed you can do a timer like that. See Design Pattern: Expire Binding Based Timers for a writeup.
![]()