ST25R3911B NFC-RFAL analogConfigs missing?
I'm trying to port the NFC-RFAL library to a smaller Arduino based MCU. I need an extremely minimal setup for retrieving UIDs from ISO15693 tags, so I'm getting rid of 50-80% of the state machines and structures, the whole analogConfig module, maybe anti-collision if I can, etc.
In the library, we often call rfalSetAnalogConfig() to set a bunch of registers using a look-up table. Here's a list of calls I might need that I found, scattered across the library.
rfalSetAnalogConfig((RFAL_ANALOG_CONFIG_TECH_CHIP | RFAL_ANALOG_CONFIG_CHIP_INIT));
rfalSetAnalogConfig((RFAL_ANALOG_CONFIG_POLL | RFAL_ANALOG_CONFIG_TECH_NFCV | RFAL_ANALOG_CONFIG_BITRATE_COMMON | RFAL_ANALOG_CONFIG_TX));
rfalSetAnalogConfig((RFAL_ANALOG_CONFIG_POLL | RFAL_ANALOG_CONFIG_TECH_NFCV | RFAL_ANALOG_CONFIG_BITRATE_COMMON | RFAL_ANALOG_CONFIG_RX));
rfalSetAnalogConfig((RFAL_ANALOG_CONFIG_TECH_CHIP | RFAL_ANALOG_CONFIG_CHIP_POLL_COMMON));
rfalSetAnalogConfig((rfalAnalogConfigId)(RFAL_ANALOG_CONFIG_POLL | RFAL_ANALOG_CONFIG_TECH_NFCV | rfalConvBR2ACBR(RFAL_BR_26p48) | RFAL_ANALOG_CONFIG_TX));
rfalSetAnalogConfig((rfalAnalogConfigId)(RFAL_ANALOG_CONFIG_POLL | RFAL_ANALOG_CONFIG_TECH_NFCV | rfalConvBR2ACBR(RFAL_BR_26p48) | RFAL_ANALOG_CONFIG_RX));
rfalSetAnalogConfig((RFAL_ANALOG_CONFIG_TECH_CHIP | RFAL_ANALOG_CONFIG_CHIP_FIELD_ON));
rfalSetAnalogConfig((RFAL_ANALOG_CONFIG_TECH_CHIP | RFAL_ANALOG_CONFIG_CHIP_FIELD_OFF));I'm currently looking to get rid of the 3 analogConfig files, and replace every call to rfalSetAnalogConfig() by its corresponding calls of st25r3911ChangeRegisterBits() instead.
Here's where I'm blocked. The first line makes 10 st25r3911ChangeRegisterBits() calls, the second line makes 1, the third makes 4, but the last 5 lines don't make any call at all! rfalSetAnalogConfig() can't find any entry inside its look-up table, located in rfal_rfst25r3911_analogConfigTbl.h. This means calls that looks important (like when you change the bit rate, of want to turn the field ON/OFF) don't do anything at all.
Is this supposed to be expected behaviour? The library and example are supposed to be compatible... and I can't test them because I don't have the hardware.
Also, I read that rfal_rfst25r3911_analogConfigTbl.h is externally generated. Can I generate my missing configs? Am I missing a tool?
SETUP :
Arduino WiFi Rev2 (Atmega4809)
X-NUCLEO-NFC05A1 (st25r3911b reader)
A custom shield in between to remap incompatible pins
Icode SLIX SL2S2002_SL2S2102 tags (ISO15693/NFCV)
No STM32 boards :(
RFAL version 2.0.10
current rfal_rfst25r3911_analogConfigTbl.h as an attachment
