巧復(fù)制ELRS接收機(jī)固件,解決遺忘密碼問(wèn)題

自從自組了2.4G 的ELRS 之后,強(qiáng)悍的性能讓我把所有的模型都換成了2.4G的ELRS接收機(jī),都使用密碼對(duì)頻,先開(kāi)控,那個(gè)模型先上電用那個(gè),十分方便。而且我也十分的懶,一直使用ELRS 1.0 的固件,也不準(zhǔn)備跟風(fēng)升級(jí)到2.xx ,1.0 無(wú)論是信號(hào)質(zhì)量還是便利程度我都十分滿意。
趕在618 大促的時(shí)候,百達(dá)家 35塊錢1個(gè)的2.4G 接收機(jī)搶了兩個(gè)(35.。。自制成本都差不多,要啥自行車。。。。),到貨之后準(zhǔn)備刷固件,結(jié)果問(wèn)題來(lái)了:給朋友刷了幾次固件,我最早的對(duì)頻密碼忘了,多次嘗試怎么也不對(duì),而且對(duì)頻密碼在固件里面是 MD5的hash值,即便是找到hash值,也沒(méi)很難倒推出來(lái)對(duì)頻的密碼明文。 于是倆接收機(jī)就扔了起來(lái)。
今天靈光一閃, 我搞不到對(duì)頻密碼,我找不到之前編譯好的固件,我可以復(fù)制固件啊。。。。
而且手上有之前的 哈皮家的 EP2 接收機(jī),看了下和百達(dá)家的都一樣,都是esp8266 ,完全可以從ep2 dump 固件出來(lái),然后復(fù)制到 新的elrs 接收機(jī)里。 這種辦法既可以快速?gòu)?fù)制接收機(jī)固件,也可以在接收機(jī)變磚的情況下線刷救活。

所需工具:
esptools.py??? 如果沒(méi)有的話,需要先安裝python ,然后pip install esptool
USB 轉(zhuǎn)TTL 如圖:

接收機(jī) 焊接線之后,按照 TX、RX 和usb 轉(zhuǎn)串口的 RX? TX? 接線
然后短接 boot? 上電,EP2 的boot 在這里

使用鑷子 短接 boot 焊盤 和 GND 線 給接收機(jī)上電,這時(shí)候接收機(jī)LED 燈常亮
導(dǎo)出固件 第一次:
esptool.py --chip auto --port com18? read_flash 0x00000000 2048000 d:/elrs_dump.bin
注意:
port 是指usb 轉(zhuǎn)ttl 在電腦的com 口編號(hào),需要到 設(shè)備管理器里看下 是多少,每次都要看,因?yàn)橹匦虏灏?usb 轉(zhuǎn)ttl 可能com 口的編號(hào)就變了
2048000? :因?yàn)閑sp8266 的flash 大小是 2Mb ,既 2048000, 因?yàn)楫?dāng)前還不知道具體固件大小,直接全部導(dǎo)出來(lái)看看
d:/elrs_dump.bin? 要保存的固件文件名,因?yàn)槲以赾gywin64命令行里,使用的是d:/ ,如果是cmd 里執(zhí)行要改成 d:\\elrs_dump.bin
如果提示錯(cuò)誤,一般是 接收機(jī)沒(méi)有進(jìn)boot 狀態(tài),重新短接上電。 或者是 RX、TX 線序沒(méi)結(jié)對(duì),接收機(jī)的TX接 USB TTL 的RX? ,接收機(jī)的RX接USBTTL 的TX,或者是你沒(méi)有認(rèn)真看com口的序號(hào)
成功導(dǎo)出固件之后,拔掉 USB To TTL 即可
同樣給空白的接收機(jī) 焊線,跟之前接收機(jī)一樣的方式接線、短接boot GND 上電,
esptool.py --chip auto --port com18? write_flash --flash_size=detect 0 d:/elrs_dump.bin
這里注意一下:我重新接第二個(gè)接收機(jī)之后,com口的序號(hào)就變成了 com18
刷寫成功之后,備份 elrs_dump.bin (留好了,以后的接收機(jī)都指望它呢)
正常和遙控器通信,一切正常!
至此,我忘了我的密碼。。。。也無(wú)所謂了
