Upgrade when using custom VDSL firmware


I am using a TD-W9980B with a custom firmware for the DSL modem to enable VDSL vectoring. I was wondering: when I upgrade OpenWRT, will the custom DSL modem firmware stay on? It is critically important for me that the modem will always support vectoring because once a non-vectoring modem comes online, the DSLAM goes into fallback mode (22/1.5 instead of 100/40) and it takes about 2 weeks for my provider to reset the DSLAM line card.



It depends, the configuration will stay, but the actual firmware file might not. You can either configure the list of files to carry over to include the firmware blob file explicitly, or simply put the firmware blobs into /etc/config as that directory is carried over completely during a normal update conserving the old settings. That is not terribly elegant and probably against OpenWrt guidelines, but that is what I resorted to in the same situation, and what can I say, it seems to work.


This was not enough for me (Buffalo HP-G300H, the default firmware does not even connect because of a too-bad line). After the upgrade, if I add the firmware file to /etc/sysupgrade.conf, the file itself is kept, but something resets the firmware configuration option to the default.

Would it be safer to do your upgrade while the VDSL line is disconnected, apply your working settings reboot and reconnect

Yes, it would be safer not to do remote upgrades, but the project should strive to make them possible even for such situations.

That's what /etc/sysupgrade.conf is meant to do, abusing /etc/config is a bad idea, as its entirety is parsed by uci (and it will complain loudly and eventually misbehave with non-uci files in there).

1 Like

Well, sure I wrote:

to hedge against that possibility, but in my reality it just worked well enough, without any observed misbehavior. I can not and will not rule out silent corruptions or future mesbehavior, but binary blobs are unlikely to be meaningfully mis-treated as text based configuration files.
That said, time to get back into the fold and use /etc/sysupgrade.conf... @owrts, you probably also should do it the right way and ignore my ad-hoc description as cute but dangerous :wink: