This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP432P401R: driverlib, temperature calibration constants set to zero

Part Number: MSP432P401R

The calibration values appear to be set to 0.  Is this correct or were the values never put into the library?

Thanks!

cal30 = SysCtl_getTempCalibrationConstant(SYSCTL_2_5V_REF,

                SYSCTL_30_DEGREES_C);

cal85 = SysCtl_getTempCalibrationConstant(SYSCTL_2_5V_REF,

                SYSCTL_85_DEGREES_C);

  • On the launchpad, these values are set to 0xFFFF
  • Robert,

    What version of the SimpleLink MSP432 SDK are you using? Here are my settings using MSP432 SDK v1.4 containing the latest driverlib.

    #define SYSCTL_85_DEGREES_C    4
    #define SYSCTL_30_DEGREES_C    0

  • How do I determine the driverlib version?

    Clicking on project properties for the first project w/bespoke board (cal values return 0) I see:

    location: /Applications/ti/msp/MSPWare_3_30_00_18/driverlib/driverlib/MSP432P4xx/ccs/msp432p4xx_driverlib.lib

    last modified: November 4, 2015 at 4:29:26 PM

    For the second project  with the launchhpad (cal values return 0xffff) I see:

    location: C:\ti\tirex-content\msp\msp432ware__3.50.00.02\driverlib\driverlib\MSP432P4xx\ccs\msp432p4xx_driverlib.lib

    last modified: November 29, 2016

  • I get the same values for the #defines but If I am not mistaken the values in the #defines are simply indexes into the library call,
    and not the cal values themselves.
  • Robert,

    Just as an FYI, we no longer actively support MSP432Ware or MSPWare for MSP432 MCUs. All of what was included in the MSPWare packages is now included in the SimpleLink MSP432 SDK, which also has official support for FreeRTOS and TI-RTOS and our TI Drivers.

    www.ti.com/.../simplelink-msp432-sdk

    Let me look into the cal values themselves, but I would suspect they should be correct. Are you seeing results that would suggest otherwise?

    Are you pulling the code snippet from an example somewhere?
  • Thanks for the update. I'm surprised that the CCS tool didn't let me know updates were available.

    The code was taken from the project explorer example adc14_single_channel_temperature_sensor
    I tried to run the project as is, I only posted a snippet made while trying to diagnose the issue.

    I assume since the driverlib is no longer supported, then none of the examples from project explorer will run as well.
    Does the new SDK include examples that match the ones for the old driverlib?
  • Robert,

    My apologies! Let me explain a little bit better. DriverLib is very much still supported. The way we package it has just changed to a quarterly updated SDK format as opposed to MSP432Ware/MSPWare. You can still find all of the driverlib projects inside of the nortos examples in the SDK or by viewing them on the cloud at this link: dev.ti.com/.../

    Driverlib is very much supported! :)

    When you run the example, what values are you getting returned in cal85 and cal30 variables? (Please use the SimpleLink SDK for this test to ensure that it's the most up to date version of driverlib).
  • Thank you, I was worried, I've got an on-going multi-year multi-thousand line development program for the 432  and expect to be using the processor in several embedded (science related) projects.

    I didn't want to have to re-port all the drivers - I'm using the timers, rtc, uart, i2c, a2d, wdt., eerom, just about every interface the 432 has a driver for :-)

    I'll be updating to the SDK today and will report back to you on the values returned.

  • Evan, on a side-note, even though we are small potatoes at MIT Haystack, if a TI rep wants to come talk to us about TI's embedded processor line, I think I can get my boss to let them in the door.
  • Robert,

    For your migration, a good place to read first/while you do it is Section 3 of the following paper: www.ti.com/.../slaa700

    Sorry to give you a panic attack!

    And noted, I personally am no where close to the east coast (in Texas), but I can keep this in mind for TI reps that are out there!
  •  Robert,

    FYI running this example, this is what I get. Let me know what you see when you upgrade!

  • Hi, Evan,

      I updated the mac to ccsv7, rebuilt the "project explorer" adc14_single_channel_temperature_sensor project,

      double-checked the include and link paths point to v7,  attached the launchpad and still get 0xffff for the cal values.

      I'm thinking the temperature constants might have slipped through the cracks and were never added to the driverlib.

    bob s.

  • Bob,

    Can you please post a screen shot of what exactly you are referring to? You are stating you aren't seeing the values that I showed you in my previous post?

    Can you describe to me your hardware setup?
  • The problem is, I need to hover over the variable to display its contents, so I can't screenshot the contents of the variable.

    Unless there's another way.

    Screenshot:

  • I got it, watch expression:

  • My hardware setup for this test is a launchpad.
    My other setup is a bespoke 432 board but I haven't installed ccs-v7 or the SDK yet.
  • What LaunchPad version do you have? Is it red or black?
  • The color of the launchpad board is black. Does the SDK know which version of launchpad I've got?

    If the correct software constant depends on the hardware version of launchpad, then it probably won't be correct for any bespoke 432 board.

    Is the temperature thermistor part of the 432 chip or is it part of the board external to the chip?

    I assumed chip and assumed tolerances were such that the cal values would be good for all 432R's

    Do I have to generate my own temperature cal values, and rerun thermistor cal for every bespoke 432 board we have built?

    The TI document you provided the link to says nothing about thermistor cal.
  • Robert,

    Ahhh this makes so much more sense. Do you by chance have a red LaunchPad on hand? The black LaunchPad contains Rev B silicon, that was experimental, pre-release silicon. A lot has changed in both hardware and software support for the Rev B silicon. Between Rev B and Rev C (released silicon which ships on the red launchpads) we fixed a number of errata and bug fixes in software.

    One of the gaps between Rev B experimental silicon and the Rev C production silicon was the fact that we fully populated the TLV table with the calibration values in Rev C, where we had not done that yet with the experimental silicon. You can go to the Registers view> TLV > ADC14_REF_2P5V_TSxxC which equates to 0xFFFFFFFF. This is the source of your issue and I was able to dig up an old black LaunchPad and confirm. On the red LaunchPad the values are the following:
    ADC14_REF_2P5V_TS30C = 0x00001352
    ADC14_REF_2P5V_TS85C = 0x000015F9

    Luckily, the fact that we have improved a lot of issues that were in hardware on Rev B, boads well for the rest of your project, but unfortunately, you will have to upgrade to the red LaunchPad.

    You can buy one here:
    www.ti.com/.../msp-exp432p401r

    You can reference a number of other changes at this link here: www.ti.com/.../slaa700

    In the meantime, you can use those values I gave above and they will approximately work. But I would like to stress the approximately portion of that sentence. The fact is, the values i've given above are calibrated to each piece of silicon and the characteristic variations of it. Given that it can vary from device to device, agnostic of revision differences, and given the amount of hardware changes between B and C, take your results with a grain of salt. On my black launchpad, with the values above, I was given 30C and 80F. Which sort of correspond with the values my red launchpad gave me. Example code below.

    cal30 = SysCtl_getTempCalibrationConstant(0x00001352,
    SYSCTL_30_DEGREES_C);
    cal85 = SysCtl_getTempCalibrationConstant(0x000015F9,
    SYSCTL_85_DEGREES_C);
  • Only black launchpads. I've asked to get the latest.

**Attention** This is a public forum