Shifting a value by more than the size of its type is UB.
This was actually causing mangled serial numbers with
optimization on using Clang 12 on Linux.
We've also decided to leave it out of the message structures since, for most uses going forward, it will not be needed.
Anyone who wants the timestamp resolution can always make the inexpensive device call to get it.