{"id":27688973,"url":"https://github.com/wmerkens/vscode-circuitpython","last_synced_at":"2025-04-25T10:04:19.884Z","repository":{"id":264244089,"uuid":"892556047","full_name":"wmerkens/vscode-circuitpython","owner":"wmerkens","description":"Updated version of joedevivo/vscode-circuitpython ","archived":false,"fork":false,"pushed_at":"2025-01-21T00:54:59.000Z","size":5911,"stargazers_count":23,"open_issues_count":2,"forks_count":1,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-01-21T01:25:53.368Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wmerkens.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":null},"created_at":"2024-11-22T10:39:26.000Z","updated_at":"2025-01-21T00:39:49.000Z","dependencies_parsed_at":"2024-11-25T15:15:50.936Z","dependency_job_id":"189d6413-59d8-4733-af68-be4fdf187e3b","html_url":"https://github.com/wmerkens/vscode-circuitpython","commit_stats":null,"previous_names":["wmerkens/vscode-circuitpython"],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wmerkens%2Fvscode-circuitpython","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wmerkens%2Fvscode-circuitpython/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wmerkens%2Fvscode-circuitpython/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wmerkens%2Fvscode-circuitpython/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wmerkens","download_url":"https://codeload.github.com/wmerkens/vscode-circuitpython/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250796311,"owners_count":21488706,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-04-25T10:01:45.646Z","updated_at":"2025-04-25T10:04:19.868Z","avatar_url":"https://github.com/wmerkens.png","language":"TypeScript","readme":"# vscode-circuitpython V2 README\n\nThis extension aspires to bring your entire CircuitPython workflow into a single\nplace in VSCode.\n\nInspired by [Scott Hanselman's blog\npost](https://www.hanselman.com/blog/UsingVisualStudioCodeToProgramCircuitPythonWithAnAdaFruitNeoTrellisM4.aspx)\nand the [VSCode Arduino extension](https://github.com/Microsoft/vscode-arduino).\n\nI have forked the original extension in order to apply fixes\n\nNote: If updating and opening an existing CIRCUITPY folder, please re-select the board from the list. Please let me know if a board needs to be included. The metadata.json file contains 550 boards, 8 of which have yet to be released or have unknown manufacturers.\n\nNew: If you are using Cursor AI, use CircuitPython V2 Cursor AI version of the extension \n\n## Getting Started\n\nThe extension will currently activate when any of the following occurs:\n\n* workspace contains\n  * `/code.py`\n  * `/code.txt`\n  * `/main.py`\n  * `/main.txt`\n  * `/boot_out.txt`\n* command run\n  * `circuitpython.openSerialMonitor`\n  * `circuitpython.selectSerialPort`\n  * `circuitpython.closeSerialMonitor`\n\nUpon activation, the extension will check for the latest\n[Adafruit_CircuitPython_Bundle](https://github.com/adafruit/Adafruit_CircuitPython_Bundle)\nand download it if needed. It'll then load that library metadata into the\nworkspace's state. You can also trigger this manually with `CircuitPython: Check\nfor latest bundle`.\n\nAfter that, you should be ready to use the following features.\n\n## Features\n\n### Library Management\n\nv0.0.2 introduced a [Circup](https://github.com/adafruit/circup) inspired\nlibrary manager with an emphasis on VSCode integration. It downloads new\nbundles automatically.\n\nYou can use it with the following commands:\n\n* `CircuitPython: Show Available Libraries`\n  This is every library in the Adafruit Bundle. Alphabetical but \n  installed libraries are grouped at the top. Click an out-of-date library \n  to update, click an uninstalled library to install it.\n* `CircuitPython: List Project Libraries`\n  Lists what's in your project's lib. If anything needs to be updated, click \n  it to update.\n* `CircuitPython: Reload Project Libraries` \n  In case it's reporting incorrectly. This can happen if you modify the \n  filesystem outside of vscode.\n* `CircuitPython: Update All Libraries`\n  The equivalent of `circup update --all`\n* `CircuitPython: Check for the latest bundle.`\n  Compares the bundle on disk to the latest github release, downloads the \n  release if it's newer.\n\n### Serial Console\n\n`Circuit Python: Open Serial Console` will prompt you for a serial port to\nconnect to, and then it will display the serial output from the board attached to\nthat port. The port can be changed by clicking on its path in the status bar.\n\nHit `Ctrl-C` and any key to enter the Circuit Python REPL, and `Ctrl-D` to\nreload.\n\nNote: There are Linux permissions issues with the serial console, but if you're\non Linux, you're probably used to that.\n\nIt will also change your workspace's default `board.pyi` file for autocomplete\nto the one that matches the USB Vendor ID \u0026 Product ID.\n\nIf you want to choose a different board manually, a list is available with the\ncommand `CircuitPython: Choose CircuitPython Board,` and also by clicking on the\nboard name in the status bar.\n\n**NOTE FOR WINDOWS USERS**: I have seen trouble with the serial console\ndisplaying anything at all. If that happens, try launching VSCode as an\nadministrator and see if it works. I have even gotten it to work as a\nnon-administrator after this, so perhaps running it as an admin stole the serial\nport from whatever was using it, and then whatever it was didn't grab it again.\n\n### Auto Complete\n\nAutomatically adds stubs for your specific board, the circuitpython standard\nlibrary and all py source files in the adafruit bundle to your completion path.\n\n### Demo\n\n![Demo](images/circuitpy-demo.gif)\n\n## Requirements\n\n## Extension Settings\n\n### Board Settings\n\nBoard-specific settings can be stored in a project's `.vscode/settings.json`\nfile, which will default to this board. This is great for when opening up the\nCIRCUITPY drive as a vscode workspace will be automatically set whenever\nyou choose a board.\n\nYou can also use this for projects you're working from on disk with the intent\nof running on a specific board.\n\nYou can also set these at a user level, although that's not the primary intent.\nIf you do this, it will get overridden at the workspace level if you ever touch\nthe choose board dropdown or open a serial monitor. \n\nI would have restricted the scope to workspace if that was an option.\n\n`circuitpython.board.vid`: Vendor ID for the project's board\n`circuitpython.board.pid`: Product ID for the project's board\n`circuitpython.board.version`: Persisted in choosing the correct mpy binaries\n\n## Known Issues\n\n## Release Notes\n\nSee the [Changelog](CHANGELOG.md)\n","funding_links":[],"categories":["Frameworks"],"sub_categories":["Educational"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwmerkens%2Fvscode-circuitpython","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwmerkens%2Fvscode-circuitpython","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwmerkens%2Fvscode-circuitpython/lists"}