Команда HDMI CEC для выключения не работает на Android

Я отправляю команду HDMI CEC для включения и режима ожидания моего телевизора LG LED TV 2015 года выпуска. Устройство представляет собой SBC на базе Amlogic S922x под управлением Android 9. Команды включения работают, а команды режима ожидания - нет. Может кто подскажет, что с этим не так?

Команда включения питания (работает): echo 0x40 0x04 > /sys/class/cec/cmd

Команда выключения питания (не работает): echo 0x40 0x36 > /sys/class/cec/cmd

Вывод echo 0x40 0x36 > /sys/class/cec/cmd && sleep 0.1 && cat /sys/class/cec/dump_reg

AO_RTI_PWR_CNTL_REG0: 0x00004200
AO_CEC_GEN_CNTL: 0x00000000
AO_CECB_CLK_CNTL_REG0:  0xd02db2dc
AO_CECB_CLK_CNTL_REG1:  0x0000a007
AO_CECB_GEN_CNTL:   0x0000710a
AO_CECB_RW_REG: 0x02010300
AO_CECB_INTR_MASKN:0x0000003f
AO_CECB_INTR_STAT: 0x00000000
CEC MODULE REGS:
CEC_CTRL      = 0x03
CEC_MASK      = 0x00
CEC_ADDR_L   = 0x10
CEC_ADDR_H   = 0x00
CEC_TX_CNT   = 0x05
CEC_RX_CNT   = 0x02
CEC_LOCK      = 0x00
CEC_WKUPCTRL = 0x10
RX buffer: 04 83 00 e0 91 00 00 00 00 00 00 00 00 00 00 00
TX buffer: 4f 84 10 00 04 00 00 00 00 00 00 00 00 00 00 00

1 ответ

Попробуйте 0xF0 0x36 вместо 0x40 0x36.

Получите коды здесь: https://www.cec-o-matic.com/ Похоже, что 0x40 - это когда источник - "воспроизведение 1". Если вы установите источник как "незарегистрированный", результирующий код для режима ожидания будет 0xF0 0x36. У меня работал на Amlogic и Samsung TV.

Другие вопросы по тегам