That was my experience - I mean, the whole thing is trivially simple until you get to the part where you need a clean state to save();
Having it read the code off the SD card every time would be a piece of cake.
Actually, if that paradigm (having just bootloader save()'ed, and using some other sort of persistant storage for code) is okay, you could make it much harder on people trying to read the code by instead of using SD cards, have your bootloader load and run the code off of an EEPROM in a removable socket, and ship the code-update as a replacement EEPROM (or for lower security, put the new data on an SD card and have the bootloader first check for updates on SD card and apply them to EEPROM). Depending on how paranoid you were, you could grind off the part number on the EEPROM, or even put it on a little custom PCB that mixes up the pinouts and then dip that in black epoxy so people can't figure out what's in it or which pins to get on.
That won't stop people from getting into the Espruino while it's running and perusing the code, though
© Espruino, powered by microcosm.
Report a problem