首頁 收藏 QQ群
 網(wǎng)站導(dǎo)航

ZNDS智能電視網(wǎng) 推薦當(dāng)貝市場(chǎng)

TV應(yīng)用下載 / 資源分享區(qū)

軟件下載 | 游戲 | 討論 | 電視計(jì)算器

綜合交流 / 評(píng)測(cè) / 活動(dòng)區(qū)

交流區(qū) | 測(cè)硬件 | 網(wǎng)站活動(dòng) | Z幣中心

新手入門 / 進(jìn)階 / 社區(qū)互助

新手 | 你問我答 | 免費(fèi)刷機(jī)救磚 | ROM固件

查看: 697614|回復(fù): 293
上一主題 下一主題
[分享]

魔百盒----盤盒小記(切換IPTV桌面/開啟ADBD//備份修改boot分區(qū))

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2019-4-26 20:12 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式 | 來自廣西
本帖最后由 wx69wx 于 2019-4-26 20:36 編輯

      家里機(jī)頂盒又換成了移動(dòng)的魔百盒cm101s-2,不能安裝第三方應(yīng)用,不爽之,所以就有了如下的折騰之旅。首先要感謝壇子各大佬帖子的指引才有此文。
     1、安裝當(dāng)貝桌面
      根據(jù)論壇帖子搜索,盒子沒有打開ADB的隱藏開關(guān),只能通過TTL線調(diào)試,正好手頭有根USB轉(zhuǎn)RS232的線,想著能否通用,所以拆開按引腳定義接了下盒子,結(jié)果發(fā)現(xiàn)PUTTY 跑碼是亂碼,試了多種碼率都不行,上網(wǎng)一查才知道USB/RS232/TTL電平邏輯是不一樣的,中間需要轉(zhuǎn)換芯片,所以最后還是買了根USB TO TTL線,PUTTY跑馬正常了。然后安裝上當(dāng)貝桌面等應(yīng)用。
      2、切換IPTV桌面與當(dāng)貝桌面
        進(jìn)IPTV是無法返回當(dāng)貝的,參照之前的做法 http://ktgpgw.cn/forum.php?mod=viewthread&tid=975562
        找到一個(gè)啟動(dòng)會(huì)執(zhí)行的腳本etc/init.bigfish.sh(init.rc----init.bigfish.rc----init.bigfish.sh)
         添加如下代碼
  • while [ 1 ]
  • do
  •         rm_code=`getevent -c 1 /dev/input/event0`
  •         if [ "$rm_code" = "0001 02f2 00000000" ] ; then
  •            print $rm_code
  •            am start -n com.dangbei.tvlauncher/com.dangbei.tvlauncher.IndexActivity
  •        start   adbd
  •        fi
  • done
          這里說下如何找到自己的切屏熱鍵碼,在TTL調(diào)試環(huán)境下輸入 getevent  然后遙控器按一下自己想設(shè)置的切屏鍵(注意是沒有用或很少用的,比如我選擇的是“應(yīng)用”這個(gè)按鍵,然后就可以看見事件和按鍵碼,如我的 /dev/input/event0 和
0001 02f2 00000000,然后可以用getevent -c 1 /dev/input/event0測(cè)試,看看返回的是否對(duì)。

          做完上面的事情后發(fā)現(xiàn)要調(diào)試盒子,每次都要拆機(jī)接TTL線太麻煩,所以靈機(jī)一動(dòng),直接在上面代碼里添加start adbd不就解決了,然后就可以用筆記本 adb connect  XXXX(盒子IP):5114 調(diào)試了(注:我的盒子是已在init.rc里定義了端口號(hào)5114,如下

on boot
setprop service.adb.tcp.port 5114

stop adbd

如init.rc里沒定義,也可在上面的按鍵代碼start adbd前增加setprop service.adb.tcp.port YYYY(自定義端口)
          至此,我們完成了切屏和啟動(dòng)ADB的熱鍵功能。
         
        3、制作分區(qū)表和備份boot分區(qū)
           上面總覺得沒玩過癮,如果能直接更改init.rc最好,以前修改過發(fā)現(xiàn)不行,上網(wǎng)搜索只能燒錄(部分分區(qū)是燒錄的,直接修改無效,比如fastboot/boot(kernel)等,而system/data重新掛載為讀寫,是可以直接修改的
,這時(shí)剛好看到大佬的帖子http://ktgpgw.cn/forum.php?mod=viewthread&tid=1139749&page=

于是下載了HITOOL研究(我下了最新版5.0.27,稍后共享),首先我們沒有分區(qū)表文件,使用帖子的辦法居然失敗,原因是我的TTL跑馬里根本沒有各分區(qū)信息。只能自己琢磨了,終于找到辦法如下:
root@Hi3798MV100:/ # cat /proc/partitions           可以等到各分區(qū)大?。ǖ?列數(shù)據(jù))
major minor  #blocks  name

179        0    7570432 mmcblk0                總的大小
179        1       1024 mmcblk0p1              如:第一個(gè)分區(qū)大小1M
179        2       1024 mmcblk0p2
179        3      10240 mmcblk0p3
179        4       2048 mmcblk0p4
179        5       8192 mmcblk0p5
179        6       8192 mmcblk0p6
179        7      20480 mmcblk0p7
259        0      20480 mmcblk0p8
259        1      35840 mmcblk0p9
。。。。

   然后顯示 /dev/block/platform/hi_mci.1/by-name目錄下內(nèi)容,可以得到各分區(qū)的名稱。
root@Hi3798MV100:/dev/block/platform/hi_mci.1/by-name # ls -al
lrwxrwxrwx root     root              1970-01-01 08:00 baseparam -> /dev/block/mmcblk0p5
lrwxrwxrwx root     root              1970-01-01 08:00 bootargs -> /dev/block/mmcblk0p2
lrwxrwxrwx root     root              1970-01-01 08:00 cache -> /dev/block/mmcblk0p20
lrwxrwxrwx root     root              1970-01-01 08:00 deviceinfo -> /dev/block/mmcblk0p4
lrwxrwxrwx root     root              1970-01-01 08:00 fastboot -> /dev/block/mmcblk0p1
lrwxrwxrwx root     root              1970-01-01 08:00 fastplay -> /dev/block/mmcblk0p9
lrwxrwxrwx root     root              1970-01-01 08:00 fastplaybak -> /dev/block/mmcblk0p10
lrwxrwxrwx root     root              1970-01-01 08:00 hibdrv -> /dev/block/mmcblk0p15
lrwxrwxrwx root     root              1970-01-01 08:00 kernel -> /dev/block/mmcblk0p12
lrwxrwxrwx root     root              1970-01-01 08:00 logo -> /dev/block/mmcblk0p7
lrwxrwxrwx root     root              1970-01-01 08:00 logobak -> /dev/block/mmcblk0p8
lrwxrwxrwx root     root              1970-01-01 08:00 misc -> /dev/block/mmcblk0p13
。。。。。

后來在研究HITOOL備份和燒錄時(shí)又找到了第二種方法:
在TTL連接啟動(dòng)過程中,putty里跑馬時(shí)按CTRL+C,啟動(dòng)會(huì)中斷在fastboot模式下,輸入help有多個(gè)命令使用,其中printenv就可以看到分區(qū)信息,如下:
fastboot# printenv
bootdelay=0
verify=n
baudrate=115200
ipaddr=192.168.1.10
serverip=192.168.1.1
netmask=255.255.255.0
bootfile="uImage"
phy_intf=mii,rgmii
use_mdio=0,1
phy_addr=2,1
gmac_debug=0
bootcmd=mmc read 0 0x1FFBFC0 0x4B000 0x5000; bootm 0x1FFBFC0
bootargs=console=ttyAMA0,115200 lpj=974848 quiet blkdevparts=mmcblk0:1M(fastboot),1M(bootargs),10M(recovery),2M(deviceinfo),8M(baseparam),8M(pqparam),20M(logo),20M(logobak),35M(fastplay),35M(fastplaybak),10M(ystinfo),40M(kernel),20M(misc),8M(userapi),8M(hibdrv),8M(qbflag),300M(qbdata),800M(system),2048M(userdata),500M(cache),50M(private),-(sdcard)
      我們的boot分區(qū)根據(jù)經(jīng)驗(yàn)就是kernel,先備份下,備份方法有很多,比如
    cat   /dev/block/platform/hi_mci.1/by-name/kernel  > boot.img
    dd if=/dev/block/mmcblk0p12 of=/mnt/sdcard/boot.img   
     hitool的上載備份
     在使用HITOOL上載和燒錄功能時(shí),我被制裁了,使用網(wǎng)口方式怎么都不成功,老是顯示TTTTT (網(wǎng)絡(luò)未連接), 使用串口方式可以,但那個(gè)慢啊,畢竟時(shí)115200bps(換算出來也就10K/S左右),后來終于解決了,折騰過程就不說了,提醒各位同學(xué)如下:
a、一定要使用網(wǎng)線連接,不要用WiFi  (否則雙方都ping不通)
b、一定要關(guān)閉筆記本的windows防火墻(因?yàn)閭浞轃涍^程時(shí)由機(jī)頂盒連接PC,所以檢查PC能否ping通機(jī)頂盒沒用,需要機(jī)頂盒ping通PC)
重要的事情要說三遍。

            4、修改boot分區(qū)
           boot映像并不是一個(gè)完整的文件系統(tǒng),是一種android自定義的文件格式,該格式包括了2K的文件頭,后面緊跟著是用gzip壓縮過的內(nèi)核,再后面是一個(gè)ramdisk內(nèi)存盤等等
            之前因?yàn)橥孢^手機(jī),感覺機(jī)頂盒和手機(jī)差不多,所以該祭出大殺器bootimg工具了(稍后共享),前面?zhèn)浞莺胟ernel分區(qū)(boot.img), 將他放在bootimg工具目錄下,使用命令bootimg --unpack-bootimg 解包后可以得到initd文件夾,現(xiàn)在我們可以自由修改init.rc 了,比如etc下新建user.sh, 添加上面的切屏按鍵代碼,然后在init.rc末尾添加
            
  • service usersh /system/etc/user..sh
  •     class main
  •     user root
  •     group root

         修改好后,在使用命令bootimg   --repack-bootimg打包成新鏡像文件(注:文件大小會(huì)變小很多,對(duì)比原景象文件,是原景象要湊齊分區(qū)大小,末尾都是0,所以不影響使用),直接用hitool 燒錄即可。
          注:同學(xué)如有興趣,也可以進(jìn)入fastboot模式,研究使用手動(dòng)tftp命令燒錄

文中提到的HITOOL-STB- 5.0.27和bootimg工具百度網(wǎng)盤鏈接如下:
鏈接:https://pan.baidu.com/s/16BPGqnIJQ3_CRz9YFyMQRg
提取碼:hpx5

   

評(píng)分

參與人數(shù) 4威望 +9 金幣 +23 Z幣 +1 收起 理由
wx_QRw0DG93 + 1 + 5 強(qiáng)大的ZNDS智能電視網(wǎng)!
橋大叔 + 6 開門,社區(qū)送溫暖...
撇捺 + 4 + 8 ZNDS論壇有你更精彩,一起愉快的搞機(jī)吧!.
eswgdeh + 4 + 4 + 1 ZNDS論壇有你更精彩,一起愉快的搞機(jī)吧!.

查看全部評(píng)分


上一篇:魔百盒cm101s無法待機(jī)
下一篇:小愛觸屏音箱安裝軟件 求助大神
推薦
發(fā)表于 2019-4-27 17:20 | 只看該作者 | 來自廣東
板凳
發(fā)表于 2019-4-27 10:22 | 只看該作者 | 來自浙江
高手在當(dāng)貝啊!這次真的長(zhǎng)見識(shí)了
地板
發(fā)表于 2019-4-27 10:35 | 只看該作者 | 來自河南
謝謝分享樓主
5#
發(fā)表于 2019-4-27 10:51 | 只看該作者 | 來自山東
先把機(jī)器刷成磚,再把磚頭刷成機(jī)器,我都佩服自己在ZNDS學(xué)到的刷機(jī)技術(shù)!
6#
發(fā)表于 2019-4-27 11:48 來自ZNDS手機(jī)版 | 只看該作者 | 來自江蘇
有料,收藏!
7#
發(fā)表于 2019-4-28 13:19 | 只看該作者 | 來自黑龍江
高手在當(dāng)貝??!學(xué)習(xí)了
8#
發(fā)表于 2019-4-28 13:27 | 只看該作者 | 來自湖南
高手在當(dāng)貝??!學(xué)習(xí)了
9#
發(fā)表于 2019-4-28 16:02 | 只看該作者 | 來自山東
cat   /dev/block/platform/hi_mci.1/by-name/kernel  > boot.img
10#
發(fā)表于 2019-4-28 16:19 來自ZNDS手機(jī)版 | 只看該作者 | 來自浙江
厲害了
頭像被屏蔽
11#
發(fā)表于 2019-4-28 16:27 | 只看該作者 | 來自山東
先把機(jī)器刷成磚,再把磚頭刷成機(jī)器,我都佩服自己在ZNDS學(xué)到的刷機(jī)技術(shù)!
12#
發(fā)表于 2019-4-28 16:27 | 只看該作者 | 來自河北
這個(gè)有點(diǎn)厲害了
13#
發(fā)表于 2019-4-28 16:28 | 只看該作者 | 來自云南
專業(yè)級(jí)別的老師感謝分享
14#
發(fā)表于 2019-4-28 19:00 | 只看該作者 | 來自山東
高手在當(dāng)貝?。W(xué)習(xí)了
15#
發(fā)表于 2019-4-28 22:46 來自ZNDS手機(jī)版 | 只看該作者 | 來自湖北
(切換IPTV桌面/開啟ADBD//備份修改boot分區(qū))

本版積分規(guī)則

Archiver|新帖|標(biāo)簽|軟件|Sitemap|ZNDS智能電視網(wǎng) ( 蘇ICP備2023012627號(hào) )

網(wǎng)絡(luò)信息服務(wù)信用承諾書 | 增值電信業(yè)務(wù)經(jīng)營許可證:蘇B2-20221768 丨 蘇公網(wǎng)安備 32011402011373號(hào)

GMT+8, 2024-9-25 20:30 , Processed in 0.080607 second(s), 14 queries , Redis On.

Powered by Discuz!

監(jiān)督舉報(bào):report#znds.com (請(qǐng)將#替換為@)

© 2007-2024 ZNDS.Com

快速回復(fù) 返回頂部 返回列表