Permitir que um dispositivo microcontrolador se conecte a uma instância do Citrix XenDesktop

4

O que estamos tentando alcançar

Desejamos conectar um microcontrolador, Adafruit Circuit Playground Express (CPX), às portas USB do thin client e transmitir dados para o ambiente da máquina virtual para serem lidos por um aplicativo e enviados para um servidor para coleta de dados. Isso deve ser feito em todos os computadores em nosso escritório.

O ambiente

Ambienteatual:

  • SérieDellWyse5060executandooThinOS

  • CitrixXenDesktop:Windows7

Ambientefuturo:

  • SérieDellWyse5060executandooThinOS

  • CitrixXenDesktop:Windows10

Umasoluçãonoambienteatualseriapreferível,embora,seissonãoforpossíveleumasoluçãodoWindows10seja,adoraríamosouvi-la.

OAdafruitCPXestáexecutandooCircuitPython,eoaplicativoaoqualqueremosnosconectaréconstruídousandooElectron.

Otipodeinformaçãoquequeremosenviaréuma(pseudo)transmissãoaovivodasinformaçõesdosensorcaptadaspeloCPX,bemcomomensagensocasionaisinstrutivasdoAppdoElétronparaoCPX.

Oproblema

AoconectaroCPXaothinclient,oWindows7nãoregistracomoconectado.Noentanto,ologinnoThinOSrealregistraodispositivocomoconectado(VID/PIDenome),levando-nosaacreditarqueaconexãonãoestápassandoparaainstânciadoXenDesktop.Eletambémpareceserespecíficododispositivo,jáqueosUSBscomunsdearmazenamentoseconectambem.

Oquejátentamos

Nóstentamosconectaralgunsoutrosmicrocontroladorescomdiferentesinfraestruturas,paraverseelesseconectariam-eelesfizeram,entãopareceserespecíficodainfraestrutura.Osdispositivosqueexperimentamosestãoabaixo.

ConexãodeportaCOMWin7bem-sucedida

  • ArduinoNano(DriversFTDI)-ESP32-(driverUSBparaUARTCP2102)

  • ATtiny85-Tipodeconexãonãoprevisto(“Outrosdispositivos”,portaCOMesperada)

  • ArduinoLeonardo

SemconexãocomWin7,ThinOSbem-sucedida:

  • PenadeAdafruitM0

  • PlaygrounddoCircuitoAdafruit

Todososdispositivoseramde10bitsdiferentesdosmicrocontroladoresAdafruit,queeramde32bits.

AdicionamosumapolíticaderedirecionamentodedispositivosUSBparaosdispositivosnoladodoCitrix,masnãopareceumudarnada.

OthinOSécapazdeveroVendorID(VID)eProductID(PID)detodososdispositivosaosquaisnosconectamoseparecetransmiti-los.Comaspolíticashabilitadastodososdispositivosseconectam,masexigemdriversinstaladosnoWindows7(Citrix).OsdispositivosnãoadafruitaparecemnogerenciadordedispositivoscomoconectadosaumaportaCOM.Paraosdispositivospadrãode10bits,osdriverssãoinstaladoseaparecemnaportaCOMenoIDEdoarduino.

Paraosdispositivosde32bits(CPXepenas),osdriversdofabricantesãoinstalados( conforme necessário apenas para o Windows 7 , mas não mostra os dispositivos. Nós também tentamos conectar esses dispositivos a um endpoint diferente - um laptop Windows 10, e nenhum deles teve uma conexão bem-sucedida.

Parece ser um problema de driver, no entanto, instalamos os drivers corretos e incluímos a política de redirecionamento de dispositivos USB.

Qualquer sugestão seria muito apreciada!

    
por Baptiste Higgs 12.07.2018 / 04:20

1 resposta

2

Tendo em vista que você já tentou os drivers corretos e não aparece no ambiente Citrix em um cliente não-thin, isso parece ser um problema de política. Pesquisando o dispositivo que você está tentando usar, vejo que ele aparece como uma unidade de disco e supondo que você esteja usando o dispositivo como outros microcontroladores, você provavelmente está enviando dados através da porta serial (porta COM no Windows).

Existem várias políticas para o redirecionamento de dispositivos no Citrix, o que você deve tentar é o redirecionamento de porta COM e manter sua política de redirecionamento de dispositivos USB.

Como @harrymc apontou nos comentários, você também pode tentar os drivers atualizados .

    
por 01.08.2018 / 02:24