Пишет (betment_6) wrote,
Пишет
betment_6

Categories:

APC Smart-UPS and register 0

Вот тут случайно в ru_sysadmins наткнулся на информацию об калибровке батареек на APC Smart-UPS.
Оказывается там есть некий register 0, в котором хранится значение, отражающее максимальную ёмкость батарейки. И устройство фирмы APC не увеличивает значение этого параметра даже при запуске калибровки. Поэтому при смене батарей перед их калибровкой нужно выставить значение этого регистра на максимум (FF). Для венды есть 2 утилиты - upsdiag и apc fix. Я воспользовался первой и battery runtime на моём купленном на днях с рук SUA1000I вырос в 2 раза, с 30 до 60 минут (1 комп с монитором, нагрузка ~25%). Для мониторинга под вендой я пользуюсь apcupsd есличо, под юниксами - ситуационно, apcupsd или nut.
С upsdiag под вендой было всё понятно, мышкой наклацал и всё в шоколаде.
Более интересно было сделать это на юниксах, у меня есть несколько инсталляций с разными модельками смартов: SUA750I, SC620, SU620INET, SU700INET. Последнему, кстати, 18 лет, выпущен в 1995 году.

Берём minicom (должен быть в нормальных дистрибутивах).
Делаем конфигурацию:
# minicom -s apc

Serial port setup у меня выглядел так:
    +-----------------------------------------------------------------------+
    | A -    Serial Device      : /dev/ttyS2                                |
    | B - Lockfile Location     : /var/lock                                 |
    | C -   Callin Program      :                                           |
    | D -  Callout Program      :                                           |
    | E -    Bps/Par/Bits       : 2400 8N1                                  |
    | F - Hardware Flow Control : No                                        |
    | G - Software Flow Control : No                                        |
    |                                                                       |
    |    Change which setting?                                              |
    +-----------------------------------------------------------------------+

Modem and dialing (менялись только пункты A, B, K):
 +--------------------[Modem and dialing parameter setup]---------------------+
 |                                                                            |
 | A - Init string ......... Y\0^M                                            |
 | B - Reset string ........ Y^M                                              |
 | C - Dialing prefix #1.... ATDT                                             |
 | D - Dialing suffix #1.... ^M                                               |
 | E - Dialing prefix #2.... ATDP                                             |
 | F - Dialing suffix #2.... ^M                                               |
 | G - Dialing prefix #3.... ATX1DT                                           |
 | H - Dialing suffix #3.... ;X4D^M                                           |
 | I - Connect string ...... CONNECT                                          |
 | J - No connect strings .. NO CARRIER            BUSY                       |
 |                           NO DIALTONE           VOICE                      |
 | K - Hang-up string ...... R\0^M                                            |
 | L - Dial cancel string .. ^M                                               |
 |                                                                            |
 | M - Dial time ........... 45      Q - Auto bps detect ..... No             |
 | N - Delay before redial . 2       R - Modem has DCD line .. Yes            |
 | O - Number of tries ..... 10      S - Status line shows ... DTE speed      |
 | P - DTR drop time (0=no). 1       T - Multi-line untag .... No             |
 |                                                                            |
 | Change which setting?       (Return or Esc to exit)                        |
 +----------------------------------------------------------------------------+

Screen and keyboard: включить local echo (клавиша Q)
              +-----------------[Screen and keyboard]-----------------+
              |                                                       |
              | A - Command key is         : ^A                       |
              | B - Backspace key sends    : BS                       |
              | C - Status line is         : enabled                  |
              | D - Alarm sound            : Yes                      |
              | E - Foreground Color (menu): WHITE                    |
              | F - Background Color (menu): BLACK                    |
            +-| G - Foreground Color (term): WHITE                    |
            | | H - Background Color (term): BLACK                    |
            | | I - Foreground Color (stat): WHITE                    |
            | | J - Background Color (stat): BLACK                    |
            | | K - History Buffer Size    : 2000                     |
            | | L - Macros file            : .macros                  |
            | | M - Edit Macros                                       |
            | | N - Macros enabled         : Yes                      |
            | | O - Character conversion   :                          |
            | | P - Add linefeed           : No                       |
            +-| Q - Local echo             : Yes                      |
              |  Change which setting?  (Esc to exit)                 |
              +-------------------------------------------------------+

Сохраниться, перезапустить minicom без -s:
# minicom apc
UPS скажет SM:

Welcome to minicom 2.4

OPTIONS: I18n
Compiled on Sep  5 2010, 08:31:32.
Port /dev/ttyS2

Press CTRL-A Z for help on special keys

SM

Понажимать клавишу '1' на клаве с интервалом 1-3 сек до появления ответа PROG
(должно быть всего 2 команды чтобы упс перешёл в режим PROG,
но интервал нужно подобрать опытным путём):
111111111111PROG

Теперь если сказать ему '0', он напечатает значение регистра:
068
теперь клацать '+' до посинения (до значения FF):
+69
+6A
+6B
+6C

Как наклацали - сказать R, UPS скажет BYE:
RBYE

Всё, регистр изменён. Теперь надо сделать калибровку и возрадоваться возросшему runtime.
Калибровка делается или командой из утилиты мониторинга, или жёстко - выключается софт
для мониторинга, подключается dummy load не менее 35% (лампочка например), и UPS
выключается из розетки до полной разрядки АКБ. АКБ перед калибровкой должна быть
заряжена на 100%.



UPD 2016/08: батарейки в этом SUA1000I прожили до лета 2016, когда UPS зажёг лампочту Replace Battery. Извлечённые две штуки CSB GP 12120 F2 имели Datecode 101123K12. Если я правильно читаю, то дата производства — октябрь 2010. Почти 6 лет. Что пока рекорд для батареек в моих смартах.

Tags: hardware, персональный opennet
Subscribe

  • openwrt и другие прошивки - мой device list

    Personal experience device list дешёвых говно-, эээ..., SOHO-роутеров и open-source прошивок для них. Первоначально для себя в качестве proof of…

  • some linux policy routing experience

    Есть linux multi-homed host (2 ISP, оба PPPoE, первый - "основной", второй - "запасной"), на котором я держу личный MTA для…

  • WD Green

    Осенью 2009 довелось приобрести для личных нужд жёсткий диск Model Family: Western Digital Caviar Green family Device Model: WDC WD10EADS-00P8B0…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 1 comment