{"id":13765171,"url":"https://github.com/gepd/uPiotMicroPythonTool","last_synced_at":"2025-05-10T20:31:44.181Z","repository":{"id":107324024,"uuid":"108496648","full_name":"gepd/uPiotMicroPythonTool","owner":"gepd","description":"MicroPython Sublime Text Plugin","archived":false,"fork":false,"pushed_at":"2018-02-20T16:49:30.000Z","size":2485,"stargazers_count":29,"open_issues_count":6,"forks_count":6,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2025-04-30T21:40:19.907Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/gepd.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-10-27T03:48:37.000Z","updated_at":"2024-07-10T01:07:08.000Z","dependencies_parsed_at":null,"dependency_job_id":"c0e91bd9-375c-4457-b2a4-83447e64c0d1","html_url":"https://github.com/gepd/uPiotMicroPythonTool","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gepd%2FuPiotMicroPythonTool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gepd%2FuPiotMicroPythonTool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gepd%2FuPiotMicroPythonTool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gepd%2FuPiotMicroPythonTool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gepd","download_url":"https://codeload.github.com/gepd/uPiotMicroPythonTool/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253480523,"owners_count":21915249,"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":"2024-08-03T16:00:35.045Z","updated_at":"2025-05-10T20:31:39.164Z","avatar_url":"https://github.com/gepd.png","language":"Python","funding_links":[],"categories":["Plugins"],"sub_categories":["Un-Officially Supported Boards"],"readme":"\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/gepd/uPiot-MicroPython-Tool/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/release/gepd/uPiot-MicroPython-Tool.svg?maxAge=3600\u0026style=flat-square\" alt=\"Release\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://packagecontrol.io/packages/uPiot-MicroPython-Tool\"\u003e\u003cimg src=\"https://img.shields.io/packagecontrol/dt/uPiot-MicroPython-Tool).svg?maxAge=3600\u0026style=flat-square\" alt=\"Downloads\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/gepd/uPiot-MicroPython-Tool/blob/master/LICENCE\"\u003e\u003cimg src=\"https://img.shields.io/badge/Licence-%20MIT-green.svg?maxAge=3600\u0026style=flat-square\" alt=\"Licence\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://gratipay.com/~gepd/\"\u003e\u003cimg src=\"https://img.shields.io/badge/donate-uPiot-red.svg?maxAge=3600\u0026style=flat-square\" alt=\"Donate\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n# uPiot - MicroPython Tool\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"docs/upiot_main.png\"\u003e\n    \u003cp align=\"center\" style=\"font-size: 9pt\"\u003eSublime theme used: \u003ca href=\"https://github.com/ihodev/sublime-boxy\"\u003eBoxy\u003c/a\u003e\u003c/p\u003e\n\u003c/p\u003e\n\n---\n\n\n\u003e **uPiot** is an experiment to make the work with uPython (micropython) a little bit easier. It uses an modified version of [ampy](https://github.com/adafruit/ampy/) called `sampy` (Sublime + ampy) to comunicate with the device and [pyserial](https://github.com/pyserial/pyserial) to listen for changes. You can also burn the firmware direct from Sublime Text without any extra tool.\n\u003e\n\n**THIS PLUGIN IS IN ALPHA STATE, SO YOU MAY FIND SOME BUGS HANGING AROUND. HELP ME TO IMPROVING IT OPENING A ISSUE WITH YOUR REPPORT OR WITH A PR.**\n\n# Features\n\n* Built-in fuction to burn MicroPython firmware.\n* Manage your files in your device (get, list, run, make-remove, folders/files)\n* Realtime output, even with loops \n\n# Setup\n\nuPiot is not yet in the Package control, so you may need an extra step to install it.\n\n1. Go to `Preferences \u003e Package Package Control \u003e Add Repository` \n\n* Paste https://rawgit.com/gepd/uPiot-MicroPython-Tool/master/repository.json\n\n2. Press `ctrl+shift+p` or go to `ST Menu \u003e Preferences \u003e Package Control` and select the option `Package Control: Install Package`\n\n3. Search for `upiot` and install it.\n\n\n# Getting Started\n\nUse the shortcut `ctrl+alt+m` to see all available uPiot options in the command menu.\n\n**Burn the firmware**\n\n\u003cimg src=\"docs/download_firmware.gif\" width=\"85%\"\u003e\n\n1. From the command menu select `UPIOT: Download Firmware`\n\n2. Go to http://micropython.org/download and copy the link of the `esp8266` or `esp32` firmware (I've tried the plugin only in this boards) and paste it in the input panel in Sublime Text. \n\n* It will start to download the file (you will see the download progress in the status bar)\n\n\u003cimg src=\"docs/burn_firmware.gif\" width=\"85%\"\u003e\n\n3. After the download is finished opens the command menu again and select `UPIOT: Burn Firmware`. \n\n* Selects the serial port if it ask for one, the board used and the firmware previously downloaded. \n\n* You'll see the message `Do you want to erase the flash memory?`, if it's your first time burning micropython, select yes.\n\nWhen it is finished, you will be ready to use micropython in your device.\n\n---\n\n**Using micropython**\n\n\u003cimg src=\"docs/console_hello_world.gif\" width=\"85%\"\u003e\n\nTo use micropython opens the console with the option `UPIOT: Open Console` (from the command menu). In the input panel paste `print(\"Hello world from uPiot\")`. If everything is fine you will see `Hello world from uPiot`\n\n\u003e Micropython try to run `main.py` each time your board is powered on (or reseted), when you don't have this file you will see `OSError: [Errno 2] ENOENT: main.py` in the output. \n\n\u003cimg src=\"docs/run_current_file.gif\" width=\"85%\"\u003e\n\nMake a new file and save it as `main.py`, writes `print(\"Hello world from uPiot\")` on it and send it to your device with the command `UPIOT: Put Current File` (You can use `UPIOT: Run Current File` in case you want to test it first) after it finished, restart your board; the error won't be there and you should see the `Hello world from uPiot` in the output.\n\n\u003cimg src=\"docs/put_current_file.gif\" width=\"85%\"\u003e\n\n# Commands\n\nThat are the current list of commands availables in the console.\n\n\u003cimg src=\"docs/sampy_example.gif\" width=\"85%\"\u003e\n\nUsage: `sampy COMMAND [ARGS]`\n\n| Command | Description |\n----------|-------------|\n|**ls**|List the contens on the board|\n|**run** file_name|Run a script and print it's output|\n|**get** file_name|Retrieve a file from the board|\n|**put** file_name|Put a file or folder and its contents on the board|\n|**rm** file_name|Remove a file from the board|\n|**mkdir** folder_name|Create a directory on the board|\n|**rmdir** folder_name|Forcefully remove a folder and all its content from board|\n|**reset**|Perform soft reset/reboot of the board|\n|**--close**|Closes the connection between the console and the serial port|\n|**--help**|Shows this information|\n\n\u003e Note that if you don't write prefix 'sampy' in the console the string will be sent as a raw text to the device (with the `\\r\\n` ending)\n\nList of options available in the command menu. (`ctrl+alt+m`)\n\n|Option|Description|\n|------|-----------|\n|Burn Firmware|Burn a micropython firmware in the selected device. [Read More](#burn-the-firmware)|\n|Download Firmware|Download a firmware from http://micropython.org/download and store it in your machine. This file will be used with the `Burn Firmware` option|\n|List Files in Device|Shows all file in the device|\n|Erase Flash|Erase the memory flash of your device. You will be promt to erase the memory flash of your device before burn the firmware|\n|Make Folder|Make a folder in the selected device (you can choose the device from `Select Serial Port`)|\n|Open Console|Opens the console to interact with the device, before open it selec the device in`Select Serial Port`|\n|Put File|Puts the given file in the device. You need to give it the absolute path to this option work|\n|Remove File|Removes the given file in the device|\n|Remove Folder|Removes a folder from the device|\n|Put Current File|Puts the focused file your device|\n|Run Current File|Runs the focused file your device|\n|Select Serial Port|Selects the serial port to be used in the Console or `Burn Firmware` command|\n|Cancel (Ctrl + C)|Sends a cancel string to the open serial port (\\x03)|\n|Write in Console|Sends an string through the serial port. You can also use the [Console commands]|\n|Sync File From Device|Search all files in your device and save it in the given location|\n|Help|Opens this github|\n\n\n## Shortcuts\n\nAt this moment, there is 4 importantant shorcuts:\n\n* `ctrl+alt+m` Opens the command menu to see all options availables in uPiot\n* `ctrl+alt+o` Opents the uPiot console\n* `ctrl+alt+r` Runs the current file\n* `ctrl+alt+p` Puts the current file\n* `ctrl+shift+c` Sends a cancel string to the open serial port (\\x03)\n\nI haven't test the shortcuts in all platforms, if you have any problem [open a issue](https://github.com/gepd/uPiot-MicroPython-Tool/issues)\n\n## Donate\n\nSupport the open source!. If you liked this plugin, and you want to make a contribution to continue its development, do it through [this link](https://gratipay.com/~gepd/). If you have any problems, or want to contact me: \u003cgepd@outlook.com\u003e\n\n\n## License\n\nCopyright 2017 GEPD \u003cgepd@outlook.com\u003e\n\nuPiot is licensed under MIT license. [Read](https://github.com/gepd/upiot/blob/master/LICENCE) the full License file.\n\n\u003e Note that may be some dependencies under a different license\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgepd%2FuPiotMicroPythonTool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgepd%2FuPiotMicroPythonTool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgepd%2FuPiotMicroPythonTool/lists"}