[SOLVED] Question about how createTimer works

Which “error” do you mean?

There’s no error there. You write that WARN message yourself from your own timer code.
It is to be expected that your handle variable officeLightTimer is pointing at your timer (i.e. not null) while your timer is running, while your timer is executing, and indeed for ever after. Unless and until you have code that sets it to null again.
Maybe you are thinking it somehow automatically gets set null after the timer triggers - it doesn’t. It’s just a variable, completely under your control.

This message, from many hours later, is usually about some kind of UI incident. A tablet or browser has been disconnected, or similar.