Aller au contenu
googleg

[UPS] Faire dialoguer un NAS QNAP avec un UPS Infosec Hero Touch 400

Messages recommandés

Salut à tous,

Il m'aura fallu quelques jours pour arriver à faire dialoguer mon Qnap TS-131 avec un UPS de la marque Infosec, modèle Hero Touch 400. Pour ceux que celà intéresse, voici la marche à suivre:

Voici comment l'UPS est vu par le système:

[78274.848682] usb 2-1.3: new low-speed USB device number 4 using xhci-hcd
[78274.871733] usb 2-1.3: skipped 1 descriptor after interface
[78274.872158] usb 2-1.3: default language 0x0409
[78274.873995] usb 2-1.3: udev 4, busnum 2, minor = 131
[78274.874003] usb 2-1.3: New USB device found, idVendor=0665, idProduct=5161
[78274.880934] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[78274.888265] usb 2-1.3: Product: USB to Serial
[78274.892648] usb 2-1.3: Manufacturer: INNO TECH
[78274.897356] usb 2-1.3: usb_probe_device
[78274.897369] usb 2-1.3: configuration #1 chosen from 1 choice
[78274.898402] usb 2-1.3: Successful Endpoint Configure command
[78274.901576] usb 2-1.3: adding 2-1.3:1.0 (config #1, interface 0)
[78274.902679] usbhid 2-1.3:1.0: usb_probe_interface
[78274.902694] usbhid 2-1.3:1.0: usb_probe_interface - got id
[78274.905332] usbhid 2-1.3:1.0: looking for a minor, starting at 96
[78274.905521] generic-usb 0003:0665:5161.0002: hiddev0: USB HID v1.00 Device [INNO TECH USB to Serial] on usb-xhci-hcd-1.3/input0
[78274.922744] drivers/usb/core/inode.c: creating file '004'

Pour pouvoir dialoguer avec l'UPS, il faut installer le driver NUT nutdtv_qx  Pour ce faire le plus simple est d'installer le package entware nommé nut-driver-nutdrv_qx, et d'utiliser les paramètres suivants dans /etc/config/ups/ups.conf :

driver = nutdrv_qx
subdriver = cypress
protocol = voltronic-qs-hex
vendorid = 0665
productid = 5161

Il suffit ensuite de copier le binaire du driver dans /usr/local/ups/bin et de le charger via upsdrvctl pour vérifier que tout fonctionne. A ce moment l'onduleur devrait apparaitre dans la liste de périphérique externe dans l'interface d'admin du NAS.

 

Attention, la difficulté consiste à faire démarrer le driver automatiquement au boot du NAS. Pour ce faire j'ai copié le code ci-dessous dans un script placé sous /opt/etc/init.d pour qu'il soit lancé par le système initd de  entware... 

#!/bin/sh

start() {
    echo "Starting autoconfig script" > /tmp/upsdrv.debug 2>&1
    echo "Changing driver in /etc/config/ups/ups.conf" >> /tmp/upsdrv.debug 2>&1
    /sbin/setcfg qnapups driver nutdrv_qx -f /etc/config/ups/ups.conf >> /tmp/upsdrv.debug 2>&1
    echo "Done." >> /tmp/upsdrv.debug 2>&1
    echo "Loading driver..." >> /tmp/upsdrv.debug 2>&1
    /opt/lib/nut/nutdrv_qx -u admin -a qnapups -x subdriver=cypress -x protocol=voltronic-qs-hex -x vendorid=0665 -x productid=5161 -x default.battery.voltage.high=13 -x default.battery.voltage.low=11 -x runtimecal=360,100,720,50 >> /tmp/autoconfig.debug 2>&1
    echo "Done." >> /tmp/upsdrv.debug 2>&1
    echo "autoconfig script completed" >> /tmp/upsdrv.debug 2>&1
}

stop() {
    echo "Stopping upsdrv entware script" >> /tmp/upsdrv.debug
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        start
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}"
        ;;
esac

 

Avec ceci le NAS devrait être en mesure de détecter une perte d'alimentation reportée par l'onduleur et pour s'éteindre proprement. Vous pouvez également jouer avec les paramètres dans ups.conf pour faire apparaitre une charge et automomie estimée dans l'interface web.

N'hésitez pas à me poser des questions si ce tuto rapide manque de clarté.

Screenshot 2019-01-23 at 20.58.28.png

Screenshot 2019-01-23 at 21.01.44.png

Screenshot 2019-01-23 at 21.02.59.png

Partager ce message


Lien à poster
Partager sur d’autres sites

×