Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added code to handle rigol quirks in read_raw #18

merged 1 commit into from Jan 6, 2016

added code to handle rigol quirks in read_raw #18

merged 1 commit into from Jan 6, 2016


Copy link

@jeremyherbert jeremyherbert commented Jul 27, 2015

Unfortunately, the Rigol implementation of the USBTMC spec is, uh, unique. The following problems exist (based on my own observations and looking at the linux kernel usbtmc driver):

  1. The USBTMC header only comes with the first packet
  2. If you resend the dev_dep_msg_in header, you restart the transaction from the beginning
  3. The USBTMC header always has the end of message bit set, even if it isn't the end of the message
  4. The USBTMC header will only list a maximum transfer size of 500, regardless of whether there are more than 500 bytes to transfer. This is almost always true when an IEEE 488.2 block is involved.

I honestly don't know how they messed this up so badly.

This PR should allow Rigol devices to function with python-usbtmc by working around these problems. I tested it with my Rigol DS1104Z.

@alexforencich alexforencich merged commit b19ef5d into python-ivi:master Jan 6, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
None yet

Successfully merging this pull request may close these issues.

None yet

2 participants