What happened to the D-Link DIR-510L?

I don't find anything for the DIR-510L on the new forum and new Wiki. There are still some posts from 2016 on the archived areas that come up in Google searches.

This old wiki page says the 510L uses the MT7620A SoC. Assuming MT = MediaTek.

Looking in the new download area, I follow this path (root) / releases / 18.06.0 / targets / mediatek /

That contains two directories: mt7622 and mt7623.

Are they compatible with MT7620A?

Is there a different place to look for DIR-510L support?

1 Like

The mips based mediatek soc targets are called ramips on openwrt. This is due to mediatek mips soc's are based on the one from ralink and ralink was bought from mediatek.

Take a look here:
https://downloads.openwrt.org/releases/18.06.0/targets/ramips/

The mediatek targets are arm based.

1 Like

Here's what looks like the current wiki page -- https://openwrt.org/toh/d-link/d-link_dir-510l_a1

@juppin, thanks for point that out - important distinction.
@jeff, thanks for the pointer. AFAIK, it is identical to the archived version.

As I continued to search I found a partial thread that ended here.

One person tried "openwrt-ramips-mt7620-dlink_dir-510l-squashfs-factory.bin" and bricked their DIR-510L. But I don't see any file by that name in the listing linked by @juppin.

@xabolcs, @chkdsk, lowmaster, are you still around? It seemed you were making good progress. If you are still around, could you help reconstruct what happened after your last post that was archived?

@lowmaster please see previous post.
Sorry for all the messages, there is a limit of 2 users mentions per post.

You can try direct-messaging those users

I did note on the wiki page

image

My DIR-510L dies at the first firmware update (dead LEDs, no activity), so I opened it and documented before starting to solder.

If you really try to flash it first times, you should do a backup of the full flash chip.
On one of the pictures on the wiki page i see a spi nor flash... That means it should be relatively easy to restore such backups in any case with a cheap hw programmer.

Probably you could do a backup of all mtd partitions from inside the stock fw and store it on a thumb drive.

Yup, @CHKDSK88's first image was a killer image, because it overwrote a JBOOT-reserved-like partition without the JBOOT didn't boot.
It could be restored with a spi programmer (and of course a full backup).

Should ping @CHKDSK88 for a newer image.

@timg11, do you have a device? Anyway, thank you for bringing up this topic!

Yes, very first image was a brick maker. This device have a small recovery linux. Without this router don't start.
I made changes with jboot image builder and after that i make preliminary working image.
Work with DIR-510L stopped after openwrt forum crash. I don't have a device, so I can't work alone.

If someone have the device, we can back to work.

1 Like

Yes I have the device, and I want to try to get OpenWRT running. I've used it for several years with stock firmware, but it has become unreliable. I was thinking of factory reset, but then I remembered there was some effort on getting OpenWRT running which is much preferred since stock firmware is poor. However, I'm not able to dedicate time for a couple of weeks.

In the meantime, I need some education on how this process works. I've flashed routers with OpenWRT and DD-WRT before, but the process I've seen described is quite different. I need to understand what's going on better.

  1. Should I get an SPI programmer? What is the recommendation?
  2. what is the process for capturing the backup before starting?
  3. what is JBOOT? mtd partitions?
  4. Understanding combination of serial access with PUTTY as well as file transfer with TFTP?

@timg11

  1. You can make backup without SPI Programmer. But when router become brick, SPI programmer is the only chance to revert changes.
  2. There is two ways:
    a. desolder flash and make backup with SPI Programmer
    b. You need connect to serial console: (57200 8N1)

dd if=/dev/mtd0 of=/tmp/www3/dir-510l-whole-flash.bin

And download through the builtin httpd:
http://192.168.0.1/dir-510l-whole-flash.bin
3. JBOOT is closed D-link bootloader. Mtd layout You can find here:
https://openwrt.org/toh/d-link/d-link_dir-510l_a1
4. Serial console is nescessary. In this router TFTP isn't used.

Every vendor have his own system. This router was maked by Amit for D-Link. JBOOT bootloader causes that work with this devices is different. You can upload images by JBOOT recovery web interface.

I hope You didn't forgot about this topic!

Just found this thread after digging through my notepad, finding a sketch from the time just before the forum disappeared. I was on the old thread, but none of the later posts were recovered. However back then I had tried to find the circuit around the embedded MSP430 controller that handles the power and charging:

I remember there were some weird effects when switching the device on and booting OpenWRT - you just couldn't switch it back off without detaching the battery.
The slider switch "Router <-> OFF <-> charger" is connected to a MSP430 Microcontroller (Pins 9/10), just as the two LEDs (Pins 18/19) and the bq24195l battery charger (i2c, Pins 14,15).

MSP430 connects to MT7620 via UART (MSP430 Pins 3/4, apparently 4800 8N1), but I couldn't make sense out of the communication protocol yet.
The binary that handles communication to that chip in the stock firmware seemed to be mcuinfo_cdm56cdl, but I don't have the tools and skills required to reverse engineer that properly to find out how to talk to it (so we could at least shutdown the device, maybe even read the battery status):
https://onlinedisassembler.com/odaweb/kLPxxGw5

So, is anyone still on this? I have a device to test :slight_smile:

@s_2, I have the device but have not had a chance to get back to working on it. Maybe in the next month or so?
I've installed OpenWRT on more traditional routers, but this one seems substantially more complex, so I'm trying to learn enough so I don't brick it trying. I already learned about backing up via the serial console, JBOOT, etc. Now you are saying there is a companion MSP430 microcontroller that is doing some other functions for power and charging? Since I don't use the DIR-510L as a charger, or in self-powered mode, I'd be happy to disable that and remove the battery and only power it over USB. Do you have any schematic, photos, or other notes you can share?

If you just want the device to be powered 24/7 without battery, you could use the image I downloaded from a link in the old forum on May 3rd, cannot remember whether it was built by @CHKDSK88 or @lowmaster. However they did not brick my device :slight_smile:
http://sebastianschaper.net/openwrt/openwrt-ramips-mt7620-dlink_dir-510l-squashfs-factory.bin
http://sebastianschaper.net/openwrt/openwrt-ramips-mt7620-dlink_dir-510l-squashfs-sysupgrade.bin

I think the latest version even contained the GPIOs for enabling the USB Hub ports, I don't have specific notes about those though. The only scribble I found on paper was this about MSP430, wanted to make a nice and clean schematic with EAGLE, but then the forum was gone and I never continued :blush:

I think I will have some time next month (one week of vacation after christmas). As far as I remember, I had destroyed the MSP430 UART connection on one device while testing, but I might find the issue with the new microscope soon :slight_smile:

By the way, there also seems to be somewhat acceptable support for MT7610E by now, which should probably be included when someone intends to build a new image:

I can go back to work with this router. Still I don't have a device, so I need help. :wink:

At this moment my images don't make device a brick.

For support 7610 I need whole flash or config partition dump.

@s_2
Do You know which mt7620 pins are connected to MSP430?

I think it should be /dev/ttyS0 according to the strings in the binary that controls the chip in the stock firmware, not sure whether it's the same UART that would also enumerate as ttyS0 in openwrt.
It's difficult to follow the traces within the multi-layer pcb, I have no clue yet as to where exactly they are physically connecting to MT7620.

Upon attaching the battery, MSP apparently sends some version info at 600 Baud, then switches to 4800. But I broke the UART connection on my device back then (probably cut some trace with oscilloscope probes), so even after flashing back to stock it will show battery charge always at 0% (curiously it can still be switched off using the slider).

I will have to find my board within the piles of electronics boxes and have a look at the bootlog again for the mtd layout / position of the wifi calibration data (or am I just confusing this with the ART partition of ar71xx? what exactly do you need from the full flash, just the layout or some binary blob that is the same for all DIR510 ?)

I disabled uartf. In next image I will turn it on.

I need only config partition dump. 7610 have calibration data stored in this partition. Flash layout is described at openwrt wiki.


New images. Should support 5GHz wifi. Ethernet is LAN. Second uart is enabled. I recommend use it with serial console.

Could someone give a bootlog and info what work?

1 Like