Alexander Talos
2007-Jan-21 01:08 UTC
[Nut-upsuser] APC Smartups protocol - Hidden Programming Mode
Hej! Hope nut-upsuser is an appropriate place to post additional info about the smartups protocol, please tell me if not. I got an APC Smartups 2200 (5U Rack Mount, European/230V version, 48V batteries) a couple of days ago, was very happy to find the protocol description at http://www.networkupstools.org/protocols/apcsmart.html, and started to play. At the point when everything was working fine, I pressed a couple of random keys with my minicom open and managed to completely fubar the UPS... In the end, I discovered a couple of new commands and got the UPS working again. I'd like to share my findings, so here they are. Commands (char \n meaning \n typical result \n other info) ========================================================= 1 Enter programming mode PROG Send twice with 3s delay ** warning ** Don't try this at home - your might damage your UPS when changing some parameters ** The output of the ^Z command does not change. You can leave this mode with the turn dumb ("R") command. ^Y Clear Everything Every possible alarm ** Don't do it. ** (Programming mode only) Resets everything: Voltmeter calibration, model information, region code, manufacturing date, serial no... Chances are that your UPS will become unusable. True stroy: After typing ^Y, my UPS was unhappy with the line frequency (50Hz instead of 60Hz), the voltage of both line (0V instead of 110V) and battery. Consequence: it switched itself off - and refused to be switched on again. No way to talk over the serial line, no way to fix (I didn't know how to do so anyway) the config. The solution was to hold the On-Button pressed - I jammed a wooden stick between the button and a battery after recharging the batteries with a power supply. ??? 0000, 3C00, 3C67, ... ??? Variables writeable in programming mode ====================================== 0,3,4,5: Didn't notice any effect B: Calibrate the battery voltmeter. 0 is maximum gain, correct setting for my box is FA. L: Calibrate the line voltmeter. If set to 0, the ups won't detect any input power. Correct setting for me is EA. P: Calibrate the power load measurement. b: Change model and country/region code, e.g.: Value Revision Model string (^A) 00 40.9.D SMART-UPS 450 06 50.9.A SMART-UPS 700 13 80.9.I SMART-UPS 2200 B7 91.9.I SMART-UPS 3000 XL D1 82.9.M SMART-UPS 2200 RM Note: The voltmeter in the ups depend on the correct setting of the region code. After the "Big Reset" (^Y), my European 230V SmartUPS 2200 thought it were an US Smartups 450; suddenly the battery voltage read 27V instead of 54V, the expected input voltage became 110V etc... I suspect that an overloaded converter might go undetected if the model version is incorrectly set (haven't verified that theory, for obvious reasons). m: Manufacturing date, actually arbitrary string (8 char) n: Serial number, actually arbitrary string (12 char) o: on battery output voltage. Possible values: 220, 225, 230, 240V on my model - actually works. Using car batteries ================== Btw, I'm using car batteries in my UPS. Since I couldn't find any experience report about that in google, here's mine: The SMART-UPS 2200 (European version, 110V models may be different) operates at 48V. So I connected four el cheapo batteries (36Ah) in series. They served almost five hours with 17% load on my SmartUPS 2200. That sounds good, but I have no idea of the lifetime yet. I'm a bit concerned about the different capacity of the batteries: Since the batteries are connected in series, the weakest one will be discharged the most, which in turn hurts its capacity. I'm thinking about connecting a resistor (e.g. 220 Ohm, 1W) in parallel to each battery, so that they at least get the same tension when being charged. One thing to keep in mind is that car batteries produce emit hydrogen gas, which may explode violently. That's dangerous enough by itself, but when a couple of batteries full with sulfuric acid explode together, that's real fun. Car batteries need fresh (circulating) air - and keep fire and sparks away. I agree with those who argue that car batteries are built for delivery of high currents during a short period of time, while they are not very good at delivering moderate currents for hours. But they are four or more times cheaper than gel batteries, so I don't care if their lifetime is a bit shorter. Greetings from Vienna, Alexander
Arjen de Korte
2007-Jan-21 09:45 UTC
[Nut-upsuser] APC Smartups protocol - Hidden Programming Mode
> Hope nut-upsuser is an appropriate place to post additional info about > the smartups protocol, please tell me if not.We would prefer nut-devel I think, since that's more about the development of drivers and such. [...]> Using car batteries > ==================[...]> I'm a bit concerned about the different capacity of the batteries: Since > the batteries are connected in series, the weakest one will be > discharged the most, which in turn hurts its capacity. I'm thinking > about connecting a resistor (e.g. 220 Ohm, 1W) in parallel to each > battery, so that they at least get the same tension when being charged.What do you think a car battery actually is? Six individual 2V cells connected in series. What you're essentially doing with connecting four car batteries in series, is just adding more cells in the battery string. As long as you use the same make/type/age of batteries, there is no need for equalizing with a resistor, the capacity will be practically the same. Besides wasting energy, you might prevent the charging circuit from detecting full battery state (since the charge current will never go to virtually zero). Only in *very* large installations it is worthwhile (and cost effective) to charge and monitor each cell separately to make the most out of the lifetime of them. But you'd be looking at the scale of batteries used in submarines, rather than at a home/small office UPS. Best regards, Arjen -- Eindhoven - The Netherlands Key fingerprint - 66 4E 03 2C 9D B5 CB 9B 7A FE 7E C1 EE 88 BC 57