TI MSP430FR5969 LaunchPad Kit w/ Sharp LCD - Review

Table of contents

RoadTest: TI MSP430FR5969 LaunchPad Kit w/ Sharp LCD

Author: bose

Creation date:

Evaluation Type: Independent Products

Did you receive all parts the manufacturer stated would be included in the package?: True

What other parts do you consider comparable to this product?: MSP430G2 Launchpad, Arduino, Xmos starterkit

What were the biggest problems encountered?: Adequate document available but was not well organized.

Detailed Review:

Low Power like never before

 

TI has been leading the low power MCU revolution for a long time but with MSP430FR5xxx and MSP430FR6xxx families they have broken lots of records.

I received the privilege of doing this review of latest MSP430 EXP430FR5969 Launchpad. However I could not avoid delays in getting my time to work out the board.

In the package it included a Sharp 96 LCD and Anaren Air-Boosterpack also. Out of these I could only use the Sharp 96 LCD as it was part of the QR code project.

 

Here are some of the key observations on the features of the MSP430-

  • This board comes with standard 20 pin Booster pack headers. They have male headers on the top and female headers at the bottom. Typical bread board rig-up needs female connectors on the top. However its not much of a problem to work with the board inverted. The jumpers and other connectors support the board well. The male connectors on the top are supposedly for the booster pack expansions so that makes them reasonable. - Verdict very useful and orientation is ok for both booster pack and breadboard rig-up work.
  • External power connection. This is some thing I had been missing even in the older MSP430G2 launch pad. A stable way to connect an external battery pack or even power supply becomes essential for checking the low battery performance of the code. Also there are addition headers at the lower part of the board to add some more stuff the same power. This helps to make the board used as a subsystem component in prototypes. Very helpful if one needs to run external GSM modules which would consume a lot of power in short burst. - Verdict great for battery packs and external power expansion.
  • On board power selection options. This board brings the unique Super Capacitor powering option. Also there are ways to channel power in multiple ways helping with charging the super cap when needed and avoiding the fuss of soldering additional wires to try out super cap based powering application. Not only the board supports super cap it also has option to complete sever all connection with debugger. This help to really isolate the MCU power consumption from any parasitic consumption by the debugger side. Although this feature was present in the MSP430G2 Launchpad but not at this extensive level. - Verdict best for low power prototyping
  • On-board debugger eZ-FET Rev 1.2 with Energy Trace. This is a very good add-on. If one needs to program/debug external targets one gets the usual 14-pin TI MSP430 JTAG or one can mount the 1.27mm mini connector to connect to the other eZ- Series boards. This is a big advantage as now the normal JTAG oriented chips can also be debugged and programmed. Initially in MSP430G2 Launch pads we had the SBW or Spy-By-Wire protocol debugger but with this board one gets the best of both worlds. The eZ-FET interface also provides the standard back channel UART ar 9600 baud. This can also be extended to other targets. - Verdict great debug support both for prototyping on the board and outside.

 

Here is a picture of the normal Jumper configurations on the board:

image

In case one needs to connect External Power and still use the Debugger connectivity:

image

For charging the Super Cap - Still the Debugger is connected to be able to supply power and load the software:

image

Running only on Super Cap without debugger and avoiding all parasitic consumption:

image

Enough talking about the hardware lets talk about the software and that's where I felt a bit of disappointment.

 

Here are the key software development parts that I looked at:

  • Reference Code and Examples. TI has been up to their best in doing this. In past each of the MSP430 MCU family sub sections have a separate example code lib available. This time however with the advent of the GCC tool-chain in CCS things are no longer that impressive. The basic documentation needed to make use of GCC and FR series MCUs is missing. Although if one learns the internals from the Reference Manual then one can exactly configure the MSP430FR MCU either using the MSP430 Driverlib (MSP430ware) or GCC direct register write. - Verdict need more examples and better documentation for MSP430 GCC
  • Driverlib and Grlib confusion. The problem with the example code was that it used older version of driverlib which problems in importing the projects with new driverlib. Later I resolved this issue by manually coping the driverlib from the grlib. - Verdict consistency in packages is missing

 

However I did get across making the blinky example work on both the TI compiler using Driverlib and on GCC.

 

Here is the blinky source code to blink the LED on pin P4.6 on MSP430 GCC:

#include <inttypes.h>
#include "msp430fr5969.h"

int main(void) {
  WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
  P4DIR |= (BIT6); // Setup Pin Direction

  PM5CTL0 &= ~LOCKLPM5;   // Disable the GPIO power-on default high-impedance mode
                          // to activate previously configured port settings

  // Clock System Setup
  CSCTL0_H = CSKEY >> 8;                    // Unlock CS registers
  CSCTL1 = DCOFSEL_6;                       // Set DCO to 8MHz
  CSCTL2 = SELA__VLOCLK | SELS__DCOCLK | SELM__DCOCLK;  // Set SMCLK = MCLK = DCO
                                            // ACLK = VLOCLK
  CSCTL3 = DIVA__1 | DIVS__1 | DIVM__1;     // Set all dividers to 1
  CSCTL0_H = 0;                             // Lock CS registers

  P4OUT |= BIT6; // Initially Set pin as High

  while(1)
  {
    P4OUT ^= (BIT6); // Toggle the pin
    __delay_cycles(1000000);
  }

 

Initially this was a bit difficult get the GPIO to work.

Looking at the reference manual again I realized the lock down for LPM5, was causing changes to GPIO being not applied.

At that particular low power mode the I/O pins are latched out to ensure that they maintain their corresponding levels even in sleep mode.

Upon reset from LPM5 the software needs to unlock the GPIO to use again. Now interestingly on every reset the I/O is locked out.

So by default one needs to unlock the GPIO.

 

Well now its time for the Driverlib based blinky code on TI CCS compiler:

#include "driverlib.h"

int main(void) {

    WDT_A_hold(__MSP430_BASEADDRESS_WDT_A__);
    GPIO_setAsOutputPin(GPIO_PORT_P4,GPIO_PIN6);
    GPIO_setOutputLowOnPin(GPIO_PORT_P4,GPIO_PIN6);
    PMM_unlockLPM5();
    while(1)
    {
      GPIO_toggleOutputOnPin(GPIO_PORT_P4,GPIO_PIN6);
      __delay_cycles(1000000);
    }
}

Much easier to read than the previous part.

 

Finally I worked upon the Grlib and the Sharp96 display to produce this :

image

Although the Sharp96 LCD is really low power but the visibility is a cause of problems since its a reflected visibility.

So the QR code generated could not be scanned correctly. I tried out with couple of mobiles but there was not much of success.

It only worked once in every two to 3 attempts to scan the QR code. This was not serving the purpose of the project.

However the low power level that one can go on this chip is unsurpassed.

I would recommend this kit to any one building Wireless sensor networks, weather nodes , or

any type of communication node where low power with AES encryption is a need.

Anonymous
  • Actually what they need is to organize the stuff properly.

    Companies are always in a hurry to push the product out of the line and keep pumping in more new products.

    But what happens to those who chose to follow one of the older products.

    The obsolescence ratio is too high for TI. Hence many smaller manufacturers avoid TI.

    They need to understand on that work for more commitment on a smaller product span than having too many variants.

  • Sad to see such good hardware from TI and software not up to par. Maybe they need a few software engineers?

    Clem