0%

ER-X路由器MAC下TTL线刷教程

最新心血来潮,想把弱电箱的 er-x 路由器刷成 OpenWrt 系统,折腾了一下线刷,记录一下过程。

mac 跟 windows 都试过,还是 mac 方便,而且现在使用的还是黑苹果

连接 TTL 串口

img

检查驱动

命令行执行:

ls /dev/tty.usb*

如果能看到 /dev/tty.usbserial-*** 说明驱动已经 OK 了,否则根据对应的芯片下载驱动

启动TFTP服务

添加权限:

sudo chmod -R 777 /private/tftpboot

启动服务(每次启动服务两条命令都需要执行):

sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist
sudo launchctl start com.apple.tftpd

然后将要刷的固件拷贝到 /private/tftpboot 目录即可

安装 minicom

测试过几个其它工具,只有这个最靠谱,因为 erx 变砖了,重置的时候需要热插拔,其它工具断开就直接终止程序了,minicom 可以拔了再插上的时候可以自动连上输出 log

命令行执行:

brew install minicom

启动 minicom:

minicom -s

配置信息:


+-----[configuration]------+
| Filenames and paths |
| File transfer protocols |
| Serial port setup | //选择这个
| Modem and dialing |
| Screen and keyboard |
| Save setup as dfl |
| Save setup as.. |
| Exit |
| Exit from Minicom |
+--------------------------+

配置好Serial Device 、Bps/Par/Bits

+-----------------------------------------------------------------------+
| A - Serial Device : /dev/tty.usbserial-14940 | |
| B - Lockfile Location : /usr/local/Cellar/minicom/2.8/var |
| C - Callin Program : reen and keyboard | |
| D - Callout Program : |
| E - Bps/Par/Bits : 57600 8N1 |
| F - Hardware Flow Control : Yes |
| G - Software Flow Control : No |
| H - RS485 Enable : No |
| I - RS485 Rts On Send : No |
| J - RS485 Rts After Send : No |
| K - RS485 Rx During Tx : No |
| L - RS485 Terminate Bus : No |
| M - RS485 Delay Rts Before: odem and dialing | |
| N - RS485 Delay Rts After : 0 |
| |
| Change which setting? |
+-----------------------------------------------------------------------+

接着 选择 exit 就回到 log 输出界面了,随便敲一下 enter 键

刷固件

接下来刷固件有两种方式:

方式一

如果插上路由器电源的同时,按住键盘的 1 (注意是按住,国内很多教程写的狂点,效果是一样的)

可以打断路由器启动,显示以下 log:

Please choose the operation: 
1: Load system code to SDRAM via TFTP.
2: Load system code then write to Flash via TFTP.
3: Boot system code via Flash (default).
4: Entr boot command line interface.
7: Load Boot Loader code then write to Flash via Serial.
9: Load Boot Loader code then write to Flash via TFTP.
default: 3

1 选择 Load system code to SDRAM via TFTP ,填好信息就可以开始刷了

方式二

如果方式一进不了刷机模式,那么可以按如下操作:

  1. 断开 er-x 的电源
  2. 断开 ttl 的usb 端
  3. 按住路由器 reset 的同时,插上电源,保持 reset 一直按住
  4. 路由器的灯会挨个依次亮两遍,然后全部亮两遍,这时候松手
  5. 路由器会进入 TFTP 恢复模式,如下图(间隔一个灯闪烁):

led.gif

  1. 连上 ttl 线,等 log 跑完,会出现 waiting for connect... 的字样

  2. mac 命令行切到 /private/tftpboot ,输入:

    tftp
    tftp> connect 192.168.1.20
    tftp> binary
    tftp> put <image-name>.img.signed

    注意上面这个 192.168.1.20 是路由器的 ip ,此时电脑连着路由器的 eth0 接口

  3. 路由器会开始刷机,终端会实时显示 log ,等刷完就可以了

参考链接: