I've been recording some numbers, but they've been verified to be wrong. However they don't look random, What exactly was I doing to the old numbers?.
uint8_t * m_rawValue
// The way I recently learned was wrong
return (uint16_t)*m_rawValue;
// The correct way
uint16_t* a = (uint16_t*)m_rawValue;
return a[0];