Can a thief extract my compiled code from my Uno?

If yes, is there anyway to protect my intellectual property from theft?

Cheers, Rob.

All they have to do is write their own version of the code, not rocket science.

You can set the memory protection bits, which prevents a casual user from reading out the flash memory, but that is not very secure.

Given a good description of what the code does, it would not take a skilled programmer very long to produce a reasonable facsimile.

If you think your code is really superior, make it open source, post it on Github and enjoy the accolades.

Yes, compiled code can be extracted.
And yes, you can protect the code using flags during upload via ICSP; it's too long ago that I did it.

There might be some legal stuff regarding opensource software (libraries) which might make it a futile excercise if you use the Arduino environment. You will have to consult a lawyer for that.

Thanks for the responses. I'll look into ICSP.

Cheers, Rob.

The bottom 2 bits of the lock byte can be set to 00 to disable verification (reading) of the FLASH memory. I think you can do that by changing this line in 'hardware/boards.txt':
uno.bootloader.lock_bits=0x0F
to
uno.bootloader.lock_bits=0x0C

The next time you upload to an UNO the FLASH/PROGMEM will be read/write-locked.

I think you will still be able to upload a new sketch because the first step in programming is a "Chip Erase". That resets FLASH, EEPROM, FUSES and LOCKS. Then it is safe to let someone read out the (now empty) memory.

Your intellectual property is your SOURCE code and you must copyright it and that forms the basis of your protection, if you decide to protect it you must use legal means through the courts.
The object code cannot be copyrighted, because it is not a visible, human readable form. Can you see yourself in court defending something in memory of a microcontroller as being your intellectual property?
Paul

Nothing to do with "superior code" ... I never suggested that? Kind of a strange thing to suggest? Simply protection of intellectual property.

PATENT is pending and I no longer have any library dependencies.

Cheers, Rob.

John, thank you, exactly what I needed to know.

Cheers, Rob.

Not at all. On this forum, lots of beginners seem to get the idea that because they have worked so hard on their code, it would be almost impossible to reproduce and must therefore be protected from prying eyes. See reply #2.

Ok, but again, nothing I ever said or implied. If I want to do open source projects I will do open source projects, if I don't then I don't ... freedom of choice ... it's not some generalization based on "beginner" or "experienced" nor how much work was involved.

Cheers, Rob.

No, you cannot protect your code from a determined thief.

Services are advertised to unlock AVRs, among many other processors.

Actually some code is rocket science (figuratively and literally), not sure where you are going with that?

Just wanted to know if there is any method of protection and got my answer from John W.

Cheers, Rob.

Ok, I'll look into these "services" that advertised and see what can be done.

Copyright of source code doesn't "protect it". And yes I've been in courts before in regards to source code, I know the process.

I also know how to protect my source code from hackers on Win10 platforms, a sad reality of creating and selling software for that environment. Wouldn't it be so much easier if the world didn't consist of thieves?

Cheers, Rob.

If you lock it tight without a bootloader, it will take a 12V programmer to get in and that clears the flash if not EEPROM as well. You want to get the full pro programmer if you're going to be making smart bricks.

I understand that there are machines that can peel chips to examine inside. I could live in a fine hotel for more than a year on what it would cost to copy your flash.

AVR chips are made by Microchip, Inc. now. The datasheets are available free on the website. So are App Notes and Guides. You should have the full datasheet and some replies would only have to refer to section numbers.

I’m confident your item is very good but 1.5 billion Chinese will figure out what you have done if they decide to do so.
:wink:

Good luck, hope you can afford to take us all on a holiday some day !

And finally, the OP has the burden of proving the code in the microcintroller is actually HIS!!!
Paul

I'm certain it will be reversed engineered and sold for less and have zero support and fail within a week or two :wink: ... tangibles are MUCH harder to impossible to protect ... the goal is to deter for time (first 1-2 months is where majority sales are, after that the sales drop-off is pretty significant).

No need to stereotype China as the only country to do this, there are many countries where PATENT infringement is difficult to impossible to prosecute.

Cheers, Rob.

Not even the U.S. National Security Agency can protect its most secret code.

Their entire, most treasured, tried and true package of hacking tools is now on the dark web for anyone to try out, and according to Nicole Perlroth's 2021 book on cybercrime (This is How They Tell Me the World Ends), the NSA still has no idea how it got out. Great read, by the way!