Hi, I have the same issue as many, my battery unit DSQC508 3HAC5393-2/XX (07 in my case) is end of life and the counter is at 0, my revision number is below 10, so the whole unit needs to be replaced... This is really wasteful if you ask me, and I don't know what technical reason there is for this very blatant example of planned obsolescence.
I lifted the sticker on the MCU and saw that the "brain" of the board is a regular old Atmel AT90S8535. It has 512bytes of EEPROM, and my theory is that there is a counter of some sort which value is stored in EEPROM. If this is the case, one could (hopefully) with relative ease flash the EEPROM with another value, breathing new life to the board.
If the revision number of the board deals with changes in the firmware only, one could perhaps just flash the firmware of the later revision on to an earlier board?
As of yet, I have not been able to read from the chip, but there is a programming connector on the board (next to the MCU) with at least the following pins exposed:
2 RST (prog)
4 MOSI (prog)
5 MISO (prog)
6 SCK (prog)
It would be great if someone else was willing to help out with this. It could save people some money if they were able to replace the battery only by applying this fix!
If we go the "flash EEPROM only" route, the easiest would be to compare the EEPROM of a chip on a board with time left on it and an zeroed out board (my board). Then we can probably see the right address of the counter.
If we get the firmware of a later revision board, we should probably do a detailed comparison of the PCBs themselves and look for physical differences between the two boards. If there is none, one could presume that it would work flashing the new firmware onto the old board?
I do not have the board in front of me ATM, but will update the post later today with more details.
I really hope this could be a solution. If anybody has these boards and was willing to help, that would be great!