1

I've just installed libcec on my Raspberry Pi B+ with (raspbian on it), following the instructions from here (https://nyxi.eu/blog/2013/04/15/raspbian-libcec/).

I want to be able to turn on/off the tv via the echo "on 0" | cec-client -s and echo "standby 0" | cec-client -s commands. But they don't work.

--

Here's what errors/logs I get on echo "standby 0" | cec-client -s :

DEBUG:   [             123] unregistering all CEC clients
DEBUG:   [             127] Broadcast (F): osd name set to 'Broadcast'
DEBUG:   [             131] InitHostCEC - vchiq_initialise succeeded
DEBUG:   [             134] InitHostCEC - vchi_initialise succeeded
DEBUG:   [             137] InitHostCEC - vchi_connect succeeded
DEBUG:   [             141] logical address changed to Free use (e)
DEBUG:   [             145] Open - vc_cec initialised
NOTICE:  [             148] connection opened
DEBUG:   [             152] << Broadcast (F) -> TV (0): POLL
DEBUG:   [             155] initiator 'Broadcast' is not supported by the CEC adapter. using 'Free use' instead
DEBUG:   [             158] processor thread started
TRAFFIC: [             162] << e0
DEBUG:   [             226] initiator 'Broadcast' is not supported by the CEC adapter. using 'Free use' instead
TRAFFIC: [             229] << e0
DEBUG:   [             322] >> POLL not sent
DEBUG:   [             325] TV (0): device status changed into 'not present'
NOTICE:  [             329] registering new CEC client - v2.2.0
DEBUG:   [             332] detecting logical address for type 'recording device'
DEBUG:   [             335] trying logical address 'Recorder 1'
DEBUG:   [             339] << Recorder 1 (1) -> Recorder 1 (1): POLL
TRAFFIC: [             342] << 11
TRAFFIC: [             436] << 11
DEBUG:   [             529] >> POLL not sent
DEBUG:   [             532] using logical address 'Recorder 1'
DEBUG:   [             536] Recorder 1 (1): device status changed into 'handled by libCEC'
DEBUG:   [             540] Recorder 1 (1): power status changed from 'unknown' to 'on'
DEBUG:   [             544] Recorder 1 (1): vendor = Pulse Eight (001582)
DEBUG:   [             548] Recorder 1 (1): CEC version 1.4
DEBUG:   [             551] AllocateLogicalAddresses - device '0', type 'recording device', LA '1'
DEBUG:   [             556] logical address changed to Recorder 1 (1)
DEBUG:   [             560] Recorder 1 (1): osd name set to 'CECTester'
DEBUG:   [             564] Recorder 1 (1): menu language set to 'eng'
DEBUG:   [             568] GetPhysicalAddress - physical address = 2000
DEBUG:   [             573] AutodetectPhysicalAddress - autodetected physical address '2000'
DEBUG:   [             577] Recorder 1 (1): physical address changed from ffff to 2000
DEBUG:   [             581] << Recorder 1 (1) -> broadcast (F): physical adddress 2000
TRAFFIC: [             586] << 1f:84:20:00:01
NOTICE:  [             741] CEC client registered: libCEC version = 2.2.0, client version = 2.2.0, firmware version = 1, logical address(es) = Recorder 1 (1) , physical address: 2.0.0.0, host: armv6l-unknown-linux-gnueabihf, features: 'P8 USB' 'P8 USB detect' 'RPi' 'EXYNOS', git revision: 9f000e4, compiled on: Thu Feb  5 19:25:20 UTC 2015 by root@raspberrypi on Linux 3.12.28+ (armv6l)
DEBUG:   [             753] << Recorder 1 (1) -> TV (0): OSD name 'CECTester'
DEBUG:   [             758] << Recorder 1 (1) -> TV (0): POLL
TRAFFIC: [             763] << 10
TRAFFIC: [             858] << 10
DEBUG:   [             953] >> POLL not sent
DEBUG:   [             957] not sending command 'set osd name': destination device 'TV' marked as not present
DEBUG:   [             962] << requesting power status of 'TV' (0)
DEBUG:   [             967] << Recorder 1 (1) -> TV (0): POLL
TRAFFIC: [             971] << 10
TRAFFIC: [            1066] << 10
DEBUG:   [            1161] >> POLL not sent
DEBUG:   [            1165] not sending command 'give device power status': destination device 'TV' marked as not present
DEBUG:   [            1171] << Recorder 1 (1) -> TV (0): POLL
TRAFFIC: [            1176] << 10
TRAFFIC: [            1271] << 10
DEBUG:   [            1366] >> POLL not sent
NOTICE:  [            1370] << putting 'TV' (0) in standby mode
DEBUG:   [            1374] << Recorder 1 (1) -> TV (0): POLL
TRAFFIC: [            1379] << 10
TRAFFIC: [            1474] << 10
DEBUG:   [            1569] >> POLL not sent
DEBUG:   [            1573] not sending command 'standby': destination device 'TV' marked as not present
DEBUG:   [            1578] unregistering all CEC clients
NOTICE:  [            1582] unregistering client: libCEC version = 2.2.0, client version = 2.2.0, firmware version = 1, logical address(es) = Recorder 1 (1) , physical address: 2.0.0.0, host: armv6l-unknown-linux-gnueabihf, features: 'P8 USB' 'P8 USB detect' 'RPi' 'EXYNOS', git revision: 9f000e4, compiled on: Thu Feb  5 19:25:20 UTC 2015 by root@raspberrypi on Linux 3.12.28+ (armv6l)
DEBUG:   [            1596] Recorder 1 (1): power status changed from 'on' to 'unknown'
DEBUG:   [            1601] Recorder 1 (1): vendor = Unknown (000000)
DEBUG:   [            1606] Recorder 1 (1): CEC version unknown
DEBUG:   [            1611] Recorder 1 (1): osd name set to 'Recorder 1'
DEBUG:   [            1615] Recorder 1 (1): device status changed into 'unknown'
DEBUG:   [            1620] unregistering all CEC clients
DEBUG:   [            2167] UnregisterLogicalAddress - releasing previous logical address
DEBUG:   [            2172] logical address changed to Broadcast (f)

--

Also, the following is what I get on echo "scan" | cec-client -s :

DEBUG:   [             130] unregistering all CEC clients
DEBUG:   [             136] Broadcast (F): osd name set to 'Broadcast'
DEBUG:   [             141] InitHostCEC - vchiq_initialise succeeded
DEBUG:   [             145] InitHostCEC - vchi_initialise succeeded
DEBUG:   [             150] InitHostCEC - vchi_connect succeeded
DEBUG:   [             155] logical address changed to Free use (e)
DEBUG:   [             159] Open - vc_cec initialised
NOTICE:  [             164] connection opened
DEBUG:   [             169] << Broadcast (F) -> TV (0): POLL
DEBUG:   [             174] initiator 'Broadcast' is not supported by the CEC adapter. using 'Free use' instead
TRAFFIC: [             178] << e0
DEBUG:   [             179] processor thread started
DEBUG:   [             248] initiator 'Broadcast' is not supported by the CEC adapter. using 'Free use' instead
TRAFFIC: [             253] << e0
DEBUG:   [             348] >> POLL not sent
DEBUG:   [             352] TV (0): device status changed into 'not present'
NOTICE:  [             357] registering new CEC client - v2.2.0
DEBUG:   [             362] detecting logical address for type 'recording device'
DEBUG:   [             366] trying logical address 'Recorder 1'
DEBUG:   [             371] << Recorder 1 (1) -> Recorder 1 (1): POLL
TRAFFIC: [             376] << 11
TRAFFIC: [             471] << 11
DEBUG:   [             566] >> POLL not sent
DEBUG:   [             570] using logical address 'Recorder 1'
DEBUG:   [             575] Recorder 1 (1): device status changed into 'handled by libCEC'
DEBUG:   [             579] Recorder 1 (1): power status changed from 'unknown' to 'on'
DEBUG:   [             583] Recorder 1 (1): vendor = Pulse Eight (001582)
DEBUG:   [             587] Recorder 1 (1): CEC version 1.4
DEBUG:   [             591] AllocateLogicalAddresses - device '0', type 'recording device', LA '1'
DEBUG:   [             596] logical address changed to Recorder 1 (1)
DEBUG:   [             601] Recorder 1 (1): osd name set to 'CECTester'
DEBUG:   [             605] Recorder 1 (1): menu language set to 'eng'
DEBUG:   [             609] GetPhysicalAddress - physical address = 2000
DEBUG:   [             614] AutodetectPhysicalAddress - autodetected physical address '2000'
DEBUG:   [             618] Recorder 1 (1): physical address changed from ffff to 2000
DEBUG:   [             622] << Recorder 1 (1) -> broadcast (F): physical adddress 2000
TRAFFIC: [             626] << 1f:84:20:00:01
NOTICE:  [             781] CEC client registered: libCEC version = 2.2.0, client version = 2.2.0, firmware version = 1, logical address(es) = Recorder 1 (1) , physical address: 2.0.0.0, host: armv6l-unknown-linux-gnueabihf, features: 'P8 USB' 'P8 USB detect' 'RPi' 'EXYNOS', git revision: 9f000e4, compiled on: Thu Feb  5 19:25:20 UTC 2015 by root@raspberrypi on Linux 3.12.28+ (armv6l)
DEBUG:   [             794] << Recorder 1 (1) -> TV (0): OSD name 'CECTester'
DEBUG:   [             799] << Recorder 1 (1) -> TV (0): POLL
TRAFFIC: [             804] << 10
TRAFFIC: [             899] << 10
DEBUG:   [             994] >> POLL not sent
DEBUG:   [             999] not sending command 'set osd name': destination device 'TV' marked as not present
DEBUG:   [            1004] << requesting power status of 'TV' (0)
DEBUG:   [            1008] << Recorder 1 (1) -> TV (0): POLL
TRAFFIC: [            1013] << 10
TRAFFIC: [            1108] << 10
DEBUG:   [            1202] >> POLL not sent
DEBUG:   [            1207] not sending command 'give device power status': destination device 'TV' marked as not present
DEBUG:   [            1216] << Recorder 1 (1) -> TV (0): POLL
TRAFFIC: [            1221] << 10
TRAFFIC: [            1316] << 10
DEBUG:   [            1411] >> POLL not sent
DEBUG:   [            1416] << Recorder 1 (1) -> Recorder 2 (2): POLL
TRAFFIC: [            1420] << 12
TRAFFIC: [            1515] << 12
DEBUG:   [            1610] >> POLL not sent
DEBUG:   [            1615] Recorder 2 (2): device status changed into 'not present'
DEBUG:   [            1619] << Recorder 1 (1) -> Tuner 1 (3): POLL
TRAFFIC: [            1624] << 13
TRAFFIC: [            1719] << 13
DEBUG:   [            1814] >> POLL not sent
DEBUG:   [            1818] Tuner 1 (3): device status changed into 'not present'
DEBUG:   [            1823] << Recorder 1 (1) -> Playback 1 (4): POLL
TRAFFIC: [            1827] << 14
TRAFFIC: [            1922] << 14
DEBUG:   [            2017] >> POLL not sent
DEBUG:   [            2021] Playback 1 (4): device status changed into 'not present'
DEBUG:   [            2026] << Recorder 1 (1) -> Audio (5): POLL
TRAFFIC: [            2030] << 15
TRAFFIC: [            2125] << 15
DEBUG:   [            2219] >> POLL not sent
DEBUG:   [            2223] Audio (5): device status changed into 'not present'
DEBUG:   [            2226] << Recorder 1 (1) -> Tuner 2 (6): POLL
TRAFFIC: [            2230] << 16
TRAFFIC: [            2325] << 16
DEBUG:   [            2419] >> POLL not sent
DEBUG:   [            2423] Tuner 2 (6): device status changed into 'not present'
DEBUG:   [            2426] << Recorder 1 (1) -> Tuner 3 (7): POLL
TRAFFIC: [            2430] << 17
TRAFFIC: [            2524] << 17
DEBUG:   [            2618] >> POLL not sent
DEBUG:   [            2622] Tuner 3 (7): device status changed into 'not present'
DEBUG:   [            2626] << Recorder 1 (1) -> Playback 2 (8): POLL
TRAFFIC: [            2630] << 18
TRAFFIC: [            2723] << 18
DEBUG:   [            2817] >> POLL not sent
DEBUG:   [            2821] Playback 2 (8): device status changed into 'not present'
DEBUG:   [            2824] << Recorder 1 (1) -> Recorder 3 (9): POLL
TRAFFIC: [            2828] << 19
TRAFFIC: [            2922] << 19
DEBUG:   [            3016] >> POLL not sent
DEBUG:   [            3019] Recorder 3 (9): device status changed into 'not present'
DEBUG:   [            3023] << Recorder 1 (1) -> Tuner 4 (A): POLL
TRAFFIC: [            3026] << 1a
TRAFFIC: [            3120] << 1a
DEBUG:   [            3214] >> POLL not sent
DEBUG:   [            3217] Tuner 4 (A): device status changed into 'not present'
DEBUG:   [            3221] << Recorder 1 (1) -> Playback 3 (B): POLL
TRAFFIC: [            3225] << 1b
TRAFFIC: [            3319] << 1b
DEBUG:   [            3412] >> POLL not sent
DEBUG:   [            3416] Playback 3 (B): device status changed into 'not present'
DEBUG:   [            3420] << Recorder 1 (1) -> Reserved 1 (C): POLL
TRAFFIC: [            3423] << 1c
TRAFFIC: [            3517] << 1c
DEBUG:   [            3611] >> POLL not sent
DEBUG:   [            3614] Reserved 1 (C): device status changed into 'not present'
DEBUG:   [            3618] << Recorder 1 (1) -> Reserved 2 (D): POLL
TRAFFIC: [            3622] << 1d
TRAFFIC: [            3716] << 1d
DEBUG:   [            3810] >> POLL not sent
DEBUG:   [            3813] Reserved 2 (D): device status changed into 'not present'
DEBUG:   [            3817] << Recorder 1 (1) -> Free use (E): POLL
TRAFFIC: [            3821] << 1e
TRAFFIC: [            3914] << 1e
DEBUG:   [            4008] >> POLL not sent
DEBUG:   [            4012] Free use (E): device status changed into 'not present'
DEBUG:   [            4016] << requesting active source
TRAFFIC: [            4019] << 1f:85
DEBUG:   [            5084] expected response not received (82: active source)
TRAFFIC: [            5091] << 1f:85
DEBUG:   [            6157] expected response not received (82: active source)
DEBUG:   [            6161] << requesting active source
TRAFFIC: [            6164] << 1f:85
DEBUG:   [            7229] expected response not received (82: active source)
TRAFFIC: [            7233] << 1f:85
DEBUG:   [            8297] expected response not received (82: active source)
DEBUG:   [            8343] unregistering all CEC clients
NOTICE:  [            8347] unregistering client: libCEC version = 2.2.0, client version = 2.2.0, firmware version = 1, logical address(es) = Recorder 1 (1) , physical address: 2.0.0.0, host: armv6l-unknown-linux-gnueabihf, features: 'P8 USB' 'P8 USB detect' 'RPi' 'EXYNOS', git revision: 9f000e4, compiled on: Thu Feb  5 19:25:20 UTC 2015 by root@raspberrypi on Linux 3.12.28+ (armv6l)
DEBUG:   [            8358] Recorder 1 (1): power status changed from 'on' to 'unknown'
DEBUG:   [            8362] Recorder 1 (1): vendor = Unknown (000000)
DEBUG:   [            8366] Recorder 1 (1): CEC version unknown
DEBUG:   [            8370] Recorder 1 (1): osd name set to 'Recorder 1'
DEBUG:   [            8374] Recorder 1 (1): device status changed into 'unknown'
DEBUG:   [            8378] unregistering all CEC clients
DEBUG:   [            9192] UnregisterLogicalAddress - releasing previous logical address
DEBUG:   [            9197] logical address changed to Broadcast (f)

--

And the following is what I get on cec-client -l :

Found Devices: 1

device: 1
com port: RPI
vendor id: 2708
product id: 1001
firmware version: 1
type: Raspberry Pi

It's also worth mentioning that I enable Simplink on my LG tv. However, its status is always Check Connection.

Any ideas !? What is causing the problem?

EDIT:

I checked the connectivity of pin 13 on my HDMI cable (which belongs to CEC), and it was OK.

I still don't understand why I should change the cable!

  • Anybody has any ideas? – Omid1989 Feb 7 '15 at 14:15
  • I checked the connectivity of pin 13 on my HDMI cable (which belongs to CEC), and it was OK. I still don't understand why I should change the cable! – Omid1989 Feb 8 '15 at 8:03
1

I'm not a libCEC user, but a quick glance round their site revealed something on the vendor support page regarding implementation of the "standby" feature for LG products; namely that it is "supported by all devices except TVs".

I'm not sure if that explains all your problems or not. LibCEC's front page does have a "More" section at the bottom with some contact information, you could ask them directly about this.

| improve this answer | |
  • Thanks @goldilocks for your answer. I saw the vendor support page. It's sad that LG TVs don't support standby options over CEC. However, the problem now is that I cannot establish any CEC connection with my TV. Some people say that the problem is HDMI cable. I don't know! – Omid1989 Feb 7 '15 at 15:59
  • I checked the connectivity of pin 13 on my HDMI cable (which belongs to CEC), and it was OK. I still don't understand why I should change the cable! – Omid1989 Feb 8 '15 at 8:03
  • I changed my HDMI cable to a Sony cable 3D version, and also changed the TV to samsung. Now it works ;) – Omid1989 Jun 20 '15 at 11:31
4

LG TVs do not support suspending over CEC. If you interested, take a look into my kodi screensaver - it does it over LAN.

https://github.com/filimonic/Kodi.Screensaver.TurnOffLGTV

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.