Quantcast
Channel: Wireless Connectivity
Viewing all articles
Browse latest Browse all 116964

Forum Post: RE: PeerToPeer connection between TRF7970A evm and Android Smartphone (Nexus s) doesn´t work.

$
0
0

Dear Josh,

Thank you for your kindly help. I'm still working on receive and transmit data in one DEP loop. I will let you know if I have any further information.

I have a question about TRF7970 P2P connection with Nexus 4 and Galaxy S4. The code work well with Nexus S using P2P connection, but does not work with N4 or S4 which using Broadcom BCM2079x NFC chip.

========= TRF7970 main register setting as follwing ==========
 ISO_CONTROL(0x01)  = 0x23; // NFC passive target @ 424
 NFC_TARGET_LEVEL(0x18) = 0x86;  // NFCID 10byte, AutoSDD disable
 NFC_LOW_DETECTION(0x16) = 0x07;   // Maxium RF field level
 FIFO_IRQ_LEVEL(0x14) = 0x0F;  // RX high = 96, TX low = 32
 RX_SPECIAL_SETTINGS = 0x1C;  // 100k~1.5M,Gain 15dB, AGC 5x, 8 subcarrier
=====================================================

===== Register value when P2P communication =====
1) Regsiter : NFC_TARGET_PROTOCOL(0x19)
N4 (BCM) phone: the value of this register is 0x9B; compared with Nexus S(NXP) phone , this value is 0x93.
There is no detail information about BIT3 (pas_106) descripion.

2) Register: IRQ_STATUS(0x0C)
When N4(BCM) phone, BIT4 is set idicate any protocol error.

3) SENSF_REQ
TRF7970 can recevive SENSF_REQ from N4(BCM) phone, RC=0x00, TSN=0x03. After reply with SENSF_REQ, there is no data received.
============================
void TargetSenseResponse(TSN) {
  slots = TSN;
  response[0] = 18; // Length
 response[1] = 0x01;
 for(i = 0; i < 8; i++){
  response[2 + i] = targetid.array[i]; // Array length is 8 bytes
 }
 response[10] = 0xFF;
 response[11] = 0xFF;
 response[12] = 0xc2;
 response[13] = 0xc3;
 response[14] = 0xc4;
 response[15] = 0xc5;
 response[16] = 0xc6;
 response[17] = 0xc7;
 Delay(T_2400US); //  Delay for 2.4ms

  for(i = 0; i < (slots + 1); i++){
        if(i == 0){   //send the reply in the calculated timeslot
            NfcSend(&response[0]);
            break;
        }
   Delay(T_1200US);   // Delay for 1.2ms
   }
}
============================

Please give me any suggestion.

Thank you!

Victor


Viewing all articles
Browse latest Browse all 116964

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>