X-Git-Url: http://git.rot13.org/?p=goodfet;a=blobdiff_plain;f=client%2FGoodFETAVR.py;h=f48001736214a5efb77e88dcd8cd49d6cbd96abb;hp=ee5b1807c01b926bbb68aa27ca30bc1d62eac5c4;hb=5d5f93016a718c2cf7230dafbf967adcfe31a3b5;hpb=166ecd9b06d0fd98ad69379f5b0d91c755adff2b;ds=sidebyside diff --git a/client/GoodFETAVR.py b/client/GoodFETAVR.py index ee5b180..f480017 100644 --- a/client/GoodFETAVR.py +++ b/client/GoodFETAVR.py @@ -11,6 +11,7 @@ from GoodFET import GoodFET; class GoodFETAVR(GoodFET): AVRAPP=0x32; + APP=AVRAPP; AVRVendors={0x1E: "Atmel", 0x00: "Locked", }; @@ -54,7 +55,7 @@ class GoodFETAVR(GoodFET): }; def setup(self): - """Move the FET into the SPI application.""" + """Move the FET into the AVR application.""" self.writecmd(self.AVRAPP,0x10,0,self.data); #SPI/SETUP def trans(self,data): @@ -67,6 +68,15 @@ class GoodFETAVR(GoodFET): def start(self): """Start the connection.""" self.writecmd(self.AVRAPP,0x20,0,None); + def forcestart(self): + """Forcibly start a connection.""" + + for i in range(0x880,0xfff): + #self.glitchVoltages(0x880, i); + self.start(); + bits=self.lockbits(); + print "At %04x, Lockbits: %02x" % (i,bits); + if(bits==0xFF): return; def erase(self): """Erase the target chip.""" self.writecmd(self.AVRAPP,0xF0,0,None);