Support custom protocol analyzers

Rani Horev

Loading and developing other analyzers


Activity Newest / Oldest


Please please please enable this? I've got custom protocol analyzers that I'd really like to be able to load so I can then mesh them with the added features the HLA api provides for visualizing packet structures etc. Currently it looks like as a Mac user I'm SOL :-(



We will get to this, and I'm sorry it's not out already!
In the meantime, here are instructions to do this now. Note - the C++ API for hla support (called FrameV2) is not stable, and expected to change, and future updates to the app could cause your analyzer to either fail to load or crash the app :)
1. on MacOS, you can place your compiled analyzer into the `/Applications/Logic2.app/Contents/Resources/osx/Analyzers` directory, after making the following change to it:
`install_name_tool -change @executable_path/libAnalyzer.dylib @rpath/libAnalyzer.dylib libYourCustomAnalyzer.so`
That's needed because the relative locations of various libs are different in Logic2, and I haven't figured out how to make analyzers "just work" in the new setup.
2. Now your results can't be accessed by an HLA until you start adding FrameV2 object. Again, this part of the API is considered "internal" and we plan to break it, probably many times before we make it official.
Take a look at these:
Note - that's the "alpha" branch of both of those repos.
Here you can see how the I2C analyzer uses FrameV2: github.com/saleae/i2c-analyzer/blob/76086e9b8fd8be9abb0d9fdebe241488827d6e6a/src/I2cAnalyzer.cpp#L117
Also, you will need to compile your analyzer with "LOGIC2" defined. You can see that set in the i2c cmake here:
Again, this will probably work for at least a few weeks, but when it breaks you will want to go back to the i2c-analyzer and AnalyzerSDK repos to see what we changed :)


Rani Horev

Status changed to: Planned