路由ttl刷机笔记

最近连续刷挂了2个路由器,费了很大力气才用ttl救活。记叙一下ttl救砖的简要步骤。

水星M301(OpenWrt)挂掉的原因是我写/etc/config/network的时候写掉了一个冒号……于是开机后灯会闪但是无法获取到ip,只好尝试ttl进去修复之。

而疼达W1800R(Tomato)则是刷机刷到一半寝室断电了……

水星M301是TP-link MR11u的马甲,电路布局基本一致,依照http://www.sl088.com/voyage/2012/03/3121.slboat中的拆机图片,将TX、RX、GND三个针脚连上ttl-USB转换器——其中TX、RX需反接。

疼达W1800R外壳非常扎实,翘开费了好大力气……电路布局可见http://www.right.com.cn/forum/thread-125418-1-1.html的16楼和20楼。简单说就是从2颗大电容往左依次是GND、RX、TX和用不到的VCC。

我买的TTL转接器是PL2303方案的,在OS X下使用需要驱动,Linux下则免驱。第一次的时候一直接触不良,折腾了好半天才搞定。

插入ttl-USB转换器后先ls /dev/tty*看看转换器是否被识别到,如果是的话应该有一个名叫ttyUSB0(Linux)或者tty.usbserial(OS X)的块设备。

当搞定驱动并且确认接稳了之后,输入sudo screen /dev/ttyUSB0 115200(linux)或screen /dev/tty.usbserial 115200(OS X),如果没有screen自己装一下,再给路由器通电,正常情况下屏幕即有显示。

对水星M301和其他类似的OpenWrt路由,启动时按t、p、l三个键即可中断启动——之后该怎么刷我就不清楚了,因为我只是改错了配置,直接输firstboot重置配置即可。

对疼达W1800R以及类似的tomato路由,按Ctrl+C中断,之后在本机搭建一个tftp server,网线连接路由和本机,以命令flash -noheader 192.168.1.16:t.trx flash1.trx刷机,其中192.168.1.16为tftp server地址, t.trx为固件名称,flash1.trx不要改。

刷完后nvram erase,再reboot,建议重启后再erase一次。

参考:

  1. http://www.sl088.com/voyage/2012/03/3121.slboat
  2. http://www.right.com.cn/forum/thread-130164-1-1.html
  3. http://www.right.com.cn/forum/thread-125418-1-1.html

最后感谢隔壁和小叮当一样什么都有的郭壕菊(Shadowmourne G)和千辛万苦帮我拆机壳的Heaven Wesker