mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-08-21 05:43:48 -07:00
textual
This commit is contained in:
parent
cfcb049459
commit
b05042d896
2 changed files with 24 additions and 10 deletions
|
@ -178,32 +178,40 @@ int CmdHFTune(const char *Cmd) {
|
||||||
if (cmdp == 'h') return usage_hf_tune();
|
if (cmdp == 'h') return usage_hf_tune();
|
||||||
int iter = param_get32ex(Cmd, 0, 0, 10);
|
int iter = param_get32ex(Cmd, 0, 0, 10);
|
||||||
|
|
||||||
|
PrintAndLogEx(SUCCESS, "Measuring HF antenna, click " _GREEN_("pm3 button") "or press " _GREEN_("Enter") "to exit");
|
||||||
PacketResponseNG resp;
|
PacketResponseNG resp;
|
||||||
PrintAndLogEx(SUCCESS, "Measuring HF antenna, " _YELLOW_("click button") " or press " _YELLOW_("Enter") "to exit");
|
|
||||||
clearCommandBuffer();
|
clearCommandBuffer();
|
||||||
|
|
||||||
uint8_t mode[] = {1};
|
uint8_t mode[] = {1};
|
||||||
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_HF, mode, sizeof(mode));
|
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_HF, mode, sizeof(mode));
|
||||||
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_HF, &resp, 1000)) {
|
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_HF, &resp, 1000)) {
|
||||||
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark HF initialization, aborting");
|
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark HF initialization, aborting");
|
||||||
return PM3_ETIMEOUT;
|
return PM3_ETIMEOUT;
|
||||||
}
|
}
|
||||||
|
|
||||||
mode[0] = 2;
|
mode[0] = 2;
|
||||||
// loop forever (till button pressed) if iter = 0 (default)
|
// loop forever (till button pressed) if iter = 0 (default)
|
||||||
for (uint8_t i = 0; iter == 0 || i < iter; i++) {
|
for (uint8_t i = 0; iter == 0 || i < iter; i++) {
|
||||||
if (kbd_enter_pressed()) { // abort by keyboard press
|
if (kbd_enter_pressed()) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_HF, mode, sizeof(mode));
|
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_HF, mode, sizeof(mode));
|
||||||
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_HF, &resp, 1000)) {
|
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_HF, &resp, 1000)) {
|
||||||
|
PrintAndLogEx(NORMAL, "");
|
||||||
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark HF measure, aborting");
|
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark HF measure, aborting");
|
||||||
return PM3_ETIMEOUT;
|
return PM3_ETIMEOUT;
|
||||||
}
|
}
|
||||||
if ((resp.status == PM3_EOPABORTED) || (resp.length != sizeof(uint16_t)))
|
|
||||||
|
if ((resp.status == PM3_EOPABORTED) || (resp.length != sizeof(uint16_t))) {
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
uint16_t volt = resp.data.asDwords[0] & 0xFFFF;
|
uint16_t volt = resp.data.asDwords[0] & 0xFFFF;
|
||||||
PrintAndLogEx(INPLACE, "%u mV / %5u V", volt, (uint16_t)(volt / 1000));
|
PrintAndLogEx(INPLACE, "%u mV / %2u V", volt, (uint16_t)(volt / 1000));
|
||||||
}
|
}
|
||||||
mode[0] = 3;
|
mode[0] = 3;
|
||||||
|
|
||||||
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_HF, mode, sizeof(mode));
|
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_HF, mode, sizeof(mode));
|
||||||
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_HF, &resp, 1000)) {
|
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_HF, &resp, 1000)) {
|
||||||
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark HF shutdown, aborting");
|
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark HF shutdown, aborting");
|
||||||
|
|
|
@ -253,34 +253,41 @@ static int CmdLFTune(const char *Cmd) {
|
||||||
//Validations
|
//Validations
|
||||||
if (errors) return usage_lf_tune();
|
if (errors) return usage_lf_tune();
|
||||||
|
|
||||||
PrintAndLogEx(SUCCESS, "Measuring LF antenna at %.2f kHz, click button or press Enter to exit", LF_DIV2FREQ(divisor));
|
PrintAndLogEx(SUCCESS, "Measuring LF antenna at " _YELLOW_("%.2f") "kHz, click " _GREEN_("pm3 button") "or press " _GREEN_("Enter") "to exit", LF_DIV2FREQ(divisor));
|
||||||
|
|
||||||
uint8_t params[] = {1, 0};
|
uint8_t params[] = {1, 0};
|
||||||
params[1] = divisor;
|
params[1] = divisor;
|
||||||
PacketResponseNG resp;
|
PacketResponseNG resp;
|
||||||
|
|
||||||
clearCommandBuffer();
|
clearCommandBuffer();
|
||||||
|
|
||||||
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_LF, params, sizeof(params));
|
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_LF, params, sizeof(params));
|
||||||
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_LF, &resp, 1000)) {
|
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_LF, &resp, 1000)) {
|
||||||
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark LF initialization, aborting");
|
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark LF initialization, aborting");
|
||||||
return PM3_ETIMEOUT;
|
return PM3_ETIMEOUT;
|
||||||
}
|
}
|
||||||
|
|
||||||
params[0] = 2;
|
params[0] = 2;
|
||||||
// loop forever (till button pressed) if iter = 0 (default)
|
// loop forever (till button pressed) if iter = 0 (default)
|
||||||
for (uint8_t i = 0; iter == 0 || i < iter; i++) {
|
for (uint8_t i = 0; iter == 0 || i < iter; i++) {
|
||||||
if (kbd_enter_pressed()) { // abort by keyboard press
|
if (kbd_enter_pressed()) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_LF, params, sizeof(params));
|
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_LF, params, sizeof(params));
|
||||||
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_LF, &resp, 1000)) {
|
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_LF, &resp, 1000)) {
|
||||||
|
PrintAndLogEx(NORMAL, "");
|
||||||
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark LF measure, aborting");
|
PrintAndLogEx(WARNING, "Timeout while waiting for Proxmark LF measure, aborting");
|
||||||
return PM3_ETIMEOUT;
|
return PM3_ETIMEOUT;
|
||||||
}
|
}
|
||||||
if ((resp.status == PM3_EOPABORTED) || (resp.length != sizeof(uint32_t)))
|
|
||||||
|
if ((resp.status == PM3_EOPABORTED) || (resp.length != sizeof(uint32_t))) {
|
||||||
break;
|
break;
|
||||||
uint32_t volt = resp.data.asDwords[0];
|
|
||||||
PrintAndLogEx(INPLACE, "%u mV / %5u V", volt, (uint32_t)(volt / 1000));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint32_t volt = resp.data.asDwords[0];
|
||||||
|
PrintAndLogEx(INPLACE, "%u mV / %3u V", volt, (uint32_t)(volt / 1000));
|
||||||
|
}
|
||||||
|
|
||||||
params[0] = 3;
|
params[0] = 3;
|
||||||
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_LF, params, sizeof(params));
|
SendCommandNG(CMD_MEASURE_ANTENNA_TUNING_LF, params, sizeof(params));
|
||||||
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_LF, &resp, 1000)) {
|
if (!WaitForResponseTimeout(CMD_MEASURE_ANTENNA_TUNING_LF, &resp, 1000)) {
|
||||||
|
@ -292,7 +299,6 @@ static int CmdLFTune(const char *Cmd) {
|
||||||
return PM3_SUCCESS;
|
return PM3_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* send a LF command before reading */
|
/* send a LF command before reading */
|
||||||
int CmdLFCommandRead(const char *Cmd) {
|
int CmdLFCommandRead(const char *Cmd) {
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue