ECIO code protection
ECIO code protection
Is there a way to enable code protection on an ECIO module? I just want to be able to flash the chip and not read anything back from it. I know that the chip configuration option is not available when a ECIO module is choosen from flowcode V3.
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: ECIO code protection
Hello
Doing this will lock the software onto the ECIO and stop it from being overwritten or erased is this what you require?
If so you can go into the Flowcode V3/FCD folder and find the ECIO FCD file. Open the FCD file with notepad and find the following section.
[Config]
0=0x20
1=0x0E
2=0x3E
3=0x1E
4=0x00
5=0x81
6=0x81
7=0x00
8=0x0F
9=0x80
10=0x0F
11=0xA0
12=0x0F
13=0x00
Change this to
[Config]
0=0x20
1=0x0E
2=0x3E
3=0x1E
4=0x00
5=0x81
6=0x81
7=0x00
8=0x00
9=0x00
10=0x0F
11=0xA0
12=0x0F
13=0x00
This changes the Code protect configuration bits to be enabled for memory locations 800-1FFF, 2000-3FFF, 4000-5FFF, 6000-7FFF.
Code protect is already enabled for 0-7FF.
There is also a table read and table write protect that stops the chips from being able to read or write memory directly. The above settings have these disabled.
You can use PPP in expert mode to see what exact configuration values will best suit your application. The hexadecimal values are shown on the bottom right hand side of the PPP configuration window.
Doing this will lock the software onto the ECIO and stop it from being overwritten or erased is this what you require?
If so you can go into the Flowcode V3/FCD folder and find the ECIO FCD file. Open the FCD file with notepad and find the following section.
[Config]
0=0x20
1=0x0E
2=0x3E
3=0x1E
4=0x00
5=0x81
6=0x81
7=0x00
8=0x0F
9=0x80
10=0x0F
11=0xA0
12=0x0F
13=0x00
Change this to
[Config]
0=0x20
1=0x0E
2=0x3E
3=0x1E
4=0x00
5=0x81
6=0x81
7=0x00
8=0x00
9=0x00
10=0x0F
11=0xA0
12=0x0F
13=0x00
This changes the Code protect configuration bits to be enabled for memory locations 800-1FFF, 2000-3FFF, 4000-5FFF, 6000-7FFF.
Code protect is already enabled for 0-7FF.
There is also a table read and table write protect that stops the chips from being able to read or write memory directly. The above settings have these disabled.
You can use PPP in expert mode to see what exact configuration values will best suit your application. The hexadecimal values are shown on the bottom right hand side of the PPP configuration window.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Re: ECIO code protection
Thanks for the information. My program uses some EEPROM memory to store and retrieve varibles used internally. I have a completed program that operates great, I am just concerned with someone reading the module. I would like to be able to write to module again but not have the ablity to read from it. I would like to be able to "update" the module if it was needed. I am a little timid in experimenting with the module and causing an unexpected result or locking myself out of it. What would be the correct settings for the arrangment I have described? Is it a matter of just changing the Data EE Read Protect?
Thanks for a great product.
Thanks for a great product.
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: ECIO code protection
Hello
Yes the EE Read Protect should not stop you from overwriting the program meory or the EEPROM data but will prevent the EEPROM data being read back out of the device.
Enabling the Table Read Protect should give you the operation you are looking for with regards to reading back the program memory. You should also be able to reprogram the device after enabling this option.
Yes the EE Read Protect should not stop you from overwriting the program meory or the EEPROM data but will prevent the EEPROM data being read back out of the device.
Enabling the Table Read Protect should give you the operation you are looking for with regards to reading back the program memory. You should also be able to reprogram the device after enabling this option.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: ECIO code protection
Small note if you do enable the table read protect options then when you program the device it will probably report that programming has failed.
This should simply mean that the program has gone in but could not be read back and verified.
This should simply mean that the program has gone in but could not be read back and verified.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel