MSP430 Simulator

View project onGitHub


QSimKit is cross-platform, modular, discrete MSP430 (theoretically not only MSP430) simulator. It supports various MSP430 features and external peripherals such as LED, LCD display or keyboard. QSimKit is released under GPLv2+ license.


QSimKit graphical user interface:

  • Adding peripherals written in C++ or Python
  • Connecting pins
  • Inspecting MCU memory and registers
  • Inspecting local variables
  • Stepping assembler or C code
  • Adding register-based breakpoints (simulation stops when register, for example PC, has particular value)
  • Adding memory-based breakpoints (simulation stops when byte in memory has particular value)
  • Tracking pins in oscilloscope-like view (ability to "point to instruction" which caused particular change)

MSP430 MCU module:

  • Loading ELF/A43 code and disassembling the code using msp430-objdump (only msp430-gcc supported so far)
  • All instructions implemented
  • BasicClock module supported (TimerA/TimerB support)
  • USI (only SPI so far) support
  • USCI-SPI support.
  • USART-SPI support.


  • Button
  • LCD - HD44708 (only initial support)
  • LED
  • Crystal Oscillator
  • SD Card (only initial support)