FRAM embedded software utilities for MSP ultra-low-power microcontrollers

(ACTIVE) MSP-FRAM-UTILITIES

Description & Features

Technical Documents

Support & Training

Order Now


Order Now
Part Number Buy from Texas Instruments or Third Party Status Description  

MSP-FRAM-UTILITIES:
FRAM embedded software utilities for MSP ultra-low-power microcontrollers

Free

ACTIVE FRAM embedded software utilities for MSP ultra-low-power microcontrollers (also available as a part of MSPWare) 

Description

The Texas Instruments FRAM Utilities is designed to grow as a collection of embedded software utilities that leverage the ultra-low-power and virtually unlimited write endurance of FRAM. The utilities are available for MSP430FRxx FRAM microcontrollers and provide example code to help start application development. 

Compute Through Power Loss (CTPL): A utility API set that enables ease of use with LPMx.5 low-power modes and a powerful shutdown mode that allows an application to save and restore critical system components when a power loss is detected.

Traditionally, use of the low-power-mode 3.5 and 4.5 on MSP430 MCUs requires waking up with neither application state nor peripheral state retained. This can increase the start-up time and the complexity of applications. The CTPL utility leverages the non-volatile FRAM to provide an easier solution for embedded software developers. The utility enables application execution using the power-saving low-power modes 3.5 or 4.5, with the new ability to save and restore system state. It also enables a new shutdown mode to detect when power is lost either internally using an ADC or comparator peripheral or externally with an energy harvesting IC providing a GPIO interrupt that puts the device into shutdown mode. When power is restored the CTPL shutdown function restores the state and program execution continues. 

LZ4 compression utility: A software utility that offers real time compression and decompression on embedded MSP430FRxx devices. The LZ4 compression utility includes an open source command line tool that can be used to compress or decompress the same LZ4 files on a PC or host processor. This can enable increased storage capacity of FRAM devices as well as reduced wireless transmission time for over-the-air software updates or sensor data to a host device.

Random Number Generator (RNG): Implementation of a counter mode deterministic random byte generator (CTR-DRBG) according to the NIST SP 800-90A Rev 1 specification. Random numbers are generated using seed information stored in the TLV tables that are unique to each device. This utility also takes advantage of the 256-bit AES hardware accelerator present on MSP430FR5xx and MSP430FR6xx devices to create random bytes.

Non-Volatile Storage (NVS): Library that makes handling of non-volatile data easy and robust against intermittent power loss or asynchronous device resets. MSP430 devices with FRAM non-volatile memory guarantee 16-bit writes in all scenarios however more often than not the data being stored is a larger data type or a structure containing multiple types.  That means an unintended reset or power loss while data is written to the non-volatile memory will can result in partial data write and corrupted entries. To keep data storage constant, the non-volatile storage library contains functions that store data in a way that is guaranteed to recover the last valid entry without data corruption.


Release Notes

Technical Documents
More literature (1)
Title Date
MSP FRAM Utilities User’s Guide 10 Jul 2017

Software (1)

Name Part Number Software Type
MSP430Ware for MSP Microcontrollers  MSPWARE  Software Development Kits (SDK) 

Development Tools (2)

Name Part Number Tool Type
Code Composer Studio™ Integrated Development Environment for MSP Microcontrollers  CCSTUDIO-MSP  SW Development Tools, IDEs, Compilers 
MSP EnergyTrace Technology  ENERGYTRACE  SW Development Tools, IDEs, Compilers 

Design Kits & Evaluation Modules (8)

Name Part Number Tool Type
48-pin Target Development Board and MSP-FET Programmer Bundle for MSP430FRxx FRAM MCUs  MSP-FET430U48C  Development Kits 
100-pin Target Development Board and MSP-FET Programmer Bundle for MSP430FRxx FRAM MCUs  MSP-FET430U100D  Evaluation Modules & Boards 
MSP-FET430U64F - MSP430 64-pin FRAM TS Board and MSP-FET Bundle (Microcontrollers not included)  MSP-FET430U64F  Evaluation Modules & Boards 
MSP-TS430PM64F - MSP430 64-pin FRAM Target Socket Board (Microcontrollers not included)  MSP-TS430PM64F  Evaluation Modules & Boards 
MSP-TS430PZ100D- 100-pin Target Development Board for MSP430FRxx FRAM MCUs  MSP-TS430PZ100D  Evaluation Modules & Boards 
MSP-TS430RGZ48C - 48-pin Target Development Board for MSP430FRxx FRAM MCUs  MSP-TS430RGZ48C  Evaluation Modules & Boards 
MSP430FR5969 LaunchPad Development Kit  MSP-EXP430FR5969  Evaluation Modules & Boards 
MSP430FR6989 LaunchPad Development Kit  MSP-EXP430FR6989  Evaluation Modules & Boards 

Reference Designs (1)

TI Devices (93)

Part Number Name Product Family
MSP430FR5720  MSP430FR5724 8 MHz ULP microcontroller with 4 KB FRAM, 1 KB SRAM, 21 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5721  MSP430FR5725 8 MHz ULP microcontroller with 4 KB FRAM, 1 KB SRAM, 32 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5722  MSP430FR5722 8 MHz ULP microcontroller with 8 KB FRAM, 1 KB SRAM, 21 IO and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5723  MSP430FR5723 8 MHz ULP microcontroller with 8 KB FRAM, 1 KB SRAM, 32 IO and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5724  MSP430FR5724 8 MHz ULP microcontroller with 8 KB FRAM, 1 KB SRAM, 21 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5725  MSP430FR5725 8 MHz ULP microcontroller with 8 KB FRAM, 1 KB SRAM, 32 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5726  MSP430FR5726 8 MHz ULP microcontroller with 16 KB FRAM, 1 KB SRAM, 21 IO and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5727  MSP430FR5727 8 MHz ULP microcontroller with 16 KB FRAM, 1 KB SRAM, 32 IO and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5728  MSP430FR5728 8 MHz ULP microcontroller with 16 KB FRAM, 1 KB SRAM, 21 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5729  MSP430FR5729 8 MHz ULP microcontroller with 16 KB FRAM, 1 KB SRAM, 32 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5730  MSP430FR5730 24 MHz ULP microcontroller with 4 KB FRAM, 1 KB SRAM, 21 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5731  MSP430FR5731 24 MHz ULP microcontroller with 4 KB FRAM, 1 KB SRAM, 32 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5732  MSP430FR5732 24 MHz ULP microcontroller with 8 KB FRAM, 1 KB SRAM, 21 IO and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5733  MSP430FR5733 24 MHz ULP microcontroller with 8 KB FRAM, 1 KB SRAM, 32 IO and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5734  MSP430FR5734 24 MHz ULP microcontroller with 8 KB FRAM, 1 KB SRAM, 21 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5735  MSP430FR5735 24 MHz ULP microcontroller with 8 KB FRAM, 1 KB SRAM, 32 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5736  MSP430FR5736 24 MHz ULP microcontroller with 16 KB FRAM, 1 KB SRAM, 21 IO, and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5737  MSP430FR5737 24 MHz ULP microcontroller with 16 KB FRAM, 1 KB SRAM, 32 IO and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5738  MSP430FR5738 24 MHz ULP microcontroller with 16 KB FRAM, 1 KB SRAM, 21 IO, 10-bit ADC and comparator  MSP430 ultra-low-power MCUs 
MSP430FR5847  MSP430FR5847 16 MHz Ultra-Low-Power Microcontroller featuring 32 KB FRAM, 1 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR58471  MSP430FR58471 16 MHz Ultra-Low-Power Microcontroller featuring 32 KB FRAM, 1 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5848  MSP430FR5848 16 MHz Ultra-Low-Power Microcontroller featuring 48 KB FRAM, 2 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5849  MSP430FR5849 16 MHz Ultra-Low-Power Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5857  MSP430FR5857 16 MHz Ultra-Low-Power Microcontroller featuring 32 KB FRAM, 1 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5858  MSP430FR5858 16 MHz Ultra-Low-Power Microcontroller featuring 48 KB FRAM, 2 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5859  MSP430FR5859 16 MHz Ultra-Low-Power Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5867  MSP430FR5867 16 MHz Ultra-Low-Power Microcontroller featuring 32 KB FRAM, 1 KB SRAM, 40 IO  MSP430 ultra-low-power MCUs 
MSP430FR58671  MSP430FR58xx Mixed-Signal Microcontrollers  MSP430 ultra-low-power MCUs 
MSP430FR5868  MSP430FR5868 16 MHz Ultra-Low-Power Microcontroller featuring 48 KB FRAM, 2 KB SRAM, 40 IO  MSP430 ultra-low-power MCUs 
MSP430FR5869  MSP430FR5869 16 MHz Ultra-Low-Power Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 40 IO  MSP430 ultra-low-power MCUs 
MSP430FR5870  MSP430FR5870 16 MHz Ultra-Low-Power Microcontroller featuring 32 KB FRAM, 2 KB SRAM, 51 IO, ADC12  MSP430 ultra-low-power MCUs 
MSP430FR5872  MSP430FR5872 16 MHz Ultra-Low-Power Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 51 IO, ADC12  MSP430 ultra-low-power MCUs 
MSP430FR58721  MSP430FR58721 16 MHz Ultra-Low-Power Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 51 IO, ADC12  MSP430 ultra-low-power MCUs 
MSP430FR5887  MSP430FR5888 16 MHz ULP Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 40 IO, ADC12, Scan IF  MSP430 ultra-low-power MCUs 
MSP430FR5888  MSP430FR5888 16 MHz ULP Microcontroller featuring 96 KB FRAM, 2 KB SRAM, 40 IO, ADC12, Scan IF  MSP430 ultra-low-power MCUs 
MSP430FR5889  MSP430FR5889 16 MHz ULP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 40 IO, ADC12, Scan IF  MSP430 ultra-low-power MCUs 
MSP430FR58891  MSP430FR58891 Mixed Signal Microcontroller  MSP430 ultra-low-power MCUs 
MSP430FR5922  16 MHz Ultra-Low-Power Microcontroller featuring 64KB FRAM, 2KB SRAM, 51 IO, ADC12, AES  MSP430 ultra-low-power MCUs 
MSP430FR59221  16 MHz Ultra-Low-Power MCU featuring 64KB FRAM, 2KB SRAM, 51 IO, ADC12, AES   MSP430 ultra-low-power MCUs 
MSP430FR5947  MSP430FR5947 16 MHz Ultra-Low-Power Microcontroller featuring 32 KB FRAM, 1 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR59471  MSP430FR59471 16 MHz Ultra-Low-Power Microcontroller featuring 32 KB FRAM, 1 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5948  MSP430FR5948 16 MHz Ultra-Low-Power Microcontroller featuring 48 KB FRAM, 2 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5949  MSP430FR5949 16 MHz Ultra-Low-Power Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5957  MSP430FR5957 16 MHz Ultra-Low-Power Microcontroller featuring 32 KB FRAM, 1 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5958  MSP430FR5958 16 MHz Ultra-Low-Power Microcontroller featuring 48 KB FRAM, 2 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5959  MSP430FR5959 16 MHz Ultra-Low-Power Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 33 IO  MSP430 ultra-low-power MCUs 
MSP430FR5962  16 MHz Ultra-Low-Power MCU with 128 KB FRAM, 8 KB SRAM, AES, 12-bit ADC  MSP430 ultra-low-power MCUs 
MSP430FR5964  16 MHz Ultra-Low-Power MCU With 256 KB FRAM, 8 KB SRAM, AES, 12-bit ADC​  MSP430 ultra-low-power MCUs 
MSP430FR5967  MSP430FR5967 16 MHz Ultra-Low-Power Microcontroller featuring 32 KB FRAM, 1 KB SRAM, 40 IO  MSP430 ultra-low-power MCUs 
MSP430FR5968  MSP430FR5968 16 MHz Ultra-Low-Power Microcontroller featuring 48 KB FRAM, 2 KB SRAM, 40 IO  MSP430 ultra-low-power MCUs 
MSP430FR5969  MSP430FR5969 16 MHz Ultra-Low-Power Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 40 IO  MSP430 ultra-low-power MCUs 
MSP430FR59691  MSP430FR59691 16 MHz Ultra-Low-Power Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 40 IO  MSP430 ultra-low-power MCUs 
MSP430FR5970  MSP430FR5970 16 MHz Ultra-Low-Power Microcontroller featuring 32KB FRAM, 2KB SRAM, 51 IO, ADC12, AES  MSP430 ultra-low-power MCUs 
MSP430FR5972  MSP430FR5972 16 MHz Ultra-Low-Power MCU featuring 64 KB FRAM, 2 KB SRAM, 51 IO, ADC12, AES  MSP430 ultra-low-power MCUs 
MSP430FR59721  MSP430FR59721 16 MHz Ultra-Low-Power MCUfeaturing 64KB FRAM, 2KB SRAM, 51IO, ADC12, AES   MSP430 ultra-low-power MCUs 
MSP430FR5986  MSP430FR5986 16 MHz ULP Microcontroller featuring 48 KB FRAM, 2 KB SRAM, 48 IO, ADC12, Scan IF, AES  MSP430 ultra-low-power MCUs 
MSP430FR5987  MSP430FR5987 16 MHz ULP Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 48 IO, ADC12, Scan IF, AES  MSP430 ultra-low-power MCUs 
MSP430FR5988  MSP430FR5988 16 MHz UPLMicrocontroller featuring 96 KB FRAM, 2 KB SRAM, 48 IO, ADC12, Scan IF, AES  MSP430 ultra-low-power MCUs 
MSP430FR5989  MSP430FR5989 16 MHz ULP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 48 IO, ADC12, Scan IF, AES  MSP430 ultra-low-power MCUs 
MSP430FR5989-EP  16 MHz ULP Microcontroller Featuring 128 KB FRAM, 2 KB SRAM, 48 IO, ADC12, Scan IF, AES  Low Power MCU 
MSP430FR59891  MSP430FR59891 16 MHz ULP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 48 IO, ADC12, ScanIF, AE  MSP430 ultra-low-power MCUs 
MSP430FR5992  16 MHz Ultra-Low-Power MCU With 128 KB FRAM, 8 KB SRAM, Low-Energy Vector Math Accelerator  MSP430 ultra-low-power MCUs 
MSP430FR5994  16 MHz Ultra-Low-Power MCU With 256 KB FRAM, 8 KB SRAM, Low-Energy Vector Math Accelerator  MSP430 ultra-low-power MCUs 
MSP430FR59941  16 MHz Ultra-Low-Power MCU With 128 KB FRAM, 8 KB SRAM, Low-Energy Vector Math Accelerator  MSP430 ultra-low-power MCUs 
MSP430FR6820  MSP430FR6820 16 MHz Ultra-Low-Power MCU featuring 32 KB FRAM, 2 KB SRAM, 51 IO, ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR6822  MSP430FR6822 16 MHz Ultra-Low-Power MCU featuring 64 KB FRAM, 2 KB SRAM, 51 IO, ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR68221  MSP430FR68221 16 MHz Ultra-Low-Power MCU featuring 64 KB FRAM, 2 KB SRAM, 51 IO, ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR6870  MSP430FR6870 16 MHz Ultra-Low-Power MCU featuring 32 KB FRAM, 2 KB SRAM, 51 IO, ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR6872  MSP430FR6872 16 MHz Ultra-Low-Power MCU featuring 64 KB FRAM, 2 KB SRAM, 51 IO, ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR68721  MSP430FR68721 16 MHz Ultra-Low-Power MCU featuring 64 KB FRAM, 2 KB SRAM, 51 IO, ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR6877  MSP430FR6877 16 MHz ULP Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 83 IO, 16 ch ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR6879  MSP430FR6879 16 MHz ULP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 83 IO, 16 ch ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR68791  MSP430FR68791 16 MHz ULP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 83 IO, 16 ch ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR6887  MSP430FR6887 16 MHz ULP Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 83 IO, ADC12, LCD, Scan IF  MSP430 ultra-low-power MCUs 
MSP430FR6888  MSP430FR6888 16 MHz ULP Microcontroller featuring 96 KB FRAM, 2 KB SRAM, 83 IO, ADC, LCD, Scan IF  MSP430 ultra-low-power MCUs 
MSP430FR6889  MSP430FR6889 16 MHz ULP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 83 IO, ADC12, LCD, Scan IF  MSP430 ultra-low-power MCUs 
MSP430FR68891  MSP430FR68891 16 MHz ULP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 83 IO, ADC12, LCD, ScanIF  MSP430 ultra-low-power MCUs 
MSP430FR6920  MSP430FR6920 16 MHz Ultra-Low-Power MCU featuring 32 KB FRAM, 2 KB SRAM, 52 IO, ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR6922  MSP430FR6922 16 MHz Ultra-Low-Power MCU featuring 64 KB FRAM, 2 KB SRAM, 52 IO, ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR69221  MSP430FR69221 16 MHz Ultra-Low-Power MCU featuring 64 KB FRAM, 2 KB SRAM, 52 IO, ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR6927  MSP430FR6927 16 MHz ULP Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 52 IO, 8 ch ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR69271  MSP430FR69271 16 MHz ULP Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 52 IO, ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR6928  MSP430FR6928 16 MHz ULP Microcontroller featuring 96 KB FRAM, 2 KB SRAM, 52 IO, 8 ch ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR6970  MSP430FR6970 16 MHz Ultra-Low-Power MCU featuring 32 KB FRAM, 2 KB SRAM, 51 IO, ADC12, LCD  MSP430 ultra-low-power MCUs 
MSP430FR6972  MSP430FR6972 16 MHz Ultra-Low-Power MCU featuring 64 KB FRAM, 2 KB SRAM, 51 IO, ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR69721  MSP430FR69721 16 MHz Ultra-Low-Power MCU featuring 64KB FRAM, 2KB SRAM, 51 IO, ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR6977  MSP430FR6977 16 MHz ULP Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 83 IO, ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR6979  MSP430FR6979 16 MHz ULP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 83 IO, ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR69791  MSP430FR69791 16 MHz UPLP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 83 IO, ADC12, LCD, AES  MSP430 ultra-low-power MCUs 
MSP430FR6987  MSP430FR6987 16 MHz ULP Microcontroller featuring 64 KB FRAM, 2 KB SRAM, 83 IO, ADC12, LCD, AES, ESI  MSP430 ultra-low-power MCUs 
MSP430FR6988  MSP430FR6988 16 MHz Ultra-Low-Power Microcontroller featuring 96 KB FRAM, ULP ADC12, LCD, AES, ESI  MSP430 ultra-low-power MCUs 
MSP430FR6989  MSP430FR6989 16 MHz ULP Microcontroller - 128 KB FRAM, 2KB SRAM, 83 IO, ADC12, LCD, AES, Scan IF  MSP430 ultra-low-power MCUs 
MSP430FR69891  MSP430FR69891 16 MHz ULP Microcontroller featuring 128 KB FRAM, 2 KB SRAM, 83 IO, ADC12, LCD, AES  MSP430 ultra-low-power MCUs 

Support & Training

TI E2E Community

As a member of  myTI you can join the TI E2E™ Community  where you can ask questions, share ideas and collaborate with fellow engineers and TI experts

Content is provided "AS IS" by the respective TI and Community contributors and does not constitute TI specifications. See  Terms of use.

Engage in the Community

Blogs

Wikis

Visit the TI Wiki