return 1;
}
- if (!offline && (cmdp != '1')){
- ans=CmdLFHitagReader("26");
- if (ans==0) {
- return 1;
+ size_t testLen = (GraphTraceLen < 500) ? GraphTraceLen : 500;
+ // only run if graphbuffer is just noise as it should be for hitag
+ if (graphJustNoise(GraphBuffer, testLen)) {
+ if (!offline && (cmdp != '1')){
+ ans=CmdLFHitagReader("26");
+ if (ans==0) {
+ return 1;
+ }
}
}
}
return 1;
}
+bool graphJustNoise(int *BitStream, int size)
+{
+ static const uint8_t THRESHOLD = 10; //might not be high enough for noisy environments
+ //test samples are not just noise
+ bool justNoise1 = 1;
+ for(int idx=0; idx < size && justNoise1 ;idx++){
+ justNoise1 = BitStream[idx] < THRESHOLD;
+ }
+ return justNoise1;
+}
uint8_t GetNrzClock(const char str[], bool printAns, bool verbose);
uint8_t GetFskClock(const char str[], bool printAns, bool verbose);
uint8_t fskClocks(uint8_t *fc1, uint8_t *fc2, uint8_t *rf1, bool verbose);
+bool graphJustNoise(int *BitStream, int size);
void setGraphBuf(uint8_t *buff, size_t size);
void save_restoreGB(uint8_t saveOpt);