Skip to content

lukaskremla/micropython-tools-jetbrains

Repository files navigation

MicroPython Tools Plugin for PyCharm, CLion, IntelliJ and other JetBrains IDEs

JetBrains IntelliJ Downloads JetBrains IntelliJ Rating Reviews

Translations: English | Simplified Chinese (简体中文)

This plugin brings MicroPython support into JetBrains IDEs. It provides reliable device file system integration, REPL support, stub package management, and smooth workflows for developing both hobbyist and professional MicroPython projects.

Originally inspired by JetBrains’ MicroPython plugin, this project has since been fully reworked and expanded into a standalone tool. Credit to Jos Verlinde for creating and maintaining the stubs used here, and to Ilia Motornyi and Andrey Vlasovskikh for their work on the original plugin.

Installation & Docs: Usage tips and documentation are available here.

Features

File System Widget

  • Easily view and interact with the device's file system
  • Upload to or reorganize the file system via drag and drop
  • Supports mounted volumes (such as SD cards) and displays storage usage File System Widget

File System Actions

  • Create new files or directories
  • Fully working copy/cut/paste actions (project to device and device to device only)
  • Download source code from the device
  • Open and edit on-device files File System Widget Context Menu
  • Edit or refresh the currently open on-device file File System Widget Edit File

REPL Widget

  • Interact with the MicroPython REPL
  • All keyboard shortcuts are passed to the device as well (Raw REPL, Paste mode, etc.) REPL Widget

Uploads

  • Items can be uploaded via context menu actions, drag and drop, or run configurations
  • Already uploaded files are automatically skipped using CRC32 calculations
  • Upload preview dialog that shows how the file system will look after the upload operation Upload Preview

Run Configurations

  • Upload

    • Comfortably select what gets uploaded
    • Synchronize device file system to only contain uploaded files and folders
    • Exclude on-device paths from synchronization Upload Run Configuration
  • Execute in REPL

    • Execute a ".py", ".mpy" file or selected code selections in REPL without uploading anything to the device Execute in REPL Run Configuration Execute Code Fragment in REPL

MicroPython Stubs

  • Built-in stubs management Integrates all available MicroPython stubs packages by Jos Verlinde

Settings

MicroPython Stubs

  • Install and apply MicroPython stubs by Jos Verlinde on-demand
  • The plugin automatically tracks the stubs versions and prompts you when an update is available

Settings

Context Menu Actions

  • Quickly upload or execute selected files Context Menu File Actions
  • Custom "Mark as MicroPython Sources Root" action that allows compatibility with most JetBrains IDEs Context Menu MicroPython Sources Actions

Requirements

  • A valid Python interpreter 3.10+
  • Python Community plugin (For non-PyCharm IDEs)
  • A development board with MicroPython installed (version 1.20+)

This plugin is licensed under the terms of the Apache 2 license.