Tool/software:
Hi team,
we tried to modify the value Design Capacity from 2425 mAh(default) to 1000 mAh according to the "3.1 Data Memory Parameter Update Example" charter in the bq27621-G1 Technical Reference document.
It looks good from the step 1 to the step 10, the write and the read related functions do not display any error message,
but try to write the new check sum value(0xCA) to BlockDataChecksum( ) (0x60) register in the step 11, and the write function display the error message.
(1).According to the following text description in the bq27621-G1 Technical Reference document,
whether bq27621-G1 chip will check whether the new check sum value is correct, if the value is incorrect, the bq27621-G1 chip will reject the write action ?
"Write new checksum. The data is actually transferred to the Data Memory
when the correct checksum for the whole block (0x40 to 0x5F) is written to
BlockDataChecksum( ) (0x60)."
(2).the new check sum value is calculated according to the following Pseudo Code in the bq27621-G1 Technical Reference document.
we calculated the new check sum value is 0xCA, is it correct ?
temp = mod(255 - OLD_Csum - OLD_DesCap_MSB - OLD_DesCap_LSB, 256);
NEW_Csum = 255 - mod(temp + 0x04 + 0xB0, 256);
old check sum value we read : 0x33
old design capacity value we read : 0x09 and 0x79 (2425mAh)
new design capacity value : 0x03 and 0xE8 (1000mAh)
new check sum value : 0xCA
Thanks,
Mike