Python tools for pushing code onto a PyBoard.
Project description
pybkick
=======
Push software to a pyboard quickly, without using USB Mass Storage mode.
Rationale
---------
Pyboards are small microcomputers which can execute code written in Micropython, which is a Python3
compatible language which includes a small subset of the Python3 standard library.
The suggest way to deploy code to a PyBoard is to mount it as a USB Mass Storage device, and then edit
files directly on the device, or simply copy over the relevant files from a PC. This approach can
be problematic because if the device is reset, it can cause the Mass Storage drive to be suddenly
unmounted. At best this will cause confusion in the operating system.
Further problems can occur if the device needs to be factory reset - this will wipe the code on the device
and will require everything to be re-copied, or possibly loosing work.
In short, using USB Mass Storage mode is a real pain. It would be much simpler to have something that was able
to use the Serial mode connection to quickly copy code across without any kind of stateful connection. That
is the goal of this project.
Installation
------------
Install using pip:
pip install pybkick
Basic usage
-----------
In this example, all my micropython code is in a single, flat directory called 'mpy' which is in the same directory
as the script containing the following code:
from pybkick import kick
kick(
# How do we connect to the pyboard?
port='/dev/ttyACM0',
# Which files should we copy to the pyboard?
src=os.path.join(dirname(__file__), 'mpy'),
)
Advanced usage
--------------
In your setup.py file, add 'pybkick' to install_requires. You can also add a script which calls the kick function as an entry point. This will
create a command-line utility that can automatically deploy your project to the pyboard.
Limitations
-----------
The kick function can only copy flat directories of files into the root directory of the pyboard. It cannot
currently handle heirarchical directories or
=======
Push software to a pyboard quickly, without using USB Mass Storage mode.
Rationale
---------
Pyboards are small microcomputers which can execute code written in Micropython, which is a Python3
compatible language which includes a small subset of the Python3 standard library.
The suggest way to deploy code to a PyBoard is to mount it as a USB Mass Storage device, and then edit
files directly on the device, or simply copy over the relevant files from a PC. This approach can
be problematic because if the device is reset, it can cause the Mass Storage drive to be suddenly
unmounted. At best this will cause confusion in the operating system.
Further problems can occur if the device needs to be factory reset - this will wipe the code on the device
and will require everything to be re-copied, or possibly loosing work.
In short, using USB Mass Storage mode is a real pain. It would be much simpler to have something that was able
to use the Serial mode connection to quickly copy code across without any kind of stateful connection. That
is the goal of this project.
Installation
------------
Install using pip:
pip install pybkick
Basic usage
-----------
In this example, all my micropython code is in a single, flat directory called 'mpy' which is in the same directory
as the script containing the following code:
from pybkick import kick
kick(
# How do we connect to the pyboard?
port='/dev/ttyACM0',
# Which files should we copy to the pyboard?
src=os.path.join(dirname(__file__), 'mpy'),
)
Advanced usage
--------------
In your setup.py file, add 'pybkick' to install_requires. You can also add a script which calls the kick function as an entry point. This will
create a command-line utility that can automatically deploy your project to the pyboard.
Limitations
-----------
The kick function can only copy flat directories of files into the root directory of the pyboard. It cannot
currently handle heirarchical directories or
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pybkick-0.0.2.tar.gz
(6.9 kB
view details)
File details
Details for the file pybkick-0.0.2.tar.gz
.
File metadata
- Download URL: pybkick-0.0.2.tar.gz
- Upload date:
- Size: 6.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c151a592556d2067547d92300e632ea3fc4b2237c2a119d7a586e4681de16a4 |
|
MD5 | ddc827b10eece5267743881e985af4d7 |
|
BLAKE2b-256 | 8dbd28d08c26bde84895278e2f70808beb519482d314641c32f146908cbb812a |