cancel
Showing results for 
Search instead for 
Did you mean: 

Fast transfer mode mailbox - how many write cycles can it handle?

EGiff
Associate III

I have an application which must send > 100KB/day to an RFID/NFC reader (I'm using the STM25R Disco) - for days and years on end.

Looking at the EEPROM spec, it's good for 600k write cycles at 85 °C

(That means even at 64Kbit EEPROM, wear leveling would be critical for long life.)

The Fast Transfer Mode buffer / mailbox is intriguing (256 Bytes) - it seems perfect for my use case - (mainly polling data) - however I cannot find any information about the type of memory used for this or number of write cycles it supports in the datasheet.

So, what type memory is used for this FTM mailbox? How many write cycles can it handle?

Thank you very much

33 REPLIES 33
JL. Lebon
ST Employee

Hello,

The 12cm distance you can reach seems normal to me. with the reader and tag antenna size you got​ It will be difficult to reach higher distance without modifying one or the other

One solution to increase read range would be to increase the SMARTAG antenna size. With a class 1 size antenna (Credit card size) and the ST25R-Disco , you can hope 16cm.

If you want to reach higher distances, a more powerful reader is required.

To answer to the initial question "how many cycles can FTM handles": the FTM is using an SRAM buffer to read/write data, not the EEPROM memory. So there is no cycling limit as in an EEPROM for the FTM, you don't have to worry about this.

Best regards.

EGiff
Associate III

On some tags you can also get an extra centimeter by adding a tuning capacitor tag - currently nm. The value of that would vary from 0pf (nm) to maybe 3-4pf - this is due to the variation of the on-chip tuning capacitor on the ST25DV - and so will change from chip-to-chip.

EGiff
Associate III

Doing that would take some experimentation - each tag will be different. The footprint is C14. Try with 0.5pf - I mounted by tag to a delta robot for precise, repeatable positioning to determine the best tag antenna tuning capacitor value.

johnson jiang
Associate II

Hello evan and Lebon:

Thanks for your advice. I did an experiment: replace the orignial antenna with 30*30 cm square antenna in ST25R-Disco (ST25R3911B).

And also change the capacitor value of C401 and C412 from 82PF to 180PF, adjust the matching resistance in the ST25R-Disco (ST25R3911B) board.

Now the distance is about 22cm.

But my target distance is 40cm.

Any other optimization actions should i take to reach 40 cm.

Any suggestions? Thanks a lot!

EGiff
Associate III

Well - that's a good distance with 1.4W TX. Are you reading in FTM mailbox mode at that distance?

To go farther, you can try:

Verify alignment of antennas - orientation and position.

Reduce metal near both antenna and tag.

Reduce power usage on the tag - shutdown the uC as ST25DV between readings - allowing the STM32L0 to live with a lower power budget.

Shut down (or de-solder) unneeded sensors, pull-ups/pull-downs, etc on the Tag.

Assuming you have only one Tag, make sure RFAL_TXRX_FLAGS_AGC_ON flag is set.

Try tuning for amplitude instead of phase using manual tuning.

Check rfalAnalogConfigDefaultSettings (rfal_analogConfigTbl.h), perhaps you can tweak some values there - you can even use the PC software to generate a new analog config header file.

You can look at the ST25R3916 - it has most of the same features as R3911, but with 1.6W output power along with more fine tuning of antenna.

You are already well beyond the typical distance for ISO15693 - other standards and custom solutions can allow for further distances - like what these guys do:

https://www.phaseivengr.com/solutions-demos/rotating-equipment-sensors/

Hello evan:

Yes, my plan is to read in FTM mode.

Yes, only one tag and now the tag power consumption is minimum.

I will try set RFAL_TXRX_FLAGS_AGC_ON flag.

"Try tuning for amplitude instead of phase using manual tuning." Do you mean changing ST25R3911 firmware(in rfal_analogConfigTbl.h) or others?

Yes, i plan to try ST25R3916 next step.

Thanks very much!

EGiff
Associate III

Another thing to try is a larger antenna for the tag - https://www.st.com/en/evaluation-tools/ant-1-6-st25dv.html contains 3 different antennas - one which is larger and contains the ST25DV - but not the STM32L0 - so you could re-work the tag to put the on-board ST25DV NM and jump the I2C to the external ST25DV - or perhaps keep it and use just he antenna on the ANT_C1 daughter board.

Creating a custom antenna isn't too difficult, ST provides a tool for designing antennas - you can have them fabricated externally on FR4 or flex - just make sure to plan for a couple footprints for tuning capacitors.

https://my.st.com/analogsimulator/html_app/antenna/#/

EGiff
Associate III

"Try tuning for amplitude instead of phase using manual tuning." Do you mean changing ST25R3911 firmware(in rfal_analogConfigTbl.h) or others?

I mean the antenna tuning circuit can tune for either Phase over Amplitude, Amplitude over Phase or AAT (hardware) - setting the appropriate trim level accordingly.

To manually tune for amplitude or phase, you can sweep the trim values - and choose the highest one. (that's done on the PC using the software, or on the ST25R using AAT hardware method).

Once you have found the ideal trim value, you can set it like this:

// value must be minimum 0, maximum 15

void setTrimValue(uint8_t trim)

{

//logUsart("setTrimValue: %u", trim);

// See page 77 of ST25R3911B data sheet "Antenna calibration control register"

// Bit 7 (the first on the left) - indicates if the tuning was automatic or manual

// This will be 1 since we are setting it manually

// The next 4 bits give the trim value, from 0 to 15

// ex trim 8 = 1 1000 000 or 0xC0

uint8_t regVal = trim << 3; // align with register

regVal |= 0x80; // add manual adjust bit

st25r3911WriteRegister(0x21, regVal);

}

EGiff
Associate III

Specifically, if you want max V_EH on the tag - would be to measure V_EH with a multi-meter on the tag for all the trim values.

EGiff
Associate III

However, if your RSSI (measurable on the ST25R) is too low, V_EH (if turned on) - will be a fairly static value. Only above an RSSI of about 1.5V will E_VH start to increase