Hi experts,
After looking into much more discussion on programming DFI to fuel gauge on forum and app notes, I have started this thread to get more clarity.
As suggested by dMax, in most discussions, I have implemented the flowchart for programming DFI as described in "Going to production with bq275xx" - slua449f (released nov 2014) which follows,
- Read and erase Instruction Flash
- Write to DFI
- Reprogram Instruction Flash
But in reference to "Updating bq275xx firmware at production " - slua541a.pdf, the flow is described as followss,
Enter ROM mode -> Erase Data flash -> Erase Instruction Flash -> Program Instruction Flash -> Program Data flash -> Exit ROM
This flow seems to be logic, since instruction flash contains the firmware, and the data flash contains the configuration, before programming data flash, instruction flash is updated. But why then DFI write flow is not that way.
Also on implementing this DFI write flow, Im facing issue of I2C hang on read instruction flash, on writing checksum. Please guide us how can we overcome this.
On checking the bqfs file generated from bqCONFIG, that has flow of,
Unseal -> Enter ROM mode -> Program IF completely -> write DFI
Since we already bricked our Fuel Gauge IC, we would like to know the reliable way for programming our golden image to bq27541-g1 gauge.
Awaiting for your support,
Dhiv
"Advance wishes for Happy New Year 2015"