APC Smart UPS 700: Serielle Schnittstelle

(2012-07-03)

Vor einer Weile habe ich eine alte APC Smart UPS 700 bekommen, für die ich neue Batterien gekauft und eingebaut habe. Nun bin ich dazu gekommen, zu testen, ob die UPS läuft.

Wichtig zu erwähnen ist dabei, dass die APCs keine normale Belegung der Seriellen Schnittstelle benutzen. Sofern man ein 1:1- oder Nullmodemkabel anschließt, schaltet sich die APC direkt aus (und damit alle Geräte, die angeschlossen sind!).

Stattdessen liefert APC ein Kabel mit, welches die Bezeichnung 940-0024C hat. Bei diesem Kabel sind einfach RX, TX und GND anders verdrahtet, als bei normalen RS232-Schnittstellen.

Wenn man so ein Kabel gerade nicht greifbar hat, kann man sich selbst eins basteln, wie das geht steht in diesem Post von Stepan Novotill. Hierbei beachten: Der Post bezieht sich auf ein Kabel (!), nicht auf die Buchsenbelegung am Gerät.

Weiterhin wichtig: Die serielle Schnittstelle arbeitet mit 12V-Pegeln. Ein USB-to-Serial-Adapter, der nur mit 5V oder gar 3,3V klarkommt, wird hier nicht (richtig) funktionieren.

Ihr braucht also einen geeigneten seriellen Port, z.B. in eurem Rechner. Da moderne Rechner keinen seriellen Port mehr direkt auf dem Mainboard herausgeführt haben, gibts dafür meist eine Stiftleiste und einen zusätzlichen Adapter. Zu beachten ist hierbei, dass Intel eine Belegung für die Stiftleiste verwendet, die mit dem Adapter, den ich hier habe, nicht übereinstimmt. Hier empfiehlt sich also der Abgleich der Belegung, eventuell mit dem Durchgangsprüfer eines Multimeters.

Nachdem das dann alles erledigt ist, müsste das Programm apctest die APC erkennen, das sieht dann so aus:

2012-07-03 22:37:35 apctest 3.14.10 (13 September 2011) debian
Checking configuration ...
Attached to driver: apcsmart
sharenet.type = Network & ShareUPS Disabled
cable.type = Custom Cable Smart
mode.type = APC Smart UPS (any)
Setting up the port ...
Doing prep_device() ...

You are using a SMART cable type, so I'm entering SMART test mode
Hello, this is the apcupsd Cable Test program.
This part of apctest is for testing Smart UPSes.
Please select the function you want to perform.

1) Query the UPS for all known values
2) Perform a Battery Runtime Calibration
3) Abort Battery Calibration
4) Monitor Battery Calibration progress
5) Program EEPROM
6) Enter TTY mode communicating with UPS
Q) Quit

Intern sendet apctest dazu zunächst ein "Y" zur APC und wartet, ob es "SM" (für Smart Mode) zurückbekommt.

Bei mir war die Konfigurationsdatei /etc/apcupsd/apcupsd.conf wie sie in Debian ausgeliefert wird schon direkt nutzbar. Hier der Vollständigkeit halber die relevanten Parameter:

UPSCABLE smart
UPSTYPE apcsmart
DEVICE /dev/ttyS0