CEC Adapter no more working after november update

What else is attached to the Tv?
Can you unplug the other HDMI leads for a quick test, power cycle the TV and see if it then works?

Sam,

I think problem is with the CEC funtion (Allnet+) in the Samsung TV which is a bit flaky.
Using the TV with only the XBox connected HDMI over the weekend seems to have screwed it up. Nothing else was changed, and it worked perfectly for several years before that.

Later, I’ll try factory reset and reset Allnet+ at the same time.

Samsung TV not reacting on CEC command - Ubuntu Mate 16.04 Raspberry Pi 2 · Issue #366 · Pulse-Eight/libcec · GitHub

Thanks.
Best regards,
Niall

It looks like there’s no logical address we can use. This could mean that the address used by the Xbox is still reserved

That looks like what is happening.

I’ve tried disconnecting all HDMI. Factory reset, plugged-out TV.
Connected only Vero in HDMI1. Disabled Allnet, enabled Allnet, Factory Reset. Try Vero in HDMI2. Rinse, repeat…

It is as if it thinks the XBOX is still connected and controlling the TV.
Maybe there are persistent settings that are not reset with factory reset?

DEBUG: [ 14381] logical address ‘Recorder 3’ already taken
DEBUG: [ 14381] Recorder 3 (9): device status changed into ‘present’
ERROR: [ 14381] AllocateLogicalAddresses - failed to allocate device ‘0’, type ‘recording device’
ERROR: [ 14381] failed to find a free logical address for the client
ERROR: [ 14381] failed to register the new CEC client - cannot allocate the requested device types
unable to open the device on port AOCEC
ERROR: [ 14383] failed to register a CEC client

The only thing I can think of now is to see if I can do a firmware upgrade with a USB.

Thanks

ok, so I found the newest (2011) firmware version for the TV

But no change :frowning:

osmc@osmc-Ulysses:~$ sudo systemctl stop mediacenter
osmc@osmc-Ulysses:~$ sudo cec-client
No device type given. Using ‘recording device’
CEC Parser created - libCEC version 4.0.4
no serial port given. trying autodetect:
path: /dev/aocec
com port: AOCEC

opening a connection to the CEC adapter…
DEBUG: [ 165] Broadcast (F): osd name set to ‘Broadcast’
NOTICE: [ 166] connection opened
DEBUG: [ 166] processor thread started
DEBUG: [ 166] << Broadcast (F) → TV (0): POLL
TRAFFIC: [ 166] << f0
DEBUG: [ 2207] >> POLL sent
DEBUG: [ 2207] TV (0): device status changed into ‘present’
DEBUG: [ 2207] << requesting vendor ID of ‘TV’ (0)
TRAFFIC: [ 2207] << f0:8c
DEBUG: [ 5247] expected response not received (87: device vendor id)
TRAFFIC: [ 5248] << f0:8c
DEBUG: [ 8288] expected response not received (87: device vendor id)
NOTICE: [ 8288] registering new CEC client - v4.0.4
DEBUG: [ 8288] detecting logical address for type ‘recording device’
DEBUG: [ 8288] trying logical address ‘Recorder 1’
DEBUG: [ 8288] << Recorder 1 (1) → Recorder 1 (1): POLL
TRAFFIC: [ 8288] << 11
DEBUG: [ 10327] >> POLL sent
DEBUG: [ 10327] logical address ‘Recorder 1’ already taken
DEBUG: [ 10327] Recorder 1 (1): device status changed into ‘present’
DEBUG: [ 10327] trying logical address ‘Recorder 2’
DEBUG: [ 10327] << Recorder 2 (2) → Recorder 2 (2): POLL
TRAFFIC: [ 10327] << 22
DEBUG: [ 12367] >> POLL sent
DEBUG: [ 12367] logical address ‘Recorder 2’ already taken
DEBUG: [ 12367] Recorder 2 (2): device status changed into ‘present’
DEBUG: [ 12367] trying logical address ‘Recorder 3’
DEBUG: [ 12367] << Recorder 3 (9) → Recorder 3 (9): POLL
TRAFFIC: [ 12367] << 99
DEBUG: [ 14407] >> POLL sent
DEBUG: [ 14407] logical address ‘Recorder 3’ already taken
DEBUG: [ 14407] Recorder 3 (9): device status changed into ‘present’
ERROR: [ 14407] AllocateLogicalAddresses - failed to allocate device ‘0’, type ‘recording device’
ERROR: [ 14407] failed to find a free logical address for the client
ERROR: [ 14408] failed to register the new CEC client - cannot allocate the requested device types
unable to open the device on port AOCEC
ERROR: [ 14409] failed to register a CEC client
DEBUG: [ 14410] unregistering all CEC clients
osmc@osmc-Ulysses:~$

How can this happen?

There is nothing else connected.
Just Vero 4K+ and TV.

If didn’t work before, then that would explain it.
But this has been working perfectly. For years. Nothing has changed.

I’ve tried everything that I can possibly think of.

Something is occupying a slot on the TV that we would normally use for communication.
You could change the Vero from a recorder to a player, but it may impact the functionality of some buttons. See HDMI-CEC some buttons not working on Vero2 that do work on Pi2 - #14 by lichtus for some information.

Sam

Couldn’t this be accomplished easier by just setting the CEC physical address to 4 in settings>system>input>peripherals>CEC adapter>physical address>

Might work – but I’d change the advertised role to prevent issues later.

I went to change the 4 to 1, but it was 1 already.

<setting key="device_type" type="int" value="4" configurable="0" />

So I changed it to 4.
No change :frowning:

There seems to be just no reponse over HDMI from the TV
dmesg:

[Tue Dec 10 17:29:24 2019] cectx aocec: cec_ll_tx(): tx timeout
[Tue Dec 10 17:29:26 2019] cectx aocec: cec_ll_tx(): tx timeout
[Tue Dec 10 17:29:29 2019] cectx aocec: cec_ll_tx(): tx timeout
[Tue Dec 10 17:29:32 2019] cectx aocec: cec_ll_tx(): tx timeout
[Tue Dec 10 17:29:34 2019] cectx aocec: cec_ll_tx(): tx timeout
[Tue Dec 10 17:29:36 2019] cectx aocec: cec_ll_tx(): tx timeout

cec-client tries twice to get the Vendor ID of the TV, but there is no reponse from the TV:

DEBUG: [ 2205] << requesting vendor ID of ‘TV’ (0)
TRAFFIC: [ 2205] << f0:8c
DEBUG: [ 5245] expected response not received (87: device vendor id)
TRAFFIC: [ 5248] << f0:8c
DEBUG: [ 8285] expected response not received (87: device vendor id)

This would suggest (maybe) there’s a problem with the cable.
But it’s the same cable that I have been using for the last 2 years.

I don’t know how/why the TV would just stop responding to the device vendor Id request.
I’ve tried with factory reset, each of 4 HDMI ports, firmware update. I even tried with the XBox HDMI cable!

Did the Xbox somehow ‘re-program’ the TV, so it doesnt response anymore to these HDMI requests?

Try another cable certainly.
Can you also post another log?

Sam

Change it back to the default of zero, turn off the Vero, then unplug the TV, Vero, and anything else plugged into the TV from the wall for five minutes. Plug the TV back in and turn it back on. Once the TV is on plug everything else back in.

Setting the physical address is a bit of a dirty hack and your TV likely did not handle this well.

EDIT: I got confused here, sorry. What was it showing for <setting id="physical_address" value=" " /> when you made the changes to the device type?

here:

> <setting key="physical_address" type="string" label="36021" value="0" order="14" />

https://paste.osmc.tv/uyicapeqow

So you were editing /usr/share/kodi/system/peripherals.xml? That is probably being overrode. What device type and physical address is set in /home/osmc/.kodi/userdata/peripheral_data/rpi_2708_1001.xml

it’s Vero4K+, there’s no file with name like that.

drwxr-xr-x 8 root  4096 Dec 10 17:25 .
drwxr-xr-x 7 root  4096 Nov 24 20:12 ..
-rw-r--r-- 1 root  2201 Nov 16 20:15 addon-manifest.xml
-rw-r--r-- 1 root  1044 Nov 17 00:01 advancedsettings.xml
drwxr-xr-x 2 root  4096 Nov 24 20:12 certs
-rw-r--r-- 1 root  6352 Nov 16 11:12 colors.xml
drwxr-xr-x 2 root  4096 Nov 24 20:12 keyboardlayouts
drwxr-xr-x 4 root  4096 Nov 24 20:12 keymaps
drwxr-xr-x 5 root  4096 Jan  1  2015 library
-rw-r--r-- 1 root 19069 Nov 16 11:12 Lircmap.xml
-rw-r--r-- 1 root  4623 Dec 10 17:27 peripherals.xml
-rw-r--r-- 1 root  4623 Dec 10 17:25 peripherals.xml-orig
-rw-r--r-- 1 root  1732 Nov 16 11:12 playercorefactory.xml
drwxr-xr-x 2 root  4096 Nov 24 20:12 settings
drwxr-xr-x 4 root  4096 Nov 24 20:12 shaders
osmc@osmc-Ulysses:/usr/share/kodi/system$

You are in the wrong directory.

Also check cec_CEC_Adapter.xml.

1 Like

osmc@osmc-Ulysses:~/.kodi/userdata/peripheral_data$ ls -alg
total 24
drwxr-xr-x 2 osmc 4096 Dec 10 17:18 .
drwxr-xr-x 10 osmc 4096 Apr 24 2019 …
-rw-r–r-- 1 osmc 13 Dec 10 20:36 application_Keyboard.xml
-rw-r–r-- 1 osmc 13 Dec 10 20:36 application_Mouse.xml
-rw-r–r-- 1 osmc 1253 Dec 10 20:36 cec_CEC_Adapter.xml
-rw-r–r-- 1 root 1253 Dec 10 17:18 cec_CEC_Adapter.xml-orig
osmc@osmc-Ulysses:~/.kodi/userdata/peripheral_data$

sorry! here it is:

> osmc-Ulysses:~/.kodi/userdata/peripheral_data$ more cec_CEC_Adapter.xml
> <settings>
>     <setting id="activate_source" value="0" />
>     <setting id="button_release_delay_ms" value="0" />
>     <setting id="button_repeat_rate_ms" value="0" />
>     <setting id="cec_hdmi_port" value="1" />
>     <setting id="cec_standby_screensaver" value="0" />
>     <setting id="cec_wake_screensaver" value="0" />
>     <setting id="connected_device" value="36037" />
>     <setting id="device_name" value="Kodi" />
>     <setting id="device_type" value="1" />
>     <setting id="double_tap_timeout_ms" value="300" />
>     <setting id="enabled" value="1" />
>     <setting id="pause_or_stop_playback_on_deactivate" value="231" />
>     <setting id="pause_playback_on_deactivate" value="0" />
>     <setting id="physical_address" value="0" />
>     <setting id="power_avr_on_as" value="0" />
>     <setting id="send_inactive_source" value="0" />
>     <setting id="standby_devices" value="231" />
>     <setting id="standby_devices_advanced" value="" />
>     <setting id="standby_pc_on_tv_standby" value="36028" />
>     <setting id="standby_tv_on_pc_standby" value="0" />
>     <setting id="tv_vendor" value="0" />
>     <setting id="use_tv_menu_language" value="0" />
>     <setting id="wake_devices" value="231" />
>     <setting id="wake_devices_advanced" value="" />
> </settings>
> osmc@osmc-Ulysses:~/.kodi/userdata/peripheral_data$

Try changing your device type in that file to “4” and reboot. The physical address will stay at “0”.

Don’t forget to stop Kodi before changing the file:

systemctl stop mediacenter

or Kodi will overwrite the file.

1 Like