The low price of finances digital gadgets — even when they’re of considerably questionable high quality — will be very tempting. Henning Paul was not too long ago in want of a Wi-Fi 6 router and got here throughout the WAVLINK WL-WN586X3. It is probably not the very best {hardware} on the market, however for round $40 it appeared like a discount. And because it ought to get the job achieved for informal use, he bought one. He knew that he might exchange the doubtless very janky inventory firmware with OpenWrt to profit from the out there {hardware} and switch it into a decent router in any case.
Or no less than that was the plan. However on nearer inspection (after receiving the cargo, naturally), it turned out that the router was of a {hardware} revision that was not supported by OpenWrt. Paul was not about to take that as a ultimate reply, so he downloaded the most recent firmware bundle for the router and poked round. It turned out that the router was already operating OpenWrt — albeit a really outdated and closely modified model of it.
The one distinction between {hardware} revisions is the kind of flash reminiscence used (📷: Henning Paul)
That gave Paul some hope that it would truly be doable to put in a more recent, unmodified model of the software program on the router, so he acquired busy hacking. First, he unpacked the firmware tarball and located that the startup script could possibly be modified to allow root entry through telnet. He made the required modifications, repacked the firmware, and utilized it by the router’s internet interface. After a reboot, Paul had root entry. Nonetheless, he shortly found that adapting the router to a inventory OpenWrt set up wouldn’t be easy. Variations in {hardware} between revisions required extra investigation.
Subsequent, Paul in contrast the gadget tree binaries from firmware packages of each {hardware} revisions. The principle distinction was that Rev A used SPI NOR flash, whereas Rev B used SPI NAND flash. With this data, Paul modified the OpenWrt gadget tree supply and construct recordsdata to account for the {hardware} variations, producing a customized firmware picture. To check his creation with out risking the router’s performance, he soldered a pin header to the board, related a USB serial converter, and used TFTP in addition the customized firmware.
Partitions had been restored with a Raspberry Pi (📷: Henning Paul)
This workaround allowed Paul in addition OpenWrt briefly, however a giant mistake was made when making an attempt to make the set up persistent. Whereas flashing the brand new firmware, he inadvertently overwrote vital bootloader partitions, bricking the gadget. On the lookout for an answer, he probed the board for JTAG alerts. Discovering none, he finally determined to desolder the SPI NAND flash. Utilizing a Raspberry Pi and customized gadget tree overlays, he wrote a brand new bootloader to the chip, restoring the router’s potential in addition.
Issues had been wanting up, however Paul encountered one ultimate hurdle: Wi-Fi performance was damaged as a result of the “Manufacturing unit” partition containing the EEPROM configuration had been overwritten. Fortuitously, OpenWrt gives a software to regenerate this lacking information, which Paul restored to the router to convey the Wi-Fi again to life. Ultimately, Paul reworked a bargain-bin router right into a succesful, absolutely operational gadget. That solely leaves the query of whether or not or not spending all these hours engaged on the router was price saving the additional $30 or so that would have gone into shopping for a greater router within the first place.