Aug 21, 2020

ADO PISO WIFI VLAN NO USB LAN, NO NEWIFI3 D2, ANY OPENWRT FW WILL DO

Today I want to share to my readers this over whelming PiSo WiFi Vending machine that majority of Netizens are aiming to build or buy this kind of small business apparatus. I was intrigue by this famous low cost dual band AC1200 wireless router from forum and including on the youtube channels. Lenovo Comfast NEWIFI3 D2 is a 5 port Giga LAN/WAN that competes most well known WAPs such MikroTik, TP-Link, Linksys and others you name it.

I was just curious that I thought it was not equip with RF Amps, good enough the power output is less than 800mWatt its powerful if someone can buil a good 2.4GHz antenna. The 5GHz also can transmit at less than 200mWatt.

My purpose on getting this NEWIFI3 D2 is for my oldys PiSo vendo machine that I wanted to omit the USB LAN that need to be retired. After doing experiment with different firmware I went on sticking with OpenWRT. Now I realize that the NEWIFI3 D2 I buy is now serving only as a L2 managed switch and as a WAP (wireless access point). I did not get TP-Link SG105E and SG108E cause it is a semi managed switch.


I happen to realize again that have a bunch of TP-Link wireless router that can do that task which NEWIFI3 D2 can do except my old wireless router do not have the AC WiFi.


If in your case you are tight budget you can get TP-Link TL-WR740N which is more cheaper and make it as manage switch for Ado Piso WiFi vendo machine.


This will only work if the PiSo WiFi software VLAN is editable, some other vendo wifi developer the VLAN/TAG is fix the end user do not have the permission to edit those value. 

Aug 9, 2020

Is there a need for 1490 nm testing in PONs?

This paper explains the difference between 1490 nm optical time domain reflectometer (OTDR) and insertion loss testing as well as physical layer and equipment/transmission signal testing. It also describes the technical and economical differences between 1490 and 1550 nm when analyzing the intrinsic characteristics of the fiber. 
Point-to-multipoint passive optical networks (PONs), such as Ethernet PON (EPON), Gigabit PON (GPON) or Gigabit Ethernet PON (GEPON) technologies, bring imminent testing challenges, especially at the construction stage of the fiber link when using splitters. The most recurring question concerns the need for qualifying the fiber plant at 1490 nm, the wavelength used to transmit data from the optical line terminal (OLT) to the optical network terminal (ONT), making it legitimate to consider testing at this particular wavelength. But is it worth testing at this wavelength? OTDR Testing The OTDR helps technicians characterize fibers and optical networks. 

Primarily it provides location information regarding localized loss and reflective events, offering a pictorial and permanent record of the characteristics of a fiber. Secondly it measures the total loss of the link, which is discussed later. When characterizing a fiber link, field technicians also measure the insertion loss of the fiber and investigate possible issues that could occur, such as high connector loss, splice loss, high attenuation, or possible bends. To properly locate an event and measure the reflectance, technicians must enter the fiber specifications into the OTDR setup. 

Today the International Telecommunications Union-Telecommunications Sector (ITU-T) G.652 standard does not require specification at 1490 nm and most fiber manufacturers provide fiber specifications for the common 1310 and 1550 nm wavelengths. The index of refraction and backscatter coefficient settings for 1490 nm are typically unknown, leaving users unassured of the accuracy of location and reflectance results. 

Furthermore, splice/connector losses are not wavelength-dependent. A 0.2 dB splice loss at 1550 nm will exhibit a 0.2 dB loss at 1310 and 1490 nm. Another key element of a PON system is the splitter (from a 1x4 to a 1x64). The most commonly used is the 1x32 and the loss variation between the 1490 and 1550 nm wavelengths is as low as 0.3 dB. Once again, it shows minimal or marginal value-added information for testing at these two wavelengths. Also the OTDR can detect and localize macro bends by comparing two OTDR shots made at different wavelengths, typically 1310 and 1550 nm. Longer wavelengths are more sensitive to macro bends, meaning the bend-dependent loss is higher and the location easier.

read more via viavi solution

Jun 10, 2020

TP-Link WR940N v4/v5 Brush LEDE OpenWrt

Hold and press RESET button then power ON the wireless router.

Set the PC LAN Ip address to 192.168.0.66


Install Tftpd32 on Windows machine and rename LEDE/Openwrt to wr940nv6_tp_recovery





Jun 1, 2020

OpenWrt L2 Wireless Bridge Client Plus Access Point

My simple way of doing OpenWrt Layer2 Wireless Bridge Client plus Access Point.


root@OpenWrt:~# cat /etc/config/wireless

config wifi-device 'radio0'
option type 'mac80211'
option channel '11'
option hwmode '11g'
option path 'platform/qca953x_wmac'
option htmode 'HT20'
option disabled '0'
option country 'US'
option legacy_rates '1'

config wifi-iface 'default_radio0'
option device 'radio0'
option mode 'ap'
option encryption 'none'
option ssid 'AP101'
option network 'lan'

config wifi-iface
option ssid 'WR941ND'
option encryption 'psk2'
option device 'radio0'
option mode 'sta'
option bssid '00:23:45:67:89:AB'
option key 'password'
option network 'wwan'

root@OpenWrt:~#



root@OpenWrt:~# cat /etc/config/network

config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'

config globals 'globals'
option ula_prefix 'fd53:bbc3:725d::/48'

config interface 'lan'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
option ip6assign '60'
option ifname 'eth0'
option delegate '0'

config switch
option name 'switch0'
option reset '1'
option enable_vlan '1'

config switch_vlan
option device 'switch0'
option vlan '1'
option vid '1'
option ports '0 1 2 3 4'

config interface 'wwan'
option proto 'relay'
list network 'lan'

root@OpenWrt:~#


config defaults
option syn_flood '1'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'REJECT'

config zone
option name 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
option network 'lan wwan'

config zone
option name 'wan'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
option network 'wan wan6'

config forwarding
option src 'lan'
option dest 'wan'

config rule
option name 'Allow-DHCP-Renew'
option src 'wan'
option proto 'udp'
option dest_port '68'
option target 'ACCEPT'
option family 'ipv4'

config rule
option name 'Allow-Ping'
option src 'wan'
option proto 'icmp'
option icmp_type 'echo-request'
option family 'ipv4'
option target 'ACCEPT'

config rule
option name 'Allow-IGMP'
option src 'wan'
option proto 'igmp'
option family 'ipv4'
option target 'ACCEPT'

config rule
option name 'Allow-DHCPv6'
option src 'wan'
option proto 'udp'
option src_ip 'fc00::/6'
option dest_ip 'fc00::/6'
option dest_port '546'
option family 'ipv6'
option target 'ACCEPT'

config rule
option name 'Allow-MLD'
option src 'wan'
option proto 'icmp'
option src_ip 'fe80::/10'
list icmp_type '130/0'
list icmp_type '131/0'
list icmp_type '132/0'
list icmp_type '143/0'
option family 'ipv6'
option target 'ACCEPT'

config rule
option name 'Allow-ICMPv6-Input'
option src 'wan'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
list icmp_type 'router-solicitation'
list icmp_type 'neighbour-solicitation'
list icmp_type 'router-advertisement'
list icmp_type 'neighbour-advertisement'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'

config rule
option name 'Allow-ICMPv6-Forward'
option src 'wan'
option dest '*'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'

config rule
option name 'Allow-IPSec-ESP'
option src 'wan'
option dest 'lan'
option proto 'esp'
option target 'ACCEPT'

config rule
option name 'Allow-ISAKMP'
option src 'wan'
option dest 'lan'
option dest_port '500'
option proto 'udp'
option target 'ACCEPT'

config include
option path '/etc/firewall.user'

root@OpenWrt:~#

May 23, 2020

AR9341 Router TTL Line Brush Machine

Recently, I have a batch of OEM PoE routers that do not have a USB interface. It is just used to study the TTL flash machine.

Then connect the USB to TTL. Note here that some boards will be incompatible with garbled characters. You can try to change the baud rate. If not, just change a USB to TTL board.

The computer uses SecureCRT, serial port connection, there is no character on the connection, then power on the router, the screen starts to display UBOOT, press any key to interrupt, some press TPL interrupt or ctrl + c interrupt, I first flash breed

These software will be provided below to download, understand the command of FLASH before brushing

2MB FLASH


Flash programmer firmware: tftp 0x80000000 full.bin
erase 0x9f000000 + 0x200000
cp.b 0x80000000 0x9f000000 0x200000 flash
uboot:
tftp 0x80000000 uboot.bin
erase 0x9f000000 + 0x20000
cp.b 0x80000000 0x9f000000 0x20000 flash
fw:
tftp
0x80x9fwfc.
cp.b 0x80000000 0x9f020000 0x1c0000
brush art:
tftp 0x80000000 art.bin
erase 0x9f1f0000 + 0x10000
cp.b 0x80000000 0x9f1f0000 0x10000


4MB FLASH

Flash programmer firmware: tftp 0x80000000 full.bin

erase 0x9f000000 + 0x400000

cp.b 0x80000000 0x9f000000 0x400000 flash

uboot:

tftp 0x80000000 uboot.bin

erase 0x9f000000 + 0x20000

cp.b 0x80000000 0x9f000000 0x20000 flash

fw: tftp 0x80x9 fw0f0f3

cp.b 0x80000000 0x9f020000 0x3c0000

brush art:

tftp 0x80000000 art.bin

erase 0x9f3f0000 + 0x10000

cp.b 0x80000000 0x9f3f0000 0x10000


8MB FLASH

Flash programmer firmware: tftp 0x80000000 full.bin
erase 0x9f000000 + 0x800000
cp.b 0x80000000 0x9f000000 0x800000 flash
uboot:
tftp 0x80000000 uboot.bin
erase 0x9f000000 + 0x20000
cp.b 0x80000000 0x9f000000 0x20000 flash
fw:
tftp
0x80x9 fw.f02
cp.b 0x80000000 0x9f020000 0x7c0000
brush art:
tftp 0x80000000 art.bin
erase 0x9f7f0000 + 0x10000
cp.b 0x80000000 0x9f7f0000 0x10000


16M FLASH: flash address from 0x000000 ~ 0x0FFFFFF
ttl access flash address from 0x9F000000 ~ 0x9F0FFFFFF


The network cable is connected to the router lan port, the computer configuration is set to 192.168.0.2, the mask is 255.255.255.0, and the gateway is 192.168.0.1

Open tftp in my software package, select the network card connected to the router's network cable, it will normally display the IP 192.168.0.2, click "Show Dir" contains a firmware of breed-ar9341.bin, first flash him, execute the following command

setenv ipaddr 192.168.0.1

setenv serverip 192.168.0.2

tftp 0x80000000 breed-ar9341.bin

When done appears, it means that the brushing is successful, and then execute

erase 0x9f000000 + 0x20000

cp.b 0x80000000 0x9f000000 0x20000

When done appears, flashing in is successful. Unplug the router and plug it in again. SecureCRT displays the Breed boot and press any key terminal. At the same time, you can see that the default lan port address is 192.168.1.1

Connect the computer browser to 192.168.1.1, then you can directly use the Breed Web


Enter 192.168.0.1 in the address bar of the browser and select the firmware upgrade. Here you should save the original firmware under backup. You can configure openwrt after the flashing is completed.

Software download address:

https://pan.baidu.com/s/1Z7PkN8ROxpDITdRZHgw3nQ

Extraction code: be5m

May 22, 2020

Tenda G103 ONU works on HUAWEI OLT


Today a friend from India an FTTH subscriber of RailWire ISP share the thoughts of his Tenda G103  ONU (Optical Network Unit) as a replacement to Huawei ONT (Optical Network Terminal).


Looking for serial port pin header very easy to guess just like the other wireless router that has Ground TX RX and VCC.


The good news firmware is base on opensource OpenWrt image_name=openwrt-lantiq-falcon-EASY98020

The Tenda ONU G103 is equip with 400MHz Falcon-D Lantiq Chips, with 64MB DDRAM and 8MB Flash.


Another interesting command line interface

Press SPACE to delay and Ctrl-C to abort autoboot in 5 seconds
FALCON => bdinfo
boot_params = 0x83F2FF98
memstart = 0x80000000
memsize = 0x04000000
flashstart = 0xB0000000
flashsize = 0xFFFF0000
flashoffset = 0x00000000
ethaddr = C8:3A:35:B3:E8:50
ip_addr = 192.168.5.1
baudrate = 115200 bps
FALCON => ?
? - alias for 'help'
asc0_fixup- fix asc0 pins (for silent boot)
askenv - get environment variables from stdin
base - print or set address offset
bdinfo - print Board Info structure
boot - boot default, i.e., run 'bootcmd'
bootd - boot default, i.e., run 'bootcmd'
bootm - boot application image from memory
bootp - boot image via network using BOOTP/TFTP protocol
chipinfo- print chip info
cmp - memory compare
cp - memory copy
crc32 - checksum calculation
ddrlp - config DDR LowPower
ddrstatus- show DDR Controller status
dhcp - boot image via network using DHCP/TFTP protocol
echo - echo args to console
editenv - edit environment variable
eeprom - EEPROM sub-system
env - environment handling commands
exit - exit script
extphy - external PHY enable (clock and reset)
false - do nothing, unsuccessfully
go - start application at address 'addr'
gpio - input/set/clear/toggle gpio pins
help - print command description/usage
httpd - start webserver
i2c - I2C sub-system
iminfo - print header information for application image
itest - return true/false on integer compare
loadb - load binary file over serial line (kermit mode)
loads - load S-Record file over serial line
loady - load binary file over serial line (ymodem mode)
loop - infinite loop on address range
md - memory display
mii - MII utility commands
mm - memory modify (auto-incrementing address)
mmd - MMD utility commands
mtest - simple RAM read/write test
mw - memory write (fill)
nm - memory modify (constant address)
ping - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
reset - Perform RESET of the CPU
run - run commands in an environment variable
saveenv - save environment variables to persistent storage
setenv - set environment variables
sf - SPI flash sub-system
sfboot - boot from serial flash device
showvar - print local hushshell variables
sleep - delay execution for some time
sntp - synchronize RTC via network
source - run script from memory
test - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
tlb - setup TLB (virtual memory) mapping
true - do nothing, successfully
version - print monitor, compiler and linker version
wdoff - switch watchdog off
wdtest - watchdog test (endless loop!)
wdtime - set watchdog timeout

On the printenv

FALCON => printenv
act_img_addr=0xBF20003C
addip=setenv bootargs ${bootargs} ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:${netdev}:off
addmisc=setenv bootargs ${bootargs} ethaddr=${ethaddr} machtype=${machtype} ignore_loglevel vpe1_load_addr=0x83f00000 vpe1_mem=1M mem=63M ${mtdparts}
addmtdparts0=setenv mtdparts mtdparts=sflash:256k(uboot),128k(uboot_env),3712k(linux),3712k(image1),384k(rootfs_data),8192k@0(all)
addmtdparts1=setenv mtdparts mtdparts=sflash:256k(uboot),128k(uboot_env),3712k(image0),3712k(linux),384k(rootfs_data),8192k@0(all)
baudrate=115200
boot_image=run boot_image${c_img};
boot_image0=run kernel0_from_sf flashargs addip addmtdparts0 addmisc && bootm ${ram_addr}
boot_image1=run kernel1_from_sf flashargs addip addmtdparts1 addmisc && bootm ${ram_addr}
boot_image_err=setenv kernel_offs ${kernel0_offs};httpd && setenv image0_is_valid 1
bootcmd=run flash_flash
bootdelay=5
committed_image=1
data_addr=0xB07a0000
data_offs=0x7a0000
data_size=0x60000
env_offs=0x40000
env_offs_redund=0x50000
ethact=GPHY0
ethaddr=C8:3A:35:edited
ethrotate=no
extphy=1
fileaddr=80F00000
filesize=380004
flash_flash=run select_image boot_image
flashargs=setenv bootargs rootfstype=squashfs,jffs2
goi_config=begin-base64 644 goi_config@H4sIAGrcIVMCA+1XS0/bQBDOtfkVW3HICbOzT7tWD6hAhQoSIhE9RMja2Jtg@1c5atmnpv+84KTgPp1woFWq+i62dz/PamZ21reOj2M2n6exo5tJo+dp7WVCE@lnLxRGw+maS8B4wD5VKB0D0KXDHdI7T3CrivalMS0iudq//Ee07+RtFf7jjB@zSeDWeYmJhv037miTt2cfDJZOilN8z5Kc4uZygsyYBTkIVWHACNQH5gY9NeU@lGY+s9XGYm3zwqKm+9JGtZlkDeHRyqi0UzLglHuBTxVlwm9lN8dXJ9EkiRYU@yTwutJKKyQ1GFZtsyaEeUH/DeBIncWSKZNMn9LTK07q25Q5JVLgfW8LczdPa@la0Hl+jASqaiz4ssYkQt5QR9o9HVBSUDCAKPrktgKWFaiVUR6n2ol6JD6mkp@FOZHK6VbynnuElTw+3vpgZaKYw4Dta0GUA142pdoRigO0KUGScA9wQPFGJdS@boeADCZUVwiNJFC8KwS2sE3B577GCLptI0l7PhqVPAAssm3brLEAXbYbiWRs@TYQ10aYdv/M7pLBD6qbTyj4mH/gOvRix2qm2Q/iktdkLpnZoxVh8Lndo7RA+@aW2yzBe+rhesNRX2XW7n9UrTrbaMZFIGjCktYaVor4fD8whEQBNTfnuk4nnt@A/cpoz5HdLBXFTMRYL1iNQGwDmphSjNxWRov+eD5WJeSYuU1fqwF4fL7jZWJ@q8xKPHg6RWeZmaGadvXCueLSJRZ3eOPraVylLe/zzRDdfYCJll1nR+xK27We@JM3h8KbPf4vzv0lCvBj/Zmb/go1n5j8CmvkvtBBCaobzn2lN9/P/NUB7e/zP@WO//xdUsykxly+ZI9uLq+wv1P945dvY/KNne/ynyQAFT+/5/DRzg/YHMXU3i@u+beTuo7S0Y/C0vSBO8L6TS15fswDPvN2seL4+HpdXR9etasHODMxd+B8Zfb@8Ly+I+P8+DYcnpLx/dej5hVHCRlXt32814faE74OgUpPST+k/X3b7bHHHnv8@c/wCI53hZAAUAAA=@====@
gphy0_phyaddr=0
gphy1_phyaddr=1
image0_addr=0xB0060000
image0_is_valid=1
image0_version=G10xla_v1.0.0.2_cn
image1_addr=0xB0400000
image1_is_valid=1
image1_version=G10xla_v1.0.0.2_cn
image_name=openwrt-lantiq-falcon-EASY98020
ipaddr=192.168.5.1
kernel0_from_sf=sf probe 0;sf read ${ram_addr} ${kernel0_offs} ${max_kernel_size}
kernel0_offs=0x60000
kernel1_from_sf=sf probe 0;sf read ${ram_addr} ${kernel1_offs} ${max_kernel_size}
kernel1_offs=0x400000
lang=en
load_kernel=tftpboot ${ram_addr} ${tftppath}${image_name}-uImage
load_uboot=tftpboot ${ram_addr} ${tftppath}u-boot.img
machtype=EASY98020
magic_addr=0xBF200038
magic_val=0xDEADBEEF
max_kernel_size=0x180000
net_nfs=run load_kernel nfsargs addip addmtdparts0 addmisc;bootm ${ram_addr}
nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=${serverip}:${rootpath},${nfsoptions}
nfsoptions=rsize=1024,wsize=1024
omci_loid=GPONONU15
ponmac=00:A1:B2:edited
preboot=echo;echo Type "run flash_nfs" to mount root filesystem over NFS;echo
ram_addr=0x80F00000
reset_uboot_env=sf probe 0;sf erase 0x40000 0x20000
restore_sta=0
rgmii0_phyaddr=4
rgmii1_phyaddr=5
save_uboot=sf probe 0;sf erase 0 0x40000;sf write ${ram_addr} 0 ${filesize}
select_image=setenv activate_image -1;if itest *${magic_addr} == ${magic_val} ; then if itest *${act_img_addr} == 0 ; then setenv activate_image 0;fi;if itest *${act_img_addr} == 1 ; then setenv activate_image 1;fi;mw ${magic_addr} 0x0;mw ${act_img_addr} 0x0;fi;if test $activate_image = -1 ; then setenv c_img $committed_image;else setenv c_img $activate_image;setenv activate_image -1;fi;if test $c_img = 0 && test $image0_is_valid = 0 ; then setenv c_img 1;fi;if test $c_img = 1 && test $image1_is_valid = 0 ; then setenv c_img 0;fi;if test $image0_is_valid = 0 && test $image1_is_valid = 0 ; then setenv c_img _err;fi;exit 0
serial_number=5444544335edited
serverip=192.168.1.2
sgmii_inv=1
sgmii_phyaddr=6
stderr=serial
stdin=serial
stdout=serial
sw_release_time=Apr 20 2015
sw_ver=V1.0.0.2
uboot_env_svn=144
update_image0=tftpboot ${ram_addr} ${tftppath}${image_name}-squashfs.image;sf probe 0;sf erase ${kernel0_offs} +${filesize};sf write ${ram_addr} ${kernel0_offs} ${filesize}
update_image1=tftpboot ${ram_addr} ${tftppath}${image_name}-squashfs.image;sf probe 0;sf erase ${kernel1_offs} +${filesize};sf write ${ram_addr} ${kernel1_offs} ${filesize}
update_openwrt=run update_image0 && setenv committed_image 0 && setenv image0_is_valid 1 && saveenv && run update_rootfs_data
update_rootfs_data=sf probe 0;sf erase ${data_offs} +${data_size}
update_uboot=run load_uboot && run save_uboot
us_vlan_id=145
us_vlan_mode=0
us_vlan_priority=1
ver=U-Boot 2011.12-lantiq-gpon-1.2.20.1 (Sep 18 2014 - 15:38:45),uboot_svn_id=144
vlan_mode=0
vlan_mode_option=0
Environment size: 5203/65531 bytes
FALCON =>
To be continue will see the command line interface of this Tenda G103, this is absolutely applicable on PLDTHOMEFIBR, we can now replace our HUAWEI ONU/ONT with this device.

May 14, 2020

TP-Link WR886N Chinese Third Party Firmware

Here we go after we done moding the FLASH and RAM its time for us to Brush it with the third party firmware. This device WR886N version 3.0 is supported by OpenWrt, SuperWrt, DD-Wrt and Gargoyle Linux opensource firmware. What we need is a USB cheap 25Q FLASH programmer and USB to TTL for the serial console. Next is decide to which boot loader you want to be accustom with.


The first boot loader utility is BREED aka  Boot and Recovery Environment for Embedded Devices is a close source boot loader by hackpascal, its in Simplified Chinese language just use Google translate to let you understand their script. You can download it on Google filename breed-tp9343.bin.

The second boot loader is also a BREED but modified version of the Simplified Chinese language its in English version. Download on the Giant Search engine filename u-boot_tp9343.bin.



The third boot loader is from TP-Link WR940N version 3.0 stock firmware stripped u-boot, filename is u-boot_tp-link_wr940nv3.bin.


The first brushing I did is with the TP-Link stock firmware WR940N version 3.x is also identical to WR941ND version 6.x such SoC. RAM and FLASH. Likewise WR940N version 4.x and 5.x too.


This is TP-Link stock firmware version 4.x if you want to know more about the internal web graphical user interface just visit tp-link.com for the respective wireless router emulator.


Brushing with third party firmware such as OpenWrt is straight forward since you can just upload via web interface if the wireless router is in the TP-Link stock firmware, TFTP is another method on brushing the firmware its usually use for device recovery from bricked devices.


I have more favor on OpenWrt third party firmware because of its plenty packages for the wireless router. Successfully also tested on LEDE both WR940N and WR941ND. On the Chinese forum someone mention that the WR886N ver3.0 can be flashed with TP-Link WR940N version 5.x, ow true is it?


This is TP-Link new web graphical user interface that added some features like Access Point only, Repeater or Range Extender, and WISP unlike the old version this addition function is not supported except for WDS and Wireless router only. The said added features were only exclusive for the TP-Link WA series device not on WR and WDR. The firmware option brushing may depends on the users, what I like on OpenWrt firmware is SoC TP9343 can be fully enhanced to 26dBm or 398mW of power.

If you know other third party Linux firmware that I did not mention let me know I want to brush it with your firmware that you have tried.

TP-Link WR886N Chinese Version 3 Mod RAM FLASH

First we have to open the clam shell type casing of the TP-Link WR886N chinese version 3.0 it has only two small screw found at the back of the device. Unscrew it, use plastic or metal knife to open the rounded clam upper cover.


Things needed basic electronics skill, hot air gun for desoldering the RAM and the FLASH. I used portable hot air gun in my case, for FLASH at least 400 to 450 C so I can lift it with the tweezers while 500 to 550 C for the RAM.


An old RAM of my Laptop PC3200 with eight chips memory module by 64MB to substitute the TP-Link WR886N 16MB memory.


Let just swap the RAM of the memory module to the router, putting back the memory to the router is sweating it will takes time aligning it and most of the time the memory pins don't sits properly need to clean the pad and the pins before heating it back onto the circuit board.


Once it done the FLASH and the RAM are on its place, testing and power ups so we can proceed to Brushing the third party firmware.

TP-Link WR886N Chinese V3 Specs

A week before went to online store and look for a second hand wireless router that I can make used of for OpenWrt plus VPN addons or similar cheap router that support it. So here I found a used  TP-Link WR886N Chinese version 3.0 it looks like the device is good and very cheap and the specs is near to average for consumer.


Less than ten days the parcel arrived, a postmen came to deliver to the house and paid for the COD.
I ordered two pieces for me the price is reasonable it only cost 354.00 Php each while the shipping is 100 Php for the two devices.


Looking at the physical appearance it has three 5dBi flat circuit omni directional antenna, fronting single system/power  LED.


At the rear face are the power input jack it has no ON/OFF switch, pin hole RESET button, single WAN port 100Mbps and four 100Mbps LAN ports.



The FLASH is 25Q16 series this mean that the chips is 16M-bit Serial Flash or in other words its only a 2Mbytes of flash storage.


The RAM is from Zentel its A3S28D40JTP-50, further specs of the memory its a 128M Double Data Rate Synchronous DRAM. It has only a capacity of 16MB of RAM.



The TP-Link WR886N Chinese version 3.0 is equip with Qualcomm Atheros TP9343-AL3A from Taiwan. The SoC has 750 Mhz processor of speed.



The internal circuitry of the TP-Link WR886N Chinese version 3.0 seems to be have many clones but different name model.  According to Wikidevi which now Deviwiki this wireless router device known similar are TP-LINK TL-WA901ND v4.x and v5.x, TL-WR882N v1.x, TL-WR886N v1.x, TL-WR940N v3.x/v4.x/v5.x, WR941ND v6.x and TL-WR941HP v1.x.


The mention above TP-Link wireless routers are identical to WR886N version 3.0  same SoC but some others vary on RAM and FLASH have more such 4MB and 32MB. For this device it will not qualify to Brush it with third party firmware wireless router such as  OpenWrt, SuperWrt, DD-Wrt or Gargoyle. The remedy for this device WR886N ver3.0 is to modify the RAM and FLASH to make it fully functional third party opensource wireless router firmware.

Apr 25, 2020

PLDT Fiberhome ONU RP2684

As per request one of my commentator on this blog, a legit PLDTHOMEFIBR subscriber commented that his AN5506-04-F ONU/ONT just get recently patched with firmware RP2684 and nowhere to find the password for adminpldt account.

Yes there is few changes of  this firmware RP2684 of Fiberhome ONU AN5506-04-F one of those is the prevention from gaining the adminpldt access level to do the configurations on the web user interface so PLDT can limit the subscribers from doing so to the said FTTH device.

Here a list of the command line interface that you can do or practice. Take note that any alteration done by you or by your behalf will void the warranty of your PLDT Fiberhome ONT/ONU device when malfunction occur.

WRI(DEBUG_H)> list
0. active section [0|1]
1. bobtest read_regs slave_addr <0-255> begin_addr <0-255> count <1-32>
2. bobtest write_regs slave_addr
<0-255> begin_addr <0-255> count <1-32> value1 <0-255> {value2 <0-255>}*1 {value3 <0-255>}*1 {value4 <0-255>}*1 {value5 <0-255>}*1 {value6 <0-255>}*1 {value7 <0-255>}*1 {value8 <0-255>}*1 {value9 <0-255>}*1 {value10 <0-255>}*1 {value11 <0-255>}*1 {value12 <0-255>}*1 {value13 <0-255>}*1 {value14 <0-255>}*1 {value15 <0-255>}*1 {value16 <0-255>}*1 {value17 <0-255>}*1 {value18 <0-255>}*1 {value19 <0-255>}*1 {value20 <0-255>}*1 {value21 <0-255>}*1 {value22 <0-255>}*1 {value23 <0-255>}*1 {value24 <0-255>}*1 {value25 <0-255>}*1 {value26 <0-255>}*1 {value27 <0-255>}*1 {value28 <0-255>}*1 {value29 <0-255>}*1 {value30 <0-255>}*1 {value31 <0-255>}*1 {value32 <0-255>}*1
3. clear
4. clear_save gpio
5. commit section [0|1]
6. control opticalgenerator [enable|disable] mode [prbs7|prbs15|prbs23|prbs31|alt]
7. debug cli_msg id

8. debug cli_msg send_buf

9. del port_vlan_service

10. delete onuhw version
11. exit
12. fandebug [enable|disable]
13. get image status
14. get nvram

15. get system status
16. get version info
17. get web [user|admin] username

18. help
19. i2c read

20. i2c write

21. list
22. mibreset
23. optdebug [enable|disable]
24. output redirect
25. printenv env_key FHSNOUI
26. printenv env_key ethaddr
27. quit
28. read gpio
<0-256>
29. read i2c device page
<0-255> addr <0-255>
30. run [local_config]
31. run [omci_tl]
32. set bar code [pcb|bosa]

33. set black_list

34. set debug_level

35. set default-printf-to [disable|console|telnet|all]
36. set dhcp_delivery [disable|enable]
37. set electricfan run temperature
<0-100> stop temperature <0-100>
38. set nvram

39. set oam_print [rx|tx|stop]
40. set omci_status

41. set onuhw version

42. set opt power [enable|disable]
43. set opt rxpoweradjust1 min
max offset
44. set opt rxpoweradjust2 min
max offset
45. set optoutpower level
<0-2>
46. set optoutpower offset

47. set optpoll [enable|disable]
48. set optrxpower offset

49. set ponrate_config_switch
<0-1>
50. set port_all_isolation [disable|enable]
51. set port_attribute
[L2|L3]
52. set port_igmp_state
[0|1]
53. set port_isolation
[disable|enable]
54. set port_vlan_service

55. set pppoe_delivery [disable|enable]
56. set print_num

57. set queue_protect [on|off]
58. set show_packets
[rx|tx|rtx|stop]
59. set web [user|admin] username
password
60. set web default [user|admin] username
password
61. setbuttondebug [disable|enable|start]
62. setleddebug [disable|enable|on|off]
63. setlog [omci|none] [old|pkt|timer|conf|temp|info|none|warning]
64. setpmlog
<0-1>
65. setusbdebug
66. shell
67. show [ponrate_config_switch]
68. show bar code [pcb|bosa]
69. show black_list
70. show catv rf
71. show debugversion
72. show electricfan work temperature
73. show history
74. show optoutpower level
75. show optoutpower offset
76. show optrxpower adjust
77. show port_info

78. show power supply
79. show print_num
80. show queue_info
81. tshell
82. updateenv ethaddr

83. updateenv fhsnoui

84. upload ftp any

85. write gpio
<0-256> <0-1>
86. write i2c device page
<0-255> addr <0-255> value <0-255>
87. write_save gpio


Mar 5, 2020

Fiberhome HG6245D PLDTs Ultimate Solution

Early this year of January 2020 I was really eager to have the PLDT Fiberhome HG6245D ONT on hand for my mini Lab as part of my Toys collection aside from the AN5506-04-XXX series devices. Luckily its first week of March and was able to hand over me this shiny dual band Optical Network Unit. It is most likely identical to AN5506-04-FA equipment with two USB ports and two POTS ports.


For the specs of HG6245D will talk about it on the other post, I want to say more now on the other issues that this ONU/ONT of PLDT will most like favors the GIANT Telco and will ease the headache from those malicious subscribers who are prone from exploiting their residential gateways (RG). There are many things on this ONU have been really restricted, such the get web access username adminpldt password is now being omittedfrom ths CLI. 

This ONT device have four (4) LAN ports as well like the AN5506-04 series to my surprise even if the LAN 2,3&4 are being tick you won't get any internet access on it. Oh men this is not the least, I will write more on this, the sad news about this ONU/ONT device you will NOT be able to migrate it to another OLT of the PLDT Fiberhome unless someone will activate its MAC and SN.

To be continue .....

Feb 29, 2020

PLDT Fiberhome HG6245D RP2602

Finally I was able to find one PLDT Fiberhome ONU HG6245D around the NCR area, the good thing is that the firmware is still unchanged its RP2602 so the default Super Admin username and password for the graphical user interface (GUI) is widely known no need to guess. How about adminpldt user account and password? Its by default you can just find it on this blog its identical to AN5506-04-FA/T there's no need to worry.


Looking at the menus I can see no difference with RP2627 and RP2631 of AN55-0406-FA but except of the IPTV sub-menu is already revealing.


Another sub-menu we can see under the Network Menu is the VoIP Settings, this will remind us that it would be possible for us to replicate the VoIP settings and make our own relay server and use a soft phone.

On the hardware side it is also an ARMv7 Processor but Broadcom chips only a single core.
#cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 100.00
Features : half thumb fastmult edsp tls idiva idivt lpae
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 1
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 100.00
Features : half thumb fastmult edsp tls idiva idivt lpae
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
Hardware : BCM96846
Revision : 0000
Serial : 0000000000000000
#
Going to the MTDs here is what we get
#cat /proc/mtd
dev: size erasesize name
mtd0: 03880000 00020000 "rootfsA"
mtd1: 03880000 00020000 "rootfsB"
mtd2: 00a00000 00020000 "data"
mtd3: 00100000 00020000 "nvram"
mtd4: 00200000 00020000 "PreConfigure"
mtd5: 00100000 00020000 "UserLocalCT"
mtd6: 08000000 00020000 "dummy1"
mtd7: 08000000 00020000 "dummy2"
mtd8: 01360000 0001f000 "rootfs_ubifs"
mtd9: 0001f000 0001f000 "METADATA"
mtd10: 0001f000 0001f000 "METADATACOPY"
mtd11: 01d10000 0001f000 "app_ubifs"
mtd12: 002d8484 0001f000 "filestruct_full.bin"
mtd13: 01360000 0001f000 "rootfs_ubifs"
mtd14: 0001f000 0001f000 "METADATA"
mtd15: 0001f000 0001f000 "METADATACOPY"
mtd16: 01d10000 0001f000 "app_ubifs"
mtd17: 002d8484 0001f000 "filestruct_full.bin"
mtd18: 007df000 0001f000 "data"
#
Trying to get the web username and password looks like not possible anymore on the config\web# list.
Config\web# list
0. cd [..|device|service|switch|codec|dsp|protocol|pon|gpon|omci|wlan|tr069|wan|igmp|gponl3|oam|ntp|mld|web]
1. clear
2. exit
3. help
4. list
5. show history
Config\web#

We will wait this ONU if the updates takes place will visit again to see if the CLI will most like the AN5506-04-FA/T.


Feb 22, 2020

SkyCable Fiberhome ONU AN5506-04-D

Another episode of Fiberhome ONU/ONT from SkyCable a semi Giant cable TV provider in the Philippines who are now integrating  its CATV to a starter ISP. Interestingly I stumble upon to its FTTH devices the ONUs are left expose to the internet and with the default username and password.


I was looking for a Converge ONU hoping to find one for experimentation, instead what I get an ONT of SkyCable AN5506-04-D. This optic residential gateway it just identical to AN5506-04-F only with telephone port. Going to the graphical user interface its not customize firmware but rather a factory default. Have a look of the few screenshots.




If you are eager to to see the CLI inside, you can use Putty for easy navigation the username and password is just default and never unchanged. I suggest that the Tech guy on the SkyCable NOC should take action of their network devices someone can just exploit it if not taken action.

Dec 18, 2019

Globe Fiberhome HG180U VDSL

Philippines, Globe Internet Service Provider also uses the Fiberhome VDSL HG180U device for high rise building, its not using the Fiber Optic line instead the PTSN twin copper wire. The Giant Telco PLDT likewise have this Home Gateway equipment for tall building were optic cable is not possible to deploy. This device equip with 802.11ac, three LAN port  and single WAN port.


Graphical User Interface have no differences with PLDT firmware, except for the default username and password such as admin account, and the super admin credentials.


HG180 VDSL2 802.11ac Home Gateway

http://192.168.254.254

username: admin
password: 3UJUh2VemEfUtesEchEC2d2e

PLDT Home Fibr UN-CGNAT Finally Solved

Today I finally solved the PLDT Home Fibr CGNAT to UN-CGNAT it and say goodbye to the updates, so welcome back to my Dynamic Public IP addresses.

Nov 16, 2019

PLDT CGNAT Forcibly Implemented To Subscribers

My Dynamic Public IP address has been for years since I migrate to the Giant Telco in the Philippines, I have been enjoying the services on hosting my Web Server, FTP, and some other stuff like IP camera alike to the public network without additional cost to my net bill. It was there for so long with the free DDNS from Duck it helps me a lot locating my online stuffs. This week a few days back all my services to the internet are all stop and no longer working. I was not well inform by my ISP that this PLDT is combating the IPv4 and has no plans to comply to the IPv6 as a major ISP in this country. 


I rush to Google and check my public IP address has not been changed as it was the usual address that I am using. But wait a minute I have to login to my AN5506-04-FA Fiberhome ONU to see if there is some changes on my settings. Yes the Holy Ghost, CGNAT is already implemented on my area, I call 171 and talk to the CSR, the person whom I have the conversation is giving me some hope that my Dynamic Public IP address will be restore in 24 to 48 hours. Guess what the next following day I give a call again to 171 the next person who pick my call doesn't knows anything about what I am talking it we last about an hour on the phone he keeps me on waiting listening to the PLDT IVRS advertisement until the call drops. 

The third day I made the call that hoping an Angel will rescue my Dynamic Public IP address and will be return as do I wish to be, I was hopeless, the girl on the other end of the telephone said I am sorry we do not have that capacity to do so, we are limited to the access only the second level can do that, you have to inquire it to the products and services (meaning you have to pay now for additional cost for that dynamic public IP address) if you really wanted to have it.

So the intention of my Giant ISP for IPv4 is not only for the conservation of the IP's but also in addition that can sum up for their annual revenue if you wish to have a public IP addresses. The CGNAT will do a favor to the PLDT. So whether you are a subscriber of PLDT Home Fibr, PLDTDSLBiz you are now subject to CGNAT. If you wish to have a Public IP Addresses you have to avail it as addons on their "Product and Services". As of the moment in time I still have no solution on how to regain my Dynamic Public IP address for my online services to stay up again. If you have something to share about CGNAT do not hesitate to comment below and post it.

Nov 8, 2019

Overwrite A5-V11 Qualcomm OEM Firmware With OpenWrt Image

Here are few steps to overwrite OEM firmware of a5-v11 router with openwrt.

1) Prepare a FAT formatted USB-Flash-Drive and unzip this a5-v11-openwrt.zip to USB-Flash-Drive. (Important: do not just copy a5-v11-openwrt.zip to flash-drive, unzip this file to USB-Flash-Drive, this folder contains openwrt-factory.bin with needed boot-loader and update scripts)

2) Prepare this setup as shown in the picture below.


3) After applying +5v power to a5-v11, RED-LED on this router stays ON for few seconds, and then BLUE-LED starts blinking (from power-ON to blinking-blue-led-state, it takes about 1minute)

4) By this time, your PC would get the ip in the range of 192.168.100.x from the a5-v11's dhcp server.


5) Ensure that your a5-v11 has qualcomm firmware by looking at the web-UI of this router.


NOTE: Do not continue incase if your router's web-page is different than the one shown above(Qualcomm), you might have received another variant having chinese firmware, Instructions for overwriting the chinese firmware are given in my other blog.

6) telnet to the a5-v11 using putty.exe(or telnet command) as shown below.


6) Run the following commands as shown in the picture below


7) After rebooot, wait for a minute, this time, openwrt firmware would boot on a5-v11, and your PC would get the ip in the range of 192.168.1.x

8)If everything goes well, your browser would show the following webUI of openwrt


9) As shown above, follow step-1 and 2 to login with default root user.

10) After login you will see following page


11) you can overwrite openwrt firmware with your own openwrt-variant by clicking on menu system=>Backup/Flash Firmware as shown in the picture above.Have Fun hacking your a5-v11 with opensource firmware!!!


Oct 22, 2019

OpenWrt Multiple SSID with VLANs

Multiple SSID with VLAN

Basic idea is to make the device tl-wr1043ND with multiple virtual SSID. Each SSID using VLANs. On the switch, will be connected to a specific operator with the corresponding vlan.


Client can opt for a specific SSID, which will correlate with a particular operator. For example, the SSID OpenWrt1, is the operator “A” which is connected with VLAN10

The following configuration below:

root@OpenWrt:~# cat /etc/config/network

config ‘interface’ ‘loopback’
option ‘ifname’ ‘lo’
option ‘proto’ ‘static’
option ‘ipaddr’ ‘127.0.0.1’
option ‘netmask’ ‘255.0.0.0’

config ‘interface’ ‘lan’
option ‘ifname’ ‘eth0’
#option ‘type’ ‘bridge’
option ‘proto’ ‘static’
option ‘netmask’ ‘255.255.255.0’
option ‘ipaddr’ ‘192.168.11.1’

config interface vlan10
option ifname eth0.10
option type bridge
option proto static
option ipaddr 192.168.10.1
option netmask 255.255.255.0
config interface vlan20
option ifname eth0.20
option type bridge
option proto static
option ipaddr 192.168.20.1
option netmask 255.255.255.0
config interface vlan30
option ifname eth0.30
option type bridge
option proto static
option ipaddr 192.168.30.1
option netmask 255.255.255.0
config interface vlan40
option ifname eth0.40
option type bridge
option proto static
option ipaddr 192.168.40.1
option netmask 255.255.255.0

config ‘interface’ ‘wan’
option ‘ifname’ ‘eth1’
option ‘proto’ ‘static’
option ‘ipaddr’ ‘192.168.1.9’
option ‘netmask’ ‘255.255.255.240’
option ‘gateway’ ‘192.168.1.1’
option ‘dns’ ‘ 192.168.2.2’

==========
root@OpenWrt:~# cat /etc/config/wireless

config ‘wifi-device’ ‘radio0’
option ‘type’ ‘mac80211’
option ‘macaddr’ ’00:15:6d:f8:f7:bb’
option ‘htmode’ ‘HT20’
list ‘ht_capab’ ‘SHORT-GI-40’
list ‘ht_capab’ ‘DSSS_CCK-40’
option ‘channel’ ’05’
option ‘disabled’ ‘0’

config ‘wifi-iface’
option ‘device’ ‘radio0’
option ‘mode’ ‘ap’
option ‘hidden’ ‘0’
option ‘encryption’ ‘none’
option ‘isolate’ ‘0’
option ‘bgscan’ ‘0’
option ‘wds’ ‘0’
option ‘macfilter’ ‘none’
option ‘ssid’ ‘OpenWrt1’
option ‘network’ ‘vlan10’

config ‘wifi-iface’
option ‘device’ ‘radio0’
option ‘mode’ ‘ap’
option ‘hidden’ ‘0’
option ‘encryption’ ‘none’
option ‘network’ ‘vlan20’
option ‘ssid’ ‘OpenWrt2’
option ‘isolate’ ‘0’
option ‘bgscan’ ‘0’
option ‘wds’ ‘0’
option ‘macfilter’ ‘none’

config ‘wifi-iface’
option ‘device’ ‘radio0’
option ‘mode’ ‘ap’
option ‘hidden’ ‘0’
option ‘encryption’ ‘none’
option ‘network’ ‘vlan30’
option ‘ssid’ ‘OpenWrt3’
option ‘isolate’ ‘0’
option ‘bgscan’ ‘0’
option ‘wds’ ‘0’
option ‘macfilter’ ‘none’

config ‘wifi-iface’
option ‘device’ ‘radio0’
option ‘mode’ ‘ap’
option ‘hidden’ ‘0’
option ‘encryption’ ‘none’
option ‘network’ ‘vlan40’
option ‘ssid’ ‘OpenWrt4’
option ‘isolate’ ‘0’
option ‘bgscan’ ‘0’
option ‘wds’ ‘0’
option ‘macfilter’ ‘none’

========
root@OpenWrt:~# cat /etc/config/dhcp

config ‘dnsmasq’
option ‘domainneeded’ ‘1’
option ‘boguspriv’ ‘1’
option ‘filterwin2k’ ‘0’
option ‘localise_queries’ ‘1’
option ‘local’ ‘/lan/’
option ‘domain’ ‘lan’
option ‘expandhosts’ ‘1’
option ‘nonegcache’ ‘0’
option ‘authoritative’ ‘1’
option ‘readethers’ ‘1’
option ‘leasefile’ ‘/tmp/dhcp.leases’
option ‘resolvfile’ ‘/tmp/resolv.conf.auto’

config ‘dhcp’ ‘lan’
option ‘interface’ ‘lan’
option ‘start’ ‘100’
option ‘limit’ ‘150’
option ‘leasetime’ ‘720m’
option ‘ignore’ ‘0’

config ‘dhcp’ ‘wan’
option ‘interface’ ‘wan’
option ‘start’ ‘100’
option ‘limit’ ‘150’
option ‘leasetime’ ‘720m’
option ‘ignore’ ‘1’

config ‘dhcp’
option ‘interface’ ‘vlan10’
option ‘start’ ‘100’
option ‘limit’ ‘150’
option ‘leasetime’ ‘720m’
option ‘ignore’ ‘0’

config ‘dhcp’
option ‘interface’ ‘vlan20’
option ‘start’ ‘100’
option ‘limit’ ‘150’
option ‘leasetime’ ‘720m’
option ‘ignore’ ‘0’

config ‘dhcp’
option ‘interface’ ‘vlan30’
option ‘start’ ‘100’
option ‘limit’ ‘150’
option ‘leasetime’ ‘720m’
option ‘ignore’ ‘0’

config ‘dhcp’
option ‘interface’ ‘vlan40’
option ‘start’ ‘100’
option ‘limit’ ‘150’
option ‘leasetime’ ‘720m’
option ‘ignore’ ‘0’
========