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

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

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

軟件下載 | 游戲 | 討論 | 電視計算器

綜合交流 / 評測 / 活動區(qū)

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

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

新手 | 你問我答 | 免費刷機救磚 | ROM固件

查看: 292|回復(fù): 2
上一主題 下一主題
[原創(chuàng)]

◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2024-10-28 16:19 | 只看該作者 |只看大圖 回帖獎勵 |正序瀏覽 |閱讀模式 | 來自陜西
■鄭重聲明:『羅波波』這個賬號僅在znds開戶,未來也是如此
■概述:
精簡強刷包的通常做法-原廠強刷包(tb上5元不貴)解包后修改img鏡像再打包。使用時,先刷原廠強刷包,再刷自制精簡強刷包??墒?,要是沒有原廠強刷包,或者對于版本有要求(同一機型廠家會升級多次固件,具體哪一個固件版本好用需要自己親身體驗才知道,你搞到的強刷包到底是哪一個版本,賣家即便知道也不一定是自己心儀的版本)那該怎么辦呢?
     本文介紹的自制強刷包方法,鏡像文件來源有兩個:a-串口備份出來的,b-官方OTA刷機包提取出來的。
     看了一下5S58_K5C的官方OTA固件包,里面只升級MBOOT、boot、recovery、dtb、factory、RTPM、system、tvconfig、tvservice幾個分區(qū),若設(shè)備當(dāng)前的某分區(qū)版本和你心儀的固件版本一致,那么理論上該分區(qū)就無需再刷一次。而總計22個分區(qū)呢,剩下的分區(qū)OTA不升級也就說明其分區(qū)數(shù)據(jù)沒有變化或是由其它分區(qū)自動生成的(如MPOOL、misc),所以制作強刷包時可不必加入或不能加入。
那么是否有必要刷MBOOT呢,經(jīng)驗證,刷不同版本的MBOOT,Uboot和安卓系統(tǒng)均可正常啟動。所以也可以不刷。不刷的考慮是:萬一在刷入MBOOT的過程中突然斷電,那么就會導(dǎo)致Uboot無法進入!
在一臺安卓9.0Mstar機頂盒實測,強刷包必須包含boot、recovery、system、vendor分區(qū),否則只有system分區(qū)的話-會出現(xiàn)啟動黑屏無法進入系統(tǒng)的現(xiàn)象。在本人5S58_K5C安卓6.0設(shè)備上,強刷包可以單獨刷入system分區(qū)。論壇里下了幾個創(chuàng)酷精簡強刷包安卓6.0&5.0,都是只刷system分區(qū)。若是uboot下刷機,上面兩個設(shè)備都可以單獨刷入某個分區(qū)。若要單獨刷入非system分區(qū),不建議用強刷包的方式,大概率會出問題,建議uboot或系統(tǒng)shell刷。
5S58_K5C191223版固件,單獨刷入180524版system鏡像(已精簡),系統(tǒng)可正常運行。
■工具MStarBinTool-GUI(這個應(yīng)該是俄羅斯大神制作的,它和MStarBinToolMaster命令行工具肯定不是Mstar官方工具)
■所有路徑為英文路徑
■強刷的本質(zhì):自動進入uboot模式執(zhí)行包內(nèi)自動化腳本來完成刷機,不會驗證是否匹配本機型。
■實測32位WIN7會打包出錯
配置文件Config.xml
不限品牌機型,任意下載一個MstarUpgrade.bin強刷包,僅解包「腳本+配置」:
◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包
工具Notepad++打開MStarBinTool-GUI所在目錄...\work\xxxx\下的Config.xml文件。
<Configuration>:
◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包
各字段的默認值通常如圖所示,基本無需更改。里面的TypeCRC設(shè)置為0是不起作用的,MStarBinTool-GUI會自動設(shè)置為1(可以是2、3)。也就是說,MStarBinTool-GUI打包生成的MstarUpgrade.bin刷機包是有CRC校驗的,用WinHex替換里面的分區(qū)文件是不行的,刷機時CRC校驗失敗會報錯導(dǎo)致無法刷入。
16進制RamAddress:刷機包內(nèi)img文件的Ram存放起始地址,單位字節(jié)。
下載了非5S58_K5C的6個創(chuàng)酷強刷包(安卓5.0、6.0、8.0),還有TCL(安卓6.0)、烽火(安卓9.0)、移動(安卓4.x)各1個,總計9個包,只有1個創(chuàng)酷安卓8.0的RamAddress是28A00000,其它8個都是20200000。
對于5S58_K5C,自測了一下,20200000、20220000、20200200都可以成功刷入,22200000刷到50%失敗。其它數(shù)值沒有試驗,具體有什么講究不清楚。
<UserPartTable>:
◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包
這一部分配置了-重新分區(qū),通常情況下自己的設(shè)備分區(qū)是完好的,所以沒有必要,把配置區(qū)域刪掉即可:
◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包
若要重新分區(qū),務(wù)必要按照原廠修改,Size單位字節(jié)。
<ImageList>:
◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包
該部分配置了如何刷入img文件。Image Name是準確的分區(qū)名,Compress-壓縮,Sparse-稀疏(可以減少體積),Split-分割。Compress和Sparse若同時設(shè)置為Yes,試了一下,只能滿足Compress。通常體積較大的分區(qū)需要設(shè)置Compress或Sparse,個人習(xí)慣設(shè)置Compress-Yes,體積減少會更多。體積大的分區(qū)務(wù)必要Split-Yes,否則:例如system分區(qū)超過了1G,這樣Ram無法完整存放,會導(dǎo)致system分區(qū)無法刷入。EmptySkip沒搞明白啥意思,Yes、No都試了一下,似乎沒啥影響。Path="img文件名"一定要和實際的文件名一致。
<Environments>:
◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包
看到這一部分,很多人都一頭霧水而被勸退,不怕,有簡單方法配置該部分。
該部分是用來配置uboot環(huán)境變量的,那么對于自己機型該如何設(shè)置呢?
找到了這個文件/system/etc/set_env:
◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包
將其內(nèi)容復(fù)制出來,將最后兩行替換為下面兩行即可:
setenv MstarUpgrade_complete 1
saveenv
而后添加到Config.xml文件里的<Environments>-<PostEnv>部分。里面沒用的環(huán)境變量可以去掉,例如BootVideo...
查看設(shè)備uboot的環(huán)境變量命令:printenv
刪除某一變量:setevn [變量名]
■<Environments>補充說明
事實上,只要你的設(shè)備一切正常,uboot里的環(huán)境變量必是保存設(shè)置好的,制作強刷包時無需特別配置環(huán)境變量,只需配置幾行就可以啦:
setenv MstarUpgrade_complete 1
setenv sync_mmap 1
setenv db_table 0
saveenv
前面提到的<Environments>配置方法,(除非是環(huán)境變量丟失),起到的作用完全是-「心里踏實」,哈哈....^_^
■一直沒搞明白uboot環(huán)境變量到底存放在什么地方,求高手指點。
■制作強刷包
Config.xml文件已配置好,再將img鏡像文件放入Config.xml所在目錄,MStarBinTool-GUI打開配置文件:
◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包
「打包模式」選擇-下載。若是Config.xml里有重新分區(qū),會自動選擇「格式+下載」,點擊「分區(qū)」,可查看重新分區(qū)的詳情。
查看需要刷機的鏡像:
◆串口大法就是好-酷開電視沒得跑 ◆(四)自制強刷包
紅色代表危險,藍色代表該分區(qū)文件丟失,需確認文件是否存在(檢查文件名)。給需要刷機的分區(qū)打上勾。MStarBinTool-GUI「配置」、「環(huán)境」是由Config.xml決定的,可以在此檢查修改?!改_本」此時為空,打包過程中會自動生成并添加到刷機包里。確認無誤后,就可以點擊「打包固件」按鈕了。
新的刷機包在.../work目錄下,將其改名為MstarUpgrade.bin即可。
■注意:
U盤強刷過程中,任何一個環(huán)節(jié)(例如刷某個鏡像、設(shè)置某個環(huán)境變量)出錯,都會導(dǎo)致刷機過程報錯而中斷!即便后面的各環(huán)節(jié)是完全沒有問題的!所以建議強刷時連好串口PuTTY跑個碼,這樣才知道哪一環(huán)節(jié)報錯!
■設(shè)置串口為開啟狀態(tài)
uboot里執(zhí)行或者在自制強刷包配置文件<Environments>里添加:
setenv bootdelay 0               
saveenv
數(shù)值0代表設(shè)備啟動時鍵盤敲鍵進入uboot的窗口時間,單位秒,如果>0,則會增加系統(tǒng)啟動時間。若要禁止進入uboot,可設(shè)為-1。有些設(shè)備MBOOT里是寫死的,只能是0。
或者:
setenv UARTOnOff on
saveenv
有些設(shè)備的MBOOT里寫死了是on,無法設(shè)置為off。

◆下期預(yù)告:(五)固件發(fā)布◆

Config.xml-1.png (9.92 KB, 下載次數(shù): 0)

Config.xml-1.png

評分

參與人數(shù) 1金幣 +1 收起 理由
Easy伊澤 + 1 ZNDS論壇有你更精彩,一起愉快的搞機吧!.

查看全部評分


上一篇:◆串口大法就是好-酷開電視沒得跑◆(三)系統(tǒng)分析
板凳
 樓主| 發(fā)表于 2024-10-28 16:29 | 只看該作者 | 來自陜西
Vampire9 發(fā)表于 2024-10-28 16:20
大佬又來更新了哈哈,看你帖子跟追連續(xù)劇一樣

連續(xù)劇的好處:方便有需要的內(nèi)行。也懶得把一些支離破碎干貨點單獨發(fā)帖,自己省事,看客也方便
回復(fù) 支持 反對

使用道具 舉報

沙發(fā)
發(fā)表于 2024-10-28 16:20 | 只看該作者 | 來自浙江
大佬又來更新了哈哈,看你帖子跟追連續(xù)劇一樣
回復(fù) 支持 反對

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

GMT+8, 2024-10-28 19:16 , Processed in 0.068758 second(s), 17 queries , Redis On.

Powered by Discuz!

監(jiān)督舉報:report#znds.com (請將#替換為@)

© 2007-2024 ZNDS.Com

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