Hi,
We are reading the NTM88 through SPI interface using CC2640R2F(BLE). Initial details are in this post.
https://community.nxp.com/t5/Sensors/Not-able-to-get-correct-sensor-data-from-NTM88/td-p/1453940
We are using the GenFSK_Beacons_Demo_NTM88_KW38 as reference.
When I debug the "NTM88_GenFSK_Beacons", The TPMS ID and sensor data are saved in this array.
/* Fill the data array*/
gau8DataArray[u8index++] = gau8TpmsId[0];
gau8DataArray[u8index++] = gau8TpmsId[1];
gau8DataArray[u8index++] = gau8TpmsId[2];
gau8DataArray[u8index++] = gau8TpmsId[3];
gau8DataArray[u8index++] = gau8TpmsId[4];
gau8DataArray[u8index++] = gau8TpmsId[5];
gau8DataArray[u8index++] = (UINT8)(gu16CompPressure >> 8);
gau8DataArray[u8index++] = (UINT8)(gu16CompPressure);
gau8DataArray[u8index++] = (UINT8)(gu16CompAccelZ >> 8);
gau8DataArray[u8index++] = (UINT8)(gu16CompAccelZ);
gau8DataArray[u8index++] = (UINT8)(gu16CompAccelX >> 8);
gau8DataArray[u8index++] = (UINT8)(gu16CompAccelX);
gau8DataArray[u8index++] = gu8CompVolt;
gau8DataArray[u8index++] = gu8CompTemp;
From debugging this is the sensor data at NTM88.
This is the same data we receive at CC2640R2(BLE) through SPI interface. I print the output to Tera Term.
Why is the voltage and temperature reading from NTM88 both 1? Also are the compensated pressure, acc z and accx are correct. Sorry the ACC Y above is supposed to be ACC X.
Also how do I properly convert the raw sensor data in proper units of psi, g, volts, Celsius.
Regards,
Markel
Solved! Go to Solution.
Hi Markel,
The SPI communication seems to go well: the data stored in the array is exactly the same data read on the host MCU side.
The fact that all sensor data is underflow or overflow, and that the TPMS ID is all 0xFF, indicates that the trim section (from 0xFD40 to 0xFDFF) has been erased. There is no solution to recover the chip in that case as the trim coefficients are unique to each device (so they cannot be copied from one device to another).
The trim section is erased if a mass erase is performed, for example when clicking on the button “Erase Whole Device” with Flash Programmer Tool (button with a red cross on the screenshot below, extracted from CW user guide):
The trim coefficients only impact the sensor measurements, the rest of the features are still functional. So the chip can be used to work on communication, handshaking etc. But to get valid sensor measurements, a new chip will be needed.
More information on sensor measurements can be found in the app note below:
https://www.nxp.com/webapp/Download?colCode=AN13614
Best regards,
Tomas
Thanks for the step by step tutorial. Works like a charm! The solution worked for me thanks to the community and the members for the solution. MGS.Marriott.com
Hi Markel,
The SPI communication seems to go well: the data stored in the array is exactly the same data read on the host MCU side.
The fact that all sensor data is underflow or overflow, and that the TPMS ID is all 0xFF, indicates that the trim section (from 0xFD40 to 0xFDFF) has been erased. There is no solution to recover the chip in that case as the trim coefficients are unique to each device (so they cannot be copied from one device to another).
The trim section is erased if a mass erase is performed, for example when clicking on the button “Erase Whole Device” with Flash Programmer Tool (button with a red cross on the screenshot below, extracted from CW user guide):
The trim coefficients only impact the sensor measurements, the rest of the features are still functional. So the chip can be used to work on communication, handshaking etc. But to get valid sensor measurements, a new chip will be needed.
More information on sensor measurements can be found in the app note below:
https://www.nxp.com/webapp/Download?colCode=AN13614
Best regards,
Tomas
Hello Tomas,
Is there a way to write semi-sane coefficients into it?
Just so we can read somewhat realistic values from the sensor for development purposes (they don't have to be accurate).
BR,
Joey
Hi Tomas,
I did click the Erase Whole Device 1x. There is nothing in the user's guide that I have read that says do not click the Erase Whole Device.
Regards,
Markel