Impossible de récupérer applicativement les containers - manque route_table

Bonjour,

Je suis actuellement entrain de tester un développement avec les containers Distance et controlledMotor, j’ai un problème lors de la récupération applicatives des containers (l’ensemble des containers sont correctement branchés), j’ai débranché et rebranché dans un ordre différent les containers … j’obtiens toujours le même pb.

Le code applicatif semble boucler dans le robot.py.

J’obtiens les traces ci-dessous :

INFO:pyluos.robot:Connected to “192.168.1.4”.

2019-03-15 19:23:16,795 – pyluos.robot – INFO – Connected to “192.168.1.4”.

INFO:pyluos.robot:Sending detection signal.

2019-03-15 19:23:16,796 – pyluos.robot – INFO – Sending detection signal.

b’{“detection”: {}}’

b’{“detection”: {}}’

INFO:pyluos.robot:Waiting for route table…

2019-03-15 19:23:16,898 – pyluos.robot – INFO – Waiting for route table…

Après debug de la classe Robot Luos (ligne 124 state = self._poll_once()) ; le container Luos est uptodate ; j’obtiens la valeur suivante pour la variable state : {‘containers’: [{‘type’: ‘Gate’, ‘id’: 1, ‘alias’: ‘usb gate’}, {‘type’: ‘ControlledMotor’, ‘id’: 2, ‘alias’: ‘controlled_mot0’, ‘rot_position’: 0.0}, {‘type’: ‘ControlledMotor’, ‘id’: 3, ‘alias’: ‘controlled_moto’, ‘rot_position’: 0.0}, {‘type’: ‘DistanceSensor’, ‘id’: 4, ‘alias’: ‘Lidar_mod’, ‘trans_position’: 281.0}, {‘type’: ‘DistanceSensor’, ‘id’: 5, ‘alias’: ‘Lidar_mod0’, ‘trans_position’: 260.0}], ‘timestamp’: 1552674949.5269265}
Il n’y a pas de route_table ???

Merci de votre support

Cordialement

Thibaut

Bonjour,
Le support pour ce type de question (@Nico) sera à nouveau disponible à partir du lundi 25 mars. En ce qui me concerne je vais essayer de me renseigner à ce propos mais je ne suis pas spécialisé dans ce domaine.

Bonjour

Pour information, la problématique vient de la version du container pyluos 1.0.12, en downgradant la librairie en 1.0.8 le problème n’existe plus.
Question : quel moyen avons-nous pour s’assurer de la correspondance entre la version du container pyluos et la “version du firmware” de la carte ?

Merci

Cordialement

Thibaut

Ok, merci d’avoir signalé le problème, il sera réglé la semaine prochaine.
À l’heure actuelle, je ne crois pas (à vérifier auprès de @Nico) qu’il y ait de moyen autre que manuel pour vérifier cette correspondance.

Salut @Thib

Je suis de retour !

Si je comprends bien ton problème, tu parviens à te connecter et tu reçois bien un Json qui liste les containers mais pyluos 1.0.12 reste bloqué…

Entre la 1.0.8 et la 1.0.12 il y a eu des optimisations sur les Json qui correspondent à de nouvelle version firmware (0.3.0) des containers.
Je pense que la version 1.0.12 ne comprend pas le Json qui est transmis par les containers qui doivent avoir une version antérieure a 0.3.0.

Tu as raison il n’y a pas de moyen simple pour le moment de detecter la compatibilité entre Pyluos et les firmwares des containers. Il y a un peu de travail pour y parvenir.

Pour le moment le maintien à jour du système reste un peu fastidieux. Dans ton cas tu as 2 solutions.

  1. Tu restes en version pyluos 1.0.8 mais il faudra que tu downgrade les nouveaux containers que tu recevras et tu ne bénéficieras pas des améliorations.
  2. Tu mets à jour tous tes containers en suivant cette page : https://luos-robotics.github.io/update-container-firmware.html

Merci de ce retour :wink:

Is it for me? 🤔