I remember that RMS’s position is that if someone (!) can change it (eg there is an “update firmware” button), it is a computer and should run free software. If no one can ever change it, it is a circuit. I think that makes some sense.
Many microcontrollers can be set up for in circuit programming.
They might be intended for one time programming in the factory, but solder some wires on in the right place and supply the right signal and it can be reprogrammed.
It doesn’t make any sense. If I make a box with a screen that runs linux (idk for ordering lunch in school canteen) and only update the OS by physically removing the hard drive and installing it from different computer, does that justify it being proprietary?
On the other end a circuit can be changed e.g. by tuning a potentiometer or straight up changing a component. That’s not any different than changing a value of a variable in the firmware. There is no actual difference in hardware and software, just different level of abstraction like C vs Python.
I remember that RMS’s position is that if someone (!) can change it (eg there is an “update firmware” button), it is a computer and should run free software. If no one can ever change it, it is a circuit. I think that makes some sense.
Many microcontrollers can be set up for in circuit programming.
They might be intended for one time programming in the factory, but solder some wires on in the right place and supply the right signal and it can be reprogrammed.
Is that a circuit or a computer?
It doesn’t make any sense. If I make a box with a screen that runs linux (idk for ordering lunch in school canteen) and only update the OS by physically removing the hard drive and installing it from different computer, does that justify it being proprietary?
On the other end a circuit can be changed e.g. by tuning a potentiometer or straight up changing a component. That’s not any different than changing a value of a variable in the firmware. There is no actual difference in hardware and software, just different level of abstraction like C vs Python.