From c7ffb4b2dcc87e5a6b1e0a13bc6167281f8a50e9 Mon Sep 17 00:00:00 2001 From: MRprusa3d <38257799+MRprusa3d@users.noreply.github.com> Date: Tue, 10 Apr 2018 18:02:16 +0000 Subject: [PATCH] Add files via upload --- README.md | 93 ++++++++++++++++++++++++++++++------------------------- 1 file changed, 50 insertions(+), 43 deletions(-) diff --git a/README.md b/README.md index 99d17c3e..0e2dea39 100644 --- a/README.md +++ b/README.md @@ -1,43 +1,50 @@ -# Original Prusa i3 MK2 Firmware - -## General instructions - -Pre-compiled hex output on PRUSA RESEARCH site: http://prusa3d.com/downloads/firmware/ - -Just download and flash it to the electronics - - -## Build instructions - -### Step 1 - -Install arduino - -### Step 2 - -Remove Liquid Crystal library from your arduino or rename it - -### Step 3 - -Install the arduino addon located in the root of this repo. Don't forget to install correct version! - -### Step 4 - -Copy the configuration file matching your printer from variants folder to the the Firmware folder - -### Step 5 - -Rename it to "Configuration_prusa.h" - -### Step 6 - -Compile the firmware - -### Step 7 - -Upload the firmware to board - - - - - +# 1. Developement environment preparing + + 1. install `"Arduino Software IDE"` for your preferred operating system +`https://www.arduino.cc -> Software->Downloads` +it is strongly recommended to use older version `"1.6.8"`, by which we can assure correct compilation results +_note: in versions `1.7.x` and `1.8.x` there are known some C/C++ compilator disasters, which disallow correct source code compilation (you can obtain `"... internal compiler error: in extract_insn, at ..."` error message, for example); we are not able to affect this situation afraid_ +_note: name collision for `"LiquidCrystal"` library known from previous versions is now obsolete (so there is no need to delete or rename original file/-s)_ + + 2. add (`UltiMachine`) `RAMBo` board into the list of Arduino target boards +`File->Preferences->Settings` +into text field `"Additional Boards Manager URLs"` +type location +`"https://raw.githubusercontent.com/ultimachine/ArduinoAddons/master/package_ultimachine_index.json"` +or you can 'manually' modify the item +`"boardsmanager.additional.urls=....."` +at the file `"preferences.txt"` (this parameter allows you to write a comma-separated list of addresses) +_note: you can find location of this file on your disk by following way: +`File->Preferences->Settings` (`"More preferences can be edited in file ..."`)_ +than do it +`Tools->Board->BoardsManager` +from viewed list select an item `"RAMBo"` (will probably be labeled as `"RepRap Arduino-compatible Mother Board (RAMBo) by UltiMachine"` +_note: select this item for any variant of board used in printers `'Prusa i3 MKx'`, that is for `RAMBo-mini x.y` and `EINSy x.y` to_ +'clicking' the item will display the installation button; select choice `"1.0.1"` from the list(last known version as of the date of issue of this document) +_(after installation, the item is labeled as `"INSTALLED"` and can then be used for target board selection)_ + + +# 2. Source code compilation + +place the source codes corresponding to your printer model obtained from the repository into the selected directory on your disk +`https://github.com/prusa3d/Prusa-Firmware/` +in the subdirectory `"Firmware/variants/"` select the configuration file (`.h`) corresponding to your printer model, make copy named `"Configuration_prusa.h"` (or make simple renaming) and copy them into `"Firmware/"` directory + +run `"Arduino IDE"`; select the file `"Firmware.ino"` from the subdirectory `"Firmware/"` at the location, where you placed the source codes +`File->Open` +make the desired code customizations; **all changes are on your own risk!** + +select the target board `"RAMBo"` +`Tools->Board->RAMBo` +_note: it is not possible to use any of the variants `"Arduino Mega …"`, even though it is the same MCU_ + +run the compilation +`Sketch->Verify/Compile` + +upload the result code into the connected printer +`Sketch->Upload` + +or you can also save the output code to the file (in so called `HEX`-format) `"Firmware.ino.rambo.hex"`: +`Sketch->ExportCompiledBinary` +and then upload it to the printer using the program `"FirmwareUpdater"` +_note: this file is created in the directory `"Firmware/"`_