Rfxcom hs depuis Maj du 26/11/2020

ah ok…
Donc, la version de buster pourrait être en cause? c’est une piste…
Vu que j’ai tout résinstaller pour passer d’un stretch à un buster, c’est la dernière release de buster qui est passée…
Amis développeurs du paquet, ca vous parait crédible?
Merci

Bonsoir
Bon je pense que mon Jeedom ira jusqu’au bout de ce qu’il est possible d’aller.
à mon âge je ne supporte plus cette condescendance des sachants sur le forum qui n’est plus un forum d’aide mais un forum qui réprimande et qui montre l’incompétence pédagogique des sachants.

Ceci étant c’est bien la 1ere fois ou autant d’erreurs n’ont pas de réponse simple.

quel version du rfxcom ? comment la trouver, comment la réinstaller,

ou trouver les logs demandés? Non les seuls réponses c’est il faut lire, alors qu’il fut un temps ou les sachants mettaient un lien.
Non, dé…de toi et cherche.
Oui je suis en colère et ça personne ne me l’enlévera.
Moi je ne reviendrai plus sur ce forum ou je ne reconnais plus la convivialté d’autrefois
Et bon courage a ceux qui cherche encore.

3 « J'aime »

La pédagogie cher latour, ce n’est pas de donner une solution sur un plateau d’argent.
Qui est condescendant à prèsent ?
Mais passons, j’ai autre chose à faire, à mon âge (sic !), d’avoir un débat stérile avec un personnage frustré par une mise à jour qui pose problème dont je ne suis pas responsable, mais dont malheureusement je subis les foudres étant une des personnes qui tentent d’aider.

Pour en revenir à comment trouver les sujets similaire au votre:

  • trouver la petite loupe en haut de votre écran
  • cliquer et taper « unrecognizable packet »
    Les deux premiers résultats en parlent et apportent la solution (2 fois la même, qui a fonctionné pour eux)

Ou trouver les logs ? C’est la première fois que vous posez la question: dans le menu analyse > log de votre jeedom; ils sont nommé rfxcom et rfxcom_update.
Ils sont également accessibles dans la page de config du plug-in.

J’anticipe : comment mettre le log level en debug?
Dans la page de config du plugin, cadre supérieur droit.

Et enfin: vous êtes sur un forum communautaire pour y chercher et si possible trouver une solution, pas sur le service d’assistance jeedom.
Si vous êtes sans solution malgré vos recherches, n’oubliez pas que vous avez la possibilité de soumettre un ticket à l’équipe (pas nous).
Au plaisir.

2 « J'aime »

Bonsoir à tous,
je vais casser un peu la polémique. Et tout d’abord commencer mon propos par féliciter tous les développeurs qui réalisent ce type de plugin. Vu le prix que ca coute et le bénéfice que ca peut apporter, les merci et la bienveillance envers vous sont de rigueur.
Ceci étant dit, je ne suis certainement pas le seul à avoir cette ligne:

Fatal error : module 'serial' has no attribute 'VERSION'

Et a priori, personne n’a identifié de solution. Ni meme les 2 autres topics " Unrecognizable packet" ou Error: unrecognizable packet - index out of range
J’ai réinstallé maintes fois récemment les dépendances. J’ai réinstallé tout mon jeedom pour passer d’un stretch à un buster. Et j’ai toujours ce soucis sur le démon qui démarre mais s’arrête au bout de quelques secondes. Afin d’aider la communauté, je reposte ici mon contexte :

Concernant l’OS :

RETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

Concernant le hardware : Rpi PI3B
Concernant Jeedom : v4.0.61
Concernant ma gateway USB RFX : RFXtrx433E batch 4215

Coté dépendances, tout semble OK :

********************************************************
*             Installation des dépendances             *
********************************************************
Hit:1 http://archive.raspberrypi.org/debian buster InRelease
Hit:2 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:3 http://phoscon.de/apt/deconz buster InRelease
Hit:4 https://deb.nodesource.com/node_12.x buster InRelease
Reading package lists...
Skipping serial as it is not installed.
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
Reading package lists...
Building dependency tree...
Reading state information...
Package 'python3-serial' is not installed, so not removed
The following package was automatically installed and is no longer required:
raspi-gpio
Use 'sudo apt autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Reading package lists...
Building dependency tree...
Reading state information...
python3 is already the newest version (3.7.3-1).
python3-pyudev is already the newest version (0.21.0-1).
python3-requests is already the newest version (2.21.0-1).
python3-pip is already the newest version (18.1-5+rpt1).
The following package was automatically installed and is no longer required:
raspi-gpio
Use 'sudo apt autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already up-to-date: pyserial in /usr/local/lib/python3.7/dist-packages (3.5)
********************************************************
*             Installation terminée                    *
********************************************************```

Coté Démon, c’est moins le cas. Je retrouve le meme type de problème que d’autres :

[2020-11-29 14:45:43][ERROR] : Impossible de lancer le démon RFXcom, vérifiez le log rfxcmd
[2020-11-29 14:50:09][ERROR] : Attention je pense qu’il y a un soucis avec le démon que j’ai relancé plus de 3 fois consécutivement
[2020-11-29 14:50:11][INFO] : Lancement démon rfxcomd : /usr/bin/python3 /var/www/html/plugins/rfxcom/resources/rfxcomd/rfxcomd.py --device /dev/ttyUSB0 --loglevel debug --socketport 55000 --serialrate 38400 --protocol 12,13,18,20,21,22,23 --callback http://127.0.0.1:80/plugins/rfxcom/core/php/jeeRfxcom.php --apikey K17Cq0b9NERSO2rvOVLSWafrTAK86L6R --cycle 0.3 --pid /tmp/jeedom/rfxcom/deamon.pid
[2020-11-29 13:50:13][INFO] : Start rfxcomd
[2020-11-29 13:50:13][INFO] : Log level : debug
[2020-11-29 13:50:13][INFO] : Socket port : 55000
[2020-11-29 13:50:13][INFO] : Socket host : 127.0.0.1
[2020-11-29 13:50:13][INFO] : PID file : /tmp/jeedom/rfxcom/deamon.pid
[2020-11-29 13:50:13][INFO] : Device : /dev/ttyUSB0
[2020-11-29 13:50:13][INFO] : Apikey : xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
[2020-11-29 13:50:13][INFO] : Callback : http://127.0.0.1:80/plugins/rfxcom/core/php/jeeRfxcom.php
[2020-11-29 13:50:13][INFO] : Cycle : 0.3
[2020-11-29 13:50:13][INFO] : Serial rate : 38400
[2020-11-29 13:50:13][INFO] : Serial timeout : 9
[2020-11-29 13:50:13][INFO] : Protocol : 12,13,18,20,21,22,23
[2020-11-29 13:50:13][INFO] : Find device : /dev/ttyUSB0
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x01 : Interface Response Message
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x10 : Lighting1 (X10, ARC, ELRO, Waveman, EMW200, IMPULS,RisingSun, Philips, Energenie, GDR2, HQ, Oase)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x11 : Lighting2 (AC, HomeEasy EU, ANSLUT, Kambrook)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x13 : Lighting4 (PT2262)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x14 : Lighting5 ( LightwaveRF, Siemens, EMW100, BBSB, MDREMOTE,RSL2, OTIO, Livolo, RGB, Aoke relay, Eurodomest, RGB432W, Legrand,Avantek, IT, Kangtai)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x15 : Lighting6 (Blyss (AE), Cuveo)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x16 : Chime (Byron SX, Byron MP001, SelectPlus, Envivo, Alfawise)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x17 : Fan (Siemens SF01, Itho, LucciAir, SEAV,Westinghouse,Casafan,FT1211R,Novy)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x19 : Blinds1 (RollerTrol,Hasta,A-OK,Raex, Media Mount, DC)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x1C : Edisio
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x1D : Honeywell ActivLink
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x1E : FunkBus
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x1F : Hunter Fan
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x20 : Security1 (X10, KD101, Visonic, Meiantech, SA30, SA33, RM174RF)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x21 : Security2 (KeeLoq)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x28 : Camera1 (Ninja/Robocam)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x30 : Remote control and IR (ATI, Medion, PC Remote)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x40 : Thermostat1 (Digimax)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x42 : Thermostat3 (Mertik-Maxitrol G6R-H4 type)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x4E : BBQ Temperature sensors (BBQ1)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x4F : Temperature and rain sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x50 : Temperature sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x51 : Humidity sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x52 : Temperature and humidity sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x53 : Barometric sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x54 : Temperature, humidity and barometric sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x55 : Rain sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x56 : Wind sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x57 : UV sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x58 : Date/time sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x59 : Current sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x5A : Current sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x5B : Current + ENERGY sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x5C : Power sensors
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x5D : Weighting scale
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x60 : CARTELECTRONIC
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x70 : RFXsensor
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x71 : RFXMeter
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x72 : FS20 (FS20, FHT 8V, FHT80)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x76 : Weather stations (WEATHER1-WEATHER2)
[2020-11-29 13:50:13][DEBUG] : Load decoder packet type 0x77 : SOLAR1
[2020-11-29 13:50:13][DEBUG] : Writing PID 17275 to /tmp/jeedom/rfxcom/deamon.pid
[2020-11-29 13:50:13][DEBUG] : Init request module v2.21.0
[2020-11-29 13:50:13][DEBUG] : Starting new HTTP connection (1): 127.0.0.1:80
[2020-11-29 14:50:13][DEBUG] : null
[2020-11-29 13:50:13][DEBUG] : http://127.0.0.1:80 « GET /plugins/rfxcom/core/php/jeeRfxcom.php?apikey=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx HTTP/1.1 » 200 0
[2020-11-29 13:50:13][ERROR] : Fatal error : module ‹ serial › has no attribute ‹ VERSION ›
[2020-11-29 13:50:13][DEBUG] : Traceback (most recent call last):
File « /var/www/html/plugins/rfxcom/resources/rfxcomd/rfxcomd.py », line 394, in 
shared.JEEDOM_SERIAL = jeedom_serial(device=_device,rate=_serial_rate,timeout=_serial_timeout)
File « /var/www/html/plugins/rfxcom/resources/rfxcomd/jeedom/jeedom.py », line 231, in init
logging.debug(‹ Init serial module v%s › % (str(serial.VERSION),))
AttributeError: module ‹ serial › has no attribute ‹ VERSION ›
[2020-11-29 13:50:13][DEBUG] : Shutdown
[2020-11-29 13:50:13][DEBUG] : Removing PID file /tmp/jeedom/rfxcom/deamon.pid
[2020-11-29 13:50:13][DEBUG] : Exit 0

La nuit porte conseil, demain permettra surement de trouver une autre piste… Faites tourner messieurs dames…

Bonsoir,

Je suis bien d’accord : l’erreur sur l’attribut version de serial n’est pas la même que « unrecognized packet »

Pour refaire l’historique de ce que je sais très brièvement sur cette erreur: au début cette erreur était liée à l’utilisation de la « mauvaise » lib; rapidement une nouvelle version du plug-in a fait en sorte d’installer la « bonne ».
Mais pour certains c’est manifestement toujours problématique.

Tout ce que j’ai remarqué c’est que il me semble que pour beaucoup (tous ?) dans ce cas vous êtes sous buster avec python 3.7…

Je sais que ça ne va pas parler à grand monde et que ce n’est pas une solution…
Une piste est de comparer plus en détails les versions qui fonctionnent et celles qui ne fonctionnent pas.

Bonjour @latoure,

Quelques éléments de réponse ici : [RTEX] plugin-rfxcom et les boitiers RFXtrx433

akenad :slight_smile:

Salut :wink:

Bon je ne garanti rien mais en te connectant en ssh peux-tu essayer cette commande

sudo pip uninstall serial pour python 2.x
sudo pip3 uninstall serial pour python 3.x

En effet il semble exister serial et pyserial et si serial est aussi installé cela semble foutre le bronx

Ensuite installer pyserial
sudo pip install pyserial pour python 2.x
sudo pip3 install pyserial pour python 3.x.

Donner le résultat et ensuite voir pour recompiler les dépendances et voir si il y a du mieux

Hello,
Merci pour vos conseils nocturnes. Les conseils sur la lib’ serial et pyserial semblait être une bonne piste.

Malheureusement, il semble que ce soit déjà OK:


pi@raspberrypi:~ $ sudo pip uninstall serial pour python 2.x
Not uninstalling python at /usr/lib/python2.7/lib-dynload, outside environment /usr
Can't uninstall 'Python'. No files were found to uninstall.
Skipping serial as it is not installed.
Skipping 2.x as it is not installed.
Skipping pour as it is not installed.
pi@raspberrypi:~ $ sudo pip uninstall serial pour python 2.x
Not uninstalling python at /usr/lib/python2.7/lib-dynload, outside environment /usr
Can't uninstall 'Python'. No files were found to uninstall.
Skipping serial as it is not installed.
Skipping 2.x as it is not installed.
Skipping pour as it is not installed.
pi@raspberrypi:~ $ sudo pip install pyserial pour python 2.x
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: pyserial in /usr/local/lib/python2.7/dist-packages (3.5)
Collecting pour
  Downloading https://files.pythonhosted.org/packages/b7/51/498bb796ce5cf10b0ff94e7a1a0d5dedd06c80cd91f9fd59ec61bfbfcb8c/pour-0.2.1.tar.gz
Requirement already satisfied: python in /usr/lib/python2.7/lib-dynload (2.7.16)
Collecting 2.x
Could not install packages due to an EnvironmentError: 404 Client Error: Not Found for url: https://pypi.org/simple/2-x/

pi@raspberrypi:~ $ sudo pip3 install pyserial pour python 3.x
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: pyserial in /usr/local/lib/python3.7/dist-packages (3.5)
Collecting pour
  Downloading https://www.piwheels.org/simple/pour/pour-0.2.1-py3-none-any.whl
Collecting python
Could not install packages due to an EnvironmentError: 404 Client Error: Not Found for url: https://pypi.org/simple/python/

hello…
Tu as inclus commande et commentaire … (ok c’est pas clair sur le message d’origine)
sudo pip install pyserial
sudo pip3 install pyserial

PS : pour un module en python3, je vois pas l’objectif avec l’installation du package en version 2… mais bon

pas clair mouais…

Je pense que le probème pour certain est qu’il doit y avoir une autre lib (installée probablement par un autre plugin) qui défini également la class serial et qu’au runtime c’est la mauvaise qui serait chargée?

je n’explique pas trop les détails, juste une piste, je chercher dans cette direction

1 « J'aime »

Quand on sait, il n’y a pas de doute. Avec des balises code bien placées, ça passe pour tout le monde

1 « J'aime »

Peux-tu tester cette commande stp:
ca va sortir l’emplacement de ta version de serial avec les listes des attributs (et on ne devrait pas voir VERSION puisque tu as le problème)

python3 -c "import serial; print(serial.__dict__.keys()); print(serial.__file__)"

Hello,

Pour info, les bonnes commandes de Uninstall et de Install donne ca :

pi@raspberrypi:~ $ sudo pip uninstall serial
Skipping serial as it is not installed.
pi@raspberrypi:~ $ sudo pip3 uninstall serial
Skipping serial as it is not installed.
pi@raspberrypi:~ $ sudo pip install pyserial
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: pyserial in /usr/local/lib/python2.7/dist-packages (3.5)
pi@raspberrypi:~ $ sudo pip3 install pyserial
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: pyserial in /usr/local/lib/python3.7/dist-packages (3.5)

Donc a priori, c’est que j’en déduit être déjà sur les pré-requis que vous suggérez.
Concernant la commande que pour la VERSION:

pi@raspberrypi:~ $ python3 -c "import serial; print(serial.__dict__.keys()); print(serial.__file__)"
dict_keys(['__name__', '__doc__', '__package__', '__loader__', '__spec__', '__file__', '__path__'])
None

None ??? :exploding_head:
bon au moins ca reproduit le problème et là on sait que ce n’est pas un conflit avec une autre lib

edit2: je débloque, il a trouvé quelque chose mais il n’y a rien dans __file__

je suis fatigué moi et on n’est le matin… (mais je n’ai pas eu mon 2eme café)

execute ceci alors:

python3 -c "import serial; print(serial.__dict__.keys()); print(serial.__path__)"

Donc il faut pê reinstaller en forcant :

sudo pip3 install --upgrade --no-deps --force-reinstall pyserial

aaahhh autre idée: un décalage entre la version de python3 et de pip3 !
execute ceci aussi

python3 --version
pip3 --version

et si c’est le problème, c’est préférable d’insaller les dépendances comme ceci, ca cause moins de soucis que d’utiliser pip3:

sudo python3 -m pip install pyserial

edit : avec « sudo » devant

Et voila chef.
Je te laisse en tirer les conclusions :wink:

pi@raspberrypi:~ $ python3 --version
Python 3.7.3
pi@raspberrypi:~ $ pip3 --version
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)

Je rappel que je sors d’une fresh instal’ from scratch à partir de l’image buster dispo sur raspeberry

Mouais, j’y ai cru mais ca à l’air clean, cette commande là donc pour tenter de trouver le fautif:

pi@raspberrypi:~ $ python3 -c "import serial; print(serial.__dict__.keys()); print(serial.__path__)"

dict_keys(['__name__', '__doc__', '__package__', '__loader__', '__spec__', '__file__', '__path__'])
_NamespacePath(['/usr/local/lib/python3.7/dist-packages/serial'])