cancel
Showing results for 
Search instead for 
Did you mean: 

Need Help Using ST25R3911DISCOComm dll With Python

Akshay2
Associate

Hello ST Team

I am using the ST25R3911B-DISCO board with an ST25DV16KC tag.

I am trying to communicate with the tag directly from Python using the ST25R3911DISCOComm.dll from STSW-ST25R001.

My setup is:
ST25R3911B-DISCO
ST25DV16KC
Windows PC
Python 3.13
ctypes

The DLL loads successfully.
Reader connection works correctly.
RF initialization works correctly.

These APIs return success:
rfalInitialize
iso14443aInit
rfalFieldOnAndStarGT
checkConnection

The ST GUI software works correctly and can:
detect the tag
select the tag
read UID
read tag data

From Python I cannot:
detect the tag
select the tag
read UID
read memory

The DLL exports these APIs:
iso14443aSelect
iso14443aRATS
iso14443aPPS
txrxBytes
nfcTxNBytes
nfcRxNBytes
rfalStartTransceive
rfalTransceiveBlockingTx
rfalTransceiveBlockingRx
rfalTransceiveBlockingTxRx
rfalISO14443ATransceiveShortFrame
rfalISO14443ATransceiveAnticollisionFrame
rfalIsoDepInitialize
rfalIsoDepStartApduTransceive
pollInterrupt

Observed issues:

iso14443aSelect causes access violation.

t2tRead4Pages returns:
Read Result 6
RX Length 0

pollInterrupt runs but never detects the tag.

I believe the issue is that I do not know the correct function signatures and required structures for the DLL APIs.

Could ST please provide:
documentation or header files for ST25R3911DISCOComm.dll
correct function prototypes
example for Python ctypes usage
example for ST25DV16KC detection and UID read

Thank you

0 REPLIES 0