Metadata-Version: 2.0
Name: mpy-repl-tool
Version: 0.8
Summary: Communicate and transfer files from and to MicroyPython boards via REPL
Home-page: https://github.com/zsquareplusc/mpy-repl-tool
Author: Chris Liechti
Author-email: cliechti@gmx.net
License: BSD
Platform: any
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development :: Embedded Systems
Requires-Dist: colorama
Requires-Dist: pyserial (>=3)
Provides-Extra: mount
Requires-Dist: fusepy; extra == 'mount'

====================
 REPL Transfer Tool
====================

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


Transfer files via Python REPL (Read Eval 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 filesytem (FUSE).
- ``--interactive`` mode (terminal).
- 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] [-c COMMAND] [-i]
                      [--reset-on-connect] [--reset] [-u USER] [-w PASSWORD] [-v]
                      [--develop]
                      {detect,run,ls,hash,cat,pull,push,rm,df,mount} ...

    Do stuff via the MicroPython REPL

    positional arguments:
      {detect,run,ls,hash,cat,pull,push,rm,df,mount}
                            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 on target
        df                  Show filesytem information
        mount               Make target files accessible via FUSE

    optional arguments:
      -h, --help            show this help message and exit
      -p PORT, --port PORT  set the serial port
      -b BAUDRATE, --baudrate BAUDRATE
                            set the baud rate
      -c COMMAND, --command COMMAND
                            execute given code on target
      -i, --interactive     drop to interactive shell at the end
      --reset-on-connect    do a soft reset as first operation (main.py will not
                            me executed)
      --reset               do a soft reset on the end
      -u USER, --user USER  response to login prompt
      -w PASSWORD, --password PASSWORD
                            response to password prompt
      -v, --verbose         show diagnostic messages, repeat for more
      --develop             show tracebacks on errors (development of this tool)

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.


