else:
print "SmartRF not found for chip 0x%04x." % ident;
def SRF_chipdom(self,chip="cc1110", doc="register_definition.xml"):
+ #def SRF_chipdom(self,chip="cc1110", doc="workingconfig.xml"):
"""Loads the chip XML definitions from SmartRF7."""
fn="%s/config/xml/%s/%s" % (self.smartrfpath,chip,doc);
#print "Opening %s" % fn;
self.pokebysym("SYNC0",0xB0);
self.pokebysym("ADDR", 0xB0);
return;
- def config_ook(self,band="none"):
- self.pokebysym("FSCTRL1" , 0x0C) #08 # Frequency synthesizer control.
- self.pokebysym("FSCTRL0" , 0x00) # Frequency synthesizer control.
+
+ def config_ademco(self, band="lf"):
+ pass
+ # FIXME Temporary placeholder for me to write the Ademco protocol into the GoodFET Chipcon Application
+ # TODO Also, write a class that takes in the XML registration files and sets values (not just addresses)
+
+ def config_ook(self,band="none"):
+ self.pokebysym("FSCTRL1" , 0x0C) #08 # Frequency synthesizer control.
+ self.pokebysym("FSCTRL0" , 0x00) # Frequency synthesizer control.
#Don't change these while the radio is active.
self.pokebysym("FSCAL3" , 0xEA) # Frequency synthesizer calibration.
packet1=client.readrxbuffer(1);
for foo in [packet0, packet1]:
print client.packet2str(foo);
+
if(sys.argv[1]=="sniff"):
if len(sys.argv)>2:
rate=float(sys.argv[2]);
if packet!=None:
print client.packet2str(packet);
+if(sys.argv[1]=="isniff"):
+ """ An intelligent sniffer, decodes message format """
+ """ More features to be added soon """
+ plist=[]; # packet listing
+ client.MCPreqstatListenOnly();
+ while 1:
+ packet=client.rxpacket();
+ if packet!=None:
+ for byte in packet:
+ plist.append(byte);
+ arbid=plist[0:2];
+ eid=plist[2:4];
+ dlc=plist[4:5];
+ data=plist[5:13];
+ print "ArbID: " + client.packet2str(arbid);
+ print "EID: " + client.packet2str(eid);
+ print "DLC: " + client.packet2str(dlc);
+ print "Data: " + client.packet2str(data);
+
if(sys.argv[1]=="test"):
print "MCP2515 Self Test:";