Quantcast
Channel: FreakTab - Freaktab Forums
Viewing all articles
Browse latest Browse all 11099

hdmi-cec over i2c Android

$
0
0
I have android tv box cs918 q7 with android version 4.4.2, and there is IT66121 hdmi controller. At least there is no drivers for it but I can access it with i2ctools over i2c-2 at 0x4c address.
Code:
root@rk3188:/ # i2cdump -y -f 2 0x4c
No size specified (using byte-data access)
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
00: 54 49 12 16 01 60 00 00 00 22 f8 f7 ff ff 72 08    TI???`..."??..r?
10: 91 a0 e0 20 00 ff 83 c0 00 74 e0 03 00 40 ff 00    ??? ..??.t??.@..
20: 00 ff 00 c5 30 9d 03 7a d8 3c 40 97 0f 11 81 4e    ...?0??z?<@????N
30: b7 bf 5f fd e3 f0 9e f5 15 dc f7 15 3b 14 8a 04    ??_?????????;???
40: 27 09 67 00 d3 17 00 00 4a 22 c8 10 2a a5 00 eb    '?g.??..J"??*?.?
50: 70 73 67 30 86 5b 5b f5 15 49 03 fe 00 94 5f c8    psg0?[[??I??.?_?
60: 93 02 18 18 1d 00 1f 00 10 30 00 ff ff ff ff ff    ?????.?.?0......
70: 01 1c 00 00 80 00 b8 05 b4 01 93 00 49 3c 18 04    ??..?.?????.I<??
80: 9f 3f d9 3c 10 3f 18 04 01 00 ff ff ff 9c 00 00    ???<?????....?..
90: 00 a9 e4 90 71 b4 a8 20 dd 34 43 38 2f 37 02 08    .???q?? ?4C8/7??
a0: 08 8c ce 31 84 04 c6 b8 00 2e 6c c4 62 a9 a5 e3    ???1????..l?b???
b0: 24 25 24 ff ff ff ff ff ff ff ff ff ff ff ff 00    $%$.............
c0: 01 02 19 08 c0 04 03 ff ff 00 00 ff ff 03 03 ff    ???????......??.
d0: 00 6c 00 ff ff ff ff 0e e7 ff ff ff ff ff ff ff    .l.....??.......
e0: c1 01 e4 00 00 00 00 20 00 ff ff ff 7f ff 00 ff    ???.... ....?...
f0: 00 ff ff 18 00 02 ff ff ff ff ff ff ff ff ff ff    ...?.?..........
As http://rockchip.fr/radxa/IT66121_Reg...lease_V1.0.pdf says 0x0F address is for enableing cec, so after writing 0x00 to 0x0F i was able to see new address 0x4e in i2c-2

Code:
root@rk3188:/ # i2cdetect -y -r 2
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- UU -- 4e --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
After i2cdump this addres i got what i expected to see:
Code:
root@rk3188:/ # i2cdump -y -f 2 0x4e
No size specified (using byte-data access)
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
00: ff ff ff ff ff ff ff 00 48 20 00 14 59 50 ff ff    ........H .?YP..
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
20: 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff    ................
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
40: 00 00 00 00 42 9a f2 0e 00 00 00 00 00 ff ff ff    ....B???........
50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................
from address 0x10 till 0x23 there is CEC Initiator Registers from address 0x30 till 0x43 there is CEC Follower Registers And last registers is MISC.
to fire cec command: in 0x08 register write 0x88.
So everything looks good but... i cant get any answer from follower, except CEC follower received bytes and only then when message is broadcasted. I`m doing something wrong? or maybe there must be some kind of handshake before comunication? and maybe CEC Initiator Register 0x22 and 0x23 is fault? That i want is just tu turn on/standby TVs from my app.

Viewing all articles
Browse latest Browse all 11099

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>