Willy-JL 346d3b8858 Merge mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
..
assets 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
docs d82679fa48 Merge mp_flipper from https://github.com/ofabel/mp-flipper il y a 1 an
examples 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
flipperzero d82679fa48 Merge mp_flipper from https://github.com/ofabel/mp-flipper il y a 1 an
images 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
lib f29af8128d Merge mp_flipper/lib/micropython from https://github.com/ofabel/mp-flipper il y a 1 an
.gitignore 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
.gitsubtree 346d3b8858 Merge mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
CHANGELOG.md d82679fa48 Merge mp_flipper from https://github.com/ofabel/mp-flipper il y a 1 an
LICENSE.txt 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
Makefile 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
README.md 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
application.fam d82679fa48 Merge mp_flipper from https://github.com/ofabel/mp-flipper il y a 1 an
flipper.json 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
icon.png 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
logo.svg 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
package-lock.json 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
package.json 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
publish.sh 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
pyproject.toml d82679fa48 Merge mp_flipper from https://github.com/ofabel/mp-flipper il y a 1 an
requirements.txt 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
splash.svg 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
upython.c cc24afcb6d Fix for new `furi_thread_set_stdout_callback()` il y a 1 an
upython.h 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
upython_cli.c cc24afcb6d Fix for new `furi_thread_set_stdout_callback()` il y a 1 an
upython_file.c 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
upython_repl.c 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an
upython_splash.c 2828e57a80 Add mp_flipper from https://github.com/xMasterX/all-the-plugins il y a 1 an

README.md

License Version

MicroPython Flipper Zero

Allows you to use the power of Python natively on your Flipper Zero. The application is available on the official Flipper Lab. For details on how to programm your Flipper with Python, check out the documentation on GitHub pages.

MicroPython REPL

Disclaimer

This FAP version requires about 80 kB from SRAM to start (needed for the Python runtime and compiler). Due to memory fragmentation it's possible, that the application crashes when you start it. If this happens, just try again (the crash doesn't harm your device).

[!IMPORTANT] This problem is already addressed to the firmware developers in this issue. Nevertheless, running the uPython application from the SD card is still a heavy task for the Flipper.

I'm thinking about publishing a fork of the original firmware with uPython bundled as a core service. This would mitigate all the memory problems. The SD card version would still be there and maintained, but possibly with a limited set of features.

Development

This section is only relevant, if you want to build the FAP on your own.

Branches

This branch contains the FAP version. The results of the preceding research phase is still available in the poc branch. The lib branch of this repository contains just the MicroPython library. The progress of further research on what can be achieved when moving functionality to the firmware can be found in the fork of the original firmware.

Requirements

Setup

git clone --recurse-submodules git@github.com:ofabel/mp-flipper.git

Build

Just open a terminal and run the Makefile targets:

make build

You can also build an launch the application on the attached Flipper Zero device in one command:

make launch