I am programming an adv7511 directly, just using the datasheet.
I have worked my way through most things but incoming, directed, CEC messages are not ACK'ed and so the
transmitter (a Samsung TV) aborts transmission.
I can transmit messages and these are decoded by a Quantum Data analyser.
I do see broadcast messages from the the TV (e.g. enter standby), its only directed (peer to peer) messages
that are missed. When I use a logic analyser I can see messages sent from the TV when I make a
request (Give CEC Version) but these abort (due to lack of acknowledge).
the timings of all transmitted messages look correct (so I am setting the CEC timing registers correctly),
This also confirms I have enabled the chip and the cec sub-module correctly.
I am using a single receive register rather than three of them.
I set the Physical address of the adv7511 from the uploaded EDID from the TV (0x1000) and I correctly probe for
duplicate logical addresses before setting my own (though I have no other clashing devices at present).
The final clue: if I do a bus scan from the Quantum Data it claims to see logical address zero (the TV)
and address 13 (reserved 2). This makes no sense to me, I set the local address of the adv7511 to 5 and
readback the address register (i2c_cec, 0x4c) again just to confirm it was written correctly.
Is there anything else that can cause cec address filtering on the adv7511's ?
Thanks for any help.