Ce que nous essayons d'accomplir
Nous souhaitons connecter un microcontrôleur, Adafruit Circuit Playground Express (CPX), aux ports USB du client léger et diffuser des données vers l'environnement de la machine virtuelle pour être lu par une application et envoyé à un serveur pour la collecte de données. Cela doit être fait sur tous les ordinateurs de notre bureau.
L'environnement
Environnement actuel :
-
Série Dell Wyse 5060 fonctionnant sous ThinOS
-
Citrix XenDesktop : Windows 7
Environnement futur :
-
Série Dell Wyse 5060 fonctionnant sous ThinOS
-
Citrix XenDesktop : Windows 10
Une solution pour l'environnement actuel serait préférable, mais si cela n'est pas possible et qu'une solution Windows 10 l'est, nous aimerions l'entendre.
Le Adafruit CPX fonctionne avec CircuitPython, et l'application à laquelle nous voulons nous connecter est développée avec Electron.
Le type d'informations que nous voulons envoyer est un flux (pseudo) en direct d'informations de capteur captées par le CPX, ainsi que des messages instructifs occasionnels de l'application Electron au CPX.
Le problème
Lorsque nous branchons le CPX sur le client léger, Windows 7 ne le reconnaît pas comme connecté. En revanche, en vous connectant au ThinOS réel, l'appareil est reconnu comme connecté (VID/PID et nom), ce qui nous laisse penser que la connexion ne passe pas dans l'instance de XenDesktop. Il semble également être spécifique à l'appareil, car les clés USB de stockage standard se connectent correctement.
Ce que nous avons déjà essayé
Nous avons essayé de brancher d'autres appareils microcontrôleurs avec des infrastructures différentes pour voir s'ils se connectaient - et ils se sont connectés, il semble donc que cela soit spécifique à l'infrastructure. Les appareils que nous avons essayés sont les suivants.
Connexion réussie du port COM Win7 :
-
Arduino Nano (Pilotes FTDI) - ESP32 - (Pilote CP2102 USB vers UART)
-
ATtiny85 - Type de connexion non anticipée ("Autres appareils", port COM attendu)
-
Arduino Leonardo
Aucune connexion Win7, succès avec ThinOS :
-
Adafruit Feather M0
-
Adafruit Circuit Playground Express
Tous les appareils étaient sur 10 bits sauf les microcontrôleurs Adafruit, qui étaient sur 32 bits.
Nous avons ajouté une politique de redirection de périphérique USB du côté de Citrix pour les appareils, mais cela n'a pas semblé changer quoi que ce soit.
Le ThinOS peut voir le VendorID (VID) et le ProductID (PID) de tous les appareils que nous connectons et semble les transmettre. Avec les politiques activées, tous les appareils se connectent, mais nécessitent des pilotes installés sur Windows 7 (Citrix). Les appareils non-adafruit apparaissent dans le gestionnaire de périphériques comme connectés à un port COM. Pour les appareils sur 10 bits, les pilotes standard sont installés et ils apparaissent sur le port COM et dans l'IDE Arduino.
Pour les appareils sur 32 bits (CPX et Feather), les pilotes du fabricant sont installés (comme requis uniquement pour Windows 7) mais les appareils n'apparaissent pas. Nous avons ensuite également essayé de connecter ces appareils à un autre endpoint - un ordinateur portable Windows 10, et aucun d'entre eux n'a eu une connexion réussie.
Il semble s'agir d'un problème de pilote, cependant nous avons installé les pilotes corrects et inclus la politique de redirection de périphérique USB.
Toutes les suggestions seraient vraiment appréciées !