Skip to main content
Visitor II
June 16, 2022
Solved

Availability of Java source code of STSW-ST25R001 PC software for ST25R3911B-DISCO board ?

  • June 16, 2022
  • 4 replies
  • 1872 views

Hello Developers,

I am currently working on a project that includes NFC communication using ST25R3911B-DISCO board and ST25DV NFC tags. The project also includes development of custom GUI application similar to STSW-ST25R001 software.

Currently i am using STSW-ST25R001 PC software to communicate with ST25R3911B-DISCO board. But can any one let me know is there JAVA source code available for STSW-ST25R001 software ? And if yes please share the necessary links.

    This topic has been closed for replies.
    Best answer by Grégoire Poulain

    Hi Nikhil,

    STSW-ST25R001 GUI was developed in C++ with Qt.

    Nevertheless, the GUI Application itself is not relevant to address the ST25R3911B.

    Underneath the GUI Application a DLL is provided which grants the APIs needed for driving the ST25R3911B-DISCO board.

    The DLL is available inside installation folder (ST25R3911DISCOComm.h/lib/dll) and demo projects are also provided at: C:\Users\$USER\Documents\STMicroelectronics\ST25R3911B_Discovery_GUI\DLL_Demos

    Our recommendation for your developments is to make use of ST25PC-NFC software (STSW-ST25PC001) (which makes use of the above DLL), or directly using the DLL if so preferred.

    Kind regards

    GP

    4 replies

    Technical Moderator
    June 17, 2022

    Hi

    STSW-ST25R001 is not Java based software.

    If you need Java based software, I would recommend to use the ST25PC-NFC software (STSW-ST25PC001) and its related Java source (STSW-ST25PC002).

    Rgds

    BT

    Visitor II
    June 17, 2022

    Hello,

    Can you let me know STSW-ST25R001 software is based on which language ? And how can i get the source code for the same.

    Regards,

    Nikhil Komalan

    ST Employee
    June 17, 2022

    Hi Nikhil,

    STSW-ST25R001 GUI was developed in C++ with Qt.

    Nevertheless, the GUI Application itself is not relevant to address the ST25R3911B.

    Underneath the GUI Application a DLL is provided which grants the APIs needed for driving the ST25R3911B-DISCO board.

    The DLL is available inside installation folder (ST25R3911DISCOComm.h/lib/dll) and demo projects are also provided at: C:\Users\$USER\Documents\STMicroelectronics\ST25R3911B_Discovery_GUI\DLL_Demos

    Our recommendation for your developments is to make use of ST25PC-NFC software (STSW-ST25PC001) (which makes use of the above DLL), or directly using the DLL if so preferred.

    Kind regards

    GP

    Visitor II
    June 20, 2022

    Okay thanks for information.

    Technical Moderator
    June 23, 2022

    Hi Nikhil,

    In order to use the mailbox for FTM, you have to first enable the mailbox:

    1. Open RF user security session with the Present Password command
    2. set MB_MODE bit to 1 in MB_MODE with the Write Configuration command
    3. set MB_EN bit to 1 in the MB_CTRL_Dyn register with the Write Dynamic Configuration command
    4. then you can access to the mailbox thanks to the following commands
    • Read Message Length 
      • Read Message
      • Write Message

    All those commands are described in the ST25DV datasheet.

    Once you have formatted one of those command, it can be sent from the reader to the tag thanks to transceive functions (you can use iso15693TxRxNBytes API or rfalTransceiveBlockingTxRx API. See for example https://community.st.com/s/question/0D53W00001ZWoO6SAL/can-i-have-some-guidance-on-how-to-use-the-str25r3111discocomm-dll-for-iso-15693-r2h-ftm-transfers-in-c)

    Rgds

    BT

    Visitor II
    July 2, 2022

    I would like to know few more information regarding the frame format.

    For example:

    When i read the GPO static register, i get the following value "800500B0CCBA00" in response. I would like to know how to determine the value of SOF and EOF. Will it be same in all response which i will receive.

    Also if i decode the response of the GPO read, it gives me the 2byte SOF (8005), 1byte response flag(00), 1byte reg value (0xB0), 2byte CRC (CCBA) and 1byte EOF(00).

    Have i decoded the frame correctly ? Or i am missing something ?

    Example :

    Response : 8005 00 B0 CCBA 00

    SOF: ?

    Response Flag: 00

    Reg Value: B0

    CRC: CCBA

    EOF: ?

    Technical Moderator
    July 5, 2022

    Hi,

    SOF, EOF, CRC are handled internally by the firmware.

    Likely:

    • 80 Transaction ID (I think one nibble shifted and mirrored back)
    • 05 Size
    • 00 response flag
    • 4 byte read of data (1 32-bit block)

    BR, Ulysses

    ST Employee
    July 4, 2022

    Hi Nikhil,

    In order to make the Community threads more useful and easy for other to find the information, one should keep a question/topic per thread. It is our understanding that the initial question has been answered (Java source code availability).

    Please post separate topics/questions in individual threads with the appropriate title/details.

    Thank you

    Kind regards

    GP