What are your thought on risk / reward (more precise: cashflow
matching) with regards to physical products with a software component? I think buy (hardware) + fee (software) is the natural way of looking at things. Just as you pay separately for car maintenance.
The buy-once, upgrade-years model puts too much risk on the developer. Which in turn results in lousy experiences for customers (dropped support for software, loss in value of hardware on the second hand market). I actually bought an iOS app twice because I found it crazy to be able to use the same €5-app as a baby monitor for over a decade. That is probably a single developer churning out features at a low pace, but continuously for a big part of a career.