The Mesh SDK timer_now() function is discontinuous once the overflow counter reaches 256 (and all subsequent times where m_ovfw_counter % 256 == 0). Since the local variable is a 32-bit int, shifting by 24 results in a value of 0: https://github.com/NordicSemiconductor/nRF5-SDK-for-Mesh/blob/a165eece1b743bc68ef396bf03ba389a0bac6f11/mesh/core/src/timer.c#L138
As a result, the output of timer_now() makes a large jump once every 256 times that the tick counter overflows. We've seen this as the root cause for the advertising queue to get "stuck" and the device to stop relaying packets on the mesh.
