I fear that, for most Android devices, that $5 per device or $20 lifetime upgrade cost would not make economical sense.
Reason: if paying for the upgrade is optional, few users will choose to pay that money ($20 for a $100 or 'free with your subscription' phone?), meaning that the cost of making the firmware update may be larger than the revenue. And no, releasing new firmware is not 'just compiling'; there likely is quite some extra work to make the updated OS, targeted at more powerful hardware, work even reasonably well on that 'old' phone.
Charging all your users that $20 only works if you are Apple, Microsoft, or Blackberry. If you sell cheap or midrange Android devices, your users would likely just run to your competitors (it may be possible to prevent that for high end Android devices, but it is harder if you cannot differentiate on your OS; Samsung may have cracked that's but I am not sure about that)
Reason: if paying for the upgrade is optional, few users will choose to pay that money ($20 for a $100 or 'free with your subscription' phone?), meaning that the cost of making the firmware update may be larger than the revenue. And no, releasing new firmware is not 'just compiling'; there likely is quite some extra work to make the updated OS, targeted at more powerful hardware, work even reasonably well on that 'old' phone.
Charging all your users that $20 only works if you are Apple, Microsoft, or Blackberry. If you sell cheap or midrange Android devices, your users would likely just run to your competitors (it may be possible to prevent that for high end Android devices, but it is harder if you cannot differentiate on your OS; Samsung may have cracked that's but I am not sure about that)