Plus de communication avec l’UPS sur NAS Qnap

Bonjour,
je viens de passer mon Jeedom d’une smart vers une VM sur un NAS Qnap.
J’ai pris une image iso officielle avec Debian 11 puis j’ai restaurer mes données et tout fonctionne sauf la liaison avec mon onduleur via le port USB. Les infos ne remontent pas.
J’ai vu un sujet avec cette solution mais ça ne change rien.

sudo nano /etc/apcupsd/apcupsd.conf il faut commenter la ligne DEVICE /dev/ttyS0 donc devient : #DEVICE /dev/ttyS0 puis relancer le service apcupsd : sudo service apcupsd restart

Avez-vous une autre piste ?
Merci d’avance.


Informations Jeedom

Core : 4.4.19 (master)
DNS Jeedom : oui

Plugin : Onduleur (APC)
Version : 2022-10-09 20:36:56 (stable)

Salut

Pourriez vous donner une copie d’écran de la partie commentée et de le fenêtre ssh après la commande.

salut et merci pour l’aide.
voici la copie d’écran avec la partie commentée
Capture
puis la copie une fois la commande effectuée
Capture1
et côté jeedom dans les logs cron_execution j’ai ça

0000|PHP Notice:  Undefined variable: value in /var/www/html/plugins/apcups/core/class/apcups.class.php on line 303
0001|PHP Notice:  Undefined variable: value in /var/www/html/plugins/apcups/core/class/apcups.class.php on line 304
0002|PHP Notice:  Undefined variable: value in /var/www/html/plugins/apcups/core/class/apcups.class.php on line 301
0003|PHP Notice:  Undefined variable: value in /var/www/html/plugins/apcups/core/class/apcups.class.php on line 303
0004|PHP Notice:  Undefined variable: value in /var/www/html/plugins/apcups/core/class/apcups.class.php on line 304

j’avance un peu mais pas de résolution pour l’instant.
Lorsque je raccorde mon câble USB qui vient de mon onduleur, il remonte bien sur mon NAS Qnap puisqu’il s’affiche comme un périphérique connecté sur le NAS mais quand je vais sur les périphériques de Virtualization Station rien ne s’affiche donc c’est pour cela que je n’ai rien dans Jeedom.
Que puis-je faire ?

Bonjour

Google est ton ami:

https://docs.qnap.com/operating-system/qne-network/1.0.x/fr-fr/connexion-d-un-p%C3%A9riph%C3%A9rique-usb-%C3%A0-une-machine-virtuelle-4C43AA07.html

Cordialement

Merci @echo mais j’avais déjà vu cette manip, bon je n’ai pas la même version mais je me suis adapté.
Dans tous les cas ça ne fonctionne pas mais j’ai avancé un peu car si je met une clef USB classique de stockage je la vois bien et je peux l’activer dans la VM. Par contre si je met le câble USB de mon onduleur le Qnap le détecte bien mais pas la VM donc impossible de la remonter.
Quelqu’un a t’il raccordé un câble USB d’un onduleur vers une VM ?

Bonjour jackouille

Quel est la marque et modèle de l’onduleur ?

C’est un Schneider APC Back UPS BX 2200VA

As tu configuré dans le panneau de configuration du Qnap la prise en charge de l’onduleur?

Si c’est le cas, essaye de retirer la configuration.

Edit:
Si j’ai bien compris Qnap a un programme de gestion pour les onduleurs qui va arrêter le NAS proprement. Le plugin apcups installe le daemon apcupsd qui aussi gère l’arrêt de la machine sur lequel il est installé (la VM). Je pense que tu ne peux pas avoir 2 programmes concurrents qui accèdent au port USB en même temps. Tu dois choisir quel est le programme qui va arrêter la machine Jeedom. Il est plus logique que cela soit le programme du Qnap qui arrête le NAS. Je n’ai pas ce NAS mais c’est comme cela que je le comprends. Je me trompe peut être.

Edit 2:
Tu peux essayer de gérer l’onduleur par le plugin apcupsd sur Jeedom et de paramétrer le Qnap en « network ups slave ».

merci @echo pour les conseils.
Je suis d’accord avec toi que le mieux c’est que ce soit le NAS qui gère l’arrêt en cas de coupure de courant. Mais je voudrais bien avoir quelques infos dans Jeedom sur l’état de mon onduleur.
J’ai essayé de passer le Qnap en « Esclave réseau UPS » mais dès que je branche mon câble sur l’USB il passe automatiquement « Connexion USB »

Sinon je suis en Debian 11.11 et j’avais lu quelque part qu’il fallait modifier le fichier /etc/apcupsd/apcupsd.conf et commenter la ligne DEVICE /dev/ttyS0 c’est ça il faut bien le faire ?

Mon onduleur est sur mon Proxmox:

# modbus    /dev/tty**       Serial device for use with newest SmartUPS models
#                            supporting the MODBUS protocol.
# modbus    <BLANK>          Leave the DEVICE setting blank for MODBUS over USB
#                            or set to the serial number of the UPS to ensure 
#                            that apcupsd binds to that particular unit
#                            (helpful if you have more than one USB UPS).
#
UPSTYPE usb
#DEVICE /dev/ttyS0

# POLLTIME <int>
#   Interval (in seconds) at which apcupsd polls the UPS for status. This
#   setting applies both to directly-attached UPSes (UPSTYPE apcsmart, usb, 
#   dumb) and networked UPSes (UPSTYPE net, snmp). Lowering this setting
#   will improve apcupsd's responsiveness to certain events at the cost of
#   higher CPU utilization. The default of 60 is appropriate for most
#   situations.
#POLLTIME 60
POLLTIME 10

D’après ce que j’ai vu sur les forums sur le Qnap, le programme de gestion utilisé est NUT et non apcupsd.

A ta place je ferai l’essai suivant: Qnap configuré en serveur NUT et j’utiliserai un des 2 plugins NUT sur Jeedom. Dans le plugin officiel « NUT » tu peux définir l’adresse ip du serveur NUT en l’occurrence pour toi, l’adresse ip du Qnap. Sur le 2ème plugin « NUT-Free » on n’a pas accès à la documentation.

Bonjour,
C’est au NAS de gérer la connexion à l’UPS en USB. Le plugin Jeedom se connectera au serveur ups du NAS.
L’UPS sur mon NAS:
image
Jeedom IP 210 est autorisé à se connecter au serveur ups du NAS.

Coté Jeedom j’utilise un plugin NUT qui se connecte à l’adresse IP du NAS.

Votre UPS a vraiment une autonomie de 55min ?

bonjour @echo
Bingo, j’ai installé le plugin officiel NUT et j’ai mis l’adresse ip du nas et ça fonctionne bien.
Bon avant j’avais la puissance délivrée par l’onduleur avec le plugin apcupsd et là elle n’apparait pas. Je vais faire un peu de recherche pour voir si on peut rajouter la commande.
Encore un grand merci pour ton aide.

bonjour @jpty
oui c’est ça qu’il fallait faire après avoir installé le plugin NUT.
Oui mon UPS affiche dans Jeedom 66mn d’autonomie donc j’ai mis 55mn avant d’éteindre le NAS.
Mon onduleur est un Schneider APC Back UPS BX 2200VA et dessus est raccordé toute ma domotique (box internet, switch, NAS, KNX …)
Bon je vais rechercher comment afficher la puissance car avant j’avais la puissance délivrée par l’onduleur avec le plugin apcupsd.
Merci beaucoup pour ton aide.

1 « J'aime »

Bonjour

Très bien. Les onduleurs ne fournissent pas la puissance instantanée qui est :
Puissance = tension x courant x cos phi

Dans le plugin apcupsd, la puissance est calculée approximativement:

        case 'outpower':
          log::add('apcups', 'debug', ' => apply outpower case');
          if (isset($puissance) && isset($informations['LOADPCT'])) {
            $value = $puissance * $informations['LOADPCT']['float'] / 100 * 0.66;
          } else {
            $value = 0;
          }
          break;

Puissance active = puissance apparente renseignée (2200VA pour toi) x charge x 0,66 ( coefficient arbitraire) / 100

Exemple: mon onduleur

Puissance apparente max : 1600 VA
Charge = 20 %

Puissance = 1600 x 20 x 0,66 /100 = 211,2 W

Tu peux faire la même calcul avec un virtuel. Comme dit précédemment c’est approximatif.

Ah je croyais que les onduleurs fournissaient directement la puissance instantanée sur une variable.
Donc j’ai fait comme tu m’as dit j’ai affiché Puissance = 2200 x 8 x 0,66 /100 avec charge = 8% et je retrouve bien la valeur que j’avais avant avec le plugin apcupsd
c’est super tu es vraiment au top !!!
sinon encore une question, quels sont les statuts possibles avec NUT à part « Sur secteur » c’est pour lancer des scénarios ?

Je ne connais pas les status possibles, généralement c’est fonction de la marque et du modèle d’onduleur, tu as aussi le pluging qui peut interpréter les informations reçues. Une solution c’est d’expérimenter, soit sur le panneau de commande tu peux isoler le secteur ou tu coupes le secteur sur l’onduleur et tu relèves le status au fur et mesure du temps jusqu’à l’extinction du NAS.

Ok pas de souci, merci beaucoup et bonne fin de journée.

Bonjour,

Pour la puissance et le statut, ça dépend du constructeur de l’onduleur et de ce qu’il a bien voulu mettre dans le driver UPS.
Pour voir ce qui est échangé et récupérable dans Jeedom entre la VM Jeedom et le QNAP qui gère l’onduleur, il y a cette commande:

upsc qnapups@192.168.1.xxx

xxx à remplacer par l’IP du QNAP.

Deux lignes en particulier dans le résultat de la commande chez moi:

ups.load: 6

Le mien remonte l’information de puissance. Pas besoin de la calculer.

ups.status: OL

Pour le statut, les différents états possibles et le texte affiché relevé dans le plugin officiel nut:

Etat    Description
OL      Sur secteur
OB      Sur batterie
LB      Niveau batterie faible
HB      Niveau batterie élevé
RB      Batterie à remplacer
CHRG    Batterie en charge
DISCHRG Batterie en décharge
BYPASS  En By-Pass
CAL     En calibration
OFF     Off
OVER    En surcharge
TRIM    Réduction voltage
BOOST   Boost voltage
FSD     Extinction forcée
1 « J'aime »