このリポジトリには、32 ビット ARM マイクロコントローラーをベースにしたオリジナル Prusa 3D プリンターのソース コードとファームウェア リリースが含まれています。
現在サポートされているモデルは次のとおりです。
git clone https://github.com/prusa3d/Prusa-Firmware-Buddy.git
を実行します。
python utils/build.py
実行します。バイナリは./build/products
に保存されます。
.bbf
バージョンを生成するには、 ./utils/build.py --generate-bbf
を使用します。--build-type
使用して、ビルドするビルド構成 ( debug
、 release
) を選択します。--preset
使用して、ファームウェアを構築するプリンターを選択します。beta
に設定された「プレリリース モード」でファームウェアがビルドされます。 --prerelease alpha
使用してプレリリースを変更することも、 --final
使用してファームウェアの最終バージョンをビルドすることもできます。--host-tools
使用して、ビルドにホスト ツール ( bin2cc
、 png2font
など) を含めます。--help
フラグを使用して、さらにオプションを見つけてください。 MINI および XL のファームウェアをdebug
モードでビルドします。
python utils/build.py --preset mini,xl --build-type debug
gcc-arm-none-eabi のカスタム バージョン ( $PATH
で入手可能) を使用して MINI のファームウェアをビルドし、 Ninja
の代わりにMake
を使用します (非推奨)。
python utils/build.py --preset mini --toolchain cmake/AnyGccArmNoneEabi.cmake --generator ' Unix Makefiles '
Python がインストールされており、PATH にあるにもかかわらず、cmake エラーPython3 not found.
cmd から python と python3 を実行してみてください。 Python インタープリターを開くのではなく、または'python3' is not recognized as an internal or external command, operable program or batch file.
manage app execution aliases
を開き、 App Installer
とpython.exe
およびpython3.exe
の関連付けを無効にします。
このプロジェクトのビルド プロセスは CMake によって駆動され、 build.py
それを囲む高レベルのラッパーにすぎません。最新の IDE は何らかの CMake 統合をサポートしているため、開発にはほぼすべてのエディターを使用できるはずです。以下は、一般的なテキスト エディタのセットアップ方法を説明したドキュメントです。
コードベースに貢献したい場合は、貢献ガイドラインをお読みください。
XL では、状況はもう少し複雑になります。 XLBuddy のファームウェアには、必要に応じて子犬 (ドワーフとモジュラーベッド) をフラッシュするためのファームウェアが含まれています。開発時にこれらのファームウェアを処理するいくつかの方法をサポートしています。
Dwarf/Modularbed ファームウェアを自動的に構築し、起動時に XLBuddy によってフラッシュします (デフォルト)
指定されたソース ディレクトリから Dwarf/Modularbed をビルドし、起動時に XLBuddy によってフラッシュします。
DWARF_SOURCE_DIR
/ MODULARBED_SOURCE_DIR
CMake キャッシュ変数を指定します。 cmake .. --preset xl_release_boot -DMODULARBED_SOURCE_DIR=/Projects/Prusa-Firmware-Buddy-ModularBed
cmake .. --preset xl_release_boot
-DMODULARBED_SOURCE_DIR=/Projects/Prusa-Firmware-Buddy-ModularBed
-DMODULARBED_BINARY_DIR=/Projects/Prusa-Firmware-Buddy-ModularBed/build
事前に構築された Dwarf/Modularbed ファームウェアを使用し、起動時に xlBuddy によってフラッシュします。
DWARF_BINARY_PATH
/ MODULARBED_BINARY_PATH
を使用して .bin ファイルの場所を指定します。 cmake .. --preset xl_release_boot -DDWARF_BINARY_PATH=/Downloads/dwarf-4.4.0-boot.bin
パピーのファームウェアは含めず、XLBuddy によってパピーをフラッシュしないでください。
-DENABLE_PUPPY_BOOTLOAD=NO
ENABLE_PUPPY_BOOTLOAD
false に設定すると、プロジェクトは Puppy のフラッシュと Puppy ブートローダーとの対話を無効にします。ブートローダーは保持しますが、ブート時にファームウェアを書き込まないでください。
-DPUPPY_SKIP_FLASH_FW=YES
PUPPY_SKIP_FLASH_FW
true に設定すると、プロジェクトは起動時のパピーのフラッシュを無効にします。xl-dwarf_debug_boot
) で子犬ビルド構成を使用します。puppy_task_body()
の最後にブレークポイントを設定することを推奨します。これらのキャッシュ変数の詳細については、/ProjectOptions.cmake を参照してください。
mkdir build-tests
cd build-tests
cmake ..
make tests
ctest .
テストをデバッグ (ステップスルー) する最も簡単な方法は、 cmake -DCMAKE_BUILD_TYPE=Debug ..
を構成するときに CMAKE_BUILD_TYPE を指定し、前述のようにmake tests
でビルドしてから、 gdb
でテストを実行します (例: gdb tests/unit/configuration_store/eeprom_unit_tests
。
カスタムファームウェアをインストールするには、ボード上の付録を壊す必要があります。その方法については、次の記事 https://help.prusa3d.com/article/zoiw36imrs-flashing-custom-firmware をご覧ください。
ファームウェアのソース コードは GNU General Public License v3.0 に基づいてライセンスされており、グラフィックスとデザインは表示 - 非営利 - 継承 4.0 インターナショナル (CC BY-NC-SA 4.0) に基づいてライセンスされています。フォントは別のライセンスに基づいてライセンスされています (「ライセンス」を参照)。