My latest python project is a way of making Mycro Python “pyboards” easier to use.
Pyboards are small microcomputers which can execute code written in Micropython, which is a Python3 compatible language. It has the same grammar as cPython3 and includes a small subset of the standard library.
They are an amazing invention because they open up the world of microprocessor development to just about anybody with basic computing knowledge. They don’t require a compiler or any special SDK. You can get projects running on a Pyboard with just a text-editor.
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 pyboard is reset, it can cause the Mass Storage drive to be suddenly unmounted. At best this will cause confusion in the operating system when an open file-system just disappears.
Worse 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. If you were editing directly on the pyboard then you’ve just lost all your code. Clearly this way of working is not optimal.
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. Achieving that kind of developer friendly connection is the goal of this project.
PybKick 0.0.1 was released just yesterday. My first attempt can quickly copy a directory of python code onto pyboard and not much else. Right now it does not know how to handle heirarchies of code, or how to put code anywhere other than the root directory of the pyboard.