S4C+ DSQC508​ 3HAC5393-2/XX revival

  • 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:


    1 TXD

    2 RST (prog)

    3 SS

    4 MOSI (prog)

    5 MISO (prog)

    6 SCK (prog)

    7 RXD

    8 GND

    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!

    Edited once, last by pynting ().

  • AD
  • Hello

    We did that kind of researches a few years ago, and, as far as I remember, it's not a timer question.

    The default is kept in memory and won't be erased even if the battery is replaced.

    Because the REV07 is not having the same chip than REV08/09/10, we used to flash the REV07 chip and upload programm without default in memory.

    REV08 and 09 can be flashed with the REV10 program, as the chip is the same.

    It's not possible to "transform" REV07 into REV10.

    To resume :

    REV07 can only be flashed with a programm free of default.

    REV08 and 09 can be transformed into REV10.

    REV10 and higher won't keep the default memory, and allow the replacement of battery only.

    Hope this helps :)

  • Very interesting and insightful response!

    And thanks for letting me know that the work has already been done, saves a lot of time wasted.

    I do not entirely understand what you mean by "default"? It is strange to me that that there is no sort of stored (and changeable) counter value. How else can it know how much time is left until it needs replacement?

    Do you have the binary file for the REV07 chip to reset it?

    And for others that need it, the REV10 binary as well, so that those can be replaced?

    Do you know if the MCU of the REV08+ board are pin compatible with the REV07? In that case, do you think it is feasible to do a chip swap?

    Edited once, last by pynting ().

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now