首頁(yè) 收藏 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幣中心

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

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

查看: 526691|回復(fù): 331
上一主題 下一主題
[教程]

DM1001系列 PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2016-12-9 15:54 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式 | 來(lái)自北京
本帖最后由 webpad 于 2017-3-18 23:56 編輯

新方法直接線刷,請(qǐng)見(jiàn)線刷貼~  http://kinema24.com/tv-610313-1-1.html

整個(gè)過(guò)程的終端記錄
dm1004-rerpair-log.txt (539.48 KB, 下載次數(shù): 129, 售價(jià): 1 金幣)

背景:
大麥盒子DM1001、1004、1005、1102 升級(jí)到官方固件PB.30.01.20 之后,將無(wú)法使用recovery降級(jí)到低版本固件,
刷機(jī)過(guò)程出錯(cuò)比如會(huì)提示UTC錯(cuò)誤信息, 原因是新固件更新了主板bootloader和recovery分區(qū),使得降級(jí)失敗。

下面以一臺(tái)升級(jí)到了PB.30.31.20的DM1004為目標(biāo)進(jìn)行降級(jí),
主要方法就是 TTL進(jìn)入uboot環(huán)境后燒錄低版本bootloader,運(yùn)行舊版recovery刷入舊版固件,直至刷入石頭rom。

本方法不需要拆下主板上的spi flash芯片用編程器改寫(xiě)bootloader,僅運(yùn)行uboot環(huán)境中的燒錄指令即可。

工具設(shè)備:
PC電腦一臺(tái)、PL2303 TTL-USB板一塊、杜邦線三條、4GB優(yōu)盤(pán)一個(gè)、拆機(jī)工具若干;
軟件有SecureCRT、PL2303驅(qū)動(dòng)。

一、前期準(zhǔn)備:
主角,DM1004一臺(tái),拆機(jī)只有三個(gè)螺絲,左下角腳墊不用拆;
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器
拆開(kāi)時(shí)注意wifi天線粘在上殼一面,別扯斷了;
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器

已自動(dòng)聯(lián)網(wǎng)升級(jí)到了 PB.30.31.20,理論上 PB.30.31.51 都可如此操作;
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器

一個(gè)fat32格式U盤(pán)(4GB容量最好)、杜邦線三條
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器
、一臺(tái)winxp系統(tǒng)電腦
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器
、USB-TTL模塊(PL2303,因其winxp驅(qū)動(dòng)較穩(wěn)定,所以用的是winxp系統(tǒng)電腦);
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器


TTL接線:
DM1004主板上的J9插座,貼心的印刷了針腳定義,從靠電源口開(kāi)始依次為 GND、TX、RX、5V ,僅需使用GND、TX、RX三根針,對(duì)應(yīng)連接PL2303模塊上的GND、RX、TX;
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器

插線有技巧,因2.54mm的杜邦線頭間距太寬,所以可以把三根線中間的那根去掉插頭塑料殼,這樣三根可以方便的并排插入主板J9插;
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器
U盤(pán)上的幾個(gè)文件,bootimg、recoveryimg、bootloader三個(gè)鏡像文件都來(lái)自于PB300114 升級(jí)包,shitouupdate來(lái)自于石頭rom包,
注意?。?!不要放入自動(dòng)刷機(jī)配置文件 factory_update_param.aml
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器


二、uboot操作
1.
在電腦上安裝好PL2303驅(qū)動(dòng)后插入模塊會(huì)出現(xiàn)新的com端口,例如COM3;

2.運(yùn)行SecureCRT,新建連接打開(kāi)COM3,115200 8 1
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器

接好TTL線,大麥盒子通電,SecureCRT中會(huì)有類似如下的輸出,表示bootloader啟動(dòng)成功,按回車(chē)鍵打斷啟動(dòng)進(jìn)入uboot環(huán)境,以下是部分輸出信息:
  1. EEEE I400000004294_M6_BL1_3431
  2. TE : 174280
  3. BT : 19:35:44 Aug 27 2016J
  4. CPU clock is 1200MHz

  5. wait pll-0x03 target is 0204 now it is 0x00000203

  6. DDR clock is 516MHz with 2T mode

  7. DDR training :
  8. HHH
  9. BootFrom SPI
  10. 0x12345678
  11. Boot from int dev 1stSPI

  12. TE : 708066

  13. System Started


  14. U-boot-00000-gae7538e(m6_mbx_th8_secure@ae7538ea) (Aug 27 2016 - 19:35:40)

  15. nand 2 ret:1

  16. Hit Enter key to stop autoboot -- :  1

  17.  0

  18. exit abortboot: 1

  19. m6_mbx_th8_secure#

復(fù)制代碼

進(jìn)入
uboot環(huán)境后會(huì)出現(xiàn)這樣的提示符  m6_mbx_th8_secure# ,
注意這一行
U-boot-00000-gae7538e(m6_mbx_th8_secure@ae7538ea)(Aug 27 2016 - 19:35:40) ,說(shuō)明bootloader已經(jīng)被更新到2016年的版本;

跟帖再續(xù)

評(píng)分

參與人數(shù) 1威望 +2 金幣 +10 Z幣 +1 收起 理由
人見(jiàn)百態(tài) + 2 + 10 + 1 感謝分享^_^

查看全部評(píng)分


上一篇:大麥DM1016再三嘗試刷機(jī),論壇內(nèi)方法失敗兩次
下一篇:此貼教程毫無(wú)意義,是坑!別點(diǎn)了!?。?/a>
沙發(fā)
發(fā)表于 2016-12-9 16:07 | 只看該作者 | 來(lái)自浙江
這個(gè)厲害   正需要這個(gè)呢! 感謝樓主的分享!
板凳
 樓主| 發(fā)表于 2016-12-9 16:29 | 只看該作者 | 來(lái)自湖北
手機(jī)uc上圖,流量跑了不少,一張圖都沒(méi)上去,都是幾兆大小的照片啊~~~55555
地板
發(fā)表于 2016-12-9 17:23 | 只看該作者 | 來(lái)自山東
請(qǐng)樓主用電腦上圖吧,快呀,在線等,多謝多謝........
5#
 樓主| 發(fā)表于 2016-12-11 23:53 | 只看該作者 | 來(lái)自湖北
本帖最后由 webpad 于 2016-12-12 09:05 編輯

3. 接下來(lái)就可以輸入指令help ,查詢有哪些可用命令:
  1. m6_mbx_th8_secure#help

  2. ?       - alias for 'help'
  3. autoping- do auto ping test
  4. autoscr - run script from memory
  5. base    - print or set address offset
  6. bdinfo  - print Board Info structure
  7. boardid_prefetch- boardid sub-system
  8. boot    - SPI-NAND-COMPATIBLE
  9. bootm   - boot application image from memory
  10. bootp   - boot image via network using BOOTP/TFTP protocol
  11. calc    - command for calculate
  12. cbusreg - cbus register read/write
  13. chpart  - change active partition
  14. clear_rebootmode- clear rebootmode
  15. clkmsr  - measure PLL clock
  16. cmp     - memory compare
  17. coninfo - print console devices and information
  18. cp      - memory copy
  19. crc32   - checksum calculation
  20. data    - SPI-NAND-COMPATIBLE || SPI-NAND-EMMC-COMPATIBLE
  21. dcache  - enable or disable data cache
  22. defenv  - default environment
  23. defenv_without- defenv without environment variables
  24. dhcp    - boot image via network using DHCP/TFTP protocol
  25. echo    - echo args to console
  26. editenv - edit environment variable
  27. efuse   - efuse version/licence/mac/hdcp/usid read/write or dump raw efuse data commands or info(display chip efuse info)
  28. env     - environment handling commands
  29. ethchk  - check ethernet status
  30. ethdbg  - set ethernet debug level
  31. ethmode - set ethernet mac mode
  32. ethrst  - reset ethernet phy
  33. exit    - exit script
  34. false   - do nothing, unsuccessfully
  35. fatexist- find the file from a dos filesystem
  36. fatinfo - print information about filesystem
  37. fatload - load binary file from a dos filesystem
  38. fatls   - list files in a directory (default /)
  39. fdt     - flattened device tree utility commands
  40. get_img_size- get img size and save the result as a environment variable
  41. get_rebootmode- get reboot mode
  42. go      - start application at address 'addr'
  43. gset    - gpio commands
  44. hdcp    - HDCP sub-system
  45. help    - print command description/usage
  46. icache  - enable or disable instruction cache
  47. imxtract- extract a part of a multi-image
  48. irkey   - irkey key_value1 key_value2 time_value
  49. itest   - return true/false on integer compare
  50. kgdb    - enter gdb remote debug mode
  51. loadenv - load environment at address 'addr'
  52. logo    - logo sub-system
  53. loop    - infinite loop on address range
  54. macreg  - ethernet mac register read/write/dump
  55. md      - memory display
  56. mdc_clk - do mdc clock
  57. mm      - memory modify (auto-incrementing address)
  58. mmc     - MMC sub system
  59. mmcdump - mmc data load
  60. mmcinfo - display MMC info
  61. msleep  - delay execution for some time
  62. mtdparts- define flash/nand partitions
  63. mtest   - simple RAM read/write test
  64. mw      - memory write (fill)
  65. nand    - NAND sub-system
  66. nboot   - boot from NAND device
  67. netspd_f- enforce eth speed
  68. nm      - memory modify (constant address)
  69. phyreg  - ethernet phy register read/write/dump
  70. ping    - send ICMP ECHO_REQUEST to network host
  71. printenv- print environment variables
  72. rarpboot- boot image via network using RARP/TFTP protocol
  73. read_mac_sn- read_mac_sn
  74. reset   - Perform RESET of the CPU
  75. run     - run commands in an environment variable
  76. saradc  - saradc sub-system
  77. saveenv - save environment variables to persistent storage
  78. secukey - security KEY sub-system
  79. setenv  - set environment variables
  80. sf      - SPI flash sub-system
  81. showvar - print local hushshell variables
  82. sleep   - delay execution for some time
  83. source  - run script from memory
  84. ssecukey- NAND KEY sub-system
  85. test    - minimal test like /bin/sh
  86. tftpboot- boot image via network using TFTP protocol
  87. tiny_usbtool- start tiny USB tool for PC burner
  88. true    - do nothing, successfully
  89. tvdsp   - dspv sub-system
  90. unpackimg- unpack imgpack to single
  91. usb     - USB sub-system
  92. usbbc   - test usb bc
  93. usbboot - boot from USB device
  94. usid_prefetch- usid sub-system
  95. uuid_prefetch- uuid sub-system
  96. version - print monitor, compiler and linker version
  97. video   - video sub-system
復(fù)制代碼
printenv -----顯示存儲(chǔ)在spi flash中的env參數(shù);

bdinfo  -----顯示一些硬件信息,比如網(wǎng)卡MAC地址,是否和外殼標(biāo)簽上的一致;

nand -------  對(duì)NAND閃存進(jìn)行讀寫(xiě)操作,可用來(lái)查詢壞塊、重新檢測(cè)壞塊、寫(xiě)入recovery等分區(qū);

sf   -------- 對(duì)spi flash閃存進(jìn)行操作,刷寫(xiě)bootloader要用到;

version  -----------   查詢bootloaderuboot)版本:
  1. m6_mbx_th8_secure#version

  2. U-boot-00000-gae7538e(m6_mbx_th8_secure@ae7538ea) (Aug 27 2016 - 19:35:40)
  3. arm-none-eabi-gcc (Sourcery G++ Lite 2010q1-188) 4.4.1
  4. GNU ld (Sourcery G++ Lite 2010q1-188) 2.19.51.20090709
復(fù)制代碼

6#
 樓主| 發(fā)表于 2016-12-12 00:26 | 只看該作者 | 來(lái)自湖北
本帖最后由 webpad 于 2016-12-12 09:07 編輯

4. 刷寫(xiě)bootloader:
因本機(jī)bootloader已經(jīng)在升級(jí)到PB303120的過(guò)程中被改寫(xiě)更新,需要降級(jí)到PB300114版本的bootloader;
按順序輸入命令:
①、
sf probe 2   -----------  選定spi flash,本機(jī)芯片型號(hào)為GD25Q32 4MB容量
  1. m6_mbx_th8_secure#sf probe 2


  2. SPI NOR Flash have write protect!!!
  3. 4096 KiB GD25Q32 at 0:2 is now current device
復(fù)制代碼
②、
usb start  ----------- 啟動(dòng)usb模塊,先插上U盤(pán)再輸入這個(gè)命令
  1. m6_mbx_th8_secure#usb start

  2. (Re)start USB...
  3. USB:   dwc_usb driver version: 2.94 6-June-2012
  4. USB (0) peri reg base: c1108400
  5. USB (0) use clock source: XTAL input
  6. USB (0) PHY Clock not detected!
  7. USB (0) base addr: 0xc9040000
  8. Force id mode: Host
  9. dwc_otg: Highspeed device found !

  10. scanning bus for devices... 1 USB Device(s) found
  11.        scanning bus for storage devices... 1 Storage Device(s) found
復(fù)制代碼
③、
fatload usb 0 82000000 bootloader.img   -----加載U盤(pán)上的鏡像文件到內(nèi)存
  1. m6_mbx_th8_secure#fatload usb 0 82000000 bootloader.img

  2. reading bootloader.img
  3. ....................................

  4. 377072 bytes read
復(fù)制代碼
④、
sf erase 0 60000  --------------------- 擦除spi flash

⑤、
sf write 82000000 0 60000  --------- 寫(xiě)入鏡像文件
  1. m6_mbx_th8_secure#sf erase 0 60000

  2. m6_mbx_th8_secure#sf write 82000000 0 60000

  3. Amlogic log : SPI write 393216 bytes data used about 845285 us
復(fù)制代碼
7#
 樓主| 發(fā)表于 2016-12-12 00:31 | 只看該作者 | 來(lái)自湖北
本帖最后由 webpad 于 2016-12-12 10:20 編輯

5. 加載并運(yùn)行14版recovery,手工刷入PB300114固件:

fatload usb 0 82000000 recovery.img  -------------------- 加載U盤(pán)上的鏡像到內(nèi)存;
  1. m6_mbx_th8_secure#fatload usb 0 82000000 recovery.img

  2. reading recovery.img
  3. ..............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

  4. 5226720 bytes read
復(fù)制代碼
bootm 82000000   ------------- 啟動(dòng)內(nèi)存中的recovery;
  1. m6_mbx_th8_secure#bootm 82000000

  2. ## ANDROID Format IMAGE
  3. ## Booting kernel from Legacy Image at 82000000 ...
  4.    Image Name:   Linux-3.0.50+
  5.    Image Type:   ARM Linux Kernel Image (lzma compressed)
  6.    Data Size:    3382752 Bytes = 3.2 MiB
  7.    Load Address: 80008000
  8.    Entry Point:  80008000
  9.    Verifying Checksum ... OK
  10.     Ramdisk start addr = 0x8233a800, len = 0x1c10b8
  11. board_usb_stop cfg: 0
  12.    Uncompressing Kernel Image ... OK
  13. uboot time: 1604722975 us.
  14. machid from environment: 0x4e27
  15. EFUSE machid is not set.
  16. Using machid 0x4e27 from environment

  17. Starting kernel ...
復(fù)制代碼
運(yùn)行recovery后,切換到盒子連接的電視畫(huà)面,在recovery界面用遙控器操作:
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器
recovery菜單有6項(xiàng):
  1. Android system recovery <3e>

  2. reboot system now     ------------重啟
  3. apply update from ADB   -------從ADB實(shí)施刷機(jī)
  4. apply update from EXT   -------從外置存儲(chǔ)選擇刷機(jī)包
  5. apply uodate from cache  -----從cache分區(qū)選擇刷機(jī)包
  6. wipe data/factory reset  -------雙清
  7. wipe cache partition  ----------清除cache分區(qū)
復(fù)制代碼
運(yùn)行第三項(xiàng), apply update from EXT ---> from Udisk    -----------------選擇U盤(pán)上的 PB300114 版固件包刷機(jī)

切記U盤(pán)根目錄中不要有factory_update_param.aml 文件,避免自動(dòng)刷機(jī);
刷機(jī)文件最好重命名,不要用默認(rèn)的 update.zip 文件名。


8#
 樓主| 發(fā)表于 2016-12-12 00:39 | 只看該作者 | 來(lái)自湖北
本帖最后由 webpad 于 2017-3-13 02:40 編輯

6. 刷入PB300111固件:
降級(jí)到 PB300114 后,不要插網(wǎng)線,保持U盤(pán)插入,重啟盒子的同時(shí)不停按遙控器菜單鍵(四橫杠鍵),直至再次進(jìn)入recovery:
DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器
運(yùn)行第五項(xiàng), wipe data/factory reset  ----------------------恢復(fù)出廠設(shè)置,抹除data和cache(雙清);
運(yùn)行第三項(xiàng),apply update from EXT  -> from Udisk      ----------------手工從U盤(pán)選擇 PB300111固件刷機(jī);

降級(jí)到PB300111后:第三方桌面刷機(jī)  ---->  http://kinema24.com/tv-599758-1-1.html ;
石頭rom刷機(jī),參考 http://kinema24.com/tv-560200-1-1.html 帖子中的步驟。

DM1001系列  PB.30.31.20~ 30.31.51 TTL降級(jí)方法 ,無(wú)需編程器

相關(guān)資源下載:
鏈接:
http://pan.baidu.com/s/1nvPldlZ
密碼:
q8vd





9#
發(fā)表于 2016-12-12 07:58 | 只看該作者 | 來(lái)自廣東
感謝分享,ZNDS有你更精彩:)
10#
 樓主| 發(fā)表于 2016-12-12 10:11 | 只看該作者 | 來(lái)自北京
終于完成,經(jīng)歷各種發(fā)帖上圖失敗....
繼續(xù)填另外一個(gè)坑

本版積分規(guī)則

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

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

GMT+8, 2024-10-22 23:07 , Processed in 0.078584 second(s), 14 queries , Redis On.

Powered by Discuz!

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

© 2007-2024 ZNDS.Com

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