LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Nugget: 1 of n : GEtting started with USB communication via VISA

That good thread. I'm trying to communicate USB2Dynamixel and cRIO 9014 to the USB port cRIO. This recognizes it as USB RAW and the FT232R USB UART driver appears correctly.

I use this library:
https://github.com/ROBOTIS-GIT/DynamixelSDK

The controller works very well connected to the PC as recognized as a COM port.

But when connected to the cRIO appears as USB RAW. I need your valuable assistance.

I appreciate any collaboration.

 

0 Kudos
Message 101 of 104
(1,384 Views)

Your post seems not related to the topic of this thread. This thread is about using VISA USB raw communication to directly communicate with a custom USB device. Your device however seems to use the FT232R chip as you say and therefore provides a USB-COMM interface. This is a virtual COM port.

 

Your problem is that the FT232R chip in that device is not correctly recognized by the module loader on the cRIO, and you likely won't be able to get that to work with this cRIO model. The 9014 is based on the VxWorks realtime OS and only comes with a very limited set of predefined hardware drivers directly built into the kernel. This to my knowledge does not include support for USB-COMM device. The VxWorks system in that controller has support for flash media and some other common USB hardware but nothing in the sense of USB COMM, USB CAMERA and what else drivers. While such drivers can be written it is a very cumbersome and failureprone process and to my knowledge only NI has written additional kernel drivers for their own serial port and GPIB hardware to be used on those VxWorks controllers.

If you want to use this device on this cRIO controller you have only two, IMHO almost impossible choices.

 

1) Develop your own VxWorks device driver that implements the USB COMM protocol.

a) Either as C module, which I think is a complete nogo since for that you really would need the VxWorks development toolchain, which is anything but cheap.

b) Or as a VISA USB-Raw VI library (where this thread topic would come in finally), but reimplementing USB COMM in VISA is maybe a nice project for when you have unlimited amounts of time at hand, but not something that I would trust to be possible to do within a useful timeframe. Also I haven't checked that VISA USB Raw even is implemented on the VxWorks cRIOs. Chances are high that it isn't or at least not fully.

 

A much more promising solution would be to instead use one of the NI-Linux RT based cRIOs liike the 906x or 903x chassis. They support the FT232 chip out of the box, although there can be trouble to get it properly recognized and installed in a persistent way.

Rolf Kalbermatter
My Blog
0 Kudos
Message 102 of 104
(1,370 Views)

Thank you mate for the suggestions, I went to use a cRIO 9031.

0 Kudos
Message 103 of 104
(1,351 Views)

I used similar vi to record mouse movements. The X and Y movements from buffer range from -127 to 127. I don't know whether it is because the size of buffer is too small that I can't record the movements properly in different speed. I can only record low speed movements correctly, once I move quickly, buffer only shows 127 or -127. It can't record movements in a relatively high speed which could be detected by computer when mouse is used as a normal mouse. I am wondering how i can record movements in relatively high speed. Thank you!

0 Kudos
Message 104 of 104
(1,082 Views)