They need to make the rule “not my keys, not my device.”
You should be able to replace the signing keys for the primary bootloader with your own, and root access needs to be available to consumers who bought anything with a CPU in it.
To be fair, compliance with that in those cases might be easier. In my experience most washing machines, for example, have programming headers near their main microcontrollers, and you absolutely could write your own firmware for them. Occasionally they’ve been locked down and require an exploit to reprogram (looking at you, Nordic!) but in many cases putting your own code on is as simple as looking up the part number and buying an appropriate JTAG cable. Working out how it’s all connected inside is slightly harder, however.
You’re right, but this basically implies that you get all access to documentation. Remember the good old days, when a manual included even circuit diagrams, procedure for test points, etc?
Microcontrollers would be included in this. Also, not everything that runs on electricity needs to have a microprocessor in it, like toasters for example.
I’m no expert so asking with curiosity, but wouldn’t even simple things like your coffee machine changing lights when the coffee is ready require (a very simple) one?
Not necessarily. You could have a sensor that detects when the water reservoir is emptied that doesn’t need logic - e.g.
a floater with a magnet. If it reaches the bottom, a magnet sensor detects that the water now emptied (or in the coffee pot) or
a temperature dependent resistor. If there’s no more water, the temperature in the heater rises and the voltage rises on a wire. If the voltage (=temperature) is above a certain level you get a signal
You can then use those signals to do something like switch off the heater, change a light,… all without using a microcontroller. There’s no programming needed for that. You might see things like transistors and some basic digital circuitry here but it’s all very basic and still far from a microcontroller.
They need to make the rule “not my keys, not my device.”
You should be able to replace the signing keys for the primary bootloader with your own, and root access needs to be available to consumers who bought anything with a CPU in it.
If we count microcontroller as CPUs, that would include basically anything that runs with electricity. But I like that thought even more that way
To be fair, compliance with that in those cases might be easier. In my experience most washing machines, for example, have programming headers near their main microcontrollers, and you absolutely could write your own firmware for them. Occasionally they’ve been locked down and require an exploit to reprogram (looking at you, Nordic!) but in many cases putting your own code on is as simple as looking up the part number and buying an appropriate JTAG cable. Working out how it’s all connected inside is slightly harder, however.
You’re right, but this basically implies that you get all access to documentation. Remember the good old days, when a manual included even circuit diagrams, procedure for test points, etc?
Some Miele washers still come with basic circuit diagrams in my experience, but yeah that’s far from the norm.
Think about a car. It has >100 microcontrollers. In those cases there is a security concern to hand out the flash keys to at least some of those…
Microcontrollers would be included in this. Also, not everything that runs on electricity needs to have a microprocessor in it, like toasters for example.
A lot of toasters do have microprocessors though…
Yeah, not everything needs to have a microprocessor in it, but only few items of those do really have none
I’m no expert so asking with curiosity, but wouldn’t even simple things like your coffee machine changing lights when the coffee is ready require (a very simple) one?
Not necessarily. You could have a sensor that detects when the water reservoir is emptied that doesn’t need logic - e.g.
You can then use those signals to do something like switch off the heater, change a light,… all without using a microcontroller. There’s no programming needed for that. You might see things like transistors and some basic digital circuitry here but it’s all very basic and still far from a microcontroller.