Monitoring von APC USVs per LAN mit FHEM?

Begonnen von Burny4600, 16 Februar 2021, 19:04:23

Vorheriges Thema - Nächstes Thema

Burny4600

Ich habe vor alle USVs die mit LAN Erweiterung installiert sind mit FHEM zu überwachen.
Per NUT mit USB Verbindung gibt es Möglichkeiten.
Hat jemand schon Anbindungen per NUT und LAN ausgeführt?
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT

sledge

Hi,

solange es nicht unbedingt mit NUT sein muss (wobei ich das auch schonmal am Start hatte, jetzt aber auf APCUPSD umgestiegen bin).

An meinem Server hängt die APC USV, auf dem Rechner selber läuft apcupsd - die Installation ist nicht sonderlich aufwändig und beschränkt sich auf das debian-bekannte apt-get install apcupsd und im Anschluss daran an einfaches Editieren des Config-Files.

Unter FHEM verwende ich erfolgreich das o.g. Modul APCUPSD.

Klappt einwandfrei.

Hier mal ein List des Devices unter FHEM, damit Du einen Eindruck der verfügbaren Informationen bekommst:

Internals:
   BATTDATE   2010-08-22
   DEF        60 192.168.0.26
   FUUID      5e5fa377-f33f-6eb5-b3aa-248d4e07ce6329c7
   HOST       192.168.0.26:3551
   INTERVAL   60
   LOWBATT    20
   MODEL      Back-UPS BR  800
   NAME       usv
   NR         316
   SERIALNO   5B1034T45982
   STATE      ONLINE
   TYPE       APCUPSD
   READINGS:
     2021-02-16 20:07:58   battery         ok
     2021-02-16 20:07:58   battv           27.3
     2021-02-16 20:07:58   bcharge         100
     2021-02-16 20:07:58   lastxfer        Low line voltage
     2021-02-16 20:07:58   linev           228
     2021-02-16 20:07:58   loadpct         20
     2021-02-16 20:07:58   outputv         230
     2021-02-16 20:07:58   state           ONLINE
     2021-02-16 20:07:58   temperature     29.2
     2021-02-16 20:07:58   timeleft        40.1
   helper:
     ALARMDEL   30 Seconds
     APC        001,046,1102
     BATTDATE   2010-08-22
     BATTV      27.3 Volts
     BCHARGE    100.0 Percent
     CABLE      USB Cable
     CUMONBATT  1291 Seconds
     DATE       2021-02-16 20:06:58 +0100
     DRIVER     USB UPS Driver
     DSHUTD     0 Seconds
     DWAKE      0 Seconds
     END APC    2021-02-16 20:07:58 +0100
     FIRMWARE   9.o5 .I USB FW:o5
     HITRANS    264.0 Volts
     HOSTNAME   hal
     ITEMP      29.2 C
     LASTXFER   Low line voltage
     LINEFREQ   50.0 Hz
     LINEV      228.0 Volts
     LOADPCT    20.0 Percent
     LOTRANS    194.0 Volts
     MANDATE    2010-08-22
     MAXTIME    0 Seconds
     MBATTCHG   5 Percent
     MINTIMEL   3 Minutes
     MODEL      Back-UPS BR  800
     NOMBATTV   24.0 Volts
     NOMINV     230 Volts
     NOMOUTV    230 Volts
     NOMPOWER   540 Watts
     NUMXFERS   35
     OUTPUTV    230.0 Volts
     RETPCT     0.0 Percent
     SELFTEST   NO
     SENSE      Medium
     SERIALNO   5B1034T45982
     STARTTIME  2020-03-09 09:28:54 +0100
     STATFLAG   0x05000008
     STATUS     ONLINE
     STESTI     None
     TIMELEFT   40.1 Minutes
     TONBATT    0 Seconds
     UPSMODE    Stand Alone
     UPSNAME    APC850
     VERSION    3.14.14 (31 May 2016) debian
     XOFFBATT   2021-02-07 15:33:31 +0100
     XONBATT    2021-02-07 15:33:28 +0100
Attributes:
   asReadings BATTV,BCHARGE,LINEV,LOADPCT,OUTPUTV,TIMELEFT,LASTXFER
   event-on-change-reading .*
   room       technik->netzwerk


Mit NUT ging es vergleichbar einfach - hatte ich seinerzeit über mein Thecus NAS so in FHEM integriert.

Gruß, Tom
FHEM: debian Intel-NUC / 25 x MAX!, 15 x HM-bidcos, MQTT, 3 x 1wire, 20 x Shelly, 20 x Tasmota, 12 x Yeelight, Opentherm-GW, Espeasy, alexa-fhem, kodi, unifi, musiccast, ...

Burny4600

Und was genau hast du für die LAN Anbindungen angepasst.
Für USB Anbindungen für NUT oder APCUPSD findet man genug Information wie man die Konfiguration auf der Konsole ausführt.

Für eine LAN Anbindung fand ich nur ungenügende Information, um eine funktionsfähige Serverkonfiguration auszuführen.

Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT

Frank_Huber

Hi,

Ich betreibe eine APC USV direkt im LAN.

Die Konfig dazu ist einfach:

UPSCABLE ether
UPSTYPE pcnet
DEVICE 192.168.12.241:apc:admin user phrase


in FHEM:
defmod APC_USV APCUPSD 30 127.0.0.1:3551
attr APC_USV asReadings BATTV,BCHARGE,ITEMP,NOMPOWER,LINEV,LOADPCT,MODEL,OUTPUTV,TIMELEFT,LASTXFER
attr APC_USV comment 1400 W / 2000 VA
attr APC_USV event-min-interval bcharge:3600,loadpct:3600,timeleft:3600
attr APC_USV stateFormat state / temperature °C / loadpct % Last / Schutzzeit ca. timeleft min
attr APC_USV userReadings Load_Watt:loadpct.* {(ReadingsVal($name,'loadpct','0') * 14)},\
Load_VA:loadpct.* {(ReadingsVal($name,'loadpct','0') * 20)}


APCUPSD und FHEM auf dem gleichen RasPi.

Burny4600

Ich denke, dass hier der Fehler liegt.
apc:admin user phrase
DEVICE 192.168.12.241:apc:admin user phrase
IP Adresse ist klar, und  phrase muss mindesten 15 Zeichen haben ist auch klar.
apc ist das immer apc mit der AP961x LAN Karte?
admin und user. Da dürfte ich den Fehler haben. Was bezeichnet diese Devinitionen?
Entspricht admin dem Benutzer administrator und user dem Benutzer device?
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT

Frank_Huber

#5
Ich hab da auch etwas meine Probleme gehabt.
"admin user phrase" ist aber wohl das Standart-Passwort
also Benutzer "apc" und passwort "admin user phrase"
damit funktioniert es bei mir.

Das ist nicht der gleiche User wie der Web-Login!
https://www.apc.com/us/en/faqs/FA159659/

Burny4600

Hast du alles mit der Auslieferungseinstellung in Betrieb?
Die Webbenutzer der AP961x LAN Karte haben damit nichts zu tun. Das ist mir jetzt klar.
Der Benutzer bleibt immer apc?
Die Phrase wird unter UPS => PowerChute => configuration => Authentication Phrase:
eingegeben und muss mindestens 15 Zeichen enthalten. Diese Phrase wird dann in der in der apcupsd.conf eingetragen.

Ich kann es drehen wie ich will. Das funktioniert nicht.
root@ccs-ht-rasp02:/home/pi# apcaccess

APC      : 001,018,0447
DATE     : 2021-02-17 17:01:22 +0100
HOSTNAME : ccs-ht-rasp02
VERSION  : 3.14.14 (31 May 2016) debian
UPSNAME  : SMART1500
CABLE    : Ethernet Link
DRIVER   : PCNET UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2021-02-17 17:01:14 +0100
STATUS   :
MBATTCHG : 5 Percent
MINTIMEL : 10 Minutes
MAXTIME  : 0 Seconds
NUMXFERS : 0
TONBATT  : 0 Seconds
CUMONBATT: 0 Seconds
XOFFBATT : N/A
STATFLAG : 0x05000000
END APC  : 2021-02-17 17:01:22 +0100


root@ccs-ht-rasp02:/home/pi# apctest

2021-02-17 17:15:53 apctest 3.14.14 (31 May 2016) debian
Checking configuration ...
sharenet.type = Network & ShareUPS Disabled
cable.type = Ethernet Link
mode.type = PCNET UPS Driver
Setting up the port ...
apctest FATAL ERROR in pcnet.c at line 669
Cannot bind socket (98)
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT

Frank_Huber

Der Benutzername "apc" wird wohl vom. Web administrator übernommen.
Das Passwort separat eingestellt.
Ist schon knapp 1,5 Jahre her bei mir. Hans nicht mehr ganz genau im Kopf,
Aber denke so war es.
Versuch es mal so.

Burny4600

Soweit ich es verstanden habe, ist zumindest bei den LAN Karten AP961x immer der User apc.
Es ist für die Konfiguration nur die IP-Adresse und die Phrase am Pi notwendig, und bei der Konfiguration an der AP961x LAN Karte ist nur die Phrase zu definieren, und anschließend muss noch ein Reboot der AP961x LAN Karte ausgeführt werden.
Und das sollte es schon sein. Leider nicht.
Vielleicht ist in meiner Config Datei apcupsd.conf noch etwas falsch.
UPSNAME SMART1500
UPSCABLE ether
UPSTYPE pcnet
DEVICE 192.168.17.5:apc:admin user phrase
LOCKFILE /var/lock
SCRIPTDIR /etc/apcupsd
PWRFAILDIR /etc/apcupsd
NOLOGINDIR /etc
ONBATTERYDELAY 6
BATTERYLEVEL 5
MINUTES 10
TIMEOUT 0
ANNOY 300
ANNOYDELAY 60
NOLOGON disable
KILLDELAY 0
NETSERVER on
NISIP 127.0.0.1
NISPORT 3551
EVENTSFILE /var/log/apcupsd.events
EVENTSFILEMAX 10
UPSCLASS standalone
UPSMODE disable
STATTIME 0
STATFILE /var/log/apcupsd.status
LOGSTATS off
DATATIME 0

Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT

Frank_Huber

nach dem Ändern der config musst den apcupsd neu starten,
machst das auch?

Burny4600

Nach Änderungen im Config wird die Software per
service apcupsd stop angehalten und anschließend wieder neu gestartet.service apcupsd start
Für den Test mit apctest muss vorher service apcupsd stop angehalten werden.
Das Event apcupsd.events gibt auch nicht gerade viel her.
2021-02-18 14:15:12 +0100  apcupsd 3.14.14 (31 May 2016) debian startup succeeded
2021-02-18 14:16:07 +0100  Communications with UPS lost.
2021-02-18 14:16:20 +0100  apcupsd exiting, signal 15
2021-02-18 14:16:20 +0100  apcupsd shutdown succeeded
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT

Frank_Huber

klingt für mich als ob die USV nicht erreichbar ist.

Burny4600

Per Ping ist sie erreichbar.
Ich kann mir nur einen Konfigurationsfehler vorstellen.
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT

Frank_Huber

Ich hab mal meine Konfig bereinigt (Kommentarzeilen weg) und das einzige das auffällt ist dass dir die POLLTIME fehlt.
POLLTIME 15

Burny4600

Ich habe nochmals alles sauber aufgesetzt und die AP961x Netzwerkkarte auf Werkszustand zurückgesetzt.
Wenn die Netzwerkkarte gelöscht wurde, und per Konsole auf die Netzwerkkarte den Zugriff möchte, bekommt man die Aufforderung den Administrator festzulegen.
Dabei wird der Username und auch das Password für den Administrator verlangt zu definieren. Zusätzlich ist als Dritte Aufforderung die Eingabe der Phrase gefordert.
Damit wäre so weit die Netzwerkkarte für die APCUSBD vorbereitet.
Am Pi habe ich nochmals alles frisch aufgesetzt. Nur komme ich trotzdem nicht weiter und stehe beim gleichen Problem an.

@Frank_Huber
ZitatPOLLTIME 15
Diesen Parameter habe ich auch ergänzt.

apcaccess
APC      : 001,018,0446
DATE     : 2021-02-23 16:42:53 +0100
HOSTNAME : ccs-ht-rasp02
VERSION  : 3.14.14 (31 May 2016) debian
UPSNAME  : UPS_1500
CABLE    : Ethernet Link
DRIVER   : PCNET UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2021-02-23 16:42:49 +0100
STATUS   :
MBATTCHG : 5 Percent
MINTIMEL : 10 Minutes
MAXTIME  : 0 Seconds
NUMXFERS : 0
TONBATT  : 0 Seconds
CUMONBATT: 0 Seconds
XOFFBATT : N/A
STATFLAG : 0x05000000
END APC  : 2021-02-23 16:42:53 +0100

und kurze Zeit später kommt noch die Meldung des Dienstes
Broadcast message from root@ccs-ht-rasp02 (somewhere) (Tue Feb 23 16:43:44 2021
Warning communications lost with UPS UPS_1500


Wenn ich nun den Dienst anhalte apcupsd stop, und den apctest ausführe, bekomme ich immer noch die gleiche Meldung als ob von APC noch etwas laufen würde, was aber definitiv nicht der Fall ist.
[b]root@ccs-ht-rasp02:/home/pi# service apcupsd stop
root@ccs-ht-rasp02:/home/pi# apctest[/b]


2021-02-23 16:49:26 apctest 3.14.14 (31 May 2016) debian
Checking configuration ...
sharenet.type = Network & ShareUPS Disabled
cable.type = Ethernet Link
mode.type = PCNET UPS Driver
Setting up the port ...
apctest FATAL ERROR in apctest.c at line 321
Unable to open UPS device.
  If apcupsd or apctest is already running,
  please stop it and run this program again.
apctest error termination completed
[b]root@ccs-ht-rasp02:/home/pi#[/b]

netstat -lp
Aktive Internetverbindungen (Nur Server)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:7182            0.0.0.0:*               LISTEN      697/perl
tcp        0      0 0.0.0.0:8083            0.0.0.0:*               LISTEN      697/perl
tcp        0      0 0.0.0.0:8084            0.0.0.0:*               LISTEN      697/perl
tcp        0      0 0.0.0.0:8085            0.0.0.0:*               LISTEN      697/perl
tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN      685/sshd
tcp        0      0 localhost:42519         0.0.0.0:*               LISTEN      697/perl
tcp        0      0 0.0.0.0:microsoft-ds    0.0.0.0:*               LISTEN      692/smbd
tcp        0      0 0.0.0.0:7072            0.0.0.0:*               LISTEN      697/perl
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN      685/sshd
tcp6       0      0 [::]:microsoft-ds       [::]:*                  LISTEN      692/smbd
udp        0      0 0.0.0.0:mdns            0.0.0.0:*                           424/avahi-daemon: r
udp        0      0 0.0.0.0:55869           0.0.0.0:*                           424/avahi-daemon: r
udp        0      0 0.0.0.0:bootpc          0.0.0.0:*                           602/dhcpcd
udp        0      0 192.168.17.2:netbios-ns 0.0.0.0:*                           607/nmbd
udp        0      0 ccs-ht-rasp0:netbios-ns 0.0.0.0:*                           607/nmbd
udp        0      0 0.0.0.0:netbios-ns      0.0.0.0:*                           607/nmbd
udp        0      0 192.168.17.:netbios-dgm 0.0.0.0:*                           607/nmbd
udp        0      0 ccs-ht-rasp:netbios-dgm 0.0.0.0:*                           607/nmbd
udp        0      0 0.0.0.0:netbios-dgm     0.0.0.0:*                           607/nmbd
udp6       0      0 [::]:46300              [::]:*                              424/avahi-daemon: r
udp6       0      0 [::]:mdns               [::]:*                              424/avahi-daemon: r
udp6       0      0 [::]:dhcpv6-client      [::]:*                              602/dhcpcd
raw6       0      0 [::]:ipv6-icmp          [::]:*                  7           602/dhcpcd
Aktive Sockets in der UNIX-Domäne (Nur Server)
Proto RefCnt Flags       Type       State         I-Node   PID/Program name     Pfad
unix  2      [ ACC ]     STREAM     HÖRT         16978    1123/systemd         /run/user/1000/systemd/private
unix  2      [ ACC ]     STREAM     HÖRT         16983    1123/systemd         /run/user/1000/gnupg/S.gpg-agent.extra
unix  2      [ ACC ]     STREAM     HÖRT         16984    1123/systemd         /run/user/1000/gnupg/S.dirmngr
unix  2      [ ACC ]     STREAM     HÖRT         14689    602/dhcpcd           /var/run/dhcpcd.sock
unix  2      [ ACC ]     STREAM     HÖRT         16985    1123/systemd         /run/user/1000/gnupg/S.gpg-agent
unix  2      [ ACC ]     STREAM     HÖRT         14690    602/dhcpcd           /var/run/dhcpcd.unpriv.sock
unix  2      [ ACC ]     STREAM     HÖRT         16986    1123/systemd         /run/user/1000/gnupg/S.gpg-agent.browser
unix  2      [ ACC ]     STREAM     HÖRT         16987    1123/systemd         /run/user/1000/bus
unix  2      [ ACC ]     STREAM     HÖRT         16988    1123/systemd         /run/user/1000/gnupg/S.gpg-agent.ssh
unix  2      [ ACC ]     STREAM     HÖRT         6735     1/init               /run/systemd/private
unix  2      [ ACC ]     SEQPAKET   HÖRT         6743     1/init               /run/udev/control
unix  2      [ ACC ]     STREAM     HÖRT         6745     1/init               /run/systemd/journal/stdout
unix  2      [ ACC ]     STREAM     HÖRT         6766     1/init               /run/systemd/fsck.progress
unix  2      [ ACC ]     STREAM     HÖRT         12282    607/nmbd             /var/run/samba/nmbd/unexpected
unix  2      [ ACC ]     STREAM     HÖRT         12902    1/init               /var/run/dbus/system_bus_socket
unix  2      [ ACC ]     STREAM     HÖRT         12905    1/init               /run/avahi-daemon/socket
unix  2      [ ACC ]     STREAM     HÖRT         12907    1/init               /run/thd.socket

Kann es sein das es etwas mit TLS zu tun hat?
Im Netzwerk (Server 2016 und Win10, und auch auf den Pi Debian) ist TLS1.3 Voraussetzung.
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT