HDMI-CEC Problems Odroid C4 / N2 / N2+

Hello friends! i have been using Odroid for a long time. Started with Odroid C2, following C4 and N2 and finally N2+. I have a weird problem with HDMI-CEC on devices C4 / N2 and N2+. After certain amounts of key presses on the remote of my TV the TV or the AMP just looses HDMI-CEC connection to the Odroid. It happends if the Odroid connected to the amp or directly to the TV. If I restart the Odroid using KoRe Remote or using extra IR-Remote the CEC is working fine again. I have been struggeling with this issue for some time now. It did not occure on Odroid C2. It occurs on LibreELEC and CoreELEC on N2, N2+ and C4. I have already changed the HDMI cable with no change. Maybe someone knows how to fix this problem? I can force it after fresh restart by simply pressing any button for a long time. (for example scrolling).
My hardware: Samsung UE46F6500 TV, Pioneer VSX-S520D Receiver and Odroid N2+ SBC running CoreELEC 9.2.5
I can provide additional information just tell me what we need to know.
Sincerely yours,

So it looks like not a CoreELEC/device issue :crazy_face:
More a issue of bad CEC implementation on your receiver or TV. I guess the receiver. Try to use ARC and connect the device directly to TV. Or try another libCEC version:

1 Like

Dear Portisch! Thank you for your reply! Yes, I already tested this when directly connected to the TV. ARC is already enabled and I tried to connect it to the TV with the same result. The TV is older and i will try your advice with libCEC. What wonders me is that it was working flawlessly with Odroid C2. Thank you for your answer. In case it would not help can I somehow provide a log where it will be visible what causes the problem?

The Change of HDMI-CEC version didn’t help. It has got even worse. I suppose it is the hardware problem of C4 / N2 / N2+ or the problem of HDMI-CEC of Pioneer receiver. Is there any way to spot the problem? To see when HDMI-CEC stops working? I have to power cycle the Odroid N2+ to make HDMI-CEC work again. I would love to find the solution for that for this old Samsung TV and the Pioneer AVR.

Look into this thread: Help with CEC commands (N2)
The OP guy mentioned that using Yatse Android App you can use “CEC Activate” action available in “Power actions” menu.
Maybe it will allow you to make your N2+ CEC-active without a need to rebooting it.

1 Like

Indeed, CEC activate from Yatse works, at least in my case.
Now I would like to find out what and how exactly Yatse sends with Activate CEC command. Any idea?

1 Like

Dear Poritsch! I have installied newest nightly from 03.01.2021 because the stable 9.2.5 has problems with settings addon when bluetooth is enabled. I found the problem in my HDMI-CEC setup. I had to set HDMI physical port to 2 to make CEC work. Unfortunalely libCEC doesn’t save this setting after Kodi restart on this nightly. It was working fine on stable 9.2.5. Can you tell me how permanently save HDMI physical port to 2 on this nightly so it won’t reset to 0 after KODI restart?

I would need to check why it’s not stored. Let’s see when I find time for it.

1 Like

Thank you friend! It worked in 9.2.5 release. In the nightly it doesn’t store. I now did following: just set up the odroind 2 to stay on. You know, you can choose what happens when TV is being switched off. I chose: do nothing. Maybe you can fix the storage problem. If you need anything just tell me. But setting the HDMI physical port to 2 solved my problems with HDMI-CEC. I wish it would store the setting. Looking forward for your feedback.

Hi Potrtisch! Your latest fix saves the physical adress of 2400 in libCEC settings… It is perfect. But I still experience and issue that CoreELEC loses the connection (HDMI-CEC) after certain amount of key presses. It is different… maybe you can see why?
Here is the log:

TV is Samsung UE46F6500 and AVR is Pioneer VSX-S520D.
May be you can help me here too?

It looks like you need to disable IR on your device. You get CEC cmds and IR in Kodi:

2021-01-06 23:49:02.843 T:3707851648   DEBUG: CecLogMessage - >> TV (0) -> Recorder 1 (1): user control pressed (44)
2021-01-06 23:49:02.849 T:4060212672   DEBUG: HandleKey: 167 (0xa7, obc88) pressed, action is Down
2021-01-06 23:49:03.343 T:3707851648   DEBUG: CecLogMessage - CheckKeypressTimeout T:294.444
2021-01-06 23:49:03.343 T:3707851648   DEBUG: CecLogMessage - Key unknown: idle (duration:717) (ff) timeout:-149997936ms (rel:1000,rep:0,prs:0,rel:0)
2021-01-06 23:49:09.834 T:3983537024   DEBUG: LIRC: - NEW 67 0 KEY_UP devinput (KEY_UP)
2021-01-06 23:49:09.841 T:4060212672   DEBUG: HandleKey: 166 (0xa6, obc89) pressed, action is Up
2021-01-06 23:49:11.168 T:3983537024   DEBUG: LIRC: - NEW 6c 0 KEY_DOWN devinput (KEY_DOWN)
2021-01-06 23:49:11.209 T:4060212672   DEBUG: HandleKey: 167 (0xa7, obc88) pressed, action is Down
2021-01-06 23:49:11.962 T:3983537024   DEBUG: LIRC: - NEW 67 0 KEY_UP devinput (KEY_UP)
2021-01-06 23:49:11.969 T:4060212672   DEBUG: HandleKey: 166 (0xa6, obc89) pressed, action is Up
2021-01-06 23:49:12.507 T:3983537024   DEBUG: LIRC: - NEW 67 0 KEY_UP devinput (KEY_UP)
2021-01-06 23:49:12.546 T:4060212672   DEBUG: HandleKey: 166 (0xa6, obc89) pressed, action is Up
2021-01-06 23:49:13.073 T:3983537024   DEBUG: LIRC: - NEW 67 0 KEY_UP devinput (KEY_UP)
2021-01-06 23:49:13.103 T:4060212672   DEBUG: HandleKey: 166 (0xa6, obc89) pressed, action is Up

If you use only CEC remove just place or touch the file:

Well I have to use IR Remote because CES always breaks… I will try to disable it.

Yes, please try it again with CEC only. Disable IR and make a CEC log again. I can not see in the log file when you swap the physical remote in your hand :wink:

1 Like

If possible tell me if I can do it using SMB…

I have disabled IR and will report back. Will test it. Maybe the remote from TV somehow breaks CEC function of Kodi…

Well it still happens. I cannot understand what is causing it… Very strange. At least the physical address remains now which is very good :slight_smile: Maybe the TV HDMI-CEC implementation has a problem.

Well, without a log I can just look into my glass bowl here - but it shows me nothing, yet.

1 Like

Here is the log…

Loss of CEC happened at 17:16 when I recall correctly. I have restarted it using Yatse and tried to make it happen again by pressing the directions buttons but it doesn’t happen. It is random… Maybe you see something there. When the connection is lost the whole CEC doesnt work. I cannot change to Chromecast connected to the HDMI 1 Port of the TV. I have to restart Kodi using Yatse. This never happened on Odroid C2, happens on C4, N2, N2+. Maybe you can help…

Happened again at 18.42.

Accessed Amazon Prime Video before that. But happens in different situations too… maybe you see something.

thank you, I will check it. the other log I did only find right now cectx ff80023c.aocec: bus confilct too long in dmesg and:

	Line 85319: 2021-01-09 18:05:56.744 T:3710907264   DEBUG: CecLogMessage - >> 01:01:44:01
	Line 85320: 2021-01-09 18:05:56.745 T:3710907264   DEBUG: CecLogMessage - sending abort with opcode 01 and reason 'unrecognised opcode' to TV

This 01:01:44:01 should be only 01:44:01. so maybe the TV sent a “ping” with 01 but then he sent without start/stop or restart the other 3 bytes.

But I guess it’s more the bus confilct too long error. I will check your second log later

1 Like