diff --git a/README.md b/README.md index 108214c0..f12f0d21 100644 --- a/README.md +++ b/README.md @@ -63,7 +63,7 @@ _Note: Multi language build is not supported._ **a.** Install `"Arduino Software IDE"` from the official website `https://www.arduino.cc -> Software->Downloads` - _It is recommended to use version `"1.8.5"`, as it is used on out build server to produce official builds._ + _It is recommended to use version `"1.8.5"`, as it is used on our build server to produce official builds._ **b.** Setup Arduino to use Prusa Rambo board definition @@ -118,7 +118,7 @@ _notes: Script and instructions contributed by 3d-gussner. Use at your own risk. - to install zip run `sudo apt-get install zip` - to install dos2unix run `sudo apt-get install dos2unix` - run `dos2unix PF-build.sh` to convert the windows line endings to unix line endings - - add few lines at the top of `~/.bashrc` by running `sudo nano ~/.bashrc` + - add a few lines at the top of `~/.bashrc` by running `sudo nano ~/.bashrc` export OS="Linux" export JAVA_TOOL_OPTIONS="-Djava.net.preferIPv4Stack=true" @@ -134,14 +134,14 @@ _notes: Script and instructions contributed by 3d-gussner. Use at your own risk. - Example: You files are under `C:\Users\\Downloads\Prusa-Firmware-MK3` - use under Ubuntu the following command `cd /mnt/c/Users//Downloads/Prusa-Firmware-MK3` to change to the right folder -- Unix and windows have different line endings (LF vs CRLF), try dos2unix to convert +- Unix and Windows have different line endings (LF vs CRLF), use dos2unix to convert - This should fix the `"$'\r': command not found"` error - to install run `apt-get install dos2unix` - If your Windows isn't in English the Paths may look different Example in other languages - English `/mnt/c/Users//Downloads/Prusa-Firmware-MK3` will be on a German Windows`/mnt/c/Anwender//Downloads/Prusa-Firmware-MK3` #### Compile Prusa-firmware with Ubuntu/Debian Linux subsystem installed -- open Ubuntu bash +- open Ubuntu bash shell - change to your source code folder (case sensitive) - run `./PF-build.sh` - follow the instructions @@ -211,14 +211,14 @@ Q:I built firmware using Arduino and I see "?" instead of numbers in printer use A:Step 1.c was omitted or you updated Arduino and now platform.txt located somewhere in your user profile is used. -Q:I built firmware using Arduino and printer now speaks Klingon (nonsense characters and symbols are displayed @^#$&*°;~ÿ) +Q:I built firmware using Arduino and my printer now speaks "Klingon" (nonsense characters and symbols are displayed @^#$&*°;~ÿ) A:Step 2.c was omitted. -Q:What environment does Prusa use to build the firmware in the first place? +Q:What environment does Prusa use to build its official firmware releases? -A:Our production builds are 99.9% equivalent to https://github.com/prusa3d/Prusa-Firmware#linux this is also easiest way to build as only one step is needed - run single script, which downloads patched Arduino from github, builds using it, then extracts translated strings and creates language variants (for MK2x) or language hex file for external SPI flash (MK3x). But you need Linux or Linux in virtual machine. This is also what happens when you open pull request to our repository - all variants are built by Travis http://travis-ci.org/ (to check for compilation errors). You can see, what is happening in .travis.yml. It would be also possible to get hex built by travis, only deploy step is missing in .travis.yml. You can get inspiration how to deploy hex by travis and how to setup travis in https://github.com/prusa3d/MM-control-01/ repository. Final hex is located in ./lang/firmware.hex Community reproduced this for Windows in https://github.com/prusa3d/Prusa-Firmware#using-linux-subsystem-under-windows-10-64-bit or https://github.com/prusa3d/Prusa-Firmware#using-git-bash-under-windows-10-64-bit . +A:Our production builds are 99.9% equivalent to https://github.com/prusa3d/Prusa-Firmware#linux this is also easiest way to build as only one step is needed - run a single script, which downloads patched Arduino from GitHub, builds using it, then extracts translated strings and creates language variants (for MK2x) or language hex file for external SPI flash (MK3x). But you need Linux or Linux in a virtual machine. This is also what happens when you open a pull request to our repository - all variants are built by Travis http://travis-ci.org/ (to check for compilation errors). You can see, what is happening in .travis.yml. It would be also possible to get hex built by Travis, only the deploy step is missing in .travis.yml. You can find inspiration on how to deploy hex in Travis and how to setup Travis in https://github.com/prusa3d/MM-control-01/ repository. The final hex is located in ./lang/firmware.hex - community reproduced this for Windows in https://github.com/prusa3d/Prusa-Firmware#using-linux-subsystem-under-windows-10-64-bit or https://github.com/prusa3d/Prusa-Firmware#using-git-bash-under-windows-10-64-bit . -Q:Why are build instructions for Arduino mess. +Q:Why are build instructions for Arduino a mess? -Y:We are too lazy to ship proper board definition for Arduino. We plan to switch to cmake + ninja to be inherently multiplatform, easily integrate build tools, suport more IDEs, get 10 times shorter build times and be able to update compiler whenever we want. +Y:We are too lazy to ship a proper board definition for Arduino. We plan to switch to CMake + ninja to be inherently multiplatform, easily integrate build tools, suport more IDEs, get 10 times shorter build times and be able to update compiler whenever we want.