X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/f513388ee056cfaa34799ed19e451383db1065c3..8ff31e935d19bc53dd8f27877b7450cafba4a942:/client/cmdlfpyramid.c diff --git a/client/cmdlfpyramid.c b/client/cmdlfpyramid.c index 613a0b66..82367720 100644 --- a/client/cmdlfpyramid.c +++ b/client/cmdlfpyramid.c @@ -5,12 +5,15 @@ // the license. //----------------------------------------------------------------------------- // Low frequency Farpoint / Pyramid tag commands +// FSK2a, rf/50, 128 bits (complete) //----------------------------------------------------------------------------- + +#include "cmdlfpyramid.h" + #include #include #include -#include "cmdlfpyramid.h" -#include "proxmark3.h" +#include "comms.h" #include "ui.h" #include "util.h" #include "graph.h" @@ -95,8 +98,9 @@ int CmdFSKdemodPyramid(const char *Cmd) size_t size = getFromGraphBuf(BitStream); if (size==0) return 0; + int waveIdx=0; //get binary from fsk wave - int idx = PyramiddemodFSK(BitStream, &size); + int idx = PyramiddemodFSK(BitStream, &size, &waveIdx); if (idx < 0){ if (g_debugMode){ if (idx == -5) @@ -151,6 +155,7 @@ int CmdFSKdemodPyramid(const char *Cmd) uint32_t rawHi2 = bytebits_to_byte(BitStream+idx+32,32); uint32_t rawHi3 = bytebits_to_byte(BitStream+idx,32); setDemodBuf(BitStream,128,idx); + setClockGrid(50, waveIdx + (idx*50)); size = removeParity(BitStream, idx+8, 8, 1, 120); if (size != 105){ @@ -225,8 +230,7 @@ int CmdFSKdemodPyramid(const char *Cmd) } int CmdPyramidRead(const char *Cmd) { - CmdLFRead("s"); - getSamples("30000",false); + lf_read(true, 15000); return CmdFSKdemodPyramid(""); }