OpenWRT firmware for Cisco Meraki Z1 刷机教程
最近买了个 Meraki Z1 ,感觉实惠,还能刷OpenWRT。
前言
Info
Architecture: | MIPS |
Vendor: | Atheros |
Bootloader: | Cisco Nandloader |
System-On-Chip: | Atheros AR9344 |
CPU Speed: | 560MHz |
Flash-Chip: | Hynix H27U1G8F2BTR |
Flash size: | 128MiB |
RAM: | 2x Winbond W9751G6KB-25 |
RAM Size: | 128MiB |
Wireless: | Atheros AR9340 5.0GHz + Atheros AR9280 2.4GHz |
Switch: | Atheros AR8236 |
Ethernet ports: | 5x Gigabit (1x WAN, 4x LAN) |
USB: | Yes, USB 2.0 |
Serial: | Yes, settings |
JTAG: | Yes |
Serial
TTL 针脚定义,只需 GND TX RX 接上就可以了。
J1: GND |
J2: TX |
J3: RX |
J4: VCC |
主板照
刷机工具
SecureCRT SecureCRT_jb51
WinSCP WinSCP_5.5
固件
OpenWRT-Meraki-Z1.tar <===OpenWRT wiki 出品的刷机包
LEDE-Meraki-Z1.tar <===LEDE 刷机包
openwrt-meraki-z1-R7.6 <===Lean 的R7.6 固件
参考文献
https://openwrt.org/toh/meraki/z1
https://forum.lede-project.org/t/build-for-cisco-meraki-z1/7939
刷机教程
先拆壳,安装好 TTL 驱动,接上对应的针脚。SecureCRT设置如下,我就不详细说了。
协议选“Serial”,输入必须的数据:端口:跟安装驱动显示的要一致,波特率:115200,然后“下一步”,接着填写“连接名 称(可不改)”,并“完成”。然后链接。
给Z1 接上电源,安装USB旁边的 Reset 按钮十秒左右。然后按一下回车。输入
odm serial_num read
如果返回的信息不是 Q2XX-XXXX-XXXV,输入如下命令
odm serial_num write Q2XX-XXXX-XXXV
改了SN 后获取 root 权限需要断电重启一下Z1,将会看到如下画面
原固件备份
生活习惯所致,估计以后都不用到但也是备份一下。
cat /proc/mtd
m00180A109DC8:/# cat /proc/mtd
dev: size erasesize name
mtd0: 00020000 00020000 "loader1"
mtd1: 007e0000 00020000 "bootkernel1"
mtd2: 00020000 00020000 "loader2"
mtd3: 007e0000 00020000 "bootkernel2"
mtd4: 06fe0000 00020000 "ubi"
mtd5: 00020000 00020000 "origcaldata"
mtd6: 0001f800 0001f800 "board-config"
mtd7: 00781800 0001f800 "rootfs-wired-8-95539:95541-jdizzle-1"
mtd8: 00781800 0001f800 "rootfs-wired-8-95539:95541-jdizzle-2"
mtd9: 0501a800 0001f800 "storage"
mtd10: 0003f000 0001f800 "caldata"
mtd11: 00004000 00001000 "phram-oops"
mtd6到mtd10是模拟mtd设备的UBI分区。
只需要备份 loader1,bootkernel1,loader2,bootkernel2,board-config和caldata分区就可以了。
先设置 root 密码
passwd
断开本机的网络,用网线链接到Z1 的 LAN 口。我设置本机IP 为 192.168.0.2
然后打开 WinSCP 链接 Z1 的 IP 192.168.0.1
然后进入 storage 文件夹,一会备份到这里,用WinSCP导出到电脑本地。
SecureCRT 下输入命令
cat /dev/mtd0 > /storage/mtd0
cat /dev/mtd2 > /storage/mtd2
cat /dev/mtd3 > /storage/mtd3
cat /dev/mtd10 > /storage/mtd10
然后将 mtd0 2 3 10 导出并删除 storage 里面的备份文件。
终于开始刷机了
首先本机建立 一个 WEB 服务器,一会用 wget 下载刷机包到 Z1 。至于使用什么服务端自己喜欢吧。我个人用习惯了 phpStudy ,也可以用小巧的。反正能架设起 web 服务就好。
SecureCRT 下输入命令
wget http://192.168.0.2/openwrt-ar71xx-nand-z1-initramfs-kernel.bin -O /storage/openwrt.bin
下载刷机包到 storage 文件夹备用
PS。 可以直接用 WinSCP 上传到 storage 目录下,省却WEB服务器。
写入
dd if=/storage/openwrt.bin of=/dev/mtdblock3
dd if=/storage/openwrt.bin of=/dev/mtdblock1
虽然写入速度很快,但建议等 15~30秒后再进行其它操作。
此时可以断电重启Z1 ,获取到IP 后进入 OpenWRT 更新固件就可以了。
我自用 大雕的固件
补充
老外的教程中提到删除多余分区,我本人懒得折腾没跟进,感兴趣的可以尝试。
firestarter
dd if=/storage/openwrt.bin of=/dev/mtdblock3
dd if=/storage/openwrt.bin of=/dev/mtdblock1
两个都要要不刷完还是原版
hopol@firestarter
刷 内核 openwrt-ar71xx-nand-z1-initramfs-kernel.bin
2049843684@firestarter
mtd1和mtd3要刷initramfs。。。
wwwqqq
web服务器可以用TFTP吗?
hopol@wwwqqq
其实用 SCP 上传也就可以了 无需架设WEB 服务器也行
yz
一直无法进入odm获取root
hopol@yz
请详细查看步骤,细心排查。
nicky
hi i have use ur tutorial
but i cant get root privileges
please help me
嗨,我用你的教程
但在使用此菜单Odm serial_num后写入Q2XX-XXXX-XXXV,我无法获得root权限
请帮帮我
hopol@nicky
我的 Z1 改 SN 后 断电开机一次 就有权限了,你是遇到什么情况。
nicky@hopol
i have got key magic s, but still not get permission, is there update in meraki firmware so i can’t get root privilieges?
我有关键的魔法,但仍然没有获得许可,是否有更新meraki固件,所以我不能获得root权限?
hopol@nicky
Got magic key s 之后 有没有返回信息 Busybox提示?
nicky
请帮帮我
hopol@nicky
有些朋友到手的 Z1 直接就有权限无需修改 SN ,看情况而定。
mitcher
怎么设置才能让网口两侧的灯都亮呢
hopol@mitcher
网口两侧?你插上网线有数据流动的时候自然会闪动。
mitcher
现在刷完只有一侧的灯亮,百兆橙色,千兆绿色,另一侧只有在开机自检的时候一起亮一次
firestarter
但是我感觉都是百兆 没千兆的
海风
我的是 R16怎么刷固件,他就是个AP!不知道 ttl转USB!先备份,改root密码,在用有线刷吗?