From: Henk M. <he...@xm...> - 2011-04-19 09:00:19
|
Hi, I have put together some firmware to turn an XTAG2 into a logic analyser. I could mimic an existing USB logic analyser protocol, but don't want to run into trouble with copyrights/licenses/etc. Does sigrok have an "open" protocol over USB that anybody can use? Eg, any USB logic analyser that has endpoints 0x1 and 0x82 that support a command for sampling and a command for obtaining data will be supported out of the box? Best wishes, Henk |
From: Emil B. <em...@ob...> - 2011-04-19 09:36:20
|
On Tue, Apr 19, 2011 at 10:55 AM, Henk Muller <he...@xm...> wrote: > Hi, > > I have put together some firmware to turn an XTAG2 into a logic analyser. I could mimic an existing USB logic analyser protocol, but don't want to > run into trouble with copyrights/licenses/etc. > > Does sigrok have an "open" protocol over USB that anybody can use? > > Eg, any USB logic analyser that has endpoints 0x1 and 0x82 that support a command for sampling and a command for obtaining data will be supported out of the box? It's been a fair while since I looked at the sigrok code, but last I saw, it has drivers for different logic analyser hardware platforms. Some communicate with a basic serial (RS232-equivalent) interface and protocol, some might use USB. There is no one standard "sigrok protocol", as far as I know. See, if you haven't already, http://sigrok.org/wiki/Supported_hardware for the list of supported hardware platforms. If you're building your own USB device, I guess you could "clone" one of the existing platforms' interface, and make it "magically" work with sigrok. Not sure if that could mean license/IP issues, of course, be at least slightly careful would be my recommendation. I'm not a lawyer. /Emil |
From: Bert V. <be...@bi...> - 2011-04-19 17:51:13
|
On 19/04/11 10:55, Henk Muller wrote: > I have put together some firmware to turn an XTAG2 into a logic analyser. > I could mimic an existing USB logic analyser protocol, but don't want to > run into trouble with copyrights/licenses/etc. Great! > Does sigrok have an "open" protocol over USB that anybody can use? > > Eg, any USB logic analyser that has endpoints 0x1 and 0x82 that support > a command for sampling and a command for obtaining data will be > supported out of the box? sigrok just supports what logic analyzers have, it's not a hardware project. The only thing that comes close to a protocol for open source logic analyzer hardware would be the sump/OLS protocol. However it's a bit old, and stuff has accreted on to it over the years. I'd recommend just rolling your own, and keeping it simple. Using endpoints 1 and 2 for comms to/from the device like you said is great. Just define the commands as you need them, like 0x01 for setting sample rate, 0x02 for start sampling, and so on. Make sure the client can be sure when a transfer from the device is done -- either it's fixed size, or there's a header with the size, or there's an end delimiter. Do please make sure there's a command that returns meta information about the device -- the model, machine parsable. As always when doing a new protocol, have a command that returns the _version_ of the protocol, to make it future-proof. I don't think anyone on the sigrok project has an XMOS dev kit; are you planning on writing the sigrok driver as well? -- Bert Vermeulen be...@bi... |
From: Henk M. <he...@xm...> - 2011-04-20 09:42:59
|
Bert Vermeulen <bert@...> writes: > > On 19/04/11 10:55, Henk Muller wrote: > > > I have put together some firmware to turn an XTAG2 into a logic analyser. > > I could mimic an existing USB logic analyser protocol, but don't want to > > run into trouble with copyrights/licenses/etc. > > Great! > > > Does sigrok have an "open" protocol over USB that anybody can use? > > > > Eg, any USB logic analyser that has endpoints 0x1 and 0x82 that support > > a command for sampling and a command for obtaining data will be > > supported out of the box? > > sigrok just supports what logic analyzers have, it's not a hardware project. > > The only thing that comes close to a protocol for open source logic > analyzer hardware would be the sump/OLS protocol. However it's a bit > old, and stuff has accreted on to it over the years. I'd recommend just > rolling your own, and keeping it simple. > > Using endpoints 1 and 2 for comms to/from the device like you said is > great. Just define the commands as you need them, like 0x01 for setting > sample rate, 0x02 for start sampling, and so on. Make sure the client > can be sure when a transfer from the device is done -- either it's fixed > size, or there's a header with the size, or there's an end delimiter. > > Do please make sure there's a command that returns meta information > about the device -- the model, machine parsable. As always when doing a > new protocol, have a command that returns the _version_ of the protocol, > to make it future-proof. > > I don't think anyone on the sigrok project has an XMOS dev kit; are you > planning on writing the sigrok driver as well? > Thanks - that makes sense. I will define something, and put the firmware source and definition online so that anybody who wishes to start a hardware project can just stick a PID and VID in and use it. I will see if I can make an sigrok driver - may need a hand with it, but I hope that I can largely copy an existing USB driver. Any suggestions as to which USB driver to use as a model? If there is interest, I will see what I can do about providing an XMOS dev kit. H-) |