Skip to main content

Communicate and transfer files from and to MicroyPython boards via REPL

Project description

docs: https://mpy-repl-tool.readthedocs.io/en/latest

Transfer files via Python REPL (Read Evaluate Print Loop). This tool was developed to transfer files from and to MicroPython boards.

This is yet an other tool, there are now several similar tools but not all have the same features.

Key features of this one:

  • detect serial ports and MicroPython boards.

  • run temporary scripts.

  • pull get files and directories from the target filesystem.

  • push files and directories on the target filesystem.

  • mount target as filesystem (FUSE).

  • --interactive mode (terminal).

  • set RTC

  • All of the above, and more, via the serial REPL connection to a MicroPython board.

Usage

Here is the output of python3 -m there --help:

usage: __main__.py [-h] [-p PORT] [-b BAUDRATE] [--set-rtc]
                  [--reset-on-connect] [-c COMMAND] [-i] [--reset] [-u USER]
                  [-w PASSWORD] [-v] [--develop] [--timeit]
                  ACTION ...

Do stuff via the MicroPython REPL

optional arguments:
  -h, --help            show this help message and exit

port settings:
  -p PORT, --port PORT  set the serial port
  -b BAUDRATE, --baudrate BAUDRATE
                        set the baud rate

operations before running action:
  --set-rtc             set the RTC to "now" before command is executed
  --reset-on-connect    do a soft reset as first operation (main.py will not
                        be executed)

operations after running action:
  -c COMMAND, --command COMMAND
                        execute given code on target
  --command-timeout T   timeout in seconds for --command
  -i, --interactive     drop to interactive shell at the end
  --reset               do a soft reset on the end

login:
  -u USER, --user USER  response to login prompt
  -w PASSWORD, --password PASSWORD
                        response to password prompt

diagnostics:
  -v, --verbose         show diagnostic messages, repeat for more
  --develop             show tracebacks on errors (development of this tool)
  --timeit              measure command run time

subcommands:
  use "__main__.py ACTION --help" for more on each sub-command

  ACTION                sub-command help
    detect              help locating a board
    run                 execute file contents on target
    ls                  list files
    hash                hash files
    cat                 print contents of one file
    pull                file(s) to copy from target
    push                file(s) to copy onto target
    rm                  remove files from target
    df                  Show filesystem information
    mount               Make target files accessible via FUSE
    rtc                 Read the real time clock (RTC)

The -c option executes the given string after running all the actions. The -i option enters a miniterm session at the end of all other actions.

The tool automatically selects a USB port for communication, it may take the wrong one if multiple USB serial devices are connected. In that case, use there detect to list all devices and then -p PORT to specify the port to use on the other calls.

Use python3 -m there <action> --help to get help on sub-commands.

Requirements

This tool requires Python 3.

It depends on pySerial for communication and the mount function requires fusepy. Those dependencies are automatically installed when using pip, see installation notes in documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mpy-repl-tool-0.13.tar.gz (44.2 kB view details)

Uploaded Source

Built Distribution

mpy_repl_tool-0.13-py3-none-any.whl (32.7 kB view details)

Uploaded Python 3

File details

Details for the file mpy-repl-tool-0.13.tar.gz.

File metadata

  • Download URL: mpy-repl-tool-0.13.tar.gz
  • Upload date:
  • Size: 44.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for mpy-repl-tool-0.13.tar.gz
Algorithm Hash digest
SHA256 713bb1ed19a50ebbdfbce42b48f189f09394b02e9e1c46652633bd7c4b18d373
MD5 2ef2861d1630a5314de87c83dfda2ad5
BLAKE2b-256 446c7b90f0db24cb83964dca4832af5c969722feff108c479fa8185a225d88e2

See more details on using hashes here.

File details

Details for the file mpy_repl_tool-0.13-py3-none-any.whl.

File metadata

  • Download URL: mpy_repl_tool-0.13-py3-none-any.whl
  • Upload date:
  • Size: 32.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for mpy_repl_tool-0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 87a3025cf1f8b19262fa78c12bca88c4ed6beeb89c20cc54f3f2603ec56cefbd
MD5 2d9fe177062e6ae0c814ed600c406f8a
BLAKE2b-256 6118776a420449d69ae9582e9456ec55d72e40416e1af91508a1ade163d96f26

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page