From: Damir J. <po...@mo...> - 2013-11-11 22:35:58
|
On Mon, Nov 11, 2013 at 11:09:10PM +0100, Christoph Zimmermann wrote: > > > > But I'm concerned that down the line, somebody comes along with an > > > SCPI device that is substantially different in some way we haven't > > > thought of. It's still an SCPI device so they extend the > > > abstraction to cover it, which complicates it a little more, and > > > then something else comes along and does the same thing, and > > > something else again, and suddenly rather than "hey all the code I > > > need is written already!" the next new developer is thinking "how > > > the hell am I supposed to adapt this driver to work for my device? > > > And without breaking all these other devices I don't have acess to > > > to test against?" > > > > > > Yes, right now this is a straw man argument, but my point is a > > > general one: over-generalising things before all potential use > > > cases are known often leads to architectures that cause problems > > > later. > > > > This seems to be unlikely (as I already mentioned I did look at the > > Agilent programming guide) because manufacturers as well want to > > standardise the commands, I saw some cases where they market their > > devices as "Agilent" compatible with regard to the programming > > interface, but ok, better safe then sorry. > > An example I know are the oscilloscopes from Tektronix. I own a > TDS3012B with Ethernet. For doing simple stuff and testing commands you > can type them directely into the website provided by the internal > webserver. > > Playing around with it, I realized that Tek is unsing the same commands > and command structure as described in SCPI, but using different > namespaces or leaving away the namespace completely. That makes them > SCPI similar but incompatible... > > If you have a Tek account you can the the programmers manual here (or > write me a PM): > http://www.tek.com/oscilloscope/tds3014b-manual/tds3000-tds3000b-tds3000c-series > I'm aware of the slight differences between the SCPI commands of different vendors and I have so far successfully worked around them: https://github.com/poljar/libsigrok/blob/710ab4af4f9a32161173245de7b44b3b787578fa/hardware/hameg-serial/protocol.c#L33 Shame that Tektronix explicitly forbids redistribution of their manual, would be nice to have them on the wiki. Thanks for the info anyways, Damir. |