I've been trying to solve this one for a while now. Ever since upgrading to 8.2.5, I've lost the ability to control Kodi with my remote control.
The strange part is when LibreELEC boots, I get a message saying libCEC successfully connected to my TV. But when I enable debug logging, I do not see an onKey messages.
I've also ran the cec-client, and when it starts running my TV will automatically rename the input to CECTester. Additionally, it will show up in the CEC menu when I run Device Discovery on my Vizio TV. However, during normal LibreELEC operation, I am not able to detect my device from my TV.
cec-client
No device type given. Using 'recording device'
CEC Parser created - libCEC version 4.0.1
no serial port given. trying autodetect:
path: Raspberry Pi
com port: RPI
opening a connection to the CEC adapter...
DEBUG: [ 161] Broadcast (F): osd name set to 'Broadcast'
DEBUG: [ 161] Open - vc_cec initialised
DEBUG: [ 161] logical address changed to Free use (e)
NOTICE: [ 162] connection opened
DEBUG: [ 162] processor thread started
DEBUG: [ 162] << Broadcast (F) -> TV (0): POLL
DEBUG: [ 162] initiator 'Broadcast' is not supported by the CEC adapter. using 'Free use' instead
TRAFFIC: [ 162] << e0
DEBUG: [ 253] >> POLL sent
DEBUG: [ 253] TV (0): device status changed into 'present'
DEBUG: [ 253] << requesting vendor ID of 'TV' (0)
TRAFFIC: [ 253] << e0:8c
TRAFFIC: [ 540] >> 0f:87:00:19:9d
DEBUG: [ 540] TV (0): vendor = Unknown (00199d)
DEBUG: [ 540] >> TV (0) -> Broadcast (F): device vendor id (87)
DEBUG: [ 540] expected response received (87: device vendor id)
NOTICE: [ 540] registering new CEC client - v4.0.1
DEBUG: [ 540] detecting logical address for type 'recording device'
DEBUG: [ 540] trying logical address 'Recorder 1'
DEBUG: [ 540] << Recorder 1 (1) -> Recorder 1 (1): POLL
TRAFFIC: [ 540] << 11
TRAFFIC: [ 1020] << 11
DEBUG: [ 1352] >> POLL not sent
DEBUG: [ 1352] using logical address 'Recorder 1'
DEBUG: [ 1352] Recorder 1 (1): device status changed into 'handled by libCEC'
DEBUG: [ 1353] Recorder 1 (1): power status changed from 'unknown' to 'on'
DEBUG: [ 1353] Recorder 1 (1): vendor = Pulse Eight (001582)
DEBUG: [ 1353] Recorder 1 (1): CEC version 1.4
DEBUG: [ 1353] AllocateLogicalAddresses - device '0', type 'recording device', LA '1'
DEBUG: [ 1353] logical address changed to Recorder 1 (1)
DEBUG: [ 1353] Recorder 1 (1): osd name set to 'CECTester'
DEBUG: [ 1353] Recorder 1 (1): menu language set to 'eng'
DEBUG: [ 1354] GetPhysicalAddress - physical address = 1000
DEBUG: [ 1354] AutodetectPhysicalAddress - autodetected physical address '1000'
DEBUG: [ 1354] Recorder 1 (1): physical address changed from ffff to 1000
DEBUG: [ 1354] << Recorder 1 (1) -> broadcast (F): physical address 1000
TRAFFIC: [ 1354] << 1f:84:10:00:01
NOTICE: [ 1535] CEC client registered: libCEC version = 4.0.1, client version = 4.0.1, firmware version = 1, logical address(es) = Recorder 1 (1) , physical address: 1.0.0.0, git revision: 8.2.4+7-84fe69f~dirty, compiled on Sat Mar 24 18:32:38 UTC 2018 by chewitt@build1 on Linux 4.4.0-112-generic (x86_64), features: P8_USB, DRM, P8_detect, RPi
DEBUG: [ 1535] << Recorder 1 (1) -> TV (0): OSD name 'CECTester'
TRAFFIC: [ 1535] << 10:47:43:45:43:54:65:73:74:65:72
DEBUG: [ 1867] << requesting power status of 'TV' (0)
TRAFFIC: [ 1867] << 10:8f
TRAFFIC: [ 1999] >> 01:46
DEBUG: [ 1999] << Recorder 1 (1) -> TV (0): OSD name 'CECTester'
DEBUG: [ 1999] >> TV (0) -> Recorder 1 (1): give osd name (46)
TRAFFIC: [ 1999] << 10:47:43:45:43:54:65:73:74:65:72
WARNING: [ 2450] unhandled response received: opcode=87 initiator=1 destination=f response=0
WARNING: [ 2631] unhandled response received: opcode=47 initiator=1 destination=0 response=0
TRAFFIC: [ 2707] >> 01:90:00
DEBUG: [ 2708] TV (0): power status changed from 'unknown' to 'on'
DEBUG: [ 2708] >> TV (0) -> Recorder 1 (1): report power status (90)
DEBUG: [ 2708] expected response received (90: report power status)
waiting for input
TRAFFIC: [ 15447] >> 0f:32:65:6e:67
DEBUG: [ 15447] TV (0): menu language set to 'eng'
DEBUG: [ 15447] >> TV (0) -> Broadcast (F): set menu language (32)
TRAFFIC: [ 15597] >> 0f:32:65:6e:67
DEBUG: [ 15597] >> TV (0) -> Broadcast (F): set menu language (32)
TRAFFIC: [ 15671] >> 0f:36
DEBUG: [ 15671] TV (0): power status changed from 'on' to 'standby'
DEBUG: [ 15671] >> TV (0) -> Broadcast (F): standby (36)
TRAFFIC: [ 39068] >> 0f:32:65:6e:67
DEBUG: [ 39068] >> TV (0) -> Broadcast (F): set menu language (32)
TRAFFIC: [ 39217] >> 0f:32:65:6e:67
DEBUG: [ 39218] >> TV (0) -> Broadcast (F): set menu language (32)
TRAFFIC: [ 39356] >> 01:83
DEBUG: [ 39356] << Recorder 1 (1) -> broadcast (F): physical address 1000
TRAFFIC: [ 39356] << 1f:84:10:00:01
DEBUG: [ 39356] >> TV (0) -> Recorder 1 (1): give physical address (83)
DEBUG: [ 39356] GetPhysicalAddress - physical address = 1000
DEBUG: [ 39507] physical address unchanged (1000)
WARNING: [ 39657] unhandled response received: opcode=84 initiator=1 destination=f response=0
TRAFFIC: [ 39712] >> 01:46
DEBUG: [ 39712] << Recorder 1 (1) -> TV (0): OSD name 'CECTester'
TRAFFIC: [ 39712] << 10:47:43:45:43:54:65:73:74:65:72
DEBUG: [ 39712] >> TV (0) -> Recorder 1 (1): give osd name (46)
WARNING: [ 40193] unhandled response received: opcode=47 initiator=1 destination=0 response=0
TRAFFIC: [ 40253] >> 01:46
DEBUG: [ 40253] << Recorder 1 (1) -> TV (0): OSD name 'CECTester'
TRAFFIC: [ 40254] << 10:47:43:45:43:54:65:73:74:65:72
DEBUG: [ 40254] >> TV (0) -> Recorder 1 (1): give osd name (46)
WARNING: [ 40734] unhandled response received: opcode=47 initiator=1 destination=0 response=0
TRAFFIC: [ 40844] >> 0f:86:10:00
DEBUG: [ 40844] >> TV (0) sets stream path to physical address 1000
DEBUG: [ 40845] making Recorder 1 (1) the active source
DEBUG: [ 40845] TV (0): power status changed from 'standby' to 'in transition from standby to on'
DEBUG: [ 40845] >> TV (0) -> Broadcast (F): set stream path (86)
NOTICE: [ 40845] >> source activated: Recorder 1 (1)
DEBUG: [ 40845] sending active source message for 'Recorder 1'
NOTICE: [ 40845] << powering on 'TV' (0)
TRAFFIC: [ 40845] << 10:04
NOTICE: [ 40935] << Recorder 1 (1) -> broadcast (F): active source (1000)
TRAFFIC: [ 40935] << 1f:82:10:00
DEBUG: [ 41085] << Recorder 1 (1) -> TV (0): menu state 'activated'
TRAFFIC: [ 41085] << 10:8e:00
WARNING: [ 41205] unhandled response received: opcode=82 initiator=1 destination=f response=0
WARNING: [ 41355] unhandled response received: opcode=4 initiator=1 destination=0 response=0
WARNING: [ 41476] unhandled response received: opcode=82 initiator=1 destination=f response=0
WARNING: [ 41566] unhandled response received: opcode=8e initiator=1 destination=0 response=0
^Csignal caught: 2 - exiting
DEBUG: [ 153402] unregistering all CEC clients
NOTICE: [ 153403] unregistering client: libCEC version = 4.0.1, client version = 4.0.1, firmware version = 1, logical address(es) = Recorder 1 (1) , physical address: 1.0.0.0, git revision: 8.2.4+7-84fe69f~dirty, compiled on Sat Mar 24 18:32:38 UTC 2018 by chewitt@build1 on Linux 4.4.0-112-generic (x86_64), features: P8_USB, DRM, P8_detect, RPi
DEBUG: [ 153403] Recorder 1 (1): power status changed from 'on' to 'unknown'
DEBUG: [ 153403] Recorder 1 (1): vendor = Unknown (000000)
DEBUG: [ 153403] Recorder 1 (1): CEC version unknown
DEBUG: [ 153403] Recorder 1 (1): osd name set to 'Recorder 1'
DEBUG: [ 153403] marking Recorder 1 (1) as inactive source
DEBUG: [ 153403] Recorder 1 (1): device status changed into 'unknown'
DEBUG: [ 153403] unregistering all CEC clients
DEBUG: [ 154179] UnregisterLogicalAddress - releasing previous logical address
DEBUG: [ 154180] logical address changed to Broadcast (f)