projects
/
goodfet
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Default JEDEC entry for M25P80 on Telos B.
[goodfet]
/
client
/
GoodFETCCSPI.py
diff --git
a/client/GoodFETCCSPI.py
b/client/GoodFETCCSPI.py
index
e205811
..
39fa181
100644
(file)
--- a/
client/GoodFETCCSPI.py
+++ b/
client/GoodFETCCSPI.py
@@
-24,6
+24,7
@@
class GoodFETCCSPI(GoodFET):
self.poke(0x12, 0x0500); #MDMCTRL1
self.poke(0x1C, 0x007F); #IOCFG0
self.poke(0x19, 0x01C4); #SECCTRL0, disabling crypto
self.poke(0x12, 0x0500); #MDMCTRL1
self.poke(0x1C, 0x007F); #IOCFG0
self.poke(0x19, 0x01C4); #SECCTRL0, disabling crypto
+ self.RF_setsync();
def ident(self):
return self.peek(0x1E); #MANFIDL
def ident(self):
return self.peek(0x1E); #MANFIDL
@@
-120,10
+121,18
@@
class GoodFETCCSPI(GoodFET):
return 0;
def RF_setrate(self,rate=0):
return 0;
return 0;
def RF_setrate(self,rate=0):
return 0;
+ def RF_getsync(self):
+ return self.peek(0x14);
+ def RF_setsync(self,sync=0xa70F):
+ """Set the SYNC preamble.
+ Use 0xA70F for 0xA7."""
+ self.poke(0x14,sync);
+ return;
+
def RF_setfreq(self,frequency):
"""Set the frequency in Hz."""
mhz=frequency/1000000;
def RF_setfreq(self,frequency):
"""Set the frequency in Hz."""
mhz=frequency/1000000;
- fsctrl=
self.peek(0x18)&~0x3FF
;
+ fsctrl=
0x8000; #self.peek(0x18)&(~0x3FF)
;
fsctrl=fsctrl+int(mhz-2048)
self.poke(0x18,fsctrl);
self.strobe(0x02);
fsctrl=fsctrl+int(mhz-2048)
self.poke(0x18,fsctrl);
self.strobe(0x02);
@@
-247,7
+256,14
@@
class GoodFETCCSPI(GoodFET):
mdmctrl0=mdmctrl0|0x800;
self.poke(0x11,mdmctrl0);
return;
mdmctrl0=mdmctrl0|0x800;
self.poke(0x11,mdmctrl0);
return;
-
+ def RF_autocrc(self,autocrc=1):
+ mdmctrl0=self.peek(0x11);
+ if autocrc==0:
+ mdmctrl0=mdmctrl0&(~0x0020);
+ else:
+ mdmctrl0=mdmctrl0|0x0020;
+ self.poke(0x11,mdmctrl0);
+ return;
packetlen=16;
def RF_setpacketlen(self,len=16):
"""Set the number of bytes in the expected payload."""
packetlen=16;
def RF_setpacketlen(self,len=16):
"""Set the number of bytes in the expected payload."""
@@
-278,6
+294,7
@@
class GoodFETCCSPI(GoodFET):
for foo in packet:
s="%s %02x" % (s,ord(foo));
print "#%s" % s;
for foo in packet:
s="%s %02x" % (s,ord(foo));
print "#%s" % s;
+
def printdissect(self,packet):
try:
from scapy.all import Dot15d4
def printdissect(self,packet):
try:
from scapy.all import Dot15d4