Paul,
The Teensy AVR print class has a bug in the printNumberHex(unsigned long) function. This shows up when you print uint32_t variables.
If you print a number that is 8 hex digits, you won't get the proper output and it also looks like there is a buffer/stack overflow as well.
Anyway, it looks...