Proxmark3 developers community

Research, development and trades concerning the powerful Proxmark3 device.

Remember; sharing is caring. Bring something back to the community.


"Learn the tools of the trade the hard way." +Fravia

You are not logged in.

#1 2020-06-19 11:30:57

yc
Contributor
Registered: 2020-06-15
Posts: 2

ISO15693 snoop ? Ask about packet loss?

Hello,
      we tried to use the hf 15 snoop command and found that the captured packets are only a little bit, probably only one-tenth, please ask why?

Is my CPU not fast enough or other problems?

I tried to block this code, there will be a lot more TAG packets.

 #if 0
		if (!TagIsActive) {                                                // no need to try decoding reader data if the tag is sending
			if (Handle15693SampleFromReader(snoopdata & 0x02, &DecodeReader)) {
				// FpgaDisableSscDma();
				uint32_t eof_time = dma_start_time + samples*16 + 8 - DELAY_READER_TO_ARM_SNOOP; // end of EOF
				if (DecodeReader.byteCount > 0) {
					uint32_t sof_time = eof_time
									- DecodeReader.byteCount * (DecodeReader.Coding==CODING_1_OUT_OF_4?128*16:2048*16) // time for byte transfers
									- 32*16  // time for SOF transfer
									- 16*16; // time for EOF transfer
					LogTrace_ISO15693(DecodeReader.output, DecodeReader.byteCount, sof_time*4, eof_time*4, NULL, true);
				}
				/* And ready to receive another command. */
				DecodeReaderReset(&DecodeReader);
				/* And also reset the demod code, which might have been */
				/* false-triggered by the commands from the reader. */
				DecodeTagReset(&DecodeTag);
				ReaderIsActive = false;
				ExpectTagAnswer = true;
				// upTo = dmaBuf;
				// samples = 0;
				// FpgaSetupSscDma((uint8_t*) dmaBuf, ISO15693_DMA_BUFFER_SIZE);
				// continue;
			} else if (Handle15693SampleFromReader(snoopdata & 0x01, &DecodeReader)) {
				// FpgaDisableSscDma();
				uint32_t eof_time = dma_start_time + samples*16 + 16 - DELAY_READER_TO_ARM_SNOOP; // end of EOF
				if (DecodeReader.byteCount > 0) {
					uint32_t sof_time = eof_time
									- DecodeReader.byteCount * (DecodeReader.Coding==CODING_1_OUT_OF_4?128*16:2048*16) // time for byte transfers
									- 32*16  // time for SOF transfer
									- 16*16; // time for EOF transfer
					LogTrace_ISO15693(DecodeReader.output, DecodeReader.byteCount, sof_time*4, eof_time*4, NULL, true);
				}
				/* And ready to receive another command. */
				DecodeReaderReset(&DecodeReader);
				/* And also reset the demod code, which might have been */
				/* false-triggered by the commands from the reader. */
				DecodeTagReset(&DecodeTag);
				ReaderIsActive = false;
				ExpectTagAnswer = true;
				// upTo = dmaBuf;
				// samples = 0;
				// FpgaSetupSscDma((uint8_t*) dmaBuf, ISO15693_DMA_BUFFER_SIZE);
				// continue;
			} else {
				ReaderIsActive = (DecodeReader.state >= STATE_READER_RECEIVE_DATA_1_OUT_OF_4);
			}
		}
		#endif
proxmark3> hw version
Prox/RFID mark3 RFID instrument
bootrom: iceman/master/ice_v3.1.0-1024-g25cf9bd5 2018-08-17 13:58:20
os: /-suspect 2020-06-19 10:05:16
fpga_lf.bit built for 2s30vq100 on 2019/11/21 at 09:02:37
fpga_hf.bit built for 2s30vq100 on 2020/03/05 at 19:09:39
SmartCard Slot: not available

uC: AT91SAM7S512 Rev B
Embedded Processor: ARM7TDMI
Nonvolatile Program Memory Size: 512K bytes. Used: 207197 bytes (40%). Free: 317091 bytes (60%).
Second Nonvolatile Program Memory Size: None
Internal SRAM Size: 64K bytes
Architecture Identifier: AT91SAM7Sxx Series
Nonvolatile Program Memory Type: Embedded Flash Memory



proxmark3> hf 15 snoop
#db# Snoop started. Press PM3 Button to stop.
#db# Snoop stopped.
#db# Snoop statistics:
#db#   ExpectTagAnswer: 1, TagIsActive: 0, ReaderIsActive: 0
#db#   DecodeTag State: 0
#db#   DecodeTag byteCnt: 0
#db#   DecodeTag posCount: 513584
#db#   DecodeReader State: 1
#db#   DecodeReader byteCnt: 1
#db#   DecodeReader posCount: 0
#db#   Trace length: 239
#db#   Max behindBy: 3
proxmark3> hf list 15
Recorded Activity (TraceLen = 239 bytes)

Start = Start of Frame, End = End of Frame. Src = Source of transfer
All times are in carrier periods (1/13.56Mhz)

      Start |        End | Src | Data (! denotes parity error, ' denotes short bytes)            | CRC | Annotation         |
------------|------------|-----|-----------------------------------------------------------------|-----|--------------------|
          0 |      35840 | Rdr | 26  01  00  00                                                  | !crc| INVENTORY      
    1697888 |    1733728 | Rdr | 26  01  00  00                                                  | !crc| INVENTORY      
   16892896 |   17076192 | Rdr | 26  01  00  f6  28  00  00  00  00  00  00  00  00  00  00  00  |     |
            |            |     | 00  00  00  00  00  00                                          | !crc| INVENTORY      
   17115744 |   17167968 | Rdr | 22  23  4a  53  00  00                                          | !crc| READ_MULTI_BLOCK
   17076352 |   17325184 | Rdr | 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  |     |
            |            |     | 00  00  00  00  00  00  00  00  00  00  00  00  00  00          | !crc|
   17377088 |   17511232 | Rdr | 40                                                              |     |
   83137440 |   83173280 | Rdr | 26  01  00  00                                                  | !crc| INVENTORY      
   94940064 |   95123360 | Rdr | 26  01  00  f6  28  00  00  00  00  00  00  00  00  00  00  00  |     |
            |            |     | 00  00  00  00  00  00                                          | !crc| INVENTORY      
   95162144 |   95214368 | Rdr | 22  23  4a  53  00  00                                          | !crc| READ_MULTI_BLOCK
   95123776 |   95372608 | Rdr | 00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  |     |
            |            |     | 00  00  00  00  00  00  00  00  00  00  00  00  00  00          | !crc|
   95424512 |   95558656 | Rdr | 40

thank you very much.

Offline

Board footer

Powered by FluxBB