Why isn't stacking of HLAs supported?

We have a custom framing protocol we use in different products. Usually it runs on top of a serial protocol. On top of the framing we have custom payloads that differ per product.
Right now we have implemented the decoding as one high level analyzer. We basically stack 2 protocol layers inside one analyzer. But it’s harder to maintain as each new product means we need to update the whole HLA.

We would like to have stacking of HLAs supported. Like in pulseview. It would make it more modular and easier to maintain.

1 Like

@chrisidema Thanks for the idea. We’ve received quite a few requests for this in the past. Your use case makes a lot of sense.

I can’t promise we’d be able to work on this anytime soon. It’s not impossible, but likely requires quite a bit of rework to our current HLA system. I’ll check in with the software team here to see what kind of work this takes.

Hi @chrisidema, I totally agree. Unfortunately we’re a tiny team (2 software developers at the moment) and we’re busy with other issues at the moment, so I can’t say when we’re going to get to this, but in the meantime, I think you can get much of the benefit in the short term by putting both of your HLAs into the same extension package, so that they can share source files. It’s been a little while since I’ve done this, but the extension package file format (extension.json) allows you to have multiple HLAs in the same package. This should make it easier to effectively implement the common layers in separate files, and then build on top of them from your higher-layer HLA.

@markgarrison Correct me if I am way off here, but why not open source all of Logic2 and let the community support you?

Personally, there are two main reasons why Saleae is the only logic analyzer choice for me:

  1. The hardware is unrivaled in its reliability, specs, and build quality inside and out and at a very reasonable price point. (:heart:)
  2. I have tried several other logic analyzer products and irrespective of the quality and features of the hardware itself, the GUI and automation software experience is positively awful and neigh unusable.

Both of the above qualities have to be present for people to want to buy your logic analyzer. And unless I am missing something, open sourcing your software should not negatively affect Saleae in any way and should in fact only increase sales and user satisfaction. Why? Because it is very much harder to duplicate your hardware product and is really infeasible to do so and without your hardware the software is useless anyway. Although, I suppose it is a fair argument that open sourcing the software would permit competing logic analyzer hardware to overcome the software UI problem and thus potentially eat up potential sales of your hardware… so yeah I’d buy that argument. But of course I would assert that your hardware offerings are much superior to the competition that you won’t run into this problem.

But anyway, that’s just the two cents of a random embedded developer haha.

My two cents worth. I’m a pensioner hobbyist, and there is no way I can justify spending hundreds of dollars on Saleae hardware. So I bought a cheap Chinese knockoff unit from Ebay for about AUD17 iirc, and it works okay most of the time. It wouldn’t suit a professional but for my occasional use it is adequate. So alternative hardware is already available.

The Saleae software is brilliant, and free. Thank you Saleae. So I guess open sourcing it would be an option, but it would come with a lot of caveats. One would be, imho, the perception of the quality of the software. Saleae spends a lot of time and money ensuring the software is top quality professional level software, and allowing anybody and everybody to modify it may affect that perception. And it might turn out to be more work managing the modifications than to keep development in house. FOSS is great, but, if I was a professional developer with paying clients, I think I would prefer to use, and pay for, the professional software with support from the supplier, than an open source, albeit free, version, with maybe questionable support and longevity. That the Saleae software is free just speaks to the company’s dedication to its user base. The FOSS version would be fine for people like me, but I think my use case might be fairly rare.

On the upside, yes, new features may be implemented more quickly, but, me myself personally, I’m a fan of the kiss principal. More is not necessarily better. There is already an interface for users to develop their own analysers, so it’s hard to see how open sourcing would help. Pulseview is open source and works fine with my el cheapo analyser, so maybe that would be an option for anybody interested in developing their own analyser software.

:wink: Ian