paulober / MicroPico

MicroPico (aka Pico-W-Go) is a Visual Studio Code extension designed to simplify and speed up the development of MicroPython projects for the Raspberry Pi Pico and Pico W boards.
https://marketplace.visualstudio.com/items?itemName=paulober.pico-w-go
Mozilla Public License 2.0
279 stars 25 forks source link
micropython micropython-rpi-pico raspberry-pi-pico raspberry-pi-pico-w vscode

MicroPico Visual Studio Code Extension (aka Pico-W-Go)

New Feature: Experimental ESP32-WROOM, ESP32-C3, ESP32-S3, ESP32-S3-Pico and Teensy 4.0 support! (Use the Switch Stubs command to get auto-completion for the ESP32 port of MicroPython.)

MicroPico is a Visual Studio Code extension designed to simplify and accelerate the development of MicroPython projects for the Raspberry Pi Pico and Pico W boards. This tool streamlines the coding process, providing code highlighting, auto-completion, code snippets, and project management features, all tailored for the seamless development experience with MicroPython on Raspberry Pi Pico and Pico W microcontrollers.

Included auto-completion based on Raspberry Pi Pico W MicroPython firmware: RPI_PICO_W-20240602-v1.23.0.uf2 from the micropython-stubs project

Works with: Platform x86 arm64 armhf
Windows ⚠️
macOS
Linux ⚠️

⚠️ Included but unsupported

Features

Preview

Requirements

Visual Studio Code extensions:

Environment (Linux only):

On most Linux installations the device file of the Pico serial port is owned by root and a group you normal don't have by default (except on Raspberry Pi OS). This leads to timeout and access denied errors when MicroPico tries to connect to the Pico. There are three ways how to solve this problem:

Getting started

from machine import Pin
from utime import sleep

pin = Pin("LED", Pin.OUT)

print("LED starts flashing...")
while True:
    try:
        pin.toggle()
        sleep(1) # sleep 1sec
    except KeyboardInterrupt:
        break
pin.off()
print("Finished.")

Extension Settings

This extension contributes the following settings:

Extension Context Keys


Note