As someone who produces open source hardware and the software that goes with it, the challlenge for me isn't technical, it's getting the word out there. I'm antisocial.
If I solved that problem, and the hardware took off, what you suggested is exactly what would happen. The developer doesn't get paid for the software and doesn't get any kickbacks from 3rd party hardware manufacturers. Consumers choose the cheapest option and so the creators suffer to the benefit of the manufacturers.
It's not hypothetical. It happened to MakerBot. It's happening now to Prusa. There are tons of dead kickstarter and crowdsupply projects because aftet people have the hardware, there's little incentive for them to keep paying for software maintenance.
The only counteracting forces I've seen are:
1. Change the hardware license to be non-commercial
2. Try to guilt consumers into buying from the developer or authorized resellers or something
3. Bake the softwsre cost into the product and only sell one batch
The first has some potential is IP laws can be enforced internationally and at a cost the developer can afford.
The second is relying on people choosing agains what is in their best (financial) interest. Now, if everyone had their needs met and had disposable income to spare, this might work, but it's hard to put that hypothesis to the test.
The third is the popular route for both open and closed source products. This is why support windows are just a few years. It's why the kickstarter projects are a flash in the pan. It's why we need to keep buying new products every few years instead of just uograding our existing ones. It's what capitalism does: produces more. The new stuff is not necessarially better, just more.