Got several features of the Hameg HMO2524 working that were not
supported before in mainline.  The code resides in

  git://repo.or.cz/libsigrok/gsi.git hameg-hmo-digital16

(and obsoletes the hameg-hmo-hmo2524 branch, which I just did not
dare to remove as long as peer developers might review it).

The fixes and improvements include:
- Endianess aware download of analog samples, unbreaking
  operation for little endian host machines (Hameg/RS docs
  suggest that all scopes start up with BE by default).
- Support for digital channels D8-D15 on those models which have
  two digital pods.
- Declare the full HMO2524 feature set (4 channels, 2 pods), the
  previous implementation only declared a subset.
- Make the libsigrok output of samples and frame markers exactly
  match the scope's idea of frames.  Pulseview did not mind, but
  sigrok-cli output was unexpected.
- Minor nits and cleanups, and lots of comments.  Prepare to
  check constraints on models which differ from currently
  implemented assumptions (HMO1002, analog vs pods).

There is a wiki page: http://sigrok.org/wiki/Hameg_HMO2524
Details on the interface modules (USB VID/PID) are in the
interface's wiki page: http://sigrok.org/wiki/Hameg_HO730,
somebody with HO720 should create another page so that it can get
shared among the HMO scope models.

With the HMO2524 scope's features working, more models in the
HMO3000 range should have become fully operational, too.  Can
somebody check?


Some issues remain:
- The HMO1002 scope is said to differ from other models in how
  analog channels and digital pods are associated.  Cannot test
  in the absence of access to the hardware.
- Retrieval of samples via SCPI over serial (USB) might time out,
  waiting for an LF terminator that never will show up in binary
  blocks.  I can reproduce it here quite well, haven't seen the
  issue with TCP.  (More discussion took place on IRC.)
- Stefan noticed that SCPI over serial has imcomplete support for
  binary blocks anyway, handling the LF character incorrectly.  I
  seem to have gotten in PulseView what matches the scope's
  screen (was not missing samples from quick visual inspection),
  but haven't compared the bits and haven't run patterns that
  check all bit combinations on the digital probes.
- sigrok-cli(1) output seems to "chunk" digital sample data in
  units of 64bits each, then prints out frame end, and afterwards
  "flushes" remaining sample data that did not fill up to 64bits
  (when the session data feed end packet arrives).  IOW part of
  the sample data appears to be outside of the frame, although
  the driver did send the packets in the correct order.


virtually yours
Gerhard Sittig
-- 
     If you don't understand or are scared by any of the above
             ask your parents or an adult to help you.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
sigrok-devel mailing list
sigrok-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sigrok-devel

Reply via email to