Upydev Logo

Command line tool

uPydev is an acronym of ‘MicroPython device’, and it is intended to be a command line tool to make easier the development, prototyping and testing process of devices based on boards running MicroPython. It is intended to be cross-platform and connection agnostic (Serial, WiFi and Bluetooth Low Energy).


  • Tools to allow configuration, management, communication and control of MicroPython devices

  • Command line Autocompletion

  • File IO operations (upload, download one or multiple files, recursively sync directories…)

  • SHELL-REPL: Serial, WiFi (WebREPL/WebSecureREPL) and Bluetooth Low Energy

  • OTA* Firmware updates WiFi (TCP/SSL), BLE (*esp32 only)

  • Custom commands for debugging, testing and prototyping

  • Custom tasks yaml files that can be played like ansible

  • Run tests in device with pytest and parametric tests or benchmarks using yaml files

  • Group mode to operate with multiple devices


Install upydev by running:

$ pip install upydev

To update to the latest version available:

$ pip install --upgrade upydev

To get development version:

$ pip install https://github.com/Carglglz/upydev/tree/develop.zip

To get help, use h or help command :

$ upydev help

Or see help about a specific command $ upydev [COMMAND] -h:

$ upydev put -h
usage:  put [-h] [-dir DIR] [-rst] file/pattern/dir [file/pattern/dir ...]

upload files to device

positional arguments:
  file/pattern/dir  indicate a file/pattern/dir to upload

optional arguments:
  -h, --help        show this help message and exit
  -dir DIR          path to upload to
  -rst              to soft reset after upload