// Low frequency commands
//-----------------------------------------------------------------------------
#include "cmdlf.h"
+
+bool g_lf_threshold_set = FALSE;
+
static int CmdHelp(const char *Cmd);
int usage_lf_cmdread(void) {
return 0;
}
int usage_lf_read(void){
- PrintAndLog("Usage: lf read [h] [s] [t]");
+ PrintAndLog("Usage: lf read [h] [s]");
PrintAndLog("Options:");
PrintAndLog(" h This help");
PrintAndLog(" s silent run no printout");
- PrintAndLog(" t waits for device to respond with no timeout");
PrintAndLog("Use 'lf config' to set parameters.");
return 0;
}
case 't':
errors |= param_getdec(Cmd, cmdp+1, &unsigned_trigg);
cmdp+=2;
- if(!errors) trigger_threshold = unsigned_trigg;
+ if(!errors) {
+ trigger_threshold = unsigned_trigg;
+ g_lf_threshold_set = (trigger_threshold > 0);
+ }
break;
case 'b':
errors |= param_getdec(Cmd, cmdp+1, &bps);
}
int CmdLFRead(const char *Cmd) {
+
+ if (offline) return 0;
+
bool errors = FALSE;
bool arg1 = FALSE;
- bool thresholdRead = FALSE;
uint8_t cmdp = 0;
while(param_getchar(Cmd, cmdp) != 0x00) {
switch(param_getchar(Cmd, cmdp)) {
arg1 = TRUE;
cmdp++;
break;
- case 't':
- case 'T':
- thresholdRead = TRUE;
- cmdp++;
- break;
default:
PrintAndLog("Unknown parameter '%c'", param_getchar(Cmd, cmdp));
- errors = 1;
+ errors = TRUE;
break;
}
if(errors) break;
}
-
- // No args
- if (cmdp == 0) errors = 1;
//Validations
if (errors) return usage_lf_read();
UsbCommand c = {CMD_ACQUIRE_RAW_ADC_SAMPLES_125K, {arg1,0,0}};
clearCommandBuffer();
SendCommand(&c);
- if ( thresholdRead ) {
+ if ( g_lf_threshold_set ) {
WaitForResponse(CMD_ACK,NULL);
} else {
if ( !WaitForResponseTimeout(CMD_ACK, NULL ,2500) ) {