FEATURES.md

July 12, 2026 ยท View on GitHub

Detailed Feature Readout

Free Features

File System Widget

  • Easily view and interact with the device's file system in a dedicated tool window
  • Upload to or reorganize the file system via drag and drop
  • Supports mounted volumes (such as SD cards) and displays storage usage for each mount point
  • Create new files or directories directly on the device
  • Full copy/cut/paste support (project to device and device to device)
  • Download files from the device to your project
  • Open and edit on-device files with save-to-device functionality
View File System Widget screenshot

File System Widget

View File System Context Menu screenshot

File System Widget Context Menu

View File System Edit File screenshot

File System Widget Edit File

REPL Widget

  • Full MicroPython REPL integration in a dedicated tool window
  • All keyboard shortcuts are passed through to the device (Raw REPL, Paste mode, soft reset, interrupt)
  • Toolbar actions for common operations (soft/hard reset, interrupt, clear)
  • Optional auto-clear to prevent terminal clutter
View REPL Widget screenshot

REPL Widget

Uploads and Synchronization

  • Multiple upload methods: context menu actions, drag and drop, or run configurations
  • Smart upload: already uploaded files are automatically skipped using CRC32 calculations
  • Upload preview dialog shows exactly how the file system will look after the upload operation
  • Synchronization mode to mirror your project structure on the device (removes extra files)
View Upload Preview screenshot

Upload Preview

Firmware Flashing

  • Flash MicroPython firmware directly from the IDE with real-time progress output
  • Supports ESP, RP2 and SAMD devices
  • Automatic firmware download from micropython.org or use local firmware files
  • Configurable erase flash option (with universal flash nuke support for RP2 boards)
  • Accessible through the plugin settings or file system widget when no device is connected
View Firmware Flashing Dialog screenshot

Firmware Flashing

Run Configurations

Multiple run configuration types for different workflows:

  • Upload: Select what gets uploaded (entire project, specific MicroPython Sources Roots, or custom paths)
    • Synchronize device file system to only contain uploaded files and folders
    • Exclude on-device paths from synchronization (e.g., logs, OTA directories, persistent config files)
    • Reset device and switch to REPL tab on success
View Upload Run Configuration screenshot

Upload Run Configuration

  • Execute in REPL: Run .py or .mpy files directly in REPL without uploading to the device
    • Execute entire files or just selected code fragments
    • Perfect for testing without modifying the device file system
View Execute in REPL Run Configuration screenshot

Execute in REPL Run Configuration

View Execute Code Fragment screenshot

Execute Code Fragment in REPL

MicroPython Stubs Package Manager

  • Built-in package manager for Jos Verlinde's MicroPython stubs
  • Install and apply stubs on-demand for your specific board and MicroPython version
  • Automatic update notifications when newer stub versions are available
  • Visual table showing installed, available, and selected packages
View Settings screenshot

Settings

Context Menu Actions

  • Quick upload actions: upload to device root, relative to project, or relative to MicroPython Sources Root
  • Execute file or code fragment in REPL directly from the editor
  • Custom "Mark as MicroPython Sources Root" action for better IDE compatibility across JetBrains products
View File Context Menu Actions screenshot

Context Menu File Actions

View MicroPython Sources Root Action screenshot

Context Menu MicroPython Sources Actions

Pro Features

Background Uploads and Downloads

  • Upload and download operations run in the background without blocking the IDE
  • Continue coding while large file transfers are in progress
  • Progress reporting in the IDE's background tasks manager
View Background Progress screenshot

Background Progress

Automatic File Compression

  • Files are automatically compressed before upload to significantly speed up transfers
  • Improves communication stability by reducing the amount of data transmitted
  • Transparent compression/decompression on both sides
View Upload Preview with Compression screenshot

Upload Preview with Compression

mpy-cross Run Configuration

  • Compile Python files to MicroPython bytecode (.mpy) directly from the IDE
  • Automatic detection of bytecode version and architecture for the connected board
  • Supports custom compilation flags and options
View mpy-cross Run Configuration screenshot

mpy-cross Run Configuration

.mpy File Analyzer

  • View detailed information about compiled .mpy files
  • Inspect bytecode version, architecture, and other metadata
  • Helps troubleshoot compatibility issues
View .mpy File Analyzer screenshot

.mpy File Analyzer