Oyvind Idland

PN7150 - Example code issues

Discussion created by Oyvind Idland on May 9, 2018

Hi,

 

I am evaluating an PN7150 dongle for possible future use. I compiled the code in Visual Studio, and ran into these issues:

 

1) When starting the application the first time, it seems to communicate well with the dongle. However, if I quit/stop the application, and restart it, it will hang forever. I have to pull out and reinsert the dongle in order to make it talk again. My guess is that this may be caused by the onboard MCU or I2C going into some state, and doesn't reset. Note that I get this issue with the precompiled NXP-NCI_Windows_example.exe that follows the example zip package.

 

2) The library/API itself leaks memory. That is, several alloc()'ed objects never gets free()'d. For example, I tracked this one down in tml_hid.c:

 

void tml_hid_Disconnect(void){
/* I2C_Reset(mDriverHandle);
I2C_CancelAllRequest(mDriverHandle);
I2C_Close(mDriverHandle);
Sleep(2000);*/

}

 

For some reason those I2C-functions are commented away, which will prevent several memory chunks to be free'd.

 

Is this code meant to be used in production, or is there some other SDK or library avaliable ? If not, I will have to clean this up or write new code from scratch.

 

- Oyvind

Outcomes