Loading ...

APC Symmetra battery module | Smart-UPS & Symmetra LX / RM

Home » Spaces » Smart-UPS & Symmetra LX / RM » discussion » General » APC Symmetra battery module

APC Symmetra battery module

Discussion in Smart-UPS & Symmetra LX / RM started by Mark , 4/15/2015 5:26 PM
Login to follow, share, and participate in this space.
Not a member?Join now
Posted in: General

APC Symmetra battery module

Subscribe to RSS
  • mark2533

    We have had several SYBT5 modules show as failing in the last couple of months, we'd like to be sure they have indeed failed (they have 10 individual batteries inside) before we recycle them and replace the modules.  Does anyone know a procedure to reset the module status and force the chassis or software to recognize the batteries as fresh and retest them?

  • Terry_Kennedy

    I believe the SYBT5 is similar to the SYBT2 in that there is no intelligence in the battery module, just a sense line. If that is the case, you should be able to remove the SYBT5 (if currently installed) by sliding it out a couple of inches, waiting, and reinstalling it. The Symmetra should detect it as a new battery. The initial status should be "good", but you'll want to run a self-test to see if it will operate properly under load. If the self-test passes, you may also want to do a "pull the plug" test to make sure the battery can power the load for a reasonable amount of time. Note that this does have the possibility of dropping power to the connected devices if there is insufficient battery capacity, so bear that in mind.

    I prefer to replace all of the batteries in a UPS at the same time - since the charging bus is in parallel across all of the battery modules, it is best if they are all identical models and date code, and at a similar level of charge. Of course, that may not be financially practical in all cases.

    I would also suggest putting a sticker with the date of replacement on each battery module, since the UPS only keeps a single "battery replacement date". This way you'll be able to see how old each module is.

    I discuss some of my experiences replacing batteries (as opposed to modules) here and here. Needless to say, this isn't supported or recommended by APC.

  • mark2533

    Thanks, Terry, for your response.  Unfortunately, there is some measure of intelligence in the SYBT5 modules as far as I can discern.  Once the unit has been marked as 'failed' for a single battery (even if the other 9 are still viable), you cannot replace the batteries in the chassis and have it work.  I tested 10 good batteries, installed them in an SYBT5 module that had failed and the Symmetra UPS still tested them as bad.  I even contacted a reseller that sold 10 fresh batteries for the SYBT5 and their reply was "sorry, we haven't figured out a way to reset the module and we meant to take down the item#".  I am glad you can replace the batteries in the SYBT2 units but it appears that's not the case with SYBT5 modules.  Even APC says that it is not a user serviceable module, you have to replace the whole thing.  Guess they were losing money on people buying batteries and repairing the units themselves.  Thanks and have a good day!

  • ipicKedawinna

    Yes, SYBT5 has some type of EEPROM in it that keeps track of a few things like battery health, watt hours, etc in it. It is not serviceable by the user as you've found and even our own field engineers don't have access to do it or anything. The entire SYBT5 module is intended to be replaced as you've mentioned.

  • Terry_Kennedy

    Oh well... It is a good thing that APC has pushed more intelligence into the battery modules - in the SYBT2, if a single battery goes high-resistance it will heat up and bulge and not be detected. With a microcontroller and EEPROM in there, it can be a lot more effective at determining status and reporting it back to the UPS intelligence module.

    Not having any way to reset the failed status is unfortunate. But I expect that most of these units are sold to customers who have service agreements in place. I'm a rather unusual case as I have a pair of Symmetra RM's running in my house (I also have 2 Matrix 5000's and 4 smaller Smart-UPS as well).

    If I ever get a Symmetra LX, I'll figure out what's going on and how to reset the status.

  • mark2533

    If you ever figure how to do that, please let me and the rest of the world know.  According to what the APC folks have posted, even they don't know (or won't explain) how to reset that status when installing new, fresh batteries.  I appreciate your posts, Terry, kind regards to you and yours!   -  mark

  • aram0046

    ever figure out how to reset these date codes or any of the smart information?

  • Terry_Kennedy

    No, I haven't had any come through for service. I'd need a functioning UPS with one working battery and one bad one.

  • aduraan
    On 8/12/2015 6:24 PM, Aram said:

    ever figure out how to reset these date codes

    Remove the EEPROM from the board.

    Read the EEPROM with i.e. UP48. Save it (and do backup save). Edit the hex file at address 100090

    :10009000310030002F00320031002F0030003800D6  --> This is the original date: October 21 08 

    Change the hex to:

    :10009000310030002F00300037002F0031003500D6 --> The new date is now: October 07 15

    Save the the hex file and write to EEPROM. Place EEPROM back into socket (check orientation)

    Symmetra LX accepts this change and does not report BATTERY BAD anymore 

  • teknikl

    Does anyone know how long the modules are good for after the test date on the slip they come with?

    Does the countdown start once you mount it in a UPS or are they finite from date of production?

  • wpasquil


    We expect batteries to last 3 to 6 years from date of manufacture depending on usage and the environment they are used in. 

  • jacobw56

    How did you find a data map for the contents of the EEPROM?  I recently pulled one off of an RS 1300 and it reads fine but I can't find out how to interpret the data.

  • masterit
    This discussion is marked as answered

    Just wanted to add the following info since it determines which programmer you would need.

    the Microcontroller is Microchip PIC16C72A-20/SP http://ww1.microchip.com/downloads/en/DeviceDoc/39016B.pdf

    the EEPROM is Microchip 93C66B 4kb 16bit http://ww1.microchip.com/downloads/en/DeviceDoc/21795E.pdf

    initially i was going to use an EMP-10 as i had it on hand, however the newer micro's need an adapter which i did not have. (newer than the programmer that is)

  • masterit
    On 8/16/2018 9:39 PM, Walter said:

    How did you find a data map for the contents of the EEPROM?  I recently pulled one off of an RS 1300 and it reads fine but I can't find out how to interpret the data.

    It looks like this in my reader, (REVELPROG IS)

    it's fairly easy to see which hex locations it resides in. mine converts to ascii as you can see

  • masterit

    just in order to make this post as clear as possible.

    all the information on this subject was either in russian or chinese.

    the following is a step by step to get this working.

    1. locations 64-79 (or in hex: 0xC9-0xF4) need to be zeroed out - this is the location that all errors and issues with the pack are located.

    2. locations 50-51 (or in hex: 0xA1, 0xA3) need to be zeroed out - this is the checksum of the eeprom which gets checked to ensure the data is correct.

    3. recalculate the checksum. the checksum is calculated from 0x0-0x9F, the rest of the registers 64-79 (or in hex: 0xC9-0xF4) aren't regarded in the calculation.

    the checksum needs to be in crc16. in my softwarei had to select the previously mentions address' registers and the checksum was displayed in the bottom of my software.

    4. the calculated checksum is reversed in the registers. ex: if your checksum came out to be 0x19EB it would be entered as, EB 19.

    in my case 0xA1=EB, 0xA3=19

    as long as you calculate the checksum correctly the serial number and date can be anything you want. you know this was successful as the information populates correctly in the web interface of the symmetra.

  • jonathanm


    Thank you.  This post has been very helpful.

    Can you provide the CRC-16 Algorithm that was used for the Checksum?

    i.e. CRC-16/CCITT-FALSE, CRC-16/ARC, CRC-16/BUYPASS, more and more and more.............

    or better yet, can you please provide the data from your 0x0-0x9F registers that resulted in your CRC-16 result of "0x-19EB" and I can put it into my CRC calculator and figure out which one to use.

    The 0x0-0x9f register values (see below) from your screen capture do not seem to provide a CRC-16 result of 0x19EB when I use the CRC-16 Calculator at this link: https://crccalc.com/

    00 8a 00 9e 00 05 00 3b 00 60 00 03 00 00 00 00
    00 a0 00 0f 00 97 00 0f 00 b6 00 37 00 f4 00 2c
    00 65 00 bb 00 67 00 ae 00 1c 00 bd 00 72 00 dc
    00 d9 00 3f 00 b4 00 d2 00 7f 00 bc 00 d3 00 ba
    00 5d 00 39 00 e1 00 9d 00 0b 00 ba 00 35 00 63
    00 09 00 40 00 2c 00 f2 00 41 00 44 00 30 00 36
    00 31 00 35 00 33 00 36 00 30 00 37 00 33 00 39
    00 00 00 00 00 00 00 00 00 53 00 59 00 42 00 54
    00 35 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 31 00 31 00 2f 00 30 00 31 00 2f 00 31 00 35



  • masterit


    your programming software should calculate this automatically for you. mine makes it easy as i just need to select the registers i want it to base it's calculation on.


  • jonathanm


    Thank you so much for providing that output. 

    I can now see that the checksum required is simply the accumulation (HEX adding) of all the HEX vales in the 0x00 - 0x9f registers.

    00+8a+00+9e+00+05+........+00+09+00+40+00+2c+....+00+31+00+35 = 0x1955



  • fibrewire

    Thank you both!