Raspberry Pi Pico support for VS Code

Related tags

HardwarePico-Go
Overview

Pico-Go VS Code Extension

Pico-Go provides code auto-completion and allows you to communicate with your Raspberry Pi Pico board using the built-in REPL console. Run a single file on your board, sync your entire project or directly type and execute commands.

This software is originally a derivative product of Pymakr by Pycom Ltd under the terms of its GNU GPL Version 3+ license but it has now received significant rewrites. Non-RP2040 boards are not supported but may still work.

  • Works with macOS, Linux, and Windows.
  • Connects to the Raspberry Pi Pico board.

Terminal

To find out what's new, take a look at the changelog.

Dependencies

  • Python 3 installed on your system and in your PATH.

Getting Started

Have the onboard LED flashing in under 5 minutes by following the Quick Start guide over on the Pico-Go web site.

Comments
  • Fixed arrow keys issue (Windows)

    Fixed arrow keys issue (Windows)

    Whenever the arrow keys were pressed, there was an error and the extension crashed. I fixed it, sending the correct key to the pico board so that the functionality works fine!

    Does this close any currently open issues?

    It fixes issues: #115, #105 and #77

    Any relevant logs, error output, etc?

    (If it’s long, please paste to https://gist.github.com and insert the link here)

    Where has this been tested?

    Operating system: Windows and Mac

    opened by tofylion 1
  • Use vendorId if manufacturer string is null to allow auto connect

    Use vendorId if manufacturer string is null to allow auto connect

    Hi Chris, thanks a lot for your adaption of mymakr to Pi Pico.

    I found out, that I can use it also for other boards, f.e. ESP32 and ESP6288 as long as they don't use a CH340 chip for Serial-USB. These chips (at least sometimes) have no manufacturer string and are not accepted for auto connect.

    What does this implement/fix? Explain your changes.

    I changed one line of code: If there is no manufacturer string then I take the vendorId to look it up in the list autoconnect_comport_manufacturers.

    Does this close any currently open issues?

    No

    Where has this been tested?

    I tested it with witty and ttgo boards.

    opened by schilken 1
  • Fix error :

    Fix error : "TypeError: this.statusbar_buttons.push is not a function"

    What does this implement/fix? Explain your changes.

    When activating Pico-Go extension, the extension throw an error. To prevent this I have change the check from :

        if (this.statusbar_buttons == undefined || this.statusbar_buttons == '') {
              this.statusbar_buttons = ['status', 'connect', 'upload', 'download',
                'run', 'softreset'
              ];
        }
    

    to :

        if (!Array.isArray(typeof this.statusbar_buttons)) {
          this.statusbar_buttons = ['status', 'connect', 'upload', 'download',
            'run', 'softreset'
          ];
        }
    

    Does this close any currently open issues?

    Close #113

    Any relevant logs, error output, etc?

    Capture d’écran 2022-01-12 à 09 18 22

    Any other comments?

    Where has this been tested?

    Tested in VSC debugger.

    Operating system: macOS Monterey 12.1

    VSCode version: 1.63.2

    Pico-Go version: 1.4.3

    opened by haflinger 0
  • Fix occasional BlockingIOError in MacOS

    Fix occasional BlockingIOError in MacOS

    What does this implement/fix? Explain your changes.

    In Terminal Window connected to pico, when I type help(), I was having BlockingIOError.

    Checked the code and found no reason to use O_NONBLOCK for stdout. Having no problem without O_NONBLOCK so far.

    Does this close any currently open issues?

    No.

    Any relevant logs, error output, etc?

    (If it’s long, please paste to https://gist.github.com and insert the link here) This is the error I was having, in the middle of help() output screen.

    Traceback (most recent call last): File "/Users/yjchun/conda/lib/python3.9/threading.py", line 954, in _bootstrap_inner self.run() File "/Users/yjchun/conda/lib/python3.9/threading.py", line 892, in run self._target(*self._args, **self._kwargs) File "/Users/yjchun/.vscode/extensions/chriswood.pico-go-1.4.3/terminalExec.py", line 127, in runServer serviceConnection(key, mask) File "/Users/yjchun/.vscode/extensions/chriswood.pico-go-1.4.3/terminalExec.py", line 47, in serviceConnection boardInput(recv_data) File "/Users/yjchun/.vscode/extensions/chriswood.pico-go-1.4.3/terminalExec.py", line 85, in boardInput sys.stdout.write(data.decode("utf-8")) BlockingIOError: [Errno 35] write could not complete without blocking

    Any other comments?

    Where has this been tested?

    Pico-Go:      1.4.3
    VS Code:      1.59.1
    Electron:     13.1.7
    Modules:      89
    Node:         14.16.0
    Platform:     darwin
    Architecture: x64
    Board:        Raspberry Pi Pico with RP2040
    Firmware:     v1.16-262-g89145c6aa on 2021-09-01 (GNU 9.3.1 MinSizeRel)
    
    opened by yjchun 0
  • Feature/async await

    Feature/async await

    What does this implement/fix? Explain your changes.

    • Uses ES6 Javascript throughout;
    • Removed callback spaghetti;
    • Removed redundant code;
    • Refactored serial comms code code;
    • Normalised naming conventions to PascalCase for classes and camelCase for methods and variables;
    • Uses let and const instead of var;
    • Semi-colons now used throughout;
    • Generally beautified code.

    Does this close any currently open issues?

    Fixes #35

    enhancement 
    opened by cpwood 0
Releases(v1.4.3)
Owner
Chris Wood
Chris Wood
Toy robot that traverses on a finite surface

Toy Robot Challenge - Release Notes November 12, 2021 New features Initialisation - Users can set the home position and heading of the robot. Position

Ze Fei Teo 0 Feb 03, 2022
Ha-rpi gpio - Home Assistant Raspberry Pi GPIO Integration

Home Assistant Raspberry Pi GPIO custom integration This is a spin-off from the

Shay Levy 98 Dec 24, 2022
Unofficial Playdate reverse-engineering notes/tools - covers file formats, server API and USB commands

Unofficial Playdate reverse-engineering notes/tools - covers file formats, server API and USB commands ⚠️ This documentation is unofficial and is not

James 106 Dec 31, 2022
This repository hosts the code for Stanford Pupper and Stanford Woofer, Raspberry Pi-based quadruped robots that can trot, walk, and jump.

This repository hosts the code for Stanford Pupper and Stanford Woofer, Raspberry Pi-based quadruped robots that can trot, walk, and jump.

Stanford Student Robotics 1.2k Dec 25, 2022
Smart EQ connect - Custom Integration for Home Assistant

Smart EQ Connect platform as a Custom Component for Home Assistant.

Rene Nulsch 2 Jan 04, 2022
A python script for macOS to enable scrolling with the 3M ergonomic mouse EM500GPS in any application.

A python script for macOS to enable scrolling with the 3M ergonomic mouse EM500GPS in any application.

3 Feb 19, 2022
What if home automation was homoiconic? Just transformations of data? No more YAML!

radiale what if home-automation was also homoiconic? The upper or proximal row contains three bones, to which Gegenbaur has applied the terms radiale,

Felix Barbalet 21 Mar 26, 2022
Controlling fireworks with micropython

Controlling-fireworks-with-micropython How the code works line 1-4 from machine

Montso Mokake 1 Jan 08, 2022
ok-system-helper是一个简单的系统硬件的实时信息收集工具,使用python3.x开发

ok-system-helper ok-system-helper是一个简单的系统硬件的实时信息收集工具,使用python3.x开发,支持哪些硬件:CPU、内存、SWAP、磁盘、网卡流量。用户可在自己的项目中直接引入、开箱即用,或者结合flask等web框架轻松做成http接口供前端调用,亦可通过注

xlvchao 1 Feb 08, 2022
A circle of LEDs

This repository contains all the design files, production files and example code for a simple circular LED display.

Pim de Groot 15 Aug 21, 2022
E-Ink Magic Calendar that automatically syncs to Google Calendar and runs off a battery powered Raspberry Pi Zero

E-Ink Magic Calendar that automatically syncs to Google Calendar and runs off a battery powered Raspberry Pi Zero

2.8k Dec 30, 2022
A DiY holiday project to demonstrate how you can send data from adafruitIO cloud to a balena edge device

holiday-star balena ❤️ adafruitIO Introduction A DiY holiday project to demonstrate how you can send data from adafruitIO cloud to a balena edge devic

Ayan Pahwa 3 Dec 20, 2021
Doughskript interpreter for converting simple command sequences into executable Arduino C++ code.

Doughskript interpreter for converting simple command sequences into executable Arduino C++ code.

Svjatoslav 2 Jan 11, 2022
Activate Numpad inside the touchpad with top right corner switch or F8 key

This is a python service which enables switching between numpad and touchpad for the Asus UX433. It may work for other models.

Mohamed Badaoui 230 Jan 08, 2023
A simple program to make MSI Modern 15 speaker and microphone mute led work.

MSI Modern 15 sound led fixup for linux A simple program to fix the MSI Modern 15 speaker and microphone mute LEDs. Installation Requirements pulsectl

Seyed Danial Movahed 4 Oct 18, 2022
Software framework to enable agile robotic assembly applications.

ConnTact Software framework to enable agile robotic assembly applications. (Connect + Tactile) Overview Installation Development of framework was done

Southwest Research Institute Robotics 29 Dec 01, 2022
A Macropad using the Raspberry Pi Pico, programmed with CircuitPython.

A Macropad using the Raspberry Pi Pico, programmed with CircuitPython.

15 Oct 14, 2022
circuitpython version of PyBasic for microcontrollers

cPyBasic Circuitpython version of PyBasic for microcontrollers Current version work only for Adafruit titano & CardKB for now. The origninal PyBasic w

BeBoXoS 3 Nov 14, 2021
Iec62056-21-mqtt - Publish DSMR P1 telegrams acquired over IEC62056-21 to MQTT

IEC 62056-21 Publish DSMR P1 telegrams acquired over IEC62056-21 to MQTT. -21 is

Marijn Suijten 1 Jun 05, 2022
A modular sequencer based on Pi Pico & EuroPi

PicoSequencer A modular sequencer based on Pi Pico & EuroPi by Zeno Van Moerkerke / Keurslager Kurt For now it is 'only' a trigger sequencer, but I si

5 Oct 27, 2022