- if ( num_good_first_bytes > 0 ) {
-
- if ( prev_best == best_first_bytes[0] ){
- ++three_in_row;
- } else {
- three_in_row = 0;
- }
- prev_best = best_first_bytes[0];
-
- //printf("GOOD BYTES: %s \n", sprint_hex(best_first_bytes, num_good_first_bytes) );
- if ( total_added_nonces >= (NONCES_THRESHOLD * idx) || three_in_row >= 3) {
-
- bool cracking = generate_candidates(first_byte_Sum, nonces[best_first_bytes[0]].Sum8_guess);
- if (cracking || known_target_key != -1) {
-
- UsbCommand cOff = {CMD_FPGA_MAJOR_MODE_OFF, {0,0,0} };
- SendCommand(&cOff);
- field_off = brute_force();
+ if (total_added_nonces >= (NONCES_THRESHOLD * idx)) {
+ if (num_good_first_bytes > 0) {
+ if (generate_candidates(first_byte_Sum, nonces[best_first_bytes[0]].Sum8_guess) || known_target_key != -1) {
+ field_off = brute_force(); // switch off field with next SendCommand and then finish