MSP430® DIP-Stick

The MSP430® DIP-Stick is a low-cost breadboard-friendly microcontroller board for high-performance analog measurements. It can be programmed trivially over USB-C using only open-source software.

MCU

MCU clock speed

Nonvolatile memory

SRAM

MCU Features

USB to Serial

Programming

Power supply

Board features

MSP430FR2355 QFN-48

24 MHz

Ferroelectric RAM, 32 KiB

4 KiB

12 channel 12-bit ADC (200 ks/s), 2 comparators, 4 12-bit DAC with OpAmps, 5 16-bit timers, real time clock, 4 SPI, 2 UART, I²C, 32-bit multiplier, ultra-low-power modes

WCH CH340C

Serial (BSL) over USB, JTAG on pin headers

USB via 3.3V regulator / user supplied 3.3V via pin header

USB-C connector for power and serial data, 2×24 GPIO pin header, red/green LED

The MSP430® DIP-Stick is available starting November 11th, 2022. Samples are available to customers upon request. Please contact sales if you wish to receive a sample before general availability.

Price: 15€ including VAT (19%) plus shipping costs

Package includes: MSP430® DIP-Stick, USB-A to USB-C cable, instruction manual

Exemplary programming instructions:

We assume our program is called blink.c and we compile it into blink.elf using msp430-gcc. We select the correct MCU on the board (MSP430FR2355) using the -mmcu compiler flag:

$ msp430-elf-gcc -mmcu=msp430fr2355 -O0 -ggdb -Wall -Werror -Wextra -Wshadow -std=c99 blink.c -o blink.elf

After compilation, we use mspdebug with the flash-bsl target (this protocol needs to be used despite the FR2355 having its BSL bootloader in ROM) and use the DTR/RTS pins of the serial interface for the BSL entry sequence. The commands to program and verify the file blink.elf we compiled are supplied to mspdebug as well:

$ mspdebug -d /dev/ttyUSB0 flash-bsl --bsl-entry-sequence DR,r,R,r,d,R:DR,r --long-password "prog blink.elf" "verify blink.elf"

Of course, you need to replace ttyUSB0 with the name of the serial device that corresponds to the MSP430® DIP-Stick. After programming, it may be necessary to power cycle the device or adjust serial port settings, as mspdebug may set the DTR line low when exiting, causing the MCU to be held in reset. This will be fixed in a future version of mspdebug.

On Linux, you can for example use dmesg to find out which serial device file (/dev/ttyUSB…) the MSP430® DIP-Stick corresponds to. 

We have ported the MSP Driverlib for usage with the open-source gcc compiler. This enables the usage of the very extensive  20 KiB ROM library of this MSP430®, which reduces FRAM usage, has higher execution speed and contains very powerful features such as FFT. To use the driverlib, you need to enable the large code model in gcc (-mlarge) and in the assembler (-Wa,-ml). It is advisable to also use the MSP430Xv2 instruction set, which this SKU supports, although keep in mind that this increases code size by about 30%. The driverlib needs the large memory model (20bit addressing instead of native 16bit) because the ROM resides above FFFF. 

In addition to that we have patched mspdebug to recognise the FR2355 and not attempt to erase FRAM (this is unecessary because FRAM does not need to be erased before it can be written like flash does). The driverlib and mspdebug can be requested from sales.

 

MSP430® DIP-Stick is Made in Germany.

MSP430 is a registered trademark of Texas Instruments.