ST‐Link V2 MSP430 Debugger ‐ Quick Start Guide - grumat/glossy-msp430 GitHub Wiki

Overview

This guide explains how to use a repurposed ST-Link V2 clone ($3-5) with Glossy-MSP430 firmware to debug and program MSP430 microcontrollers. The firmware implements a Black Magic Probe-compatible GDB server, allowing you to use standard ARM debugging workflows with MSP430 targets.

Key features:

  • Uses standard Black Magic Probe GDB protocol (arm-none-eabi-gdb)
  • JTAG-only interface (SWD not supported, SBW not yet implemented)
  • 2.25 Mbps JTAG communication speed (acceptable for development/debugging)
  • $3-5 cost compared to $15-20 for dedicated MSP430 hardware

Current status (Alpha):

  • ✓ JTAG debugging and programming works
  • ✓ GDB via UART serial port (requires external USB-to-Serial adapter)
  • ⏳ USB/VCP support planned (direct USB GDB connection, no separate UART needed)
  • ⏳ Linux/Mac support planned

Time required: 15-20 minutes (hardware prep + firmware build)
Cost: ~$5 (ST-Link V2 clone)
Skills needed: Basic command line, USB connections


Part 1: Hardware Setup

What You Need

Item Qty Source Cost
ST-Link V2 Clone 1 eBay/Aliexpress $3-5
USB-A to Mini-USB Cable 1 Included with ST-Link Free
MSP430 Target Device 1 TI (eval board or Launchpad) $5-50
Jumper Wires 5-6 Generic jumper wires $2-3
(Optional) Adapter PCB 1 See Hardware/STLink-Adapter/ $5-10

ST-Link V2 Clone Identification

Typical ST-Link V2 clone features:

  • Red PCB (most common)
  • 20-pin IDC connector (standard Cortex-M debugging header)
  • USB Mini-B port
  • No integrated STM32 debugger (we're replacing that with Glossy firmware)

Where to buy:

  • Search: "ST-Link V2 clone" or "STM32 debugger"
  • Cost: $3-5 (much cheaper than genuine $20+ versions)
  • Vendors: eBay, Aliexpress, Amazon

ST-Link 20-Pin IDC Header Pinout

Pin layout (2x10 Odd/Even, looking at connector from above):

     +------ Notch ------+
  1  |  ● VCC   ● GND    |  2
  3  |  ● TDO   ● GND    |  4  
  5  |  ● TDI   ● GND    |  6
  7  |  ● TMS   ● GND    |  8
  9  |  ● nTRST ● GND    | 10
 11  |  ● TCK   ● GND    | 12
 13  |  ● RST   ● GND    | 14
 15  |  ● VT    ● GND    | 16
 17  |  ● NC    ● GND    | 18
 19  |  ● NC    ● GND    | 20
     +-------------------+

JTAG Signal Summary (from ST-Link pinout):

Pin Signal Description
1 VCC (3.3V) Power supply (ST-Link output)
2 GND Ground reference
3 TDO JTAG Data Out (from target)
5 TDI JTAG Data In (to target)
7 TMS JTAG Mode Select
9 nTRST JTAG Test Reset (active low)
11 TCK JTAG Test Clock
13 RST Target system reset
15 VT Target voltage sense (for adapter power selection)

Other pins: All even-numbered pins (2, 4, 6, 8, 10, 12, 14, 16, 18, 20) are GND; pins 17, 19 are NC

Wiring to MSP430 Target (Direct Connection)

Essential connections (6 wires minimum):

ST-Link V2 Pin    MSP430 JTAG Signal    Purpose
──────────────    ──────────────────    ────────
Pin 1 (VCC)    →  VDD (3.3V)            Power
Pin 2 (GND)    →  GND                   Ground (can use any GND pin)
Pin 5 (TDI)    →  TDI / Pin 3 of JTAG   Data In
Pin 7 (TMS)    →  TMS / Pin 7 of JTAG   Test Mode Select
Pin 11 (TCK)   →  TCK / Pin 1 of JTAG   Test Clock
Pin 3 (TDO)    ←  TDO / Pin 5 of JTAG   Data Out (from target)

Optional connections:

  • Pin 13 (RST) → RST / Pin 11 or 14 of JTAG (for target reset control)
  • Pin 9 (nTRST) → JTAG pin 9 (test reset, if needed for your target)

Using the Adapter PCB (Recommended)

For a cleaner, more reliable connection, use the STLink-Adapter PCB (in Hardware/STLink-Adapter/).

Adapter features:

  • Passive connector board (no active components needed)
  • 20-pin IDC header (J1 - ST-Link side)
  • 14-pin IDC header (J3 - MSP430 JTAG side)
  • 4-pin JST header (J2 - Spy-Bi-Wire auxiliary, for future use)
  • Power selection switch (SW1) - choose VCC or external power
  • 10K pull-down resistor (R1) on nTRST for stability
  • Decoupling capacitors (C1, C2) for noise reduction

Complete adapter pinout mapping:

ST-Link (J1)         Adapter Net    MSP430 JTAG (J3)
────────────         ───────────    ────────────────
Pin 1 (VCC)      →   VCC    →       Pin 2 (VDD 3.3V)
Pin 3 (TDO)      →   TDO    →       Pin 5 (TDO)
Pin 5 (TDI)      →   TDI    →       Pin 3 (TDI)
Pin 7 (TMS)      →   TMS    →       Pin 7 (TMS)
Pin 9 (nTRST)    →   nTRST  →       Pin 9 (nTRST) [with R1 pull-down]
Pin 11 (TCK)     →   TCK    →       Pin 1 (TCK)
Pin 13 (RST)     →   RST    →       Pin 11 (RST)
Pin 15 (VT)      →   VT     →       SW1 (selectable)
GND (many)       →   GND    →       All even pins (2,4,6,8,10,12,14)

Power selection switch (SW1):

  • Position A (VCC): Target uses ST-Link 3.3V power
  • Position B (VREF): Target uses external/self-supplied power (adapter monitors voltage)

Note on nTRST: ST-Link pin 9 provides test reset signal (active low). The adapter adds a 10K pull-down resistor for stable operation with MSP430 targets that have weak pull-ups.

Voltage Considerations

Critical constraint: ST-Link hardware always outputs 3.3V signals (no voltage translation available)

MSP430 voltage requirements:

  • Absolute maximum: 3.6V
  • Nominal operation: 1.8V – 3.6V
  • JTAG interface requirement: Must operate at 3.3V (ST-Link cannot provide other voltages)

Compatibility:

  • ✓ MSP430 boards with 3.3V supply: Fully compatible - direct connection safe
  • ✗ MSP430 boards without 3.3V supply: Not compatible with ST-Link adapter
    • Why: MSP430 JTAG interface is only 3.3V compatible. If your target board doesn't have a 3.3V rail, you must add one for debugging.

Power configuration on adapter (SW1):

Target Power Status Switch Position Notes
ST-Link powers target VCC ST-Link supplies 3.3V to target VDD. Suitable for low-power dev boards.
Target self-powered (3.3V) VREF Target uses its own 3.3V supply. ST-Link monitors voltage only.
Target has no 3.3V rail N/A Not supported. Add 3.3V regulator to target board first.

Best practice: For any MSP430 target, ensure it has a stable 3.3V power rail before connecting ST-Link.

Connection Verification

Before plugging in, verify:

  • All wires connected (JTDI, JTCK, JTMS, JTDO, GND)
  • No reversed connections
  • Target power supply is connected
  • USB cable plugged into ST-Link
  • No loose or bridged connections

Part 2: Firmware Build and Upload

Prerequisites

Platform support:

  • ✓ Windows - Fully supported (current)
  • ⏳ Linux/Mac - Planned for future versions

Windows development environment:

  1. Visual Studio 2022 Community (free)
  2. VisualGDB plugin (commercial, trials available) - integrates ARM GCC with VS2022
  3. .NET 9.0 SDK
  4. ARM Cortex-M GCC compiler (installed via VisualGDB)

GDB debugging setup:

  • UART serial connection required (separate from debugger USB)
  • USB/VCP support planned (currently Alpha stage)
  • Use external COM port adapter to connect GDB client to target

Building the Firmware

Step 1: Clone and navigate to project

cd P:\github.com\glossy-msp430

Step 2: Select STLinkV2 target in Visual Studio

  1. Open glossy-msp430.sln
  2. Right-click target.stlinv2 project
  3. Select Build (Ctrl+Shift+B)
  4. Choose Debug|VisualGDB configuration

Expected output:

Build started...
Compiling JtagDev.tim.cpp...
Linking...
target.stlinv2.elf created successfully

Step 3: Upload firmware to ST-Link

Via VisualGDB:

  1. Ensure ST-Link is plugged in via USB
  2. Click Debug → Start Debugging (F5)
  3. VisualGDB auto-detects and uploads
  4. Firmware loads in ~3-5 seconds

Step 4: Verify upload success

  • VisualGDB breaks at entry point
  • No error messages
  • Ready for debugging

Troubleshooting Upload Issues

Problem Cause Solution
"Device not found" ST-Link USB disconnected Check USB cable, try different port
"Lock error" Flash is locked Press physical button on ST-Link, retry
"Timeout" Slow/unreliable USB Use direct USB port, avoid hubs
Build fails Missing dependencies Install VisualGDB and ARM compiler

Part 3: Testing the Connection

Quick Connectivity Test

Step 1: Hardware setup

  1. Plug ST-Link into computer via USB Mini-B
  2. Connect ST-Link to MSP430 target (5-6 JTAG wires)
  3. Plug target power supply (if not powered by debugger)
  4. Important: Connect external UART adapter to target's serial port for GDB communication
    • This is separate from the JTAG debugger connection
    • Typically: TX → target RX, RX → target TX, GND → target GND
  5. Plug UART adapter into PC (USB-to-Serial converter)

Step 2: Identify UART COM port

# Windows: List available COM ports
Get-WmiObject Win32_SerialPort | Select-Object Name, Description, DeviceID

# Output example:
# Name : COM3
# Description : USB Serial Port (COM3)
# DeviceID : \\.\COM3

Step 3: Open GDB client

arm-none-eabi-gdb

Step 4: Connect to target via UART

(gdb) target remote COM3           # Windows - replace with your COM port
(gdb) set serial baud 115200       # If needed (configure based on target firmware)

Step 4: Verify connection

(gdb) monitor version
Black Magic Probe v1.10.1 (Glossy MSP430 variant)

(gdb) monitor target
Available targets:
 0 Generic ARM Cortex-M
 1 MSP430 (via JTAG)

(gdb) monitor jtag_scan
JTAG scan chain: 0x49D3 (MSP430F5418A)

Expected output (successful connection via UART):

  • GDB prompt ready for commands
  • monitor version shows Black Magic Probe firmware version
  • monitor jtag_scan returns MSP430 JTAG ID
  • JTAG ID code correct for your MSP430 (e.g., 0x49D3 for F5418A)

Connection architecture:

┌──────────────┐
│  PC (Host)   │
└──────────────┘
       │
    USB │
       ├─────────────────┬──────────────────┐
       │                 │                  │
    ST-Link         UART Adapter       (USB/VCP planned)
   (Debugger)      (Serial GDB)
       │                 │
    JTAG wires      Serial Port (TX/RX)
       │                 │
       └─────────────────┴──────────────────┐
                                            │
                                     ┌──────────────┐
                                     │   MSP430     │
                                     │   Target     │
                                     └──────────────┘

Current limitation: UART is separate from JTAG. Future USB/VCP support will integrate both over single USB connection.

Testing with MSP430 Launchpad

Step 1: Prepare Launchpad

Option A (remove on-board debugger):

  • Locate J6 (JTAG header)
  • Remove jumpers between main MCU and on-board debugger

Option B (leave on-board):

  • Just connect to J6 directly
  • On-board debugger won't interfere

Step 2: Connect ST-Link to J6 header

ST-Link Pin 13 (JTCK)  →  J6 Pin 3 (TCK)
ST-Link Pin 15 (JTMS)  →  J6 Pin 4 (TMS)
ST-Link Pin 11 (JTDI)  →  J6 Pin 5 (TDI)
ST-Link Pin 17 (JTDO)  →  J6 Pin 6 (TDO)
ST-Link Pin 1 (VDD)    →  J6 Pin 1 (VDD)
ST-Link Pin 3 (GND)    →  J6 Pin 2 (GND)
ST-Link Pin 9 (RST)    →  J6 Pin 9 (RST)

Step 3: Test with GDB

(gdb) target remote /dev/ttyUSB0
(gdb) monitor swdp_scan         # JTAG scan
(gdb) file firmware.elf
(gdb) load                      # Program firmware
(gdb) run                       # Start execution
(gdb) break main                # Set breakpoint
(gdb) continue                  # Hit breakpoint

Performance Expectations

Initialization (typical):

  • Connection: 100-200 ms
  • JTAG ID readback: 40-50 ms
  • Device identification: 10-20 ms

Data transfer (2.25 MHz clock):

  • 256-byte read: 1.0-1.2 ms
  • 1 KB flash program: 8-10 ms
  • 16 KB firmware load: 150-200 ms

Suitable for: Development, debugging, occasional programming
Not suitable for: Production high-volume programming


Part 4: Using the Debugger

GDB Commands Reference

Command Function
target remote /dev/ttyUSB0 Connect to target
monitor version Show firmware version
monitor jtag_scan Scan JTAG bus
file firmware.elf Load symbol table
load Program firmware to flash
run Start execution
break main Set breakpoint at main()
continue Run until breakpoint
step Single-step CPU
info registers Show CPU registers
memory-read 0x1000 256 Read 256 bytes from 0x1000
backtrace Show call stack
disassemble main Show disassembly

Real-World Debugging Session

Setup (Windows terminal):

# Terminal 1: Start GDB client (connect via UART)
arm-none-eabi-gdb

(gdb) target remote COM3
Remote debugging using COM3
(gdb) set serial baud 115200

# Verify connection
(gdb) monitor version
Black Magic Probe v1.10.1 (Glossy MSP430 variant)

(gdb) file build\firmware.elf
Reading symbols from build\firmware.elf...

Debug session (actual MSP430 target):

(gdb) load
Loading section .text, size 0x2000 lma 0x2400
Loading section .data, size 0x100 lma 0x4400
Start address 0x2400, load size 8448
Transfer rate: 42 KB/sec (via JTAG)

(gdb) break main
Breakpoint 1 at 0x2500: file main.c, line 42.

(gdb) run
Starting program: build/firmware.elf
Note: automatically using hardware breakpoints for read-only addresses.

Breakpoint 1, main() at main.c:42
42      int rc = Init_GPIO();

(gdb) info registers
R0             0x1234           4660
R1             0x0              0
R2             0x2000           8192
R3             0x4400           17408
PC             0x2500           0x2500
SR             0x61000000       1627389952

(gdb) step
43      if (rc != OK) {

(gdb) continue
Breakpoint 1, ...

(gdb) quit

Note: UART is used only for GDB communication. JTAG hardware operations (read/write, breakpoints) occur on separate lines with no latency impact.

MSP430-Specific Debugging

Reading MSP430 registers:

(gdb) memory-read 0x0140 32   # Read SR, PC, etc.
(gdb) memory-read 0x0160 32   # Read general-purpose registers
(gdb) memory-read 0x4c00 16   # Read JTAG control area

Programming flash memory:

(gdb) load firmware.bin        # Program entire firmware
(gdb) restore firmware.bin 0x2400  # Restore binary at offset
(gdb) dump memory dump.bin 0x2400 0x4400  # Read flash to file

Debugging with hardware breakpoints:

(gdb) break *0x2500           # Hardware breakpoint
(gdb) watch my_variable        # Watchpoint (data breakpoint)
(gdb) continue                 # Run until hit

Part 5: Troubleshooting Common Issues

Two-Connection Architecture

Remember: Glossy-MSP430 uses two separate USB connections:

  1. ST-Link JTAG debugger (USB Mini-B from ST-Link)
  2. UART serial port (USB-to-Serial adapter) for GDB commands

Both must be working for debugging to succeed.

Issue 1: "Cannot Connect to GDB (UART timeout)"

Symptoms:

  • GDB: target remote COM3 hangs or times out
  • No response from target

Diagnostics (Windows):

# Check UART adapter is recognized
Get-WmiObject Win32_SerialPort | Select-Object Name, Description

# Verify ST-Link JTAG connection (separate from UART!)
Get-WmiObject Win32_PnPEntity | Where-Object Name -match "STM32" | Select-Object Name

Solutions:

  1. Verify UART wiring: Check TX/RX/GND connections (separate from JTAG)
  2. Check COM port number: Verify correct port in target remote COM#
  3. Test serial connection: Use terminal emulator (Putty, Teraterm) at 115200 baud
  4. Check ST-Link JTAG separately:
    • Verify JTAG wires connected
    • Check target power
    • Use VisualGDB to verify ST-Link firmware uploads correctly
  5. Reload firmware: Re-flash ST-Link via VisualGDB
  6. Try different USB ports: Avoid hubs for both UART and ST-Link

Issue 2: "ST-Link JTAG Connection Problem"

Symptoms:

  • GDB connects to UART but says "target not found"
  • monitor jtag_scan returns no devices
  • VisualGDB can't upload firmware to ST-Link

Diagnostics:

# Verify ST-Link is detected by VisualGDB
# Launch VisualGDB, try to upload - it will show device list

# Check Device Manager (Windows)
# Look under "Ports (COM & LPT)" for ST-Link USB device
# Look under "Universal Serial Bus controllers" 

Solutions:

  1. Verify JTAG wiring: Each wire matters - trace them visually
  2. Check target power: Measure 3.3V at target VDD
  3. Reload ST-Link firmware:
    • Open glossy-msp430.sln in Visual Studio
    • Right-click target.stlinv2 → Build
    • Connect ST-Link via USB
    • Debug → Start Debugging (F5) - VisualGDB auto-uploads
  4. Try different USB cable/port: Avoid hubs
  5. Power cycle: Unplug ST-Link, wait 10 seconds, plug back in

Issue 2b: "Device Not Responding" (After JTAG connects)

Symptoms:

  • Connected but no register data
  • Target appears locked

Likely causes:

  • Target not powered
  • JTAG signals crossed
  • Target in low-power mode
  • Wrong target selected

Solutions:

# Check target voltage
# Measure GND to VDD: should read 3.3V

# Hard reset target
(gdb) monitor jtag_reset

# Force scan
(gdb) monitor jtag_scan

# Try lower speed (future option)
# Currently 2.25 MHz is only option

Issue 3: "Flash Erase Failed"

Symptoms:

  • (gdb) load or (gdb) restore returns error
  • Flash appears protected

Likely causes:

  • TCLK signal unstable
  • Device in protected state
  • Insufficient power during erase

Solutions:

(gdb) monitor erase_all     # Mass erase
(gdb) monitor unlock        # Try to unlock
(gdb) load firmware.elf     # Retry program

Issue 4: "Slow Programming Speed"

This is expected at 2.25 MHz.

If you need faster speed:

  1. Use BluePill target (9 Mbps, but costs $15-20)
  2. Use dedicated TI programmer (XDS100, MSP-FET, expensive)
  3. Wait for future improvements to Glossy-MSP430

Current speed is acceptable for:

  • Development and debugging
  • Occasional firmware updates
  • Educational use

Part 6: Advanced Configuration

Changing JTAG Clock Speed

Currently fixed at 2.25 MHz. In future, this may be configurable:

Edit target.stlinv2/platform.h:

#define INIT_TIME_FREQ 2250000  // 2.25 MHz (current)
// #define INIT_TIME_FREQ 1500000  // 1.5 MHz (slower, safer)

Rebuild firmware after changing.

Using with Different MSP430 Variants

Tested with:

  • ✓ MSP430F5418A
  • ✓ MSP430G series
  • ✓ MSP430F1xx/F2xx

Should work with any JTAG-compatible MSP430.

Switching Between Targets

With multiple MSP430 targets:

# Target 1
arm-none-eabi-gdb
(gdb) target remote /dev/ttyUSB0

# ... debug target 1 ...

(gdb) quit

# Switch wires to Target 2
# Target 2
arm-none-eabi-gdb
(gdb) target remote /dev/ttyUSB0

Part 6b: Serial Adapter Setup (Critical for UART)

Recommended USB-to-Serial Adapters

Chip Cost Availability Reliability Notes
CH340 $1-2 Very common Good Driver needed, sometimes unstable
FT232RL $5-10 Common Excellent Official drivers, very stable
CP2102 $2-3 Common Good Good middle ground
Prolific PL2303 $2-5 Older stock Poor Avoid if possible (bad drivers)

Connection diagram:

USB-to-Serial Adapter     MSP430 Target
─────────────────────     ──────────────
Pin 1 (VCC) ─→            (optional, if needs 5V)
Pin 2 (GND) ─→            GND
Pin 3 (TX) ──→            RX (target RX pin)
Pin 4 (RX) ←──            TX (target TX pin)

Windows baud rate:

  • Default: 115200 baud
  • Configure in GDB: set serial baud 115200
  • Check target firmware for required baud rate

Testing Serial Connection (Before GDB)

Using PuTTY or Teraterm:

  1. Open serial port at COM3, 115200 baud
  2. Connect USB adapter to PC
  3. Should see text output from running target
  4. Type commands if target firmware supports serial input

If no output:

  • Check TX/RX wires reversed
  • Verify adapter driver installed
  • Try different USB port
  • Check target firmware is running

Part 7: Performance and Limitations

Throughput Comparison

Operation ST-Link V2 (2.25 MHz) BluePill (9 MHz) Speedup
JTAG ID read 50 ms 25 ms 2.0×
256 B read 1.2 ms 0.3 ms 4.0×
1 KB flash 9 ms 2.2 ms 4.1×
16 KB firmware 150 ms 36 ms 4.2×

Verdict: 2-4× slower but 75% cheaper

What Works (Current Release)

  • ✓ Debug (breakpoints, single-step, inspect memory/registers)
  • ✓ Program flash via JTAG
  • ✓ Read/write RAM
  • ✓ Reset target
  • ✓ Black Magic Probe compatible GDB interface
  • ✓ UART serial debugging via external adapter
  • ✓ Windows + VisualGDB development workflow

What's Not Supported (Planned for Future)

  • ✗ Linux/Mac hosts (Windows only currently)
  • ✗ USB/VCP (UART required currently, USB planned)
  • ✗ SWD interface (Cortex-M only, not applicable to MSP430)
  • ✗ Spy-Bi-Wire (MSP430 2-wire, future work)
  • ✗ High-speed programming (limited to 2.25 MHz)
  • ✗ Real-time tracing/SWO

Part 8: FAQ

Q: Do I need two USB connections?

A: Yes, currently (Alpha stage):

  • USB 1: ST-Link debugger (JTAG) - Mini-B connector
  • USB 2: UART serial adapter (GDB commands) - USB-to-Serial converter

Future USB/VCP support will combine both into a single USB connection.

Q: Can I use a different serial adapter?

A: Yes! Any USB-to-Serial adapter works:

  • CH340 ($1-2, most common)
  • FT232RL ($5-10, more reliable)
  • CP2102 ($2-3, good alternative)
  • Built-in laptop serial port (if you have one)

Just connect: Adapter TX → Target RX, Adapter RX → Target TX, GND → GND

Q: Can I use TI Code Composer Studio?

A: Not directly. CCS expects TI-specific debuggers. Options:

  1. Use GDB (this guide) for debugging
  2. Use CCS simulator (no hardware required)
  3. Program flash via GDB, debug in simulator

Q: Will this damage my ST-Link?

A: Unlikely. The ST-Link is robust and designed for JTAG use. As long as you:

  • Match voltage levels (3.3V only)
  • Don't apply reverse voltage
  • Don't short pins

...it will survive indefinitely.

Q: Can I use 5V MSP430 targets?

A: Partially:

  • Inputs (JTDI, JTCK, JTMS, RST) - 3.3V acceptable (5V-tolerant)
  • Output (JTDO) - May need level shifter
  • Best: Use target's 3.3V supply if available

Q: Why 2.25 Mbps and not faster?

A: DMA arbitration on split GPIO ports limits speed. See STLINKV2-Repurposing.md Part 5 for technical explanation.

Q: Is this compatible with Black Magic Probe tools?

A: Yes! The firmware implements the BMP GDB remote protocol. Any BMP-compatible tool works.

Q: Can I modify the firmware?

A: Yes. The project is open-source. See STLINKV2-Repurposing.md Part 10 for optimization ideas.


Part 9: Next Steps

Getting Started

  1. ✓ Build firmware (Part 2)
  2. ✓ Connect hardware (Part 1)
  3. ✓ Test connection (Part 3)
  4. ✓ Debug with GDB (Part 4)

Learning More

  • Technical details: See STLINKV2-Repurposing.md
  • Design analysis: See REAL-TIMING-DIAGRAMS.md
  • SVG timing diagrams: See JTAG_Timing_Zoomed.svg
  • Navigation help: See STLINKV2-INDEX.md

Contributing

Found a bug? Want to improve speed? Have ideas?

  • File an issue on GitHub
  • See STLINKV2-Repurposing.md Part 10 for ideas
  • Read CODE_GUIDELINES.md for coding standards

Support and Resources

Resource Location
Technical reference STLINKV2-Repurposing.md
Timing diagrams JTAG_Timing_Zoomed.svg, JTAG_ShiftIR_Detailed.svg
Hardware design Hardware/STLink-Adapter/
Navigation guide STLINKV2-INDEX.md
GDB manual arm-none-eabi-gdb --help
MSP430 JTAG spec SLAU320 (Texas Instruments)

Ready to debug MSP430? You've got this! 🎯