DLink DIR-853 A3

If you know your way around SSH (just basic) you should be able to download the latest snapshot and flash it directly from the web UI. This will give you the base openwrt (without GUI) and a working DHCP server.

You can then SSH into the router (no password needed) as root and use the the latest stable openwrt sysupgrade file to flash the router again and you should be good to go.

EDIT: @Lucky1 solution is easier as it will create a snapshot version of openwrt with a gui which will make the upgrade to openwrt easier.

EDIT2: try this link. I am not sure how long the firmware selector keep the files for. This is the basic snapshot with luci added and of course I have not tested it sorry as I don't have a dlink device anymore.

1 Like

Thank you so much for your HELP. you and [oxwivi] Helped a lot. It WORKED. Iam now in openwrt web interface.
I was not in "1 in 100,000" :sweat_smile:
The firmware I used to upgrade from factory to openwrt for new commers.
:clap: Again thanks alot to [Lucky1] and [oxwivi] [Kar200] :clap: :bouquet: :bouquet:

1 Like

Username: admin
pass: admin

1 Like

Hi @kar200 Can you build a new Padavan update using Padavan-ng I am having difficulties please help.

Hi,

Unfortunately this won't be possible. The first (and only) Padavan firmware I compiled was through a lot of trial and error and luck. I also don't have a dlink device anymore.

I suggest to move into openwrt though as dev is always happening. There should be a guide somehwere on this thread on how to flash manually the image (and you could upgrade to newer versions after that).

Hey, just to confirm.
At the moment I have padavan installed on my DIR-853 A3.
Will putting OpenWrt affect the perfomance?
Also, I first have to move to stock then to OpenWrt?
I want to do it for my main router and I understand it can get bricked.

Hi @Zayed ,

I haven’t used the dlink router for years now. I am not sure how the performance is now. I am guessing you are interested by the performance of the wifi?

You don’t have to move to stock firmware to move to openwrt. You do need to be careful though as flashing from padavan will be using ssh and there are no checks done to ensure that it’s the correct file. The mtd_write command will accept any file and start writing on your device.

The way it works is that all the firmware is loaded onto ram at boot time and run from there. The trick with this kind of flashing is to not reboot the device until you make sure the partition you flashed contains the correct file. If you don’t reboot the device you should be able to still flash again without bricking ā€œyetā€ the device.

A simple way to to check the header of the partition with ā€œhexdumpā€ normally this is enough as long as there was no corruption with the file itself or the writing operation.

Also make sure you download the ā€œrecoveryā€ file for the router. The new factory files are encrypted and will definitely brick your router. They are meant to be used with the stock firmware.

I believe there was some instruction on this ā€œlongā€ thread earlier on how to do move from padavan to openwrt. I will try and have a look.

hi everyone!
Need to Restore OEM Firmware on D-Link DIR-853 A3 from OpenWrt 24.10.0 r28427-6df0e3d02a
Router Model:D-Link DIR-853
Hardware Revision:A3
Current Firmware: OpenWrt 24.10.0 r28427-6df0e3d02a
Goal: Restore stock OEM firmware

Background:
I flashed my DIR-853 A3 with OpenWrt 24.x successfully. it was working fine since last 4 months however, I now need to return this router to my company and must reinstall the original D-Link stock firmware. I need help
recovery mode is not working

Openwrt version
System
Hostname OpenWrt
Model D-Link DIR-853 A3
Architecture MediaTek MT7621 ver:1 eco:3
Target Platform ramips/mt7621
Firmware Version OpenWrt 24.10.0 r28427-6df0e3d02a / LuCI openwrt-24.10 branch 25.014.55016~7046a1c
Kernel Version 6.6.73
here is log:


===================================================================
                MT7621   stage1 code done
                CPU=50000000 HZ BUS=16666666 HZ
===================================================================


U-Boot 1.1.3 (Dec 20 2018 - 11:06:07)

Board: Ralink APSoC DRAM:  256 MB
relocate_code Pointer at: 8ffa8000

Config XHCI 40M PLL
Allocate 16 byte aligned buffer: 8ffdf830
Enable NFI Clock
# MTK NAND # : Use HW ECC
NAND ID [C8 D1 80 95 42]
Device not found, ID: c8d1
Not Support this Device!
chip_mode=00000001
Support this Device in MTK table! c8d1
select_chip
[NAND]select ecc bit:4, sparesize :64 spare_per_sector=16
Signature matched and data read!
load_fact_bbt success 1023
load fact bbt success
[mtk_nand] probe successfully!
mtd->writesize=2048 mtd->oobsize=64,    mtd->erasesize=131072  devinfo.iowidth=8
.*** Warning - bad CRC, using default environment

============================================
Ralink UBoot Version: 5.0.0.0
--------------------------------------------
ASIC MT7621A DualCore (MAC to MT7530 Mode)
DRAM_CONF_FROM: Auto-Detection
DRAM_TYPE: DDR3
DRAM bus: 16 bit
Xtal Mode=3 OCP Ratio=1/3
Flash component: NAND Flash
Date:Dec 20 2018  Time:11:06:07
============================================
icache: sets:256, ways:4, linesz:32 ,total:32768
dcache: sets:256, ways:4, linesz:32 ,total:32768

 ##### The CPU freq = 880 MHZ ####
 estimate memory size =256 Mbytes
#Reset_MT7530
set LAN/WAN LLLLW

=================================================
Check image validation:hdr1_addr[bc180000]hdr2_addr[c0980000]
Image1 Header Magic Number --> OK
Image2 Header Magic Number --> OK
Image1 Header Checksum --> OK
Image2 Header Checksum --> OK
Image1 Data Checksum --> .................................................OK
Image2 Data Checksum --> .................................................OK

Image1: OK Image2: OK

=================================================

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.
   6: System Enter UBoot to Update Img or Bin.
   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 bc180000 ...
   Image Name:   MIPS OpenWrt Linux-6.6.73
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    3175239 Bytes =  3 MB
   Load Address: 80001000
   Entry Point:  80001000
.................................................   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 80001000) ...
## Giving linux memsize in MB, 256

Starting kernel ...

[    0.000000] Linux version 6.6.73 (builder@buildhost) (mipsel-openwrt-linux-musl-gcc (OpenWrt GCC 13.3.0 r28427-6df0e3d02a) 13.3.0, GNU ld (GNU Binutils) 2.42) #0 SMP Mon Feb  3 23:09:37 2025
[    0.000000] SoC Type: MediaTek MT7621 ver:1 eco:3
[    0.000000] printk: bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001992f (MIPS 1004Kc)
[    0.000000] MIPS: machine is D-Link DIR-853 A3
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] VPE topology {2,2} total 4
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.000000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000] percpu: Embedded 12 pages/cpu s19136 r8192 d21824 u49152
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes, linear)
[    0.000000] Writing ErrCtl register=0004482c
[    0.000000] Readback ErrCtl register=0004482c
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 64960
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 247816K/262144K available (8363K kernel code, 653K rwdata, 1016K rodata, 1284K init, 229K bss, 14328K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] NR_IRQS: 256
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] clocksource: GIC: mask: 0xffffffffffffffff max_cycles: 0xcaf478abb4, max_idle_ns: 440795247997 ns
[    0.000004] sched_clock: 64 bits at 880MHz, resolution 1ns, wraps every 4398046511103ns
[    0.016063] Calibrating delay loop... 586.13 BogoMIPS (lpj=2930688)
[    0.088332] pid_max: default: 32768 minimum: 301
[    0.106370] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.120790] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.145091] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4.
[    0.164017] rcu: Hierarchical SRCU implementation.
[    0.173436] rcu:     Max phase no-delay instances is 1000.
[    0.184621] smp: Bringing up secondary CPUs ...
[    0.194529] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.194559] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.194574] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.194623] CPU1 revision is: 0001992f (MIPS 1004Kc)
[    0.254094] Synchronize counters for CPU 1: done.
[    0.316394] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.316418] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.316431] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.316461] CPU2 revision is: 0001992f (MIPS 1004Kc)
[    0.375368] Synchronize counters for CPU 2: done.
[    0.435818] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.435843] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.435856] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.435889] CPU3 revision is: 0001992f (MIPS 1004Kc)
[    0.494961] Synchronize counters for CPU 3: done.
[    0.554564] smp: Brought up 1 node, 4 CPUs
[    0.569800] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.589303] futex hash table entries: 1024 (order: 3, 32768 bytes, linear)
[    0.606886] pinctrl core: initialized pinctrl subsystem
[    0.620431] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.632945] thermal_sys: Registered thermal governor 'step_wise'
[    0.634665] /pinctrl: Fixed dependency cycle(s) with /pinctrl/pinctrl0
[    0.675090] clocksource: Switched to clocksource GIC
[    0.694874] NET: Registered PF_INET protocol family
[    0.704736] IP idents hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.720760] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.737297] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.752660] TCP established hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.767881] TCP bind hash table entries: 2048 (order: 3, 32768 bytes, linear)
[    0.782172] TCP: Hash tables configured (established 2048 bind 2048)
[    0.795759] MPTCP token hash table entries: 256 (order: 0, 4096 bytes, linear)
[    0.810359] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.823252] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.838072] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.849300] PCI: CLS 0 bytes, default 32
[    0.860661] workingset: timestamp_bits=14 max_order=16 bucket_order=2
[    0.874564] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.886057] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.911505] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[    0.929783] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    0.941297] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    0.952778] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    0.964398] mt7621-pci 1e140000.pcie: host bridge /pcie@1e140000 ranges:
[    0.977671] mt7621-pci 1e140000.pcie:   No bus range found for /pcie@1e140000, using [bus 00-ff]
[    0.995141] mt7621-pci 1e140000.pcie:      MEM 0x0060000000..0x006fffffff -> 0x0060000000
[    1.011357] mt7621-pci 1e140000.pcie:       IO 0x001e160000..0x001e16ffff -> 0x0000000000
[    1.385085] mt7621-pci 1e140000.pcie: pcie1 no card, disable it (RST & CLK)
[    1.398870] mt7621-pci 1e140000.pcie: pcie2 no card, disable it (RST & CLK)
[    1.412671] mt7621-pci 1e140000.pcie: PCIE0 enabled
[    1.422530] PCI coherence region base: 0x60000000, mask/settings: 0xf0000002
[    1.436667] mt7621-pci 1e140000.pcie: PCI host bridge to bus 0000:00
[    1.449233] pci_bus 0000:00: root bus resource [bus 00-ff]
[    1.460072] pci_bus 0000:00: root bus resource [mem 0x60000000-0x6fffffff]
[    1.473720] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
[    1.486058] pci 0000:00:00.0: [0e8d:0801] type 01 class 0x060400
[    1.497931] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x7fffffff]
[    1.510369] pci 0000:00:00.0: reg 0x14: [mem 0x00000000-0x0000ffff]
[    1.522920] pci 0000:00:00.0: supports D1
[    1.530765] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[    1.544199] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    1.560359] pci 0000:01:00.0: [14c3:7615] type 00 class 0x000280
[    1.572288] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit]
[    1.585866] pci 0000:01:00.0: 2.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x1 link at 0000:00:00.0 (capable of 4.000 Gb/s with 5.0 GT/s PCIe x1 link)
[    1.615674] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
[    1.626010] pci 0000:00:00.0:   bridge window [io  0x0000-0x0fff]
[    1.638054] pci 0000:00:00.0:   bridge window [mem 0x00000000-0x000fffff]
[    1.651533] pci 0000:00:00.0:   bridge window [mem 0x00000000-0x000fffff pref]
[    1.665881] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    1.679052] pci 0000:00:00.0: BAR 0: no space for [mem size 0x80000000]
[    1.692149] pci 0000:00:00.0: BAR 0: failed to assign [mem size 0x80000000]
[    1.705974] pci 0000:00:00.0: BAR 8: assigned [mem 0x60000000-0x600fffff]
[    1.719444] pci 0000:00:00.0: BAR 9: assigned [mem 0x60100000-0x601fffff pref]
[    1.733786] pci 0000:00:00.0: BAR 1: assigned [mem 0x60200000-0x6020ffff]
[    1.747283] pci 0000:00:00.0: BAR 7: assigned [io  0x0000-0x0fff]
[    1.759373] pci 0000:01:00.0: BAR 0: assigned [mem 0x60000000-0x600fffff 64bit]
[    1.773889] pci 0000:00:00.0: PCI bridge to [bus 01]
[    1.783724] pci 0000:00:00.0:   bridge window [io  0x0000-0x0fff]
[    1.795821] pci 0000:00:00.0:   bridge window [mem 0x60000000-0x600fffff]
[    1.809309] pci 0000:00:00.0:   bridge window [mem 0x60100000-0x601fffff pref]
[    1.823642] pci_bus 0000:00: Some PCI device resources are unassigned, try booting with pci=realloc
[    1.841612] pci_bus 0000:00: resource 4 [mem 0x60000000-0x6fffffff]
[    1.854051] pci_bus 0000:00: resource 5 [io  0x0000-0xffff]
[    1.865127] pci_bus 0000:01: resource 0 [io  0x0000-0x0fff]
[    1.876171] pci_bus 0000:01: resource 1 [mem 0x60000000-0x600fffff]
[    1.888611] pci_bus 0000:01: resource 2 [mem 0x60100000-0x601fffff pref]
[    1.903542] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    1.926365] printk: console [ttyS0] disabled
[    1.935767] 1e000c00.uartlite: ttyS0 at MMIO 0x1e000c00 (irq = 18, base_baud = 3125000) is a 16550A
[    1.953763] printk: console [ttyS0] enabled
[    1.953763] printk: console [ttyS0] enabled
[    1.970300] printk: bootconsole [early0] disabled
[    1.970300] printk: bootconsole [early0] disabled
[    1.993623] nand: device found, Manufacturer ID: 0xc8, Chip ID: 0xd1
[    2.006357] nand: ESMT NAND 128MiB 3,3V 8-bit
[    2.015054] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    2.030145] mt7621-nand 1e003000.nand: ECC strength adjusted to 4 bits
[    2.043262] 9 fixed-partitions partitions found on MTD device mt7621-nand
[    2.057133] Creating 9 MTD partitions on "mt7621-nand":
[    2.067586] 0x000000000000-0x000000080000 : "u-boot"
[    2.084621] 0x000000080000-0x000000100000 : "config"
[    2.101188] 0x000000100000-0x000000140000 : "factory"
[    2.115765] 0x000000140000-0x000000180000 : "config2"
[    2.129864] 0x000000180000-0x000002980000 : "firmware"
[    2.577807] 2 uimage-fw partitions found on MTD device firmware
[    2.589732] Creating 2 MTD partitions on "firmware":
[    2.599634] 0x000000000000-0x000000400000 : "kernel"
[    2.654018] 0x000000400000-0x000002800000 : "ubi"
[    3.053159] 0x000002980000-0x000004980000 : "private"
[    3.410059] 0x000004980000-0x000007180000 : "firmware2"
[    3.853359] 0x000007180000-0x000007780000 : "mydlink"
[    3.929480] 0x000007780000-0x000008000000 : "reserved"
[    4.178907] mt7530-mdio mdio-bus:1f: MT7530 adapts as multi-chip module
[    4.199807] mtk_soc_eth 1e100000.ethernet eth0: mediatek frame engine at 0xbe100000, irq 19
[    4.219593] mtk_soc_eth 1e100000.ethernet eth1: mediatek frame engine at 0xbe100000, irq 19
[    4.237927] i2c_dev: i2c /dev entries driver
[    4.250663] NET: Registered PF_INET6 protocol family
[    4.263882] Segment Routing with IPv6
[    4.271341] In-situ OAM (IOAM) with IPv6
[    4.279337] NET: Registered PF_PACKET protocol family
[    4.289509] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    4.315847] 8021q: 802.1Q VLAN Support v1.8
[    4.354930] mt7530-mdio mdio-bus:1f: MT7530 adapts as multi-chip module
[    4.395739] mt7530-mdio mdio-bus:1f: configuring for fixed/rgmii link mode
[    4.410793] mt7530-mdio mdio-bus:1f lan4 (uninitialized): PHY [mt7530-0:00] driver [MediaTek MT7530 PHY] (irq=21)
[    4.433746] mt7530-mdio mdio-bus:1f: Link is Up - 1Gbps/Full - flow control rx/tx
[    4.435981] mt7530-mdio mdio-bus:1f lan3 (uninitialized): PHY [mt7530-0:01] driver [MediaTek MT7530 PHY] (irq=22)
[    4.472386] mt7530-mdio mdio-bus:1f lan2 (uninitialized): PHY [mt7530-0:02] driver [MediaTek MT7530 PHY] (irq=23)
[    4.495684] mt7530-mdio mdio-bus:1f lan1 (uninitialized): PHY [mt7530-0:03] driver [MediaTek MT7530 PHY] (irq=24)
[    4.518686] mtk_soc_eth 1e100000.ethernet eth0: entered promiscuous mode
[    4.532231] DSA: tree 0 setup
[    4.540680] UBI: auto-attach mtd6
[    4.547375] ubi0: attaching mtd6
[    5.203727] ubi0: scanning is finished
[    5.223790] ubi0: attached mtd6 (name "ubi", size 36 MiB)
[    5.234650] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[    5.248358] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[    5.261909] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[    5.275803] ubi0: good PEBs: 288, bad PEBs: 0, corrupted PEBs: 0
[    5.287798] ubi0: user volume: 2, internal volumes: 1, max. volumes count: 128
[    5.302202] ubi0: max/mean erase counter: 4/2, WL threshold: 4096, image sequence number: 1738624177
[    5.320411] ubi0: available PEBs: 0, total reserved PEBs: 288, PEBs reserved for bad PEB handling: 20
[    5.338832] ubi0: background thread "ubi_bgt0d" started, PID 468
[    5.341373] block ubiblock0_0: created from ubi0:0(rootfs)
[    5.361886] ubiblock: device ubiblock0_0 (rootfs) set to be root filesystem
[    5.376055] clk: Disabling unused clocks
[    5.391267] VFS: Mounted root (squashfs filesystem) readonly on device 254:0.
[    5.409512] Freeing unused kernel image (initmem) memory: 1284K
[    5.421408] This architecture does not have kernel memory protection.
[    5.434260] Run /sbin/init as init process
[    5.888402] init: Console is alive
[    5.895677] init: - watchdog -
[    6.723879] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    6.789246] usbcore: registered new interface driver usbfs
[    6.800419] usbcore: registered new interface driver hub
[    6.811288] usbcore: registered new device driver usb
[    6.823008] gpio_button_hotplug: loading out-of-tree module taints kernel.
[    6.847643] xhci-mtk 1e1c0000.xhci: supply vbus not found, using dummy regulator
[    6.862788] xhci-mtk 1e1c0000.xhci: supply vusb33 not found, using dummy regulator
[    6.878354] xhci-mtk 1e1c0000.xhci: xHCI Host Controller
[    6.889024] xhci-mtk 1e1c0000.xhci: new USB bus registered, assigned bus number 1
[    6.909016] xhci-mtk 1e1c0000.xhci: hcc params 0x01401198 hci version 0x96 quirks 0x0000000000280010
[    6.927320] xhci-mtk 1e1c0000.xhci: irq 28, io mem 0x1e1c0000
[    6.939051] xhci-mtk 1e1c0000.xhci: xHCI Host Controller
[    6.949663] xhci-mtk 1e1c0000.xhci: new USB bus registered, assigned bus number 2
[    6.964583] xhci-mtk 1e1c0000.xhci: Host supports USB 3.0 SuperSpeed
[    6.978548] hub 1-0:1.0: USB hub found
[    6.986289] hub 1-0:1.0: 2 ports detected
[    6.995545] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    7.012856] hub 2-0:1.0: USB hub found
[    7.020542] hub 2-0:1.0: 1 port detected
[    7.038545] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    7.056576] init: - preinit -
[    7.751815] mtk_soc_eth 1e100000.ethernet wan: renamed from eth1
[    9.185106] random: crng init done
[    9.649398] mtk_soc_eth 1e100000.ethernet eth0: configuring for fixed/rgmii link mode
[    9.669851] mt7530-mdio mdio-bus:1f lan1: configuring for phy/gmii link mode
[    9.684032] mtk_soc_eth 1e100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
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
[   14.015336] UBIFS (ubi0:1): Mounting in unauthenticated mode
[   14.026984] UBIFS (ubi0:1): background thread "ubifs_bgt0_1" started, PID 635
[   14.084861] UBIFS (ubi0:1): recovery needed
[   14.215883] UBIFS (ubi0:1): recovery completed
[   14.224921] UBIFS (ubi0:1): UBIFS: mounted UBI device 0, volume 1, name "rootfs_data"
[   14.240538] UBIFS (ubi0:1): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[   14.260295] UBIFS (ubi0:1): FS size: 27553792 bytes (26 MiB, 217 LEBs), max 227 LEBs, journal size 1396736 bytes (1 MiB, 11 LEBs)
[   14.283522] UBIFS (ubi0:1): reserved for root: 1301433 bytes (1270 KiB)
[   14.296716] UBIFS (ubi0:1): media format: w5/r0 (latest is w5/r0), UUID EEE374DD-DF1E-48B5-BCB0-FCDBC0216759, small LPT model
[   14.325123] mount_root: switching to ubifs overlay
[   14.351639] urandom-seed: Seeding with /etc/urandom.seed
[   14.465767] procd: - early -
[   14.471729] procd: - watchdog -
[   15.095627] procd: - watchdog -
[   15.103013] procd: - ubus -
[   15.269766] procd: - init -
Please press Enter to activate this console.
[   16.016779] kmodloader: loading kernel modules from /etc/modules.d/*
[   16.088097] mtk-eip93 1e004000.crypto: EIP93 Crypto Engine Initialized.
[   16.474697] jitterentropy: Initialization failed with host not compliant with requirements: 9
[   16.658461] Loading modules backported from Linux version v6.12.6-0-ge9d65b48ce1a
[   16.673525] Backport generated by backports.git v6.1.110-1-35-g410656ef04d2
[   16.885292] pci 0000:00:00.0: enabling device (0000 -> 0003)
[   16.896636] mt7615e 0000:01:00.0: enabling device (0000 -> 0002)
[   16.919582] mt7615e 0000:01:00.0: registering led 'mt76-phy0'
[   17.048468] mt7615e 0000:01:00.0: registering led 'mt76-phy1'
[   17.076597] mt7615e 0000:01:00.0: HW/SW Version: 0x8a108a10, Build Time: 20180518100604a
[   17.076597]
[   17.179807] urngd: v1.0.2 started.
[   17.331261] mt7615e 0000:01:00.0: N9 Firmware Version: _reserved_, Build Time: 20200814163649
[   17.358805] mt7615e 0000:01:00.0: CR4 Firmware Version: _reserved_, Build Time: 20190415154149
[   17.399336] PPP generic driver version 2.4.2
[   17.409992] NET: Registered PF_PPPOX protocol family
[   17.430420] mtdblock: MTD device 'factory' is NAND, please consider using UBI block devices instead.
[   17.849837] kmodloader: done loading kernel modules from /etc/modules.d/*
[   26.486089] mtk_soc_eth 1e100000.ethernet eth0: Link is Down
[   26.519143] mtk_soc_eth 1e100000.ethernet eth0: configuring for fixed/rgmii link mode
[   26.535357] mtk_soc_eth 1e100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[   26.542493] mt7530-mdio mdio-bus:1f lan1: configuring for phy/gmii link mode
[   26.568663] br-lan: port 1(lan1) entered blocking state
[   26.579304] br-lan: port 1(lan1) entered disabled state
[   26.590039] mt7530-mdio mdio-bus:1f lan1: entered allmulticast mode
[   26.602708] mtk_soc_eth 1e100000.ethernet eth0: entered allmulticast mode
[   26.619865] mt7530-mdio mdio-bus:1f lan1: entered promiscuous mode
[   26.656556] mt7530-mdio mdio-bus:1f lan2: configuring for phy/gmii link mode
[   26.672651] br-lan: port 2(lan2) entered blocking state
[   26.683378] br-lan: port 2(lan2) entered disabled state
[   26.694051] mt7530-mdio mdio-bus:1f lan2: entered allmulticast mode
[   26.708493] mt7530-mdio mdio-bus:1f lan2: entered promiscuous mode
[   26.734825] mt7530-mdio mdio-bus:1f lan3: configuring for phy/gmii link mode
[   26.751535] br-lan: port 3(lan3) entered blocking state
[   26.762126] br-lan: port 3(lan3) entered disabled state
[   26.772753] mt7530-mdio mdio-bus:1f lan3: entered allmulticast mode
[   26.788069] mt7530-mdio mdio-bus:1f lan3: entered promiscuous mode
[   26.813720] mt7530-mdio mdio-bus:1f lan4: configuring for phy/gmii link mode
[   26.829542] br-lan: port 4(lan4) entered blocking state
[   26.840177] br-lan: port 4(lan4) entered disabled state
[   26.850855] mt7530-mdio mdio-bus:1f lan4: entered allmulticast mode
[   26.866386] mt7530-mdio mdio-bus:1f lan4: entered promiscuous mode
[   26.897705] mtk_soc_eth 1e100000.ethernet wan: PHY [mt7530-0:04] driver [MediaTek MT7530 PHY] (irq=POLL)
[   26.916733] mtk_soc_eth 1e100000.ethernet wan: configuring for phy/rgmii link mode
[   30.325371] mt7530-mdio mdio-bus:1f lan2: Link is Up - 1Gbps/Full - flow control rx/tx
[   35.641279] br-lan: port 2(lan2) entered blocking state
[   35.651789] br-lan: port 2(lan2) entered forwarding state
[   35.664007] br-lan: port 5(phy0-ap0) entered blocking state
[   35.675201] br-lan: port 5(phy0-ap0) entered disabled state
[   35.686433] mt7615e 0000:01:00.0 phy0-ap0: entered allmulticast mode
[   35.699535] mt7615e 0000:01:00.0 phy0-ap0: entered promiscuous mode
[   35.745610] br-lan: port 5(phy0-ap0) entered blocking state
[   35.756783] br-lan: port 5(phy0-ap0) entered forwarding state
[   35.932002] br-lan: port 6(phy1-ap0) entered blocking state
[   35.943354] br-lan: port 6(phy1-ap0) entered disabled state
[   35.954761] mt7615e 0000:01:00.0 phy1-ap0: entered allmulticast mode
[   35.968245] mt7615e 0000:01:00.0 phy1-ap0: entered promiscuous mode
[   35.981566] br-lan: port 6(phy1-ap0) entered blocking state
[   35.992804] br-lan: port 6(phy1-ap0) entered forwarding state

Why exactly do we need the log from a firmware you're trying to get rid of?

Ok then tell me solution ,sorry if log hurts ur feelings

I hope the charge the ISP'll make you pay will hurt your wallet.

thats how tech guys help us on forum, btw router is company property , they dont care about firmware , they just throw it in junk

Hey all, I just bought this device. I spent a good few hours catching myself up to all of discussion in this thread and I think it would be helpful for future viewers to summarize this in the wiki page.

Just want to confirm a few items that I'll be placing in the wiki to get things started:

  • The A3 version is not actually the version listed in the Techdata entry page, and is actually a specific version that is for Etisalat customers, and usually comes stock with ET853PNP-1.06-B72D24 firmware.

  • In order to go from stock firmware to OpenWrt, you must first encrypt the factory image. There's a bunch of posts in this thread of people sharing versions of specific versions but this will get outdated with time. The latest version can be retrieved from https://firmware-selector.openwrt.org/?target=ramips%2Fmt7621&id=dlink_dir-853-a3.

  • In order to encrypt any version of the firmware, you can compile and use the tool available in this specific branch: https://github.com/s-2/firmware-utils/tree/dlink-sge-image_2k23

    • Once you have the binary, with cmake, encryption is relatively straight forward:
    • Would it be useful to get this merged upstream into openwrt/firmware-utils so it can be in a more centralized repository?
  • Once on OpenWrt, firmware, upgrading to newer versions of OpenWrt is as simple as following the general instructions (with a sysupgrade binary, also available from the above firmware selector link) for any other device via LUCI.

    ./dlink-sge-image DIR-853 <in> <out>
    Usage:
    	dlink-sge-image DEVICE_MODEL infile outfile [-d: decrypt]
    
    DEVICE_MODEL can be any of:
    	COVR-C1200
    	COVR-P2500
    	COVR-X1860
    	DIR-853
    	DIR-867
    	DIR-878
    	DIR-882
    	DIR-1935
    	DIR-2150
    	DIR-X3260
    
    Any other value will default to COVR-C1200/P2500/DIR-8xx keys
    which may work to decrypt images for several further devices,
    however there are currently no private keys known that would
    allow for signing images to be used for flashing those devices.
    
  • In order to get the wireless interfaces to function, one must update /etc/config/wireless in a value similar to this file:

    config wifi-device 'radio0'
            option type 'mac80211'
            option phy 'phy0'
            option htmode 'HT40'
            option serialize '1'
            option country 'AE'
            option cell_density '0'
            option hwmode '11g'
            option channel '1'
    
    config wifi-iface 'default_radio0'
            option device 'radio0'
            option network 'lan'
            option mode 'ap'
            option ssid 'test2'
            option encryption 'wpa2+psk'
            option key 'wifipassword'
    
    config wifi-device 'radio1'
            option type 'mac80211'
            option phy 'phy1'
            option htmode 'VHT80'
            option serialize '1'
            option country 'AE'
            option cell_density '0'
            option hwmode '11a'
            option channel '40'
    
    config wifi-iface 'default_radio1'
            option device 'radio1'
            option network 'lan'
            option mode 'ap'
            option ssid 'test5'
            option encryption 'wpa2+psk'
            option key 'wifipassword'
    
  • In order to restore the OEM firmware, the firmware can be decrypted (using the same tool as above) and then flashed when you SSH into the router using mtd/mtd_write. Based on the message in this post I would like to confirm whether the following would work?:

    cd /tmp
    mtd_write erase Kernel
    mtd_write erase Config
    mtd_write erase Storage
    mtd_write write <oem-firmware>.bin Kernel
    

@kar200 / @Lucky1 you guys been the primary benefactor for this specific device, so just getting acknowledgement/confirmation regarding the above would help me ensure I've parsed all of the information properly through all of the noise in this post.

I will be happy to start cleaning up the wiki page as well to ensure clarity for folk in the future, thanks for the help :slight_smile:

As of V24 the factory image is encrypted
the unencrypted image need for the seral console is now called recovery

the factory image should just upload via the normal firmware upgrade web page
I don’t have this device but would hope the wireless stuff for DBDC Radios is sorted by now

1 Like

Good to hear that so many QoL improvements are in place. I hope to flash it today and I'll confirm, thanks for the clarification.

Hi @hhhapz thanks for initiating the wiki entry.

As @Lucky1 mentioned the new images are encrypted now so the upgrade is done just like any normal firmware from dlink. Just open the web interface and flash the factory image downloaded from openwrt. If the wrong image is downloaded the factory updater from dlink will reject the image so it’s the safest approach.

The wifi section should be done through Luci ā€œweb interfaceā€. I don’t own this device anymore but I am assuming it would work fine.

The factory firmware restore steps are not correct. Those you mentioned are to restore from padavan firmware (you can tell from the mtd partition naming and the uppercase usage). I

would advise against providing any info on restoring the stock firmware. Reason being there is no way to trigger the u-boot recovery mode for tftp upload without UART in case the device is bricked due to incorrect or corrupted firmware file. Maybe just a mention that it is possible so people with the required knowledge/skill could do it eventually.

K.

1 Like

thanks for the clarification!

Hey there, did you install v24 on your dir853? How did it go?

I'm honestly very confused, some people say you gotta encrypt it, some say the radios don't work (9db limit) and some say that version 24 of openwrt works fine and just gotta install as is..
And some say that router gets bricked or you gotta use some werid recovery...

I watched the video on how to install it but it doesn't really help as the version that person installs is different from the version link in the description......

So what version just works as is??

I hope someone can guide me how to install openwrt because I honestly Dont understand anything.

This is my router details
Model Name: DIR-853/ET
Hardware Version: A3
Firmware Version: ET853PNP-1.10-B01D02

I don’t have one, so I can’t comment on the status of the DBDC radio

as of V24 and the encryption key is available
you can use the factory file to install OpenWrt via the normal factory firmware page

as this Unit, Dir-853-A3 is an OEM version made only for an ISP and not
publicly available, so the normal recover interface has been disabled
ā€œNormally accessed by hold in reset button while powering onā€
so a rs232 TTL level cable is required to recover this router with the
unencrypted recover file compared to the others in the d-link DIR family

this and a few of the DIR family really need OpenWrt support pages made / updated

Thanks for replying. It looks like there is a patch to fix this issue. The only problem is that I’m a bit worried it might cause new problems.

The patched firmware:

Source:

The patch is almost a year old, and although people say it works on 24.10, I’m not sure if it’s fully compatible with 24.10.4 (the latest release). That’s what concerns me.

Sorry if I’m misunderstanding any of this, I wasn’t expecting the installation or troubleshooting to be this complicated.

It seems someone else also applied a similar patch before. I’ve also found that this issue still exists in the latest OpenWrt, and unfortunately no official fix has been provided yet:

I’ve asked the OP of that thread if they can try this patch, and I’ll update if they respond.

Basically, I can’t buy an EEPROM reader/writer or cable thing where I live (third-world country problems), so I’m stuck between stock firmware which is pretty bad, and OpenWrt.... which currently has this issue.

What do you recommend? Should I be checking the OpenWrt changelogs for 24.10.x before flashing anything, just in case there were changes that might conflict with this older patch? I’m not sure how likely breaking changes are between point releases, but I want to make sure I’m not missing anything important.