I have extended the ‘text messages’ HLA by adding another column in the list of messages which displays messages as hex values.
I needed this because I am analyzing a protocol that sends messages consisting of multiple bytes and uses a frame timeout. I wanted to concatenate these bytes like this HLA does, but they are in binary format rather than readable text, so I added a hex column.
The extra column worked right away, but I noticed that there is a row for the HLA in the waveform display which still showed the text messages. I “fixed” this by changing the line that sets result_types.message.format, but ultimately it would be nice to let the user select the format. The context menu for the HLA already has four options (Binary, Decimal, Hexadecimal, ASCII) but whatever is selected there has no effect. Ideally, that selection should determine how the messages are formatted. I couldn’t find how to achieve this.
By the way: why does this HLA only define a single result type “message” and dumps things like errors and I2C addresses into that message as strings, just like received data? From the documentation it seems that it would be more appropriate to define two more result types “error” and “I2C address” so that “message” is really only for received messages. Or did I get this wrong?
My fork of the HLA is available here: