ZBT-WD323 is a dual-LTE router based on AR9344. The detailed specifications are: * AR9344 560MHz/450MHz/225MHz (CPU/DDR/AHN). * 128 MB RAM * 16MB of flash(SPI-NOR, 22MHz) * 1x 2.4GHz wifi (Atheros AR9340) * 3x 10/100Mbos Ethernet (AR8229) * 1x USB2.0 port * 2x miniPCIe-slots (USB2.0 only) * 2x SIM slots (standard size) * 4x LEDs (1 gpio controlled) * 1x reset button * 1x 10 pin terminal block (RS232, RS485, 4x GPIO) * 2x CP210x UART bridge controllers (used for RS232 and RS485) * 1x 2 pin 5mm industrial interface (input voltage 12V~36V) * 1x DC jack * 1x RTC (PCF8563) Tested: - Ethernet switch - Wifi - USB port - MiniPCIe-slots (+ SIM slots) - Sysupgrade - Reset button - RS232 Intallation and recovery: The board ships with OpenWRT, but sysupgrade does not work as a different firmware format than what is expected is generated. The easiest way to install (and recover) the router, is to use the web-interface provided by the bootloader (Breed). While the interface is in Chinese, it is easy to use. First, in order to access the interface, you need to hold down the reset button for around five seconds. Then, go to 192.168.1.1 in your browser. Click on the second item in the list on the left to access the recovery page. The second item on the next page is where you select the firmware. Select the menu item containing "Atheros SDK" and "16MB" in the dropdown close to the buttom, and click on the button at the bottom to start installation/recovery. Notes: * RS232 is available on /dev/ttyUSB0 and RS485 on /dev/ttyUSB1 Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com> [removed unused poll-interval from gpio-keys, i2c-gpio 4.19 compat] Signed-off-by: Petr Štetiar <ynezz@true.cz>
371 lines
9.1 KiB
Bash
Executable file
371 lines
9.1 KiB
Bash
Executable file
#!/bin/sh
|
|
|
|
. /lib/functions/system.sh
|
|
. /lib/functions/uci-defaults.sh
|
|
. /lib/functions/k2t.sh
|
|
|
|
ath79_setup_interfaces()
|
|
{
|
|
local board="$1"
|
|
|
|
case "$board" in
|
|
aruba,ap-105|\
|
|
avm,fritz300e|\
|
|
devolo,dvl1200i|\
|
|
devolo,dvl1750c|\
|
|
devolo,dvl1750i|\
|
|
engenius,ecb1750|\
|
|
glinet,ar300m-lite|\
|
|
netgear,ex6400|\
|
|
netgear,ex7300|\
|
|
ocedo,koala|\
|
|
ocedo,raccoon|\
|
|
pcs,cap324|\
|
|
pisen,wmm003n|\
|
|
pqi,air-pen|\
|
|
tplink,cpe210-v2|\
|
|
tplink,cpe210-v3|\
|
|
tplink,re350k-v1|\
|
|
tplink,re450-v2|\
|
|
tplink,tl-mr10u|\
|
|
tplink,tl-mr3020-v1|\
|
|
tplink,tl-mr3040-v2|\
|
|
tplink,tl-wa901nd-v2|\
|
|
tplink,tl-wr703n|\
|
|
ubnt,bullet-m|\
|
|
ubnt,bullet-m-xw|\
|
|
ubnt,lap-120|\
|
|
ubnt,nanobeam-ac|\
|
|
ubnt,nanostation-ac-loco|\
|
|
ubnt,rocket-m|\
|
|
ubnt,unifiac-lite|\
|
|
ubnt,unifiac-mesh|\
|
|
ubnt,unifi|\
|
|
wd,mynet-wifi-rangeextender|\
|
|
winchannel,wb2000)
|
|
ucidef_set_interface_lan "eth0"
|
|
;;
|
|
avm,fritz4020|\
|
|
pcs,cr3000|\
|
|
tplink,archer-c58-v1|\
|
|
tplink,archer-c59-v1)
|
|
ucidef_set_interface_wan "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
|
|
;;
|
|
buffalo,bhr-4grv|\
|
|
buffalo,wzr-hp-g450h)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
|
|
;;
|
|
buffalo,bhr-4grv2)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
|
|
;;
|
|
buffalo,whr-g301n)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
|
|
;;
|
|
buffalo,wzr-hp-ag300h|\
|
|
tplink,tl-mr3220-v1|\
|
|
tplink,tl-mr3420-v1|\
|
|
tplink,tl-wr841-v7|\
|
|
tplink,tl-wr841-v9|\
|
|
tplink,tl-wr841-v11|\
|
|
tplink,tl-wr842n-v1|\
|
|
tplink,tl-wr842n-v3|\
|
|
ubnt,airrouter)
|
|
ucidef_set_interface_wan "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
|
|
;;
|
|
buffalo,wzr-hp-g302h-a1a0)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
|
|
;;
|
|
comfast,cf-e110n-v2|\
|
|
comfast,cf-e120a-v3|\
|
|
ubnt,nanostation-m|\
|
|
ubnt,routerstation)
|
|
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
|
;;
|
|
devolo,dvl1200e|\
|
|
devolo,dvl1750e|\
|
|
ocedo,ursus)
|
|
ucidef_set_interface_lan "eth0 eth1"
|
|
;;
|
|
dlink,dir-825-b1)
|
|
ucidef_set_interface_wan "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
|
|
;;
|
|
dlink,dir-825-c1|\
|
|
dlink,dir-835-a1|\
|
|
dlink,dir-859-a1|\
|
|
engenius,epg5000|\
|
|
tplink,archer-c2-v3|\
|
|
tplink,tl-wr1043nd-v4|\
|
|
tplink,tl-wr1043n-v5)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
|
|
;;
|
|
elecom,wrc-1750ghbk2-i|\
|
|
elecom,wrc-300ghbk2-i)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
|
|
;;
|
|
embeddedwireless,dorin)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:wan" "2:lan:3" "3:lan:2"
|
|
;;
|
|
engenius,ews511ap)
|
|
ucidef_set_interface_lan "eth0 eth1" "dhcp"
|
|
;;
|
|
etactica,eg200)
|
|
ucidef_set_interface_lan "eth0" "dhcp"
|
|
;;
|
|
glinet,gl-ar750s)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan:2" "3:lan:1" "1:wan"
|
|
;;
|
|
iodata,etg3-r|\
|
|
iodata,wn-ac1167dgr|\
|
|
iodata,wn-ac1600dgr|\
|
|
iodata,wn-ac1600dgr2|\
|
|
iodata,wn-ag300dgr|\
|
|
pcs,cr5000|\
|
|
wd,mynet-n750)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
|
|
;;
|
|
librerouter,librerouter-v1)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "5:wan" "6@eth1" "4:lan"
|
|
;;
|
|
nec,wg1200cr|\
|
|
ubnt,nanostation-ac|\
|
|
ubnt,unifiac-mesh-pro|\
|
|
ubnt,unifiac-pro)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan" "3:wan"
|
|
;;
|
|
nec,wg800hp)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
|
|
;;
|
|
netgear,wndr3700|\
|
|
netgear,wndr3700v2|\
|
|
netgear,wndr3800)
|
|
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
|
|
ucidef_add_switch_attr "switch0" "blinkrate" 2
|
|
ucidef_add_switch_port_attr "switch0" 1 led 6
|
|
ucidef_add_switch_port_attr "switch0" 2 led 9
|
|
ucidef_add_switch_port_attr "switch0" 5 led 2
|
|
;;
|
|
netgear,wnr612-v2|\
|
|
on,n150r|\
|
|
tplink,tl-wr740n-v1|\
|
|
tplink,tl-wr740n-v3|\
|
|
tplink,tl-wr741-v1|\
|
|
tplink,tl-wr743nd-v1|\
|
|
tplink,tl-wr841-v5|\
|
|
tplink,tl-wr941-v4)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
|
|
;;
|
|
phicomm,k2t)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "3:lan:1" "5:lan:2" "4:wan"
|
|
;;
|
|
rosinson,wr818)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan" "2:lan" "3:wan"
|
|
;;
|
|
tplink,archer-a7-v5|\
|
|
tplink,archer-c6-v2|\
|
|
tplink,archer-c7-v4|\
|
|
tplink,archer-c7-v5|\
|
|
tplink,tl-wdr3600|\
|
|
tplink,tl-wdr4300|\
|
|
tplink,tl-wr941n-v7-cn)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
|
|
;;
|
|
tplink,archer-c5-v1|\
|
|
tplink,archer-c7-v1|\
|
|
tplink,archer-c7-v2|\
|
|
tplink,tl-wdr4900-v2)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
|
|
;;
|
|
tplink,archer-d50-v1)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
|
|
;;
|
|
tplink,tl-wr1043nd-v1)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
|
|
;;
|
|
tplink,tl-wr1043nd-v2|\
|
|
tplink,tl-wr1043nd-v3)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
|
|
;;
|
|
tplink,tl-wr2543-v1)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
|
|
;;
|
|
tplink,tl-wr740n-v4|\
|
|
tplink,tl-wr741nd-v4|\
|
|
tplink,tl-wr841-v8|\
|
|
tplink,tl-wr842n-v2)
|
|
ucidef_set_interface_wan "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
|
|
;;
|
|
tplink,tl-wr941-v2)
|
|
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
|
|
;;
|
|
ubnt,acb-isp)
|
|
ucidef_set_interface_wan "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
|
|
;;
|
|
ubnt,routerstation-pro)
|
|
ucidef_set_interface_wan "eth0"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
|
|
;;
|
|
ubnt,nanostation-m-xw)
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "5:lan" "1:wan"
|
|
;;
|
|
zbtlink,zbt-wd323|\
|
|
xiaomi,mi-router-4q)
|
|
ucidef_set_interface_wan "eth1"
|
|
ucidef_add_switch "switch0" \
|
|
"0@eth0" "3:lan:1" "4:lan:2"
|
|
;;
|
|
*)
|
|
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
|
;;
|
|
esac
|
|
}
|
|
|
|
ath79_setup_macs()
|
|
{
|
|
local board="$1"
|
|
|
|
case "$board" in
|
|
avm,fritz300e)
|
|
lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
|
|
;;
|
|
avm,fritz4020)
|
|
lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
|
|
wan_mac=$(fritz_tffs -n macb -i $(find_mtd_part "tffs (1)"))
|
|
;;
|
|
dlink,dir-825-b1)
|
|
lan_mac=$(mtd_get_mac_text "caldata" 65440)
|
|
wan_mac=$(mtd_get_mac_text "caldata" 65460)
|
|
;;
|
|
dlink,dir-825-c1|\
|
|
dlink,dir-835-a1)
|
|
lan_mac=$(mtd_get_mac_text "mac" 4)
|
|
wan_mac=$(mtd_get_mac_text "mac" 24)
|
|
;;
|
|
dlink,dir-859-a1|\
|
|
nec,wg1200cr|\
|
|
wd,mynet-n750)
|
|
lan_mac=$(mtd_get_mac_ascii devdata "lanmac")
|
|
wan_mac=$(mtd_get_mac_ascii devdata "wanmac")
|
|
;;
|
|
elecom,wrc-1750ghbk2-i|\
|
|
elecom,wrc-300ghbk2-i)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary ART 4098)" -2)
|
|
;;
|
|
engenius,ecb1750)
|
|
lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
|
|
;;
|
|
engenius,epg5000|\
|
|
iodata,wn-ac1167dgr|\
|
|
iodata,wn-ac1600dgr|\
|
|
iodata,wn-ac1600dgr2|\
|
|
iodata,wn-ag300dgr)
|
|
lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
|
|
wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
|
|
;;
|
|
engenius,ews511ap)
|
|
lan_mac=$(mtd_get_mac_text "u-boot-env" 233)
|
|
eth1_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_set_interface "eth0" ifname "eth0" protocol "none" macaddr "$lan_mac"
|
|
ucidef_set_interface "eth1" ifname "eth1" protocol "none" macaddr "$eth1_mac"
|
|
;;
|
|
iodata,etg3-r)
|
|
lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" -1)
|
|
;;
|
|
jjplus,ja76pf2)
|
|
wan_mac=$(fconfig -s -r -d $(find_mtd_part "RedBoot config") -n alias/ethaddr)
|
|
lan_mac=$(macaddr_add "$wan_mac" 1)
|
|
;;
|
|
nec,wg800hp)
|
|
lan_mac=$(mtd_get_mac_text board_data 640)
|
|
wan_mac=$(mtd_get_mac_text board_data 1152)
|
|
;;
|
|
netgear,wndr3700|\
|
|
netgear,wndr3700v2|\
|
|
netgear,wndr3800)
|
|
lan_mac=$(macaddr_setbit_la "$(mtd_get_mac_binary art 0)")
|
|
;;
|
|
phicomm,k2t)
|
|
lan_mac=$(k2t_get_mac "lan_mac")
|
|
wan_mac=$(k2t_get_mac "wan_mac")
|
|
;;
|
|
rosinson,wr818)
|
|
wan_mac=$(mtd_get_mac_binary factory 0)
|
|
lan_mac=$(macaddr_setbit_la "$wan_mac")
|
|
;;
|
|
tplink,archer-a7-v5|\
|
|
tplink,archer-c7-v5)
|
|
base_mac=$(mtd_get_mac_binary info 8)
|
|
wan_mac=$(macaddr_add "$base_mac" 1)
|
|
;;
|
|
tplink,archer-c7-v4)
|
|
base_mac=$(mtd_get_mac_binary config 8)
|
|
wan_mac=$(macaddr_add "$base_mac" 1)
|
|
;;
|
|
tplink,tl-wr1043nd-v4|\
|
|
tplink,tl-wr1043n-v5)
|
|
base_mac=$(mtd_get_mac_binary product-info 8)
|
|
wan_mac=$(macaddr_add "$base_mac" 1)
|
|
;;
|
|
tplink,tl-wr941-v2|\
|
|
tplink,tl-wr941n-v7-cn)
|
|
base_mac=$(mtd_get_mac_binary u-boot 130048)
|
|
wan_mac=$(macaddr_add "$base_mac" 1)
|
|
;;
|
|
ubnt,routerstation|\
|
|
ubnt,routerstation-pro)
|
|
wan_mac=$(fconfig -s -r -d $(find_mtd_part "RedBoot config") -n ar7100_esa)
|
|
lan_mac=$(macaddr_add "$wan_mac" 1)
|
|
;;
|
|
wd,mynet-wifi-rangeextender)
|
|
lan_mac=$(nvram get et0macaddr)
|
|
;;
|
|
esac
|
|
|
|
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
|
|
[ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
|
|
}
|
|
|
|
board_config_update
|
|
board=$(board_name)
|
|
ath79_setup_interfaces $board
|
|
ath79_setup_macs $board
|
|
board_config_flush
|
|
|
|
exit 0
|