Hi
@Takeshi and Everyone,
I have a very interesting case with two KeepLINK KP-9000-9XHPML-X-AC switches (the 8x 2.5G PoE+ / 1x 10G SFP+ version) and I wanted to share my findings and full dumps with the community.
Both of my switches have the exact same motherboard revision: 2M-PCB51-ML-V1.1 (based on RTL8373N + RTL8224N). However, they came with different factory firmwares and behaved completely differently.
- Switch #1 came with firmware V100.9.25 and it works perfectly fine and stable with my 4K PoE cameras.
- Switch #2 came with a weird factory firmware v100.9.9.1.7 and it was extremely unstable (randomly losing passwords and dropping PoE power).
I contacted KeepLINK support regarding Switch #2. They sent me an official firmware file: "runtime_9XHMPL-X_keeplink_v100.9.14.bin" (the M and P in the filename were swapped by their engineers, but it's 100% for the PoE version). I flashed it to Switch #2 via WebUI and it successfully fixed the password reset bug. Interestingly, the KeepLINK representative claimed that version V100.9.25 does not officially exist in their database!
Since they didn't know about V100.9.25, I disassembled my stable Switch #1 and used a CH341A programmer with a SOIC8 clip to read the SPI Flash directly. The flash chip used on this 2M-PCB51-ML-V1.1 board is a 2MB capacity (detected as W25Q16). The reading process was 100% successful and verified.
I have attached the clean 2MB full dump of the elusive V100.9.25 firmware to this post (zipped).
Could anyone, especially
@Takeshi, help with patching this V100.9.25 dump to bypass the UID verification check? I would love to convert it into a safe web-upgrade file so I can upgrade my second switch to V100.9.25 as well.
P.S. If anyone in the community needs the official v100.9.14 web-upgrade bin file that I received from KeepLINK support, please let me know and I will gladly upload it here too!
Thanks for your amazing work and community support!