USV mit serieller Schnittstelle möglich?

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Hallo zusammen!

Ich habe hier noch ein paar alte USVs (Online Xanto S700 Bj. vor 2012) mit defekten Akkus herumliegen. Diese haben nur eine serielle Schnittstelle (also kein USB oder LAN). Laut Kompatibilitätsliste wird die Xanto S700 unterstützt. Ich vermute aber, nur die Version ab Bj. 2012.

Kann man die USV einfach per USB2Serial-Interface an meine DS720+ bzw DS112 anschließen und sie wird erkannt? Oder klappt das nicht?

Ich würde ungern mir neue Akkus + das Interface kaufen und dann feststellen, dass es nicht klappt.

Jemand Erfahrung damit?

Danke schon mal...
 

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Bin mittlerweile einen Schritt weiter.

Habe einen USB-Seriell-Wandler mit FTDI-Chip erfolgreich eingebunden.

Code:
dmesg

zeigt mit das Teil jetzt als /dev/ttyUSB0 an.

Habe dann hier

Code:
/usr/syno/etc/ups/ups.conf

folgenden Eintrag editiert:

Code:
port = /dev/ttyUSB0

Trotzdem wird die USV nicht vom DSM erkannt.

Was muss denn in der o.g. Datei als Treiber eingestellt sein? Habe irgendwo eine Einbindung einer APC-USV gefunden. Dort wurde

Code:
driver = apcsmart

in der upc.conf eingetragen. Habe aber nun mal keine APC, sondern eine Online-USV.

Wer kennt sich hier aus und könnte ein wenig helfen?
 

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Bin jetzt noch einen Schritt weiter. Das Kabel war falsch verdrahtet. Es muss ein 1:1 Kabel sein und kein gekreuztes. :rolleyes:

Klappt trotzdem nicht. :(

Wenn ich den Dienst dann neu starte

Code:
cd /usr/syno/etc/rc.sysv
sudo sh ups-usb.sh restart

findet er die USV nicht:

Code:
Can't open /run/ups_state/tripplite_usb-ttyUSB0.pid: No such file or directory
Fatal error: unusable configuration
Communications with UPS lost: Can't open USB device, retrying ...

Nach dem Restart ändert sich der Port auch wieder auf "auto". Vermutlich deswegen:

Code:
Fatal error: unusable configuration

Jemand eine Idee?
 
Zuletzt bearbeitet:

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Möööp... Hat denn niemand eine USV über die serielle Schnittstelle angebunden?
 

Thonav

Benutzer
Sehr erfahren
Mitglied seit
16. Feb 2014
Beiträge
7.874
Punkte für Reaktionen
1.496
Punkte
274
Damit Du in diese Thread nicht ganz allein bist, mache ich hier mal mit. Nein, meine DS´en sind an allen 3 Wohnorten per USB verbunden. Sorry. :)
 

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Ich denke, dass es für mich einfacher wäre eine neue mit USB-Anschluss zu kaufen. Aber das Bastlerherz lässt mich versuchen die alten Dinger mit RS232 wieder in Betrieb zu nehmen. Es muss doch irgendwie gehen. Wenn ich nur den richtigen Treiber wüsste. Etvl. schreibe ich den Synology-Support man an, wenn ich hier nicht weiter komme...
 

Jagnix

Benutzer
Sehr erfahren
Mitglied seit
10. Okt 2018
Beiträge
1.126
Punkte für Reaktionen
276
Punkte
109

chris_

Benutzer
Mitglied seit
01. Aug 2011
Beiträge
16
Punkte für Reaktionen
0
Punkte
1
@Wadenbeißer Das macht aber keinen Sinn. Neu kaufen will ich nicht. Die USV funktioniert tadellos. Das schmerzt mir zu sehr.
 

Jagnix

Benutzer
Sehr erfahren
Mitglied seit
10. Okt 2018
Beiträge
1.126
Punkte für Reaktionen
276
Punkte
109
Wie wäre es mit einem USB to Seriell Adapter ?
Würde aber nicht meine Hand dafür ins Feuer legen das es klappt.
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.998
Punkte für Reaktionen
264
Punkte
373
Hallo,
wenn es eine APC USV ist so wird das mit USB to Seriell nichts. Möglich wäre ein NUT Server im Netzwerk auf Raspi o.ä. USV daran und bei der DS Netzwerk-USV wählen.

Gruß Götz
 

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Gibt es neue Erkenntnisse? Bin nämlich auch an einer Lösung interessiert?
Ich habe das Projekt irgendwann abgebrochen, weil ich nicht schnell zu einer Lösung gekommen bin. Ich bin aber so weit gekommen, dass ich einen USB2SER-Wandler erfolgreich angebunden bekommen habe. Leider wurde von der Synology die USV trotzdem nicht erkannt. Werde mich aber nochmal dran geben, wenn ich Zeit und Lust dazu bekomme.

Wenn jemand trotzdem noch Ideen hat... nur her damit.
 

chris_

Benutzer
Mitglied seit
01. Aug 2011
Beiträge
16
Punkte für Reaktionen
0
Punkte
1
Hallo,
wenn es eine APC USV ist so wird das mit USB to Seriell nichts. Möglich wäre ein NUT Server im Netzwerk auf Raspi o.ä. USV daran und bei der DS Netzwerk-USV wählen.

Gruß Götz
Ja. Ist ne APC USV. Vielleicht versuche ich das mal mit dem Raspi
 

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Ich habe es jetzt geschafft meine Online-USB mit serieller Schnittstelle per dediziertem NUT-Server auf einem RPi an die Synology-Diskstation anzubinden. Als Basis für die Lösung habe ich die Anleitung von Matthias genutzt.

Habe einen USB2SER-Wandeler mit FTDI-Chip an einen RPi2 mit RaspiOS Bullseye angeschlossen. Das Interface wurde sofort gefunden und der Teiber aktiviert. Man sieht das, wenn man folgendes auf der Konsole eingibt:

Code:
dmesg | grep FTDI

Das ergibt dann folgende Ausgabe:

usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0

Nun gibt der Treiber des NUT-Servers beim Start eine Fehlermeldung aus, dass die Rechte nicht stimmen. Das korrigiert man wie folgt:

Code:
chown nut:nut /dev/ttyUSB0

Nun muss noch die Config angepasst werden:

Code:
sudo nano /etc/nut/ups.conf

Habe dann hier recherchiert und bin zu folgendem Ergebnis gekommen:

[ups]
driver = "genericups"
port = "/dev/ttyUSB0"
desc = "Online"
pollinterval = 15
upstype = 14

Wenn eine andere USV genutzt werden soll, muss natürlich die Konfig entsprechend angepasst werden.
 

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Der obige Befehl

Code:
chown nut:nut /dev/ttyUSB0

überlebt einen Reboot nicht. Deshalb ist es sinnvoller den User "nut" in die Gruppe "dialout" hinzuzufügen:

Code:
sudo usermod -aG dialout nut

Jetzt muss ich mich nur noch damit auseinandersetzen, wie der Treiber "upsdrvctl " und der UPS-Dienst "upsd" in den Autostart kommen.

Wenn's jmd sofort weiß, nur her mit dem Wissen ;-)
 

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Eins vorab: es funzt doch nicht :-(

Aber der Reihe nach. Rebootfest macht man die Sache mit

Code:
sudo nano /etc/systemd/system/multi-user.target.wants/nut-server.service

In der Datei die Zeile mit

Code:
ExecStartPre=/bin/sleep 30

ergänzen, sodass die vollständige Datei so aussieht:

Code:
[Unit]
Description=Network UPS Tools - power devices information server
After=local-fs.target network.target nut-driver.service
# We don't Require drivers to be successfully started! This would be
# a change of behavior compared to init SysV, and could prevent from
# accessing successfully started, at least to audit a system.
Wants=nut-driver.service
Before=nut-monitor.service

[Service]
ExecStartPre=/bin/sleep 30
ExecStart=/sbin/upsd
Type=forking

[Install]
WantedBy=multi-user.target

Quelle

Problembeschreibung folgt...
 

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Kurzbeschreibung des Problems:

USV wird vom NUT-Server erkannt und es können viele Werte ausgelesen werden. Alle drei meiner Diskstations verweigern die Verbindung.

Nun die detaillierte Beschreibung:

Wenn ich wie eingangs beschrieben den genericups-Treiber nehme, erkennen die Diskstations die USV, die über den NUT-Server bereitgestellt wird. Diese fahren aber sofort herunter, weil der Status LB (LowBatterie) erkannt wird. Ich habe auch jetzt verstanden, dass der Teiber vollkommen ungeeignet für meine USV ist. Das war schonmal blöd den zu nehmen, Aber die Erkenntnis, dass grundsätzlich eine Verbindung zwischen DS und NUT zustand kommt, war dann doch aufschlussreich.

Der richtige Treiber ist blazer_ser (mit Protokoll megatec) oder noch besser nutdrv_qx (mit Protokoll Q1). Dann ergibt folgender Befehl auf der DS (!) ausgeführt

Code:
sudo upsc ups@192.168.178.110

folgendes Ergebnis:

battery.charge: 100
battery.packs: 12
battery.runtime: 2400
battery.voltage: 2.27
battery.voltage.high: 26
battery.voltage.low: 20.8
battery.voltage.nominal: 24
device.type: ups
driver.flag.ignoresab: enabled
driver.flag.norating: enabled
driver.flag.novendor: enabled
driver.name: nutdrv_qx
driver.parameter.chargetime: 43200
driver.parameter.idleload: 10
driver.parameter.offdelay: 60
driver.parameter.ondelay: 180
driver.parameter.pollfreq: 5
driver.parameter.pollinterval: 2
driver.parameter.port: /dev/ttyUSB0
driver.parameter.protocol: q1
driver.parameter.runtimecal: 240,100,720,50
driver.parameter.synchronous: no
driver.version: 2.7.4
driver.version.data: Q1 0.07
driver.version.internal: 0.28
input.frequency: 50.0
input.voltage: 241.5
input.voltage.fault: 241.5
output.voltage: 228.8
ups.beeper.status: disabled
ups.delay.shutdown: 60
ups.delay.start: 180
ups.load: 0
ups.status: OL
ups.temperature: 25.0
ups.type: online


Das sieht doch mal vielversprechend aus. Trotzdem sagt die DS, dass keine Verbindung zum USV-Server aufgebaut werden kann.

1644055949661.png

Hier meine Configs auf dem Nut-Server:

Code:
ups.conf

[ups]
        driver = nutdrv_qx
        port = "/dev/ttyUSB0"
        desc = "Online Xanto S700"
        protocol = q1
        default.battery.voltage.high = 26
        default.battery.voltage.low = 20.8
        default.battery.voltage.nominal = 24
        override.battery.voltage.nominal = 24
        override.battery.packs = 12
        norating
        novendor
        runtimecal = 240,100,720,50
        chargetime = 43200
        idleload = 10
        pollfreq = 5
        ondelay = 180
        offdelay = 60
        ignoresab

Code:
upsd.users

[monuser]
        password = secret
        upsmon slave

Code:
nut.conf

MODE=netserver

Code:
upsd.conf

LISTEN 0.0.0.0 3493

Code:
upsmon.conf

RUN_AS_USER root
MONITOR ups@localhost 1 admin secret slave

Die Datei upssched.conf habe ich bisher nicht verändert.

Und hier noch die wichtigsten conf von der DS:

nutscan-usb.h = nicht verändert


ups.conf = unverändert

Code:
pollinterval = 5

[ups]
        driver = usbhid-ups
        port = auto
        #pollonly
        #community = name
        #snmp_version = v2c
        #mibs = auto
        #secName = Synology
        #secLevel = noAuthNoPriv
        #authProtocol = MD5
        #authPassword = 111111111111
        #privProtocol = DES
        #privPassword = 222222222222

upsd.conf = unverändert

Code:
LISTEN 0.0.0.0

upsd.users = unverändert

Code:
[monuser]
                password = secret
                upsmon master

upsmon.conf (wurde wohl von der WebGUI verändert)

Code:
MONITOR ups@192.168.178.110 1 monuser secret slave

upssched.conf = unverändert

Zum Teil habe ich oben die vermeintlich unwichtigen Daten aus den Configs weggelassen. Es sind also noch ein paar Parameter mehr darin.

Sieht jemand einen Fehler in meiner Arbeit. Oder hat jemand noch ein Idee, was ich noch machen kann?

EDIT:
Wo finde ich Logs, damit ich herausbekomme, was nicht passen könnte?
 
Zuletzt bearbeitet:

Kurt-oe1kyw

Benutzer
Sehr erfahren
Mitglied seit
10. Mai 2015
Beiträge
9.139
Punkte für Reaktionen
1.777
Punkte
314
Kannst du den Haken setzen vor USV-Unterstützung aktivieren?
Weil der muss da sein.
Oder fehlt der nur weil du ihn setzt und nach Klicken auf "Übernehmen" kommt die Fehlermeldung, ich mein dein screenshotbild.
UND WICHTIG!
Sollte da bei dir am screenshot in deinem Fall nicht stehen statt derzeit "Synology-USV" der Eintrag "SNMP irgendwas.
Klick mal auf das schwarze Dreieck und probier mal mit SNMP und dann damit auf "Übernehmen" klicken.

Leider habe ich von Programmieren überhaupt keine Ahnung, aber da wo bei dir LISTEN 0.0.0.0 steht, sollte dort nicht eine IP stehen?
Ich habe meine USV über USB Verbunden für NUT am PC funktioniert es damit:

Datei liegt am PC "ups.ini":

Code:
Server address=1XX.XXX.XX.XX ip nas
Port=3493
UPS name=ups
Delay=5000
[Colors]
Clocks Color=0x00FFFF
Panel Color=0x00D4D0C8
[Appearance]
Minimize to tray=1
[Power]
Shutdown Computer=85
[Calibration]
Min Input Voltage=170
Max Input Voltage=270
Min Output Voltage=170
Max Output Voltage=270
Min Input Frequency=20
Max Input Frequency=70
Min UPS Load=0
Max UPS Load=100
Min Batt Voltage=0
Max Batt Voltage=30

Mit einem Programm (AvrLogger) auf der Synology kann ich das Auslesen:

Code:
# ------------------------------------------------------------------
# Part : -Battery-
# ------------------------------------------------------------------
      Charge                 = 100
      Charge low             = 10
      Charge warning         = 50
      Date                   = 2001/09/25
      Mfr date               = 2019/11/20
      Runtime                = 4080
      Runtime low            = 120
      Type                   = PbAc
      Voltage                = 27.3
      Voltage nominal        = 24.0
# ------------------------------------------------------------------
# Part : -Device-
# ------------------------------------------------------------------
      Mfr                    = American Power Conversion
      Model                  = Back-UPS RS 1500G
      Serial                 = 3B1506X28391
      Type                   = ups
# ------------------------------------------------------------------
# Part : -Driver-
# ------------------------------------------------------------------
      Name                   = usbhid-ups
      Parameter pollfreq     = 30
      Parameter pollinterval = 5
      Parameter port         = auto
      Version                = DSM6-2-25510-201118
      Version data           = APC HID 0.95
      Version internal       = 0.38
# ------------------------------------------------------------------
# Part : -Input-
# ------------------------------------------------------------------
      Sensitivity            = high
      Transfer high          = 294
      Transfer low           = 176
      Transfer reason        = input voltage out of range
      Voltage                = 231.0
      Voltage nominal        = 230
# ------------------------------------------------------------------
# Part : -Ups-
# ------------------------------------------------------------------
      Beeper status          = enabled
      Delay shutdown         = 20
      Firmware               = 878.L4 .I
      Firmware aux           = L4
      Load                   = 38
      Mfr                    = American Power Conversion
      Mfr date               = 2015/02/07
      Model                  = Back-UPS RS 1500G
      Productid              = 0002 [Uninterruptible Power Supply]
      Realpower nominal      = 865
      Serial                 = 3B1506X28391
      Status                 = OL
      Test result            = No test initiated
      Timer reboot           = 0
      Timer shutdown         = -1
      Vendorid               = 051D [American Power Conversion]
# ------------------------------------------------------------------
# Part : -syno-
# ------------------------------------------------------------------
      Support UPS            = yes
      UPS acl                = Hier stehen IP Adressen die Berechtigt sind die Daten für shutdown zu verwenden 192.xxx.xx.xx 192.xxx usw
      UPS enabled            = yes
      UPS mode               = usb

Wenn dir Teile daraus helfen um deinen Fehler einzugrenzen.

Hier noch das Bild wo ich glaube dass die Einstellung auf deinen 3 DS nicht stimmt, weil die Daten ja via SNMP kommen,
schalt mal um wie am Bild zu sehen in deiner DS:

usv_snmb_uebertragung.jpg
Weil bei dir steht da, meiner Meinung nach falsch, Synology USV-Server, in deinem Fall sollte da ber SNMP USV stehen mit den Werten wie v2c usw.
Probier mal.

Bei mir schaut das dann am PC so aus:
winnutclient_15okt2020.jpg
Input Frequenz und Output Voltage werden auch im "Datenstrom, siehe Codes oben" nicht übertragen, daher stehen die Zeiger hier wohl auf
0, stört nicht weiter.
Die wichtigen Anzeigen sind da und vor allem in den Settings habe ich eingestellt das unter 85% Akkuzustand der PC von windows autom Heruntergefahren wird um einen großen Verbraucher von den Batterien wegzuschalten, dadurch verlängert sich die Akkulaufzeit für die Synology extrem.
 
Zuletzt bearbeitet:

MissErfolg

Benutzer
Mitglied seit
09. Okt 2007
Beiträge
216
Punkte für Reaktionen
17
Punkte
18
Wenn ich den Haken rein mache, rödelt die DS 'ne Zeit lang herum. Dann wird gemeckert, dass keine Verbindung zustand kommt und der Haken ist wieder raus.

EDIT:
Hab's nochmal ausprobiert. Manchmal bleibt der Haken drin!!! Dann finde ich auf dem NUT-Server mit

Code:
upsc -c ups@192.168.178.110

die Verbindungen zu (in diesem Beispiel) zwei meiner Diskstations:

Init SSL without certificate database
192.168.178.201
192.168.178.204

Trotzdem bleibt die rote Fehlermeldung:

Verbindung zum Netzwerk-USV-Server nicht möglich.

Auf Basis dieser neuen Erkenntnis werde ich weitere Versuche machen. Gerne nehme ich noch Tipps entgegen.

Vor allem würde ich gerne detailliertere Logs finden. Weiß jemand wo welche zu finden sind. Das Protokollcenter ist nicht wirklich eine Hilfe. :-(
 
Zuletzt bearbeitet:

Kurt-oe1kyw

Benutzer
Sehr erfahren
Mitglied seit
10. Mai 2015
Beiträge
9.139
Punkte für Reaktionen
1.777
Punkte
314
Nochmal ich bin der Meinung bei dir darf nicht Netzwerk USV-Server stehen, sondern du musst auf deinen beiden DSen einstellen auf SNMP Server für USV und die Datenfelder dort noch eintragen.
Probier mal.

Wegen log weiß ich leider auch nicht.
Aber BigRonin wüsste dir sicher zum Weiterhelfen wegen Logs und Datenverkehr, der ist da sehr, sehr firm darin.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat