cancel
Showing results for 
Search instead for 
Did you mean: 

MB_CTRL_Dyn=0x47 what is happening?

YLin.2
Associate II

Hi

I have been playing with ST25DV04k SOT8 for a while. My team is trying to use the FTM to transfer sensor data from MCU to android phones. The protocol can be summarized as

  1. phone initiates a data transfer session by writing to the mailbox
  2. MCU get the interrupt, read request, return the TLV of sensor data to be transmitted
  3. phone write ACK response to the mailbox
  4. MCU get the interrupt and read the mailbox
  5. MCU puts the first 255 bytes of data
  6. phone Read the mailbox after 10ms (This time period is tested to be sufficient)
  7. phone write ACK response to the mailbox
  8. ...................................
  9. phone Read the last piece of sensor data

The bug comes when MCU is trying to put 255 bytes of data to the mailbox. It happens with a probability. So, I connect a logic analyzer to I2C and find out some mailbox writes are not ACKed, thus denied by ST25DV. Then I check the MB_CTRL_Dyn before sending out 255 data. The value is 0x47, which indicates that both RF_PUT_MSG and HOST_PUT_MSG are 1. Ideally, they should both be 0 right?

I then thought OK maybe the chip is broken, so I replaced one. But it behaved identically.

I am so puzzled...

Yuechuan Lin

1 REPLY 1
JL. Lebon
ST Employee

Hello,

This is strange that MB_CTRL_Dyn has a value of 0x47.

It is possible to share your logic analyzer trace where this strange value is visible?

Best regards.