I can write to and read most of the registers. But, no matter what I write into the Shunt Calibration register (CURRLSBCAL_3) it read back as 4096 (decimal). It also looks like this number is not used to calculate the current because both the VSHUNT and the CURRENT read as identical numbers. VBUS which is also a 24 bit number reads correctly and corresponds to the measured input voltage. So I don't think my program has a problem reading 24 bit registers.