Go to file
D.R.racer 9ba116e06e Handle slot indices out of range correctly at top level
Besides Unload Filament, which only operates on active slot, all other
top level state machines check the validity of the command's parameter.
If the parameter is out of range for available slots, they return
ErrorCode::INVALID_TOOL now.
2021-08-12 10:30:40 +02:00
.vscode Add vscode configuration to allow easier switching among firmware and unit tests 2021-05-31 12:28:47 +02:00
cmake Define missing definition of CMAKE_OBJDUMP 2021-06-15 06:53:03 +02:00
lib Add first unit test 2021-05-13 17:35:08 +02:00
src Handle slot indices out of range correctly at top level 2021-08-12 10:30:40 +02:00
tests Handle slot indices out of range correctly at top level 2021-08-12 10:30:40 +02:00
utils holly: Fix dependency downloading (clang-format) 2021-07-16 11:57:40 +02:00
.clang-format Disable preprocessor code indentation 2021-07-07 16:33:03 +02:00
.cmake-format.py Prepare parts of the build system 2021-04-19 07:03:47 +02:00
.gitignore Prepare parts of the build system 2021-04-19 07:03:47 +02:00
.pre-commit-config.yaml pre-commit: handle cmake files in subdirectories 2021-07-12 10:45:35 +02:00
CMakeLists.txt Merge remote-tracking branch 'upstream/main' into motion_wip 2021-07-12 10:25:06 +02:00
Doxyfile Update doxyfile + document modules namespace 2021-06-30 07:39:31 +02:00
README.md Update description of the build process 2021-04-19 07:03:47 +02:00
version.txt Prepare parts of the build system 2021-04-19 07:03:47 +02:00

README.md

Prusa-Firmware-MMU-Private

How to prepare build env and tools

As the first step extract the AVR-GCC to some dir, e.g. /home/user/AVRToolchainMMU/avr8-gnu-toolchain-5.4.0

Add /home/user/AVRToolchainMMU/avr8-gnu-toolchain-5.4.0/bin to your PATH.

mkdir .dependencies
cd .dependencies
mkdir gcc-avr-5.4.0
cd ..
utils/bootstrap.py

bootstrap.py will now download all the "missing" dependencies into the .dependencies folder:

  • clang-format-9.0.0-noext
  • cmake-3.15.5
  • ninja-1.9.0

Note: bootstrap.py will not try to download the AVR-GCC as there is already a directory called gcc-avr-5.4.0. This will be fixed when we find out where to download the correct packages reliably.

How to build the preliminary project so far:

Now the process is the same as in the Buddy Firmware:

utils/build.py

builds the firmware.hex in build/mmu_release

In case you'd like to build the project directly via cmake you can use an approach like this:

mkdir build
cd build
cmake .. -G Ninja -DCMAKE_TOOLCHAIN_FILE=../cmake/AnyAvrGcc.cmake
ninja

Should produce a firmware.hex file as well.