Skip to main content
Visitor II
May 15, 2026
Solved

Need Help Using ST25R3911DISCOComm dll With Python

  • May 15, 2026
  • 1 reply
  • 89 views

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

Best answer by Ulysses HERNIOSUS

Hello Askhay2,

the functions from the DLL are direct forwards of functions from the firmware - its source is available on st.com.

The following post gives a simple example of running the DLL:

https://community.st.com/t5/st25-nfc-rfid-tags-and-readers/st25r3911discocomm-dll-need-sample-code-usage/m-p/377999

BR, Ulysses

1 reply

Ulysses HERNIOSUS
ST Technical Moderator
May 18, 2026

Hello Askhay2,

the functions from the DLL are direct forwards of functions from the firmware - its source is available on st.com.

The following post gives a simple example of running the DLL:

https://community.st.com/t5/st25-nfc-rfid-tags-and-readers/st25r3911discocomm-dll-need-sample-code-usage/m-p/377999

BR, Ulysses