Its not always the router though. I remember living in a shared flat a while back, and whenever one girl connected her laptop to the network, it would mess up wireless for everyone. I seem to remember the fix needing applied to her computer, as I have never done anything to the software on a router.
That's great. An equally good product to this plug might be an oracle that can tell you how good a router's software was, and improves it if it is not decent.
That's why return periods exist. So you can see if something works well or not. You don't need an oracle to know that you should return a router that malfunctions when someone starts connecting to it.
The oracle is needed to see if the router works well or not in all possible configurations of connected clients the router will face during its lifetime...
...so that you can return it during the return period.