This week I was finally able to get the drivers for the X-CUBE-NFC02 to work with my Nucleo board. I was able to successfully run the project demo in my own workspace. I made sure I added all the paths to my .h files, edited all the original NFC02 includes to my board (stm32l4xx), added the library folder path, and other necessary files that needed to be included in the “Core” folder. The main issue that I encountered last week was solved by a simple #define. It didn’t originally cross my mind since I didn’t see in the project demo where they included this line. After I got the X-CUBE-NFC02 software to work, I started to think about how I can retrieve a card’s unique ID (UID). At first I thought I could do this by integrating the CR95HF drive with it, but it led to more driver incompatibility issues. I did a search to see that the documentation for NFC02 never even mentions this driver while the NFC03 board does. Then I saw that NFC03 and above boards have this RFAL library that my NFC02 board does not have. I read the provided documentation in NFC02 to see if there is a way to get the tag UID and there is a function called “M24LR_i2c_ReadDSFID”. The documentation is not very clear and I still need to do more research on M24LR drivers to see if it can do what I want. I did take a look at the X-CUBE_NFC05 software package because it was tested with STM32L4xx drivers. In the demo file provided, it seems that the RFAL library provides an nfcDevice struct with a pointer to nfid. I might need to consider upgrading the NFC expansion board if the M24LR functions cannot provide me the information I need. Additionally, I spent a good amount of time looking at how to do print debugging in the STM32CubeIDE. I think I got something to work but it’s not the most ideal situation. I also worked on the design review document this week because the deliverable is due Monday.
My progress is behind schedule because I just ordered the ST25 NFC tags last week and they were delivered to Pittsburgh. I am flying back tomorrow to stay for the rest of the semester. I also put in an order for new tags because the tags I last ordered are type 4 instead of type 5. By next week, I am hoping I can read the UID of the tags with the NFC02 board. If I deem this is incapable of doing, then I need to do some serious research and put in an order for a new expansion board. I will also meet up with Iris and integrate the temperature sensor on the Jetson Nano.