On Tue, Dec 11, 2012 at 1:58 AM, Jean Dubois <jeandubois...@gmail.com> wrote: > > I found examples in the usbtmc kernel driver documentation (the > examples there are given in C): > http://www.home.agilent.com/upload/cmc_upload/All/usbtmc.htm?&cc=BE&lc=dut
Thanks for that link. I think it explains how the driver works pretty well. I haven't done any work with devices like this, but I see a few things in those docs that might help. In their example code, they open the device with: open(“/dev/usbtmc1”,O_RDWR); That's not exactly the same as what you've been doing. I would try opening the file this way in python: usb_device = open('/dev/usbtmc1', 'w+', buffering=0) That truncates the file after it opening it, and disables any buffering that might be going on. Then, I would try writing to the device with usb_device.write() and usb_device.read(). read() attempts to read to end-of-file, and based on the docs, the driver will work okay that way. Doing that, along with turning off buffering when you open the file, should eliminate any issues with the driver failing to emit newlines someplace. Personally, I would probably try playing with the device from python's interactive interpreter. I think that could shed a lot of light on the behavior you're seeing. -- Jerry -- http://mail.python.org/mailman/listinfo/python-list