How do I enable the flash readout protection on the Fez Duino?
If TinyCLR OS is running mean readout protection is enabled. What do you mean “readout protection”?
I would like to prevent anyone from reading the flash memory inside the chip.
Users likely cannot use JTAG to read the firmware.
For user application, once the application is complete, you can disable debugging. This prevents communication with the board over USB or UART, making it difficult to access or read your code.
Users likely cannot? If a “user” desolders the IC and places it on a custom carrier board, can they extract the program that’s on it?
No, the flag is stored internally in the chip, so even if the chip is desoldered, the JTAG and communication interfaces will remain disabled.
But keep in mind that SITCore has two flash memories: internal and external. Anything you want to secure should be stored in the internal flash.
Users likely cannot?
Because nothing is 100%.
And this is on by default or only if I switch debug to disabled? If I disable debug can I renable it by flashing over the whole TinyClr Firmware?
You have to disable it. Once disabled, you can’t communicate to the board.
If I disable debug can I renable it by flashing over the whole TinyClr Firmware?
No, only enable again when Erarse All (Firmware + Application). Only Firmware erased then user can flash the firmware only and read your application easily.
Try that and tell us if you see different behavior.