Jump to content
  • 0

HDMI CEC protocol decode?


eos33

Question

Hi ,

I use a Analog Discovery 2 device to develop the HDMI CEC function in the microcontroller.

Now, the AD2 can capture the waveform of HDMI CEC.

Just wondering if any way that I can translate the waveform to the readable data(Protocol).

Appreciate for your help.

CEC_01.png

CEC_02.png

Link to comment
Share on other sites

15 answers to this question

Recommended Posts

  • 0

Hi,

I know this is an old post, but I've just been trying the HDMI CEC decode with AD2 on waveforms (version 3.16.3), and it looks like the bit order is wrong, it should be MSB first for each nibble/byte. So in above example, it should decode to...
Start, Src h8, Dst h1, End, Ack 0,....
There's no option to switch between LSB and MSB, only invert the polarity, which doesn't fix the issue.
And no way to modify scripts for existing protocols, only create a custom one from scratch.

Is there any chance this could be corrected, as reordering the bits manually defeats the object of having a protocol decode.
I'm happy to create a new post, if needed, but as new to the site, I've not done one before.

Thanks,

Michelle

Link to comment
Share on other sites

  • 0

@attila Sorry for delayed response. the last week or so has been manic.

I've tested the CEC decode, and the bit order is now correct, thanks.

However I've noticed a couple of other issues.

1) If I trigger the scope/logic analyser using the CEC protocol, Start bit... the first packet is not decoded.

image.thumb.png.8698e1d992eaee48375a197dbba31a10.png

but if I trigger just using simple trigger, falling edge of CEC line, it does.

image.thumb.png.9956a5c9bc4434ea81d54ab17f0685c8.png

Of course triggering like this, it doesn't always align with the start of the packet.

The I2C decode works fine, even on a single packet.

2) It doesn't appear in the Protocol Analyser instrument, only the Digital (Logic Analyser) section of the Scope, which is only really suitable for a few packets at a time, due to screen resolution and memory depth.

image.png.f128f0648af330a6e2884817b5870ffc.png

Some transactions of CEC are up to about 20 packets at a time, so having it in the Protocol Analyser would be very useful.

Is the any change of correcting number 1, and adding number 2?

Thanks,

Michelle

Link to comment
Share on other sites

  • 0

Thanks @attila The Reset Starts has done the trick with issue (1).

The Record mode does help a bit for (2)...I'll play around with the settings, to get the best out of it.
But being able to get the data out in text form (not graphical), from the Protocol instrument, will be a real advantage, when it happens ?

Regards,

MIchelle

Link to comment
Share on other sites

  • 0
23 hours ago, attila said:

Hi @ca_michelle

Protocol/CEC is added to the latest WF version:

 

Thanks @attila

I've given it a go, and it appears mostly OK, for general messages. But appears to have an issue with ACKs on Broadcast messages (Dst = F), and thinks they are NAKs.

image.png.74f0216b8503da7e7c0314687bcf619f.png

I'm guessing it doesn't realise that "For broadcast messages the sense of the ACK bit in inverted to allow for a single device to reject a message". So it needs to recognise it's a broadcast message, and then decode the ACK bit accordingly. 

For reference, here is the start of the same transaction (run separately, as you can't capture both at the same time) using the Digital section of the Scope instrument.
It correctly recognises the ACKs, even for broadcast messages.

image.thumb.png.e3d16fbc39ef7af06752a4ea57c876c5.png


I hope this isn't too much of a pain to fix.

I've not tried the TX option, so not sure if that has any issues.

Regards,

Michelle
 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...