uint64_t value creating from 8 bytes

You are converting a number from big endian to little endian, take a look at the GCC builtin function for this:

uint64_t number = 1;
number = __builtin_bswap64(number);

Byte swapping magic! :slight_smile: