Generic China "on-wall" router YTXC-958K 7628N

[04030C0A][04030C09]
DDR Calibration DQS reg = 00008686


U-Boot 1.1.3 (Dec 25 2017 - 22:59:38)

Board: Ralink APSoC DRAM:  64 MB
relocate_code Pointer at: 83fb8000
******************************
Software System Reset Occurred
******************************
flash manufacture id: ef, device id 40 17
find flash: W25Q64BV
============================================ 
Ralink UBoot Version: 4.3.0.0
-------------------------------------------- 
ASIC 7628_MP (Port5<->None)
DRAM component: 512 Mbits DDR, width 16
DRAM bus: 16 bit
Total memory: 64 MBytes
Flash component: SPI Flash
Date:Dec 25 2017  Time:22:59:38
============================================ 
icache: sets:512, ways:4, linesz:32 ,total:65536
dcache: sets:256, ways:4, linesz:32 ,total:32768 

 ##### The CPU freq = 580 MHZ #### 
 estimate memory size =64 Mbytes
RESET MT7628 PHY!!!!!!
Please choose the operation: 
   1: Load system code to SDRAM via TFTP. 
   2: Load system code then write to Flash via TFTP. 
   3: Boot system code via Flash (default).
   4: Entr boot command line interface.
   7: Load Boot Loader code then write to Flash via Serial. 
   9: Load Boot Loader code then write to Flash via TFTP. 
default: 3
 0 
   
3: System Boot system code via Flash.
## Booting image at bc050000 ...
   Image Name:   MIPS OpenWrt Linux-4.14.156
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    1586811 Bytes =  1.5 MB
   Load Address: 80000000
   Entry Point:  80000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 80000000) ...
## Giving linux memsize in MB, 64

Starting kernel ...

[    0.000000] Linux version 4.14.156 (builder@buildhost) (gcc version 7.5.0 (OpenWrt GCC 7.5.0 r10775-db8345d8e4)) #0 Sat Nov 30 15:52:33 2019
[    0.000000] Board has DDR2
[    0.000000] Analog PMU set to hw control
[    0.000000] Digital PMU set to hw control
[    0.000000] SoC Type: MediaTek MT7628AN ver:1 eco:2
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 00019655 (MIPS 24KEc)
[    0.000000] MIPS: machine is Mediatek MT7628AN evaluation board
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 04000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x0000000003ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x0000000003ffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000003ffffff]
[    0.000000] random: get_random_bytes called from 0x80481740 with crng_init=0
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 16256
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Writing ErrCtl register=000414d0
[    0.000000] Readback ErrCtl register=000414d0
[    0.000000] Memory: 58824K/65536K available (3919K kernel code, 184K rwdata, 500K rodata, 1212K init, 207K bss, 6712K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS: 256
[    0.000000] intc: using register map from devicetree
[    0.000000] CPU Clock: 580MHz
[    0.000000] timer_probe: no matching timers found
[    0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 6590553264 ns
[    0.000013] sched_clock: 32 bits at 290MHz, resolution 3ns, wraps every 7405115902ns
[    0.015382] Calibrating delay loop... 385.84 BogoMIPS (lpj=1929216)
[    0.087603] pid_max: default: 32768 minimum: 301
[    0.096955] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.109923] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.129347] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.148721] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.160828] pinctrl core: initialized pinctrl subsystem
[    0.173571] NET: Registered protocol family 16
[    0.202549] mt7621_gpio 10000600.gpio: registering 32 gpios
[    0.213720] mt7621_gpio 10000600.gpio: registering 32 gpios
[    0.224843] mt7621_gpio 10000600.gpio: registering 32 gpios
[    0.240746] clocksource: Switched to clocksource MIPS
[    0.251832] NET: Registered protocol family 2
[    0.261375] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.275085] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.287597] TCP: Hash tables configured (established 1024 bind 1024)
[    0.300305] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.311778] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.324373] NET: Registered protocol family 1
[    0.336171] Crashlog allocated RAM at address 0x3f00000
[    0.348012] workingset: timestamp_bits=30 max_order=14 bucket_order=0
[    0.366597] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.378042] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.407341] io scheduler noop registered
[    0.415017] io scheduler deadline registered (default)
[    0.426005] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.441350] console [ttyS0] disabled
[    0.448320] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 28, base_baud = 2500000) is a 16550A
[    0.466245] console [ttyS0] enabled
[    0.466245] console [ttyS0] enabled
[    0.479942] bootconsole [early0] disabled
[    0.479942] bootconsole [early0] disabled
[    0.497163] spi-mt7621 10000b00.spi: sys_freq: 193333333
[    0.523522] m25p80 spi0.0: s25fl064k (8192 Kbytes)
[    0.533073] 4 fixed-partitions partitions found on MTD device spi0.0
[    0.545663] Creating 4 MTD partitions on "spi0.0":
[    0.555164] 0x000000000000-0x000000030000 : "u-boot"
[    0.565924] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.577345] 0x000000040000-0x000000050000 : "factory"
[    0.588293] 0x000000050000-0x000000800000 : "firmware"
[    0.602148] 2 uimage-fw partitions found on MTD device firmware
[    0.613924] Creating 2 MTD partitions on "firmware":
[    0.623784] 0x000000000000-0x0000001836bb : "kernel"
[    0.634531] 0x0000001836bb-0x0000007b0000 : "rootfs"
[    0.645195] mtd: device 5 (rootfs) set to be root filesystem
[    0.657900] 1 squashfs-split partitions found on MTD device rootfs
[    0.670217] 0x000000590000-0x0000007b0000 : "rootfs_data"
[    0.682529] libphy: Fixed MDIO Bus: probed
[    0.701519] rt3050-esw 10110000.esw: link changed 0x00
[    0.712584] mtk_soc_eth 10100000.ethernet: generated random MAC address c2:23:50:6c:f0:bf
[    0.729549] mtk_soc_eth 10100000.ethernet eth0: mediatek frame engine at 0xb0100000, irq 5
[    0.747756] NET: Registered protocol family 10
[    0.760872] Segment Routing with IPv6
[    0.768244] NET: Registered protocol family 17
[    0.777140] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    0.802821] 8021q: 802.1Q VLAN Support v1.8
[    0.822747] VFS: Mounted root (squashfs filesystem) readonly on device 31:5.
[    0.843388] Freeing unused kernel memory: 1212K
[    0.852381] This architecture does not have kernel memory protection.
[    1.851619] init: Console is alive
[    1.858575] init: - watchdog -
[    2.350758] random: fast init done
[    3.068176] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.234570] usbcore: registered new interface driver usbfs
[    3.245587] usbcore: registered new interface driver hub
[    3.256268] usbcore: registered new device driver usb
[    3.271998] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    3.286581] ehci-platform: EHCI generic platform driver
[    3.307284] phy phy-10120000.usbphy.0: remote usb device wakeup disabled
[    3.320570] phy phy-10120000.usbphy.0: UTMI 16bit 30MHz
[    3.330949] ehci-platform 101c0000.ehci: EHCI Host Controller
[    3.342384] ehci-platform 101c0000.ehci: new USB bus registered, assigned bus number 1
[    3.358203] ehci-platform 101c0000.ehci: irq 26, io mem 0x101c0000
[    3.390768] ehci-platform 101c0000.ehci: USB 2.0 started, EHCI 1.00
[    3.404182] hub 1-0:1.0: USB hub found
[    3.412058] hub 1-0:1.0: 1 port detected
[    3.423114] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    3.436980] ohci-platform: OHCI generic platform driver
[    3.447671] ohci-platform 101c1000.ohci: Generic Platform OHCI controller
[    3.461194] ohci-platform 101c1000.ohci: new USB bus registered, assigned bus number 2
[    3.476980] ohci-platform 101c1000.ohci: irq 26, io mem 0x101c1000
[    3.555710] hub 2-0:1.0: USB hub found
[    3.563632] hub 2-0:1.0: 1 port detected
[    3.574558] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    3.599426] init: - preinit -
[    5.012903] rt3050-esw 10110000.esw: link changed 0x00
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[    8.356518] jffs2: notice: (375) jffs2_build_xattr_subsystem: complete building xattr subsystem, 3 of xdatum (2 unchecked, 1 orphan) and 11 of xref (1 dead, 0 orphan) found.
[    8.389049] mount_root: switching to jffs2 overlay
[    8.429877] overlayfs: upper fs does not support tmpfile.
[    8.449475] urandom-seed: Seeding with /etc/urandom.seed
[    8.585173] procd: - early -
[    8.591082] procd: - watchdog -
[    9.288580] procd: - watchdog -
[    9.295225] procd: - ubus -
[    9.300822] rt3050-esw 10110000.esw: link changed 0x10
[    9.533093] random: ubusd: uninitialized urandom read (4 bytes read)
[    9.548275] random: ubusd: uninitialized urandom read (4 bytes read)
[    9.561490] random: ubusd: uninitialized urandom read (4 bytes read)
[    9.575192] procd: - init -
Please press Enter to activate this console.
[   10.555418] kmodloader: loading kernel modules from /etc/modules.d/*
[   10.681703] urngd: v1.0.0 started.
[   10.733634] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   10.771190] Loading modules backported from Linux version v4.19.85-0-gc63ee2939dc1
[   10.786218] Backport generated by backports.git v4.19.85-1-0-g8a8be258
[   10.833412] ip_tables: (C) 2000-2006 Netfilter Core Team
[   10.870312] nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
[   11.014569] xt_time: kernel timezone is -0000
[   11.093207] random: crng init done
[   11.099947] random: 7 urandom warning(s) missed due to ratelimiting
[   11.141983] mt76_wmac 10300000.wmac: ASIC revision: 76280001
[   12.172944] mt76_wmac 10300000.wmac: Firmware Version: 20151201
[   12.184737] mt76_wmac 10300000.wmac: Build Time: 20151201183641
[   12.210760] mt76_wmac 10300000.wmac: firmware init done
[   12.406301] PPP generic driver version 2.4.2
[   12.423326] NET: Registered protocol family 24
[   12.451283] kmodloader: done loading kernel modules from /etc/modules.d/*
[   18.299749] rt3050-esw 10110000.esw: link changed 0x00
[   22.671184] rt3050-esw 10110000.esw: link changed 0x10
[   24.238327] device eth0 entered promiscuous mode
[   24.271232] br-lan: port 1(eth0.1) entered blocking state
[   24.281992] br-lan: port 1(eth0.1) entered disabled state
[   24.293074] device eth0.1 entered promiscuous mode
[   24.394890] br-lan: port 1(eth0.1) entered blocking state
[   24.405651] br-lan: port 1(eth0.1) entered forwarding state
[   24.416924] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[   25.261388] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
[   29.315143] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   29.347590] br-lan: port 2(wlan0) entered blocking state
[   29.358212] br-lan: port 2(wlan0) entered disabled state
[   29.369149] device wlan0 entered promiscuous mode
[   32.112759] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   32.125641] br-lan: port 2(wlan0) entered blocking state
[   32.136215] br-lan: port 2(wlan0) entered forwarding state



BusyBox v1.30.1 () built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt 19.07.0-rc2, r10775-db8345d8e4
 -----------------------------------------------------
root@OpenWrt:/# 

any help will welcome ...

some "unexpected" restarts ocour ..

..due to power failure ... :angry:
http://195.28.90.62/dohc/ostatne/YTXC-985K/DSCN5003.JPG

1 Like

..some update .. if any body read this ...

Power failure fixed by another new capacitor.

Now I have working buttons, and updated dts files for this board.
I'm found two versions of buttons order, one on PCB and other on COVER.
WiFi - RESET - WPS on pcb versus WPS - WiFi - RESET on front cover.

both dtb files are here:
http://195.28.90.62/dohc/ostatne/YTXC-985K/YTXC-958_MT7628NN-OnWall-Router_PCB.dtb
http://195.28.90.62/dohc/ostatne/YTXC-985K/YTXC-958_MT7628NN-OnWall-Router_COVER.dtb

and "my version" of OpenWrt firmware image for this router is here:
http://195.28.90.62/dohc/ostatne/YTXC-985K/openwrt-19.07.0-rc2-ramips-mt76x8-mt7628-squashfs-sysupgrade.bin
http://195.28.90.62/dohc/ostatne/YTXC-985K/openwrt-19.07.0-rc2-ramips-mt76x8-device-mt7628.manifest
http://195.28.90.62/dohc/ostatne/YTXC-985K/openwrt-19.07.0-rc2-ramips-mt76x8-device-mt7628.sha256sums
(this image has "COVER" buttons order)

"All stuff" about this is placed here: http://195.28.90.62/dohc/ostatne/YTXC-985K/
and is free for use ... for anybody ...

This router looks like a good cheap router... for common use ..

Stable release image for this device:
http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt1907/wpa3/openwrt-19.07.0-ramips-mt76x8-ytxc-958-squashfs-sysupgrade.bin
http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt1907/wpa3/openwrt-19.07.0-ramips-mt76x8-device-ytxc-958.manifest
http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt1907/wpa3/sha256sums

It is build with WPA3 support and image size is 6MB.

EDITED:
Links changed to actual image.
Device name changed from mt7628 to ytxc-958

1 Like

Are you planning to add support to offical openwrt source repo?
Where are your source code? You have to share it if you have modified the GPLv2 code.

I will be happy, if it is in official source repository ...
but I don't know "how to add it" ...
(I'm newbee in this think)

All are there: http://195.28.90.62/dohc/ostatne/YTXC-985K/
actual work for 19.07 version is here: http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt1907
and firmware image with changed name "ytxc-958" for this device is in http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt1907/wpa3/ directory.

My full imagebiulder directory, with my modification:
http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt1907/openwrt-imagebuilder-19.07.0-ramips-mt76x8.Linux-x86_64.7z - 52.7MB

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt 19.07.0, r10860-a3ffeb413b
 -----------------------------------------------------
root@OpenWrt:/# cat /proc/cpuinfo 
system type             : MediaTek MT7628AN ver:1 eco:2
machine                 : YTXC-958 Mediatek MT7628NN OnWall Router
processor               : 0
cpu model               : MIPS 24KEc V5.5
BogoMIPS                : 385.84
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 32
extra interrupt vector  : yes
hardware watchpoint     : yes, count: 4, address/irw mask: [0x0ffc, 0x0ffc, 0x0ffb, 0x0ffb]
isa                     : mips1 mips2 mips32r1 mips32r2
ASEs implemented        : mips16 dsp
Options implemented     : tlb 4kex 4k_cache prefetch mcheck ejtag llsc pindexed_dcache userlocal vint perf_cntr_intr_bit nan_legacy nan_2008 perf
shadow register sets    : 1
kscratch registers      : 0
package                 : 0
core                    : 0
VCED exceptions         : not available
VCEI exceptions         : not available

root@OpenWrt:/# cd /tmp/sysinfo/
root@OpenWrt:/tmp/sysinfo# cat *
ytxc-958
YTXC-958 Mediatek MT7628NN OnWall Router
root@OpenWrt:/tmp/sysinfo# 

You aren't building from source with the build system?

I have downloaded imagebuilder https://downloads.openwrt.org/releases/19.07.0/targets/ramips/mt76x8/openwrt-imagebuilder-19.07.0-ramips-mt76x8.Linux-x86_64.tar.xz

use precompiled kernel, add my device tree file, compress kernel, add uimage header (mkimage command)...
modify some makefiles and any other files "in filesystem" ..
according this "how to" - https://openwrt.org/docs/guide-developer/adding_new_device

and then build image for "profile ytxc-958" ..
with make image PROFILE=ytxc-958 PACKAGES="luci luci-app-p910nd luci-app-ddns kmod-usb-printer kmod-usb-storage kmod-fs-vfat kmod-fs-exfat kmod-fs-ntfs kmod-fs-ext4 openssh-sftp-server block-mount hostapd-utils nfs-kernel-server wpad-openssl"

..thats all ...

It is "wrong" method .. ?? ..for this .. ??
...or ..??

I don't have any source code from vendor ..
It does not exist. ...

Hmm... I have never heard of anyone adding support for a new device based on Image Builder.
Indeed it will work, but think about if you have to patch some source code in the kernel or enable some config... This will never work with the image builder.

You should consider to use the "real" build system that builds everything from source:
https://openwrt.org/docs/guide-developer/build-system/start

If you have a device tree from the vendor image, you can decompile it with fdtdump (debian package: device-tree-compiler) and you have a lot of examples on the openwrt source directory.

If you integrate the needed changes into the build system you can create a pull request on github to add you support files to the official repo and you will get officially build images.

You can use trail and error like described in adding_new_device and the example dts files from the above linked github repo folder

So ..
I don't need compile anything from source, and modify some files in imagebuilder was easier way ..

Now I have not enough time to work with build system, and I haven't enough skill with openwrt builder.
Old kernel has no dtb, you can try to scan it .. http://195.28.90.62/dohc/ostatne/YTXC-985K/kernel.bin

New image for 19.07.01 ...

http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt190701/openwrt-19.07.1-ramips-mt76x8-ytxc-958-squashfs-sysupgrade.bin

http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt190701/openwrt-19.07.1-ramips-mt76x8-device-ytxc-958.manifest

http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt190701/openwrt-19.07.1-ramips-mt76x8-device-ytxc-958.sha256sums

1 Like

HI, DEAR

HOW ARE YOU

DEAR I HAVE AN OTHER ONE ROUTER SAME AS YOU HAVE BUT I HAVE AN PROBLEM DEAR MY ROUTER FIRMWARE HAS BEEN VANISHED/ REMOVED , AND MY ROUTER STOP WORKING , DEAR PLEASE HELP ME AND TELL ME THE COMPLETE METHOD HOW TO INSTALL THE FIRMWARE STEP BY STEP.
THANKS.[quote="JRD_McLAREN, post:1, topic:50111, full:true"]
Hello,

I bought this "on wall" router from china.
It has Mediatek MT7628NN processor, 64MB RAM and 8MB flash
one USB port, 2x 100M LAN and 300Mbps wifi with 2 internals antennas
..same as many "cheap" routers...

But this device have OpenWrt inside "directly from manufacturer" ...

Is "any" kind of support from OpenWrt community ..??
cause USB port is unusable, no needed software inside.

I can build new firmware for this device, but I have no enough experiences with this (mean OpenWrt).
Backup of original firmware is not possible - from U-boot or web interface.
(it is needed for reverse engineering, dtb fetch

Is able build kernel and boot or mount rootfs from USB drive .?
(kernel from build directory "mt7628-kernel.bin" can boot from tftp with no problem)

Thanks.
[/quote]

Vanished??
Richey Edwards from Manic Street Preachers vanished in 1995 ...

I'm not sure, if any "step-by-step" method exist....
(it is not washing machine)

Do you have .. ?

  • any serial cable (USB-TTL)
  • any terminal program
  • any knowledge with U-Boot
  • any knowledge with TFTP server
  • basic networking knowledge

(if the all answers are "YES", then put the image into tftpboot directory, configure static IP,connect TP cable, connect serial cable, run terminal program, power on the router and chose "1" )

Hello JRD_McLAREN,

I have the same device as yours.

It was rebooting randomly. I suppose it was related with power failure as you said before.

After I've tried to install the update(http://195.28.90.62/dohc/ostatne/YTXC-985K/owrt1907/wpa3/openwrt-19.07.0-ramips-mt76x8-ytxc-958-squashfs-sysupgrade.bin) from web interface it does not work in total.

It turns on but I can't connect to the router neither by wifi or ethernet cable.

How dou you think is it possible to solve the situation and fix the device?

Thank you in advance

you have any serial cable..???

Sorry, I don't know what it exactly is. Is cable USB type C to USB ok?

USB to TTL seral cable ..
or any bluetooth module HC-05 or HC-06

Unfortunately, I don't have any of it:(