What we’re trying to achieve
We wish to connect a microcontroller, Adafruit Circuit Playground Express (CPX), to the USB ports of the thin client and stream data to the virtual machine environment to be read by an application and sent to a server for data collection. This is to be done on all computers in our office.
- Dell Wyse 5060 series running ThinOS
- Citrix XenDesktop: Windows 7
A solution on the current environment would be preferable, although if that’s not possible and a Windows 10 solution is, we’d love to hear it.
The Adafruit CPX is running CircuitPython, and the app we want to connect to is built using Electron.
The kind of information we want to send is a (pseudo) live stream of sensor information picked up by the CPX, as well as occasional instructive messages from the Electron App to the CPX.
When plugging the CPX into the thin client, Windows 7 doesn’t register it as connected. Logging into the actual ThinOS however does register the device as connected (VID/PID and name), leading us to believe that the connection isn’t passing through into the XenDesktop instance. It also seems to be device specific, as regular storage USBs connect fine.
What we’ve tried already
We tried plugging in some other microcontroller devices with different infrastructures, to see if they would connect – and they did, so it seems to be infrastructure specific. The devices we tried are below.
Successful Win7 COM Port Connection
No Win7 Connection, ThinOS Successful:
All the devices were 10 bit other than the Adafruit microcontrollers, which were 32 bit.
We added a USB device redirection policy for the devices on the Citrix side, but it didn’t appear to change anything.
The thinOS is able to see the VendorID (VID) and ProductID (PID) of all devices we connect and appears to pass them through. With the policies enabled all devices connect, but require drivers installed on the Windows 7 (Citrix). The non-adafruit devices appear in device manager as connected to a COM port. For the 10 bit devices standard drivers are installed and they appear on the COM port and in the arduino IDE.
For the 32 bit devices (CPX and feather) the manufacturer drivers are installed (as required for Windows 7 only) but do not show the devices.
We then also tried connecting these devices to a different endpoint – a Windows 10 laptop, and none of them had a successful connection.
It appears to be a driver issue, however we’ve installed the correct drivers and included the USB device redirection policy.
Any suggestions would be really appreciated!
Get this bounty!!!