Как отправлять команды HDMI-CEC с платы Amlogic 905x на телевизор с помощью sysfs

Я хочу отправить необработанные команды HDMI-CEC (оболочка adb) с платы Amlogic 905x ARM (Android 6) для проверки функциональности. Плата рутирована (проверено, «adb root» работает) и подключена к телевизору с возможностями CEC (включена, также протестирована с игровой консолью).

Прежде всего, я хочу уточнить, встроена ли основная функциональность, поэтому я предполагаю, что если правильная команда CEC отправлена ​​​​на правильный канал, я должен заметить какое-либо изменение в телевизоре.

Я хочу протестировать его на более низком уровне абстракции (думаю, sysfs подойдет, а http://www.cec-o-matic.com/ довольно просто описывает, как создавать командные строки), чтобы избежать сложности системной библиотеки на этом этапе.

Я заметил, что некоторые ребята добились положительных результатов при включении телевизора, используя:

#echo 0x40 0x04 > /sys/class/cec/cmd

С моей стороны это не сработало.

Я думаю, что у меня может быть другой файл класса, выделенный для этой цели, и я нашел '/sys/class/amhdmitx/amhdmitx0', который имеет множество конечных точек/файлов, предлагающих возможности ввода-вывода.

Я получил от устройства сведения о подключенном к нему телевизоре (EDID — расширенные идентификационные данные дисплея), используя:

#cat /sys/class/amhdmitx/amhdmitx0/edid

Это означает, что должен быть способ отправлять команды на телевизор, например, включение/выключение телевизора, изменение источника...

Попытался отправить в файл отладки, потому что нет доступного файла cmd, например, в «/sys/class/cec/cmd»:

#echo 0x40 0x04 > /sys/class/amhdmitx/amhdmitx0/debug

Кто-нибудь знает, как я могу это сделать, чтобы проверить процедуру отправки (устройство) -> (телевизор)?

Почему нет активности на телевизоре при использовании '/sys/class/cec/cmd'?

Какой файл лучше всего использовать для отправки шестнадцатеричных данных на телевизор?

Результат

cat /system/build.prop |grep hdmi && ls -l /dev/cec && ls -laht /sys/class/cec/ && settings list global |grep hdmi && echo 0x40 0x04 > /sys/class/cec/cmd && sleep 0.1 && cat /sys/class/cec/dump_reg && sleep 1 && cat /sys/class/cec/dump_reg

is

ro.sys.hdmiin.enable=true
mbx.hdmiin.switchfull=false
mbx.hdmiin.videolayer=false
ubootenv.var.hdmimode=
ro.hdmi.device_type=4
persist.sys.hdmi.keep_awake=false
crw-rw-rw- root     root     222,   0 2014-12-31 16:00 cec
-r--r--r-- root     root         4096 2018-05-08 08:47 arc_port
lrwxrwxrwx root     root              2018-05-08 08:47 cec -> ../../devices/aocec/cec
--w------- root     root         4096 2018-05-08 08:47 cmd
-rw-rw-r-- root     root         4096 2018-05-08 08:47 dbg_en
-rw-rw-r-- root     root         4096 2018-05-08 08:47 device_type
-r--r--r-- root     root         4096 2018-05-08 08:47 dump_reg
-rw-rw-r-- root     root         4096 2018-05-08 08:47 fun_cfg
-rw-rw-r-- root     root         4096 2018-05-08 08:47 menu_language
-r--r--r-- root     root         4096 2018-05-08 08:47 osd_name
-rw-rw-r-- root     root         4096 2018-05-08 08:47 physical_addr
-r--r--r-- root     root         4096 2018-05-08 08:47 port_num
-r--r--r-- root     root         4096 2018-05-08 08:47 port_seq
-r--r--r-- root     root         4096 2018-05-08 08:47 port_status
-rw-rw-r-- root     root         4096 2018-05-08 08:47 vendor_id
-r--r--r-- root     root         4096 2018-05-08 08:47 wake_up

person orouwk    schedule 26.03.2018    source источник
comment
Не могли бы вы поделиться результатом: cat /system/build.prop |grep hdmi && ls -l /dev/cec && ls -laht /sys/class/cec/ && settings list global |grep hdmi && echo 0x40 0x04 › / sys/class/cec/cmd && sleep 0.1 && cat /sys/class/cec/dump_reg && sleep 1 && cat /sys/class/cec/dump_reg   -  person while true    schedule 24.04.2018
comment
я отредактировал свой вопрос с информацией, которую вы запросили. спс за помощь и извините за задержку   -  person orouwk    schedule 08.05.2018
comment
пожалуйста, подтвердите, что вы добавили все выходные данные, потому что я не вижу ни файла dump_reg, ни его вывода. Благодарность   -  person while true    schedule 08.05.2018
comment
в какой-то момент у меня возникла ошибка, говорящая, что ls -h и -t не распознаны, и мне пришлось удалить их, чтобы получить этот вывод. в основном я сбрасывал все в файл и копировал/вставлял оттуда. это весь вывод, который я получил   -  person orouwk    schedule 08.05.2018
comment
@whiletrue мне нужна твоя помощь по поводу cec, я выполнил эту команду и получил результаты   -  person Zaigham Raza    schedule 10.09.2018
comment
Я больше не с этим в руках, но я могу попытаться помочь вам. Дайте мне знать, каковы команды, результаты и ваш вопрос. Вы также можете опубликовать новый вопрос на stackoverflow и указать мне туда, если хотите написать более подробно.   -  person while true    schedule 10.09.2018
comment
@whiletrue Можете ли вы поделиться / предложить что-то, что может помочь мне в том, как передавать команды с Android TV Box на телевизор через hdmi-cec для включения / выключения телевизора.   -  person hio    schedule 27.10.2020
comment
Вы проверили это stackoverflow.com/ вопросы/47892639/hdmi-cec-on-android/ ?   -  person while true    schedule 27.10.2020