I'm trying to install openwrt on a DGS-1210-28P F1. I would like to avoid opening up the device if possible.
I am following these instructions: D-Link DGS-1210 rev F working factory images (no serial needed) - #12 by joer
I am trying to install the build via the web interface, however its not working and I get the following error:
I have tried the following releases so far:
openwrt-realtek-rtl838x-d-link_dgs-1210-28-squashfs-factory_image1.bin (snapshot)
openwrt-22.03.0-realtek-rtl838x-d-link_dgs-1210-28-squashfs-factory_image1.bin
openwrt-22.03.1-realtek-rtl838x-d-link_dgs-1210-28-squashfs-factory_image1.bin
openwrt-22.03.2-realtek-rtl838x-d-link_dgs-1210-28-squashfs-factory_image1.bin
openwrt-22.03.3-realtek-rtl838x-d-link_dgs-1210-28-squashfs-factory_image1.bin
openwrt-22.03.4-realtek-rtl838x-d-link_dgs-1210-28-squashfs-factory_image1.bin
openwrt-22.03.5-realtek-rtl838x-d-link_dgs-1210-28-squashfs-factory_image1.bin
openwrt-23.05.0-rc2-realtek-rtl838x-d-link_dgs-1210-28-squashfs-factory_image1.bin
openwrt-realtek-rtl838x-d-link_dgs-1210-28mp-f-squashfs-factory_image1.bin
I am using the firmware version 6.20.B009 per the instructions.
I have read all the related forum posts already. Apologies if I am doing something stupid.
I'm afraid, your switch is not supported. Only DGS-1210-28 and DGS-1210-28MP are supported, not the DGS-1210-28P variant that you own.
However, support for it is probably trivial for you to add: The -28 and -28MP share the same board, the -28MP has only a few additional buttons and LEDs which I assume are also present on the -28P.
I would do the following to be on the safe side:
Attach serial
Boot the 28MP initramfs version via serial console
Verify that everything works
Create a new device in the OpenWrt source tree, all you need to change is the model ID so that the firmware image is accepted by the stock web GUI
Submit a PR
And if you are brave (I was lucky with the -28MP, I never opened my device when I was in your situation): Directly add the 28P variant to the source tree, build and flash and hope that your switch still boots
All GPIOs are the same, same flash layout, same i2c interface ... so it's very similar from the software perspective. On the TP-Links and ZyXELs, PoE is a separate daughter card so the mainboard is very similar. I didn't disassemble my D-Link and really do not know how close the mainboards are - bad phrasing from my side.
The OP has a -28P and is looking for an OpenWrt-compatible firmware which doesn't exist. There is only -28 and -28MP. You cannot install the -28MP version from the OEM web interface as the firmware tag won't match (although it should work just fine when flashed from U-Boot).
The difference between -28P and -28MP is the PSU, it's internal in all cases. The -28MP has 370W PoE budget, the -28P has 193W PoE budget.
Adding my experiences here if anyone else comes looking - I also have the DGS1210-28P (not MP).
It's quite easy to flash:
Solder to the J2 header and connect via serial (115200 8N1)
Follow the flash procedure here: link
The DGS1210-28MP works a treat. Need to do some more testing as using it with a NIC as a WAN port, in a different clan and passing traffic through the firewall seems to hit the CPU quite highly. Know it's a switch and a single CPU but it's an interesting test to play with.
Else might use it as a L3 switch with my router as a router, but I pass inter-vlan traffic through firewall rules
You're saying that this firmware works perfectly fine on your -28P? If that's the case, please create a separate firmware for the-28P and create a PR so that it's officially supported.
Please keep in mind that this is not a L3 switch - performance will be as bad as with routing, i.e. in the range of 20MBit/s.
Meant L2 - yea the L3 performance does suck quite a bit, but this was never designed for L3.
Seems to work nicely as a switch, performance is where I'd expect. Yet to put a number of clients on a see how far I can push it.
One thing I've noticed is the fans are off - need to look into why this is and if there is a way to turn them on. On the DLink fw they were on all the time.
Finally, I disassembled my switch (-28MP) and traced the pins. Yes, the LM63 is definitely connected to the RTL8231. I'm currently compiling a test image, if it works, expect a PR soon.
While at it, I had another look at the RTL8231 and noticed a whole lot of traces that are not yet added to the dts. They lead to the SFP cages, the GPIO pins match the GPIO values of the DGS-1210-52 - so full SFP support is coming.
Edit: While the SFP cages work, the LM63 doesn't. I can't detect it on the i2c bus and as of now I have no idea why. I measured continuity between LM63 Pin 7 and RTL8231 Pin 10 and continuity between LM63 Pin 8 and RTL8231 Pin 9. I added a new i2c node to the dts:
but: i2cdetect -y 4 doesn't detect it (note: I added i2c busses 0-3 for the SFP cages - they are working fine).
Edit 2: I just discovered that @robimarko has been working on the same problem in 2021 - see here for his work and here for my followup question on this.
Edit 3: After a lot of debugging, the lm63 chip and fan control are actually working! Please note that the lm63 is not configured for automatic mode, hence fan control has to be implemented in user space!
It would be great if someone owning a DGS-1210-28 could test SFP support! And if other -P or -MP owners could test it, too, that would als be beneficial.