Mirror of official Prusa firmware with custom changes.
|
|
2 роки тому | |
|---|---|---|
| .github | 3 роки тому | |
| .vscode | 3 роки тому | |
| Firmware | 2 роки тому | |
| cmake | 3 роки тому | |
| lang | 2 роки тому | |
| lib | 3 роки тому | |
| tests | 3 роки тому | |
| tools | 3 роки тому | |
| utils | 3 роки тому | |
| .cmake-format.py | 3 роки тому | |
| .editorconfig | 3 роки тому | |
| .gitattributes | 3 роки тому | |
| .gitignore | 3 роки тому | |
| .travis.yml | 2 роки тому | |
| CMakeLists.txt | 2 роки тому | |
| Community_made.md | 3 роки тому | |
| LICENSE | 9 роки тому | |
| MK404-build.sh | 3 роки тому | |
| PF-build.sh | 2 роки тому | |
| README.md | 2 роки тому | |
| README_cz.md | 7 роки тому | |
| build.sh | 3 роки тому | |
| prepare_winbuild.ps1 | 6 роки тому |
This repository contains the source code and the development versions of the firmware running on the Original Prusa i3 MK3S/MK3/MK2.5S/MK2.5 line of printers.
The latest official builds can be downloaded from Prusa Drivers. Pre-built development releases are also available here.
The firmware for the Original Prusa i3 printers is proudly based on Marlin 1.0.x by Scott Lahteine (@thinkyhead) et al. and is distributed under the terms of the GNU GPL 3 license.
This repository contains development material only!
There are two ways to build Prusa-Firmware on Linux: using CMake (recommended for developers) or with PF-build which is more user-friendly for casual users.
The workflow should be pretty straightforward for anyone with development experience. After installing git and a recent version of python 3 all you have to do is:
# clone the repository
git clone https://github.com/prusa3d/Prusa-Firmware
cd Prusa-Firmware
# automatically setup dependencies
./utils/bootstrap.py
# configure and build
mkdir build
cd build
cmake .. -G Ninja -DCMAKE_TOOLCHAIN_FILE=../cmake/AvrGcc.cmake
ninja
Building with cmake requires:
Python >= 3.6 is also required with the following modules:
python3-pyelftools)python3-polib)python3-regex)Additionally gettext is required for translators.
Assuming a recent Debian/Ubuntu distribution, install the dependencies globally with:
sudo apt-get install cmake ninja python3-pyelftools python3-polib python3-regex gettext
Prusa-Firmware depends on a pinned version of avr-gcc and the external prusa3dboards package. These can be setup using ./utils/bootstrap.py:
# automatically setup dependencies
./utils/bootstrap.py
which will download and unpack them inside the .dependencies directory. ./utils/bootstrap.py will also install cmake, ninja and the required python packages if missing, although installing those through the system's package manager is usually preferred.
You can then proceed by creating a build directory, configure for AVR and build:
# configure
mkdir build
cd build
cmake .. -G Ninja -DCMAKE_TOOLCHAIN_FILE=../cmake/AvrGcc.cmake
# build
ninja
By default all variants are built. There are several ways to restrict the build for development. During configuration you can set:
cmake -DFW_VARIANTS=variant: comma-separated list of variants to build. This is the file name as present in Firmware/variants without the final .h.cmake -DMAIN_LANGUAGES=languages: comma-separated list of ISO language codes to include as main translations.cmake -DCOMMUNITY_LANGUAGES=languages: comma-separated list of ISO language codes to include as community translations.When building the following targets are available:
ninja ALL_MULTILANG: build all multi-language targets (default)ninja ALL_ENGLISH: build all single-language targetsninja VARIANT_EN-only: build the single-language version of VARIANTninja VARIANT_Multilang: build the multi-language version of VARIANTninja check_lang: build and check all language translationsninja check_lang_ISO: build and check all variants with language ISOninja check_lang_VARIANT: build and check all languages for VARIANTninja check_lang_VARIANT_ISO: build and check language ISO for VARIANTAutomated tests are built with cmake by configuring for the current host:
# clone the repository
git clone https://github.com/prusa3d/Prusa-Firmware
cd Prusa-Firmware
# automatically setup dependencies
./utils/bootstrap.py
# configure and build
mkdir build
cd build
cmake .. -G Ninja
ninja
# run the tests
ctest
PF-build is recommended for users without development experience. Download or clone the repository, then run PF-build and simply follow the instructions:
cd Prusa-Firmware
./PF-build.sh
PF-build currently assumes a Debian/Ubuntu (or derivative) distribution.
TODO
TODO
TODO