Disconnect RESn enough to disable programming?
lonesock
Posts: 917
Hi, All.
I have a prop project where I need serial communication, so I'm including the FT232R chip on the PCB. This makes it easy to program, then use P30/31 for serial communication with my PC. But I want to be able to ship the unit _without_ the ability to be reprogrammed by the end user. I'm not asking for hardened security, just not a wide open invitation to hack my HW.
My first idea was to just double up my I/O lines coming off the FTDI chip so I could program on P30/31, but then use serial over P0/1 (cutting the traces to P30/31 post-programming, but pre-shipping). This means I lose 2 pins, though.
My second idea is to just remove the circuitry for triggering the reset via DTR. Since there is a time-out component to the programming (there has to be activity within ~100ms after coming out of reset, right?), I figure it would be difficult for the end user to power off the box, then bring it back up and sync the programming attempt from inside Propeller Tool.
Would this scheme work? Obviously, with a bit of looking and a soldering iron the determined user could restore programmability with either method, but that's OK.
thanks,
Jonathan
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
lonesock
Piranha are people too.
I have a prop project where I need serial communication, so I'm including the FT232R chip on the PCB. This makes it easy to program, then use P30/31 for serial communication with my PC. But I want to be able to ship the unit _without_ the ability to be reprogrammed by the end user. I'm not asking for hardened security, just not a wide open invitation to hack my HW.
My first idea was to just double up my I/O lines coming off the FTDI chip so I could program on P30/31, but then use serial over P0/1 (cutting the traces to P30/31 post-programming, but pre-shipping). This means I lose 2 pins, though.
My second idea is to just remove the circuitry for triggering the reset via DTR. Since there is a time-out component to the programming (there has to be activity within ~100ms after coming out of reset, right?), I figure it would be difficult for the end user to power off the box, then bring it back up and sync the programming attempt from inside Propeller Tool.
Would this scheme work? Obviously, with a bit of looking and a soldering iron the determined user could restore programmability with either method, but that's OK.
thanks,
Jonathan
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
lonesock
Piranha are people too.
Comments
Another way would be to put the ftdi on 0 and 1 and program the chip with the propclip/plug. I have used 30 and 31 on numerous applications with no problems.
Or, you could program the eeprom alone, and use a dip socket.
By the way, you may be asking for problems if you don't disconnect the dtr. The prop will power the ftdi through the diodes on the power rail and if you have any signal to rx or tx(even through a fairly high K resistor) the chip will blip the dtr about as soon the everything is coming to life.(If the ftdi is not connected to the usb port)
thanks,
Jonathan
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
lonesock
Piranha are people too.