Western Digital My Net WiFi Range Extender

Manufacturer Link:http://www.wdc.com/en/products/products.aspx?id=890

GPL Source code:http://support.wdc.com/product/download.asp?groupid=1708&sid=190&lang=en

Hardware Specs
Name Western Digital My Net WiFi Range Extender
FCC ID N89-WE206A1
Platform DB120
Wifi Supported 802.11 abgn
CPU Atheros AR7370
Onboard RAM 32Mb
Flash ROM 8Mb
Wifi AR9300
LAN Ethernet 1 x 10/100/1000

Support is in Progress in OpenWRT version: BARRIER BREAKER (Bleeding Edge, r38688) onwards.

Flash Layout

Western Digital My Net WiFi Range Extender Flash Layout
Layer0 m25p80 spi0.0: m25p64 8192KiB
Layer1 mtd0 u-boot 256KiB mtd1 firmware 7808KiB mtd2 nvram 64KiB mtd3 art 64KiB
Layer2 kernel 960KiB mtd4 rootfs 6848KiB
mountpoint /
filesystem mini_fo/overlayfs
Layer3 mtd3 rootfs_data 5184KiB
Size in KiB 256KiB 960KiB 1536KiB 5184KiB 64KiB 64KiB
Name u-boot kernel rootfs_data nvram art
mountpoint none none /rom /overlay none none
filesystem none none SquashFS JFFS2 none none

Installing and Updating OpenWRT

OEM easy installation via Web Interface

OEM TFTP install / unbricking via tftp

Set a PC on same network to some address in IP range 192.168.1.[2-254]. Download either WD or OpenWrt firmware image (openwrt-ar71xx-generic-mynet-rext-squashfs-factory.bin), store as code.bin. From serial console abort the U-boot process. Enter this on u-boot command line

ar7100> upgrade code.bin
Tftpd start listening on port[69]!

Send file from windows PC with TFTP:

C:\tmp> tftp -i 192.168.1.230 put code.bin

For linux TFTP

tftp -m binary 192.168.1.230 69
tftp> put code.bin

You should see this on console wait for flash to finish:

Receiving firmware [code.bin] from [192.168.1.10]
Write File : CODE.BIN

Once U-boot command prompt returns enter

ar7100 > go

Upgrading OpenWrt

generic.sysupgrade

If you have already installed OpenWrt and like to reflash for e.g. upgrading to a new OpenWrt version you can upgrade using the mtd command line tool. It is important that you put the firmware image into the ramdisk (/tmp) before you start flashing.

LuCI Web Upgrade Process

Terminal Upgrade Process

  • Login as root via SSH on 192.168.1.1
  • Use the following commands to upgrade.

cd /tmp/
wget http://http://downloads.openwrt.org/snapshots/trunk/XXX/xxx.abc
sysupgrade /tmp/xxx.abc

Basic configuration

Basic configuration After flashing, proceed with this.
Set up your Internet connection, configure wireless, etc.

Specific Configuration

Interfaces

The default network configuration is:

Interface Name Description Default configuration
br-lan LAN & WiFi 192.168.1.1/24
wlan0 WiFi Disabled

Failsafe mode

Buttons

hardware.button on howto use and configure the hardware button(s).

The Range Extender has two programmable buttons and a switch. The buttons are Reset, the WiFi Protected Setup Push Button. The switch has no function, the original firmware uses it to select whenever the wifi should operate in the 5GHz or 2.4GHz band. Here, we merely name the buttons, so we can use them in the above Howto:

BUTTON Event
Reset reset
WPS wps

Hardware

Serial Port

The UART is accessable via JP1 (which hasn't a header connected). You will need a TTL to RS232 (ie a MAX232 circuit) to utilise this. The pinout is:
[GND] [RxD] [TxD] [3.3v]
DJ1

On the PCB

Looking under the main 'can', the CPU is:
Atheros AR7370-BC2A PGX842_00B 1221 TAIWAN

Next to that, there's a 256MBit RAM chip:
winbond W9725G6KB-25 6146A53AQZZ2 218PUA TWN

The Flash Rom chip:
winbond 25Q64FVSIG 1236

Pictures

Top of mainboard:

Antenna Layout:

SoC and RAM:

UART header and Flash-Rom:

Bootlogs

OEM bootlog

Linux version 2.6.31 (root@tabulator) (gcc version 4.3.3 (GCC) ) #159 Tue Oct 22 16:50:45 CEST 2013 flash_size passed from bootloader = 8 arg 1: console=ttyS0,115200 arg 2: root=31:04 arg 3: rootfstype=squashfs arg 4: init=/sbin/init arg 5: mtdparts=ath-nor0:256k(u-boot),7808k(linux),64k(nvram),64k(ART),64k(filesystem) arg 6: fsoffset=0xd0000 arg 7: mem=32M CPU revision is: 0001974c (MIPS 74Kc) ath_sys_frequency: cpu srif ddr srif cpu 560 ddr 400 ahb 200 Determined physical RAM map: memory: 02000000 @ 00000000 (usable) User-defined physical RAM map: memory: 02000000 @ 00000000 (usable) Zone PFN ranges: Normal 0x00000000 -> 0x00002000 Movable zone start PFN for each node early_node_map[1] active PFN ranges 0: 0x00000000 -> 0x00002000 On node 0 totalpages: 8192 free_area_init_node: node 0, pgdat 80224290, node_mem_map 81000000 Normal zone: 64 pages used for memmap Normal zone: 0 pages reserved Normal zone: 8128 pages, LIFO batch:0 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128 Kernel command line: console=ttyS0,115200 root=31:04 rootfstype=squashfs init=/sbin/init mtdparts=ath-nor0:256k(u-boot),7808k(linux),64k(nvram),64k(ART),64k(filesystem) fsoffset=0xd0000 mem=32M PID hash table entries: 128 (order: 7, 512 bytes) Dentry cache hash table entries: 4096 (order: 2, 16384 bytes) Inode-cache hash table entries: 2048 (order: 1, 8192 bytes) Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes. Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes Writing ErrCtl register=00000000 Readback ErrCtl register=00000000 Memory: 23928k/32768k available (1751k kernel code, 8840k reserved, 441k data, 116k init, 0k highmem) NR_IRQS:128 plat_time_init: plat time init done Calibrating delay loop... 279.55 BogoMIPS (lpj=559104) Mount-cache hash table entries: 512 ****************ALLOC*********************** Packet mem: 80254aa0 (0x600000 bytes) ******************************************** NET: Registered protocol family 16 PCI init:ath_pcibios_init ath_pcibios_init(294): PCI CMD write: 0x356 registering PCI controller with io_map_base unset bio: create slab at 0 pci 0000:00:00.0: reg 10 64bit mmio: [0x000000-0x01ffff] pci 0000:00:00.0: reg 30 32bit mmio: [0x000000-0x00ffff] pci 0000:00:00.0: supports D1 pci 0000:00:00.0: PME# supported from D0 D1 D3hot pci 0000:00:00.0: PME# disabled Returning IRQ 64 NET: Registered protocol family 2 IP route cache hash table entries: 1024 (order: 0, 4096 bytes) TCP established hash table entries: 1024 (order: 1, 8192 bytes) TCP bind hash table entries: 1024 (order: 0, 4096 bytes) TCP: Hash tables configured (established 1024 bind 1024) TCP reno registered NET: Registered protocol family 1 ATH GPIOC major 0 squashfs: version 4.0 (2009/01/31) Phillip Lougher fuse init (API version 7.12) msgmni has been set to 46 Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254) io scheduler noop registered io scheduler deadline registered (default) GPIO_init register done Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled serial8250.0: ttyS0 at MMIO 0xb8020000 (irq = 19) is a 16550A console [ttyS0] enabled 5 cmdlinepart partitions found on MTD device ath-nor0 Creating 5 MTD partitions on "ath-nor0": 0x000000000000-0x000000040000 : "u-boot" 0x000000040000-0x0000007e0000 : "linux" 0x0000007e0000-0x0000007f0000 : "nvram" 0x0000007f0000-0x000000800000 : "ART" 0x000000110000-0x0000007e0000 : "filesystem" Netfilter messages via NETLINK v0.30. nf_conntrack version 0.5.0 (512 buckets, 2048 max) ip_tables: (C) 2000-2006 Netfilter Core Team TCP cubic registered NET: Registered protocol family 17 802.1Q VLAN Support v1.8 Ben Greear All bugs added by David S. Miller athwdt_init: Registering WDT success ath_otp_init: Registering OTP success ath_clksw_init: Registering Clock Switch Interface success Calling get_sb_bdev VFS: Mounted root (squashfs filesystem) readonly on device 31:4. file name /dev/root p squashfs mount_data Freeing unused kernel memory: 116k freed ATHR_GMAC: Length per segment 1536 ATHR_GMAC: fifo cfg 3 01f00140 ATHR_GMAC: RX TASKLET - Pkts per Intr:100 ATHR_GMAC: Mac address for unit 0:bfff0000 ATHR_GMAC: ff:ff:ff:ff:ff:ff ATHR_GMAC: Max segments per packet : 1 ATHR_GMAC: Max tx descriptor count : 128 ATHR_GMAC: Max rx descriptor count : 192 ATHR_GMAC: Mac capability flags : 2380 ctmisc: module license 'unspecified' taints kernel. Disabling lock debugging due to kernel taint Register /dev/ctmisc device, major:10 minor:255 athr_gmac_ring_alloc Allocated 2048 at 0x81de8800 athr_gmac_ring_alloc Allocated 3072 at 0x81d57000 WASP ----> F1e PHY Setting Drop CRC Errors, Pause Frames and Length Error frames Setting PHY... ATHR_AUTONEG_ADVERT:DE1 ATHR_1000BASET_CONTROL:200 ATHR_PHY_CONTROL:1000 ATHRSF1_PHY: Port 4, Neg Success ATHRSF1_PHY: unit 0 phy addr 4 device eth0 entered promiscuous mode ath_hal: 0.9.17.1 (AR5416, AR9380, REGOPS_FUNC, WRITE_EEPROM, 11D) ath_rate_atheros: Copyright (c) 2001-2005 Atheros Communications, Inc, All Rights Reserved ath_dev: Copyright (c) 2001-2007 Atheros Communications, Inc, All Rights Reserved ATH_MAC_TIMER: enet unit:0 is up... RGMii 1000Mbps full duplex value 1 ATH_MAC_TIMER: done cfg2 0x7215 ifctl 0x0 miictrl WASP ----> F1e PHY Setting Drop CRC Errors, Pause Frames and Length Error frames ath_pci: 9.2.0_U10.5.13 (Atheros/multi-bss) PCI: Setting latency timer of device 0000:00:00.0 to 64 __ath_attach: Set global_scn[0] ACBKMinfree = 48 ACBEMinfree = 32 ACVIMinfree = 16 ACVOMinfree = 0 CABMinfree = 48 UAPSDMinfree = 0 *** ar9300Attach 630 ar9300NewState *** Restoring Cal data from Flash ath_get_caps[5147] rx chainmask mismatch actual 7 sc_chainmak 0 ath_get_caps[5122] tx chainmask mismatch actual 7 sc_chainmak 0 SC Callback Registration for wifi0 wifi0: Atheros 9380: mem=0x10000000, irq=64 hw_base=0xb0000000 wlan_vap_create : enter. devhandle=0x81fb42c0, opmode=IEEE80211_M_HOSTAP, flags=0x1 wlan_vap_create : exit. devhandle=0x81fb42c0, opmode=IEEE80211_M_HOSTAP, flags=0x1. VAP device ath0 created DES SSID SET=WDRangeExtender ieee80211_ioctl_siwmode: imr.ifm_active=131712, new mode=3, valid=1 VAP device ath1 created device ath0 entered promiscuous mode device ath1 entered promiscuous mode br0: port 3(ath1) entering forwarding state br0: port 2(ath0) entering forwarding state br0: port 1(eth0) entering forwarding state ieee80211_ioctl_siwmode: imr.ifm_active=393856, new mode=3, valid=1 Scan in progress.. Cancelling it br0: port 2(ath0) entering disabled state DEVICE IS DOWN ifname=ath0 DEVICE IS DOWN ifname=ath0 br0: port 2(ath0) entering forwarding state WPS Enabled : Ignoring MAC Filtering WPS Enabled : Ignoring MAC Filtering WPS Enabled : Ignoring MAC Filtering WPS Enabled : Ignoring MAC Filtering br0: port 2(ath0) entering disabled state athr_gmac_ring_free Freeing at 0x81de8800 athr_gmac_ring_free Freeing at 0x81d57000 br0: port 1(eth0) entering disabled state device eth0 left promiscuous mode br0: port 1(eth0) entering disabled state br0: port 3(ath1) entering disabled state ieee80211_scan_unregister_event_handler: Failed to unregister evhandler=81b6d9fc arg=81dc7ac0 ieee80211_scan_unregister_event_handler: Failed to unregister evhandler=81b6d9fc arg=81dc7ac0 ieee80211_scan_unregister_event_handler: Failed to unregister evhandler=81b6d6b4 arg=81dc7ac0 device ath0 left promiscuous mode br0: port 2(ath0) entering disabled state ieee80211_scan_unregister_event_handler: Failed to unregister evhandler=81b6d9fc arg=81dc72c0 ieee80211_scan_unregister_event_handler: Failed to unregister evhandler=81b6d9fc arg=81dc72c0 ieee80211_scan_unregister_event_handler: Failed to unregister evhandler=81b6d6b4 arg=81dc72c0 device ath1 left promiscuous mode br0: port 3(ath1) entering disabled state ath_pci: driver unloaded Removing athdebug proc file ath_dev: driver unloaded ath_rate_atheros: driver unloaded ath_hal: driver unloaded athr_gmac_ring_alloc Allocated 2048 at 0x81fa1800 athr_gmac_ring_alloc Allocated 3072 at 0x81d72000 WASP ----> F1e PHY Setting Drop CRC Errors, Pause Frames and Length Error frames Setting PHY... ATHR_AUTONEG_ADVERT:DE1 ATHR_1000BASET_CONTROL:200 ATHR_PHY_CONTROL:1000 ATHRSF1_PHY: Port 4, Neg Success ATHRSF1_PHY: unit 0 phy addr 4 device eth0 entered promiscuous mode ath_hal: 0.9.17.1 (AR5416, AR9380, REGOPS_FUNC, WRITE_EEPROM, 11D) ath_rate_atheros: Copyright (c) 2001-2005 Atheros Communications, Inc, All Rights Reserved ath_dev: Copyright (c) 2001-2007 Atheros Communications, Inc, All Rights Reserved ATH_MAC_TIMER: enet unit:0 is up... RGMii 1000Mbps full duplex value 1 ATH_MAC_TIMER: done cfg2 0x7215 ifctl 0x0 miictrl WASP ----> F1e PHY Setting Drop CRC Errors, Pause Frames and Length Error frames ath_pci: 9.2.0_U10.5.13 (Atheros/multi-bss) PCI: Setting latency timer of device 0000:00:00.0 to 64 __ath_attach: Set global_scn[0] ACBKMinfree = 48 ACBEMinfree = 32 ACVIMinfree = 16 ACVOMinfree = 0 CABMinfree = 48 UAPSDMinfree = 0 *** ar9300Attach 630 ar9300NewState *** Restoring Cal data from Flash ath_get_caps[5147] rx chainmask mismatch actual 7 sc_chainmak 0 ath_get_caps[5122] tx chainmask mismatch actual 7 sc_chainmak 0 SC Callback Registration for wifi0 wifi0: Atheros 9380: mem=0x10000000, irq=64 hw_base=0xb0000000 wlan_vap_create : enter. devhandle=0x81fb42c0, opmode=IEEE80211_M_HOSTAP, flags=0x1 wlan_vap_create : exit. devhandle=0x81fb42c0, opmode=IEEE80211_M_HOSTAP, flags=0x1. VAP device ath0 created DES SSID SET=WDRangeExtender ieee80211_ioctl_siwmode: imr.ifm_active=131712, new mode=3, valid=1 VAP device ath1 created Found best 11na chan: 36 device ath0 entered promiscuous mode device ath1 entered promiscuous mode br0: port 3(ath1) entering forwarding state br0: port 2(ath0) entering forwarding state br0: port 1(eth0) entering forwarding state ieee80211_ioctl_siwmode: imr.ifm_active=852608, new mode=3, valid=1 br0: port 2(ath0) entering disabled state DEVICE IS DOWN ifname=ath0 DEVICE IS DOWN ifname=ath0 br0: port 2(ath0) entering forwarding state WPS Enabled : Ignoring MAC Filtering

Tags

Back to top

toh/wd/rext.txt · Last modified: 2013/11/24 02:04 (external edit)