<p>The firmware is not really locked by the OEM<sup>1</sup>, you just need to upload (or, as you say <em>burn</em>) a new version. This is not unusual<sup>2</sup>.</p>
<p>Repetier is just like any other firmware that uses Arduino boards. While it may seem intimidating at first, it really is quite easy to regularly upload new firmware to the Arduino Mega 2560 board<sup>3</sup>. If you are not familiar with Arduino programming at all, then there are a good number of <em>Repetier oriented</em> guides out there, for example, from Repetier's own web site, <a href="https://www.repetier.com/documentation/repetier-firmware/rf-installation/" rel="nofollow noreferrer">Repetier-Firmware Documentation</a>.</p>
<p>If are you familiar with Arduino programming, then it really is the same as uploading the <code>Blink</code> sketches, but the base code is just bigger, that is all.</p>
<p>There is too much to detail in a simple answer here and, as I stated above, there are a lot of online guides. However, <em>en bref</em>:</p>
<ol>
<li>Download and install the Arduino IDE to your Mac/Wintel/Linux PC;</li>
<li>Download the <em>latest</em> <a href="https://www.repetier.com/downloads/#f" rel="nofollow noreferrer">Repetier firmware</a> to your Mac/Wintel/Linux PC<sup>4</sup>;</li>
<li>Connect the Arduino Mega 2560 to your PC using a USB cable;</li>
<li>Change the settings, i.e. Boards and Port settings, in the Arduino IDE, so that your PC can &quot;see&quot; the Arduino Mega 2560;</li>
<li>Open the Reptier firmware, that you have just downloaded, in the Arduino IDE;</li>
<li>Configure the Repetier firmware source code, i.e. make some edits in the <code>Configuration.h</code> file<sup>5</sup>, with the tweaks that you require (which you mention in your question)<sup>6</sup>;</li>
<li>Compile the firmware using the Arduino IDE. and (finally);</li>
<li>Upload the firmware to the Arduino Mega 2560.</li>
</ol>
<p>That is it. Once you have done it a few times, it will become second nature.</p>
<p>Watch a few online youtube videos, as well, before you start, so that you have a better idea of what to do. For example:</p>
<ul>
<li><a href="https://www.youtube.com/watch?v=x4v7QvT36gc" rel="nofollow noreferrer">Repetier 0 92 8 Firmware Configration</a>. or;</li>
<li><a href="https://www.youtube.com/watch?v=Nexaf7XOoPg" rel="nofollow noreferrer">Kossel Mini 3D Printer Repetier Firmware and Calibration</a>.</li>
<li>As an aside, for gaining a basic understanding of the configuration file of <em>Marlin</em>, <strong>not</strong> Repetier, I found this video <a href="https://www.youtube.com/watch?v=QuEhQU8vGZk" rel="nofollow noreferrer">#18: Calibration</a> <em>extremely</em> useful. If you feel like changing the firmware completely, this may come in handy.</li>
</ul>
<p>With respect to the Slicer's profile settings... I am not sure about that at all.</p>
<p>The reason that you have no RAMPS board is that, on your MKS board, the RAMPS and the Arduino are merged into one. Any new controller would work, as they all run the same firmware. There are many to choose from. As you are just experimenting (and reverse engineering) at this stage, I personally would buy a cheap Chinese Arduino Mega 2560 (€6) and RAMPS (€4) board on eBay, for a total of only €10 (if you buy them separately - don't get a combination &quot;deal&quot; as they are generally more expensive - although compare the prices first, you may find a bargain), to test your settings. Once you are happy with those settings, <em>then</em> you can spend more money on a better board, should you feel that you need it.</p>
<hr />
<h3>Footnotes</h3>
<p><sup>1</sup> If you have to get around the licensing, then it sounds like you could/should recompile the firmware, or use some other firmware, i.e. Marlin. However, wait to see what other people suggest.</p>
<p><sup>2</sup> There really isn't much risk in uploading new firmware. The only risk, which I guess <a href="https://3dprinting.stackexchange.com/questions/4161/help-with-repetier-firmware-probably-locked-and-licensed/4163?noredirect=1#comment5759_4163">Mark is referring to</a>, is that you may/will not have the correct firmware settings for your make of printer, and therefore the printer may not work correctly, until you get the firmware settings correct. So, in that respect, it is a good idea to buy a secondary Arduino Mega and RAMPS1.4 board to play with, for just $10 (Chinese clones work just fine). But, as you say that your board already has bad settings, and you do not wish to pay for more licensing, then you haven't much to lose by uploading new firmware to it, except the warranty. So, if I were in your position, and I did not want to pay the licensing, I would set aside the supplied controller (for possible future use/reference), and use a Arduino Mega 2560/RAMPS 1.4 combination to control the printer. That said, if your printer is still under warranty, can't you ask the manufacturer to supply you a new controller with the correct settings?</p>
<p><sup>3</sup> There is no way of extracting the code from an Arduino and then modifying it. You need the <em>original source code files</em>. See <a href="https://arduino.stackexchange.com/questions/179/is-there-any-way-to-download-a-sketch-from-an-arduino">Is there any way to download a sketch from an Arduino?</a> OK, you can obtain the machine code, but unless you are an expert, or guru, modifying it is impossible.</p>
<p><sup>4</sup> The installation order, of the Arduino IDE and Repetier, will not matter. You probably need to rebuild the firmware, I would guess, but I am not 100% sure. It might be a good idea to contact the vendor to see what they recommend, before overwriting their code (assuming that the control board came pre-programmed)</p>
<p><sup>5</sup> I found this video <a href="https://www.youtube.com/watch?v=QuEhQU8vGZk" rel="nofollow noreferrer">#18: Calibration</a> extremely useful, for configuring Marlin, and understanding the firmware settings in the <code>Configuration.h</code> file.</p>
<p><sup>6</sup> You may find this link useful for your &quot;tweaks&quot;: <a href="https://www.repetier.com/firmware/v092/" rel="nofollow noreferrer">Repetier-Firmware configuration tool for version 0.92.9 version</a></p>

CC BY-SA 3.0
2017-05-30T15:04:56.740Z
Actually I just need to change a few parameters in the firmware since after an unexpected reboot, the calibration got all screwed up. But when I tried to do that using the repetier host, the log constantly shows the name of my printer's manufacturer and I'm unable to execute anything. Is there any workaround to it?
Ojasvi Srivastava
CC BY-SA 3.0
2017-05-30T15:19:35.543Z
@OjasviSrivastava - Can you post the log file contents, or a relevent excerpt, in your question? Also, clarify in your question that you are using Repetier Host and state exactly what happens, and what you are doing, or trying to do. The more information you provide, then the more accurately someone will be able to address the issue that you are experiencing.
Greenonline
CC BY-SA 3.0
2017-05-30T16:05:52.970Z
I've added a screenshot. I've never really done this before so let me know if you need any more details. Is it important to install Arduino IDE before repetier host? I did it in the other order.
Ojasvi Srivastava
CC BY-SA 3.0
2017-05-30T16:47:14.450Z
@OjasviSrivastava - No the installation order will not matter. You probably need to rebuild the firmware, I would guess, but I am not 100% sure. It might be a good idea to contact the vendor to see what they recommend, *before overwriting their code* (assuming that the control board came pre-programmed). WRT the log, instead of a screen shot, it would be better to copy and past the actual text from the log (if possible), as, thereafter, it is easier to copy, or search (whereas the text in a screenshot is neither copiable nor searchable), or provide *both* the text and screenshot.
Greenonline
CC BY-SA 3.0
2017-05-30T17:38:33.717Z
well the vendor is asking me to renew the contract which will cost me a lot. He'll provide me any support only after I do that. If I could only tweak the relevant parameters (delta radius, rod length etc) without rebuilding the entire firmware that'd be great. PS: I've pasted the log in the question. Hope that helps
Ojasvi Srivastava
CC BY-SA 3.0
2017-05-30T18:04:29.663Z
@OjasviSrivastava - If you have to get around the licensing, then it sounds like you could/should recompile the firmware, or use some other firmware, i.e. Marlin. However, wait to see what other people suggest. Can you edit your question to state the actual brand/make/model of the printer? BTW, I found this video [#18: Calibration](https://www.youtube.com/watch?v=QuEhQU8vGZk) extremely useful, for configuring Marlin.
Greenonline
CC BY-SA 3.0
2017-05-30T18:49:40.410Z
so there isn't any way to edit the current configuration.h file? I'll wait for some time for an answer to this. Alternately, is there any way to view the file so that i can use most of the values and change only the relevant ones while compiling a new firmware? Also, is Marlin better than Repetier?
Ojasvi Srivastava
CC BY-SA 3.0
2017-05-30T22:09:18.650Z
@OjasviSrivastava be aware that there is some risk burning custom firmware.  I know of one person that tried this and was unable to print for quite some time.  If you cannot tolerate the down time, I recommend that you consider either buying a second controller card (they are often VERY cheap on ebay if your printer is using a generic RAMPS/Melzi board) or get an external programmer (that connects to the ISP connector) so that you can first make a copy the firmware/fuse settings so you can restore your printer controller to its current state if things do not go well.
markshancock
CC BY-SA 3.0
2017-05-31T15:30:23.760Z
@markshancock can you please elaborate the two methods you've stated here? I have zero idea about all this. Any tutorial link would be helpful too. So you're saying that a firmware can only be copied to another controller card/ external programmer? I was wondering if there is any way to extract the firmware from the current board as a workable file that I can tweak in Arduino IDE. So far I've only been able to extract EEPROM value using Repetier host. But for all I know, those values are incorrect as my printer is likely reading those values following the unfortunate reboot
Ojasvi Srivastava
CC BY-SA 3.0
2017-05-31T15:34:47.253Z
@OjasviSrivastava - Sorry, I meant to reply last night. There is no way of extracting the code from an Arduino and then modifying it. *You need the original source code files*. See [Is there any way to download a sketch from an Arduino?](https://arduino.stackexchange.com/questions/179/is-there-any-way-to-download-a-sketch-from-an-arduino). OK, you can obtain the machine code, but unless you are an expert, or guru, modifying it is impossible.
Greenonline
CC BY-SA 3.0
2017-05-31T15:41:10.747Z
@OjasviSrivastava - There really isn't much risk in uploading new firmware. The only risk, which I guess Mark is referring to, is that you may/will not have the correct firmware settings for your make of printer, and therefore the printer may not work correctly, until you get the firmware settings correct. So, in that respect, it is a good idea to buy a secondary Arduino Mega and RAMPS1.4 board to play with, for just $10 (Chinese clones work just fine). But, as you say that your board already has bad settings, then you haven't much to lose by uploading new firmware to it, except the warranty.
Greenonline
CC BY-SA 3.0
2017-05-31T15:56:10.967Z
@OjasviSrivastava This [article](https://www.hackster.io/rayburne/avr-firmware-duplicator-115d8f) explains how to use an AVR programmer to backup your existing firmware so (in theory) you can always get back to your original code.  As Greenonline mentioned, this is a binary backup and is not intended to be modified.  Trying to reverse-engineer modifiable code from the binary code on the Arduino is not realistic.
markshancock
CC BY-SA 3.0
2017-05-31T16:00:02.210Z
@OjasviSrivastava - As comments may be deleted at any time, I have moved the pertinent information, from those comments, into my answer, as footnotes, so that the information is not lost. Please see my updated answer.
Greenonline
CC BY-SA 3.0
2017-05-31T16:01:56.730Z
@markshancock - As comments (especially extended discussions, such as this) may be deleted at any time, it might be wise to post the information, contained in your comments, into an answer - so that the information is not lost. Also, it would centralise the information, and save others having to trawl through a lot of comments  :-)
Greenonline
CC BY-SA 3.0
2017-06-03T15:28:25.913Z
@Greenonline I've edited the question with a picture of my printer's control board. Please let me know how to proceed. My printer is not under warranty otherwise the vendor would've taken care of everything.
Ojasvi Srivastava
CC BY-SA 3.0
2017-05-30T14:30:00.223Z
2017-06-03T23:58:20.300Z
2020-06-18T08:29:41.667Z
Greenonline
<p>I'm in the process of tweaking the firmware (Repetier 0.92.6) because of some problems mentioned here: <a href="https://3dprinting.stackexchange.com/questions/4150/delta-printer-printing-incorrect-dimensions-in-x-and-y-directions-z-dimensions">Delta printer printing incorrect dimensions in X and Y directions. Z dimensions are correct</a></p>

<p>But I found out that the printer manufacturer has locked the firmware (probably) and I cannot edit it. So I have to burn a new one (I guess? Correct me if I'm wrong)</p>

<p>Printer name: Dimension Dual Delta</p>

<p>Manufacturer: J Group Robotics</p>

<p>Website: <a href="http://www.jgrouprobotics.com/dimension-dual-delta" rel="nofollow noreferrer">http://www.jgrouprobotics.com/dimension-dual-delta</a></p>

<p>I have the slicer (Simplify3D) configured with the FFF profile as my printer was working completely fine up until a few weeks ago. I just want to know that if I change the firmware, would I have to change/update the profile as well? If yes, how do I do that?</p>

<hr>

<p>Here is a screenshot of Repetier host. The "JGR" continues indefinitely:</p>

<p><a href="https://i.sstatic.net/ifZWx.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/ifZWx.png" alt="Screenshot of log"></a></p>

<p>Here is the actual log text</p>

<pre><code>22:56:00.216 : OpenGL version:4.2.0
22:56:00.218 : OpenGL renderer:GeForce GT 540M/PCIe/SSE2
22:56:00.218 : Using fast VBOs for rendering is possible
22:56:06.634 : Printer reset detected - initalizing
22:56:06.661 : start
22:56:06.662 : Info:External Reset
22:56:06.662 : Info:Autoleveling enabled
22:56:06.662 : Transformation matrix: 0.999994 0.000010 0.003587 0.000000 0.999996 -0.002727 -0.003587 0.002727 0.999990
22:56:06.865 : N1 M110*34
22:56:06.865 : N2 M115*36
22:56:06.865 : N3 M105*36
22:56:06.865 : N4 M114*35
22:56:06.865 : N5 M111 S6*98
22:56:06.869 : N6 T0*60
22:56:06.870 : N7 M20*22
22:56:06.871 : N8 M80*19
22:56:06.872 : N9 M105*46
22:56:08.706 : Free RAM:1002
22:56:08.706 : Autoretract:0
22:56:08.706 : X:0.00 Y:0.00 Z:0.000 E:0.0000
22:56:08.713 : N10 M220 S100*80
22:56:08.713 : N11 M221 S100*80
22:56:08.714 : N12 M111 S6*84
22:56:08.714 : FIRMWARE_NAME:Repetier_0.92.6 FIRMWARE_URL:https://github.com/repetier/Repetier-Firmware/ PROTOCOL_VERSION:1.0 MACHINE_TYPE:Delta EXTRUDER_COUNT:2 REPETIER_PROTOCOL:3
22:56:08.714 : Printed filament:32.75m Printing time:0 days 6 hours 0 min
22:56:08.714 : PrinterMode:FFF
22:56:08.714 : N13 T0*8
22:56:08.745 : X:0.00 Y:0.00 Z:0.000 E:0.0000
22:56:08.745 : Begin file list
22:56:08.746 : End file list
22:56:09.726 : JGR
22:56:09.960 : N14 M105*18
22:56:10.972 : JGR
22:56:11.979 : JGR
22:56:12.969 : JGR
22:56:13.016 : N15 M105*19
22:56:14.028 : JGR
22:56:15.035 : JGR
22:56:16.025 : JGR
22:56:16.072 : N16 M105*16
22:56:17.085 : JGR
22:56:18.091 : JGR
22:56:19.081 : JGR
22:56:19.134 : N17 M105*17
22:56:20.157 : JGR
22:56:21.163 : JGR
22:56:22.154 : JGR
22:56:22.189 : N18 M105*30
22:56:23.202 : JGR
22:56:24.208 : JGR
22:56:25.199 : JGR
22:56:25.245 : N19 M105*31
22:56:26.253 : JGR
22:56:27.261 : JGR
22:56:28.267 : JGR
22:56:28.307 : N20 M105*21
22:56:29.319 : JGR
22:56:30.326 : JGR
22:56:31.316 : JGR
22:56:31.363 : N21 M105*20
22:56:32.376 : JGR
22:56:33.382 : JGR
22:56:34.372 : JGR
</code></pre>

<hr>

<p><strong>Edit</strong>: Since it is advisable to get a new controller board and keep the current one as it is, I'm attaching a picture of what my printer is controlled by.</p>

<p><a href="https://i.sstatic.net/Y8k3r.jpg" rel="nofollow noreferrer"><img src="https://i.sstatic.net/Y8k3r.jpg" alt="enter image description here"></a></p>

<p>The black box on the green board reads <strong>HRD 12008</strong>. Google says its a DC-DC SMPS module but mine has some extra connectors than what I could find online.</p>

<p>The black board is a <strong>MKS Base v1.3</strong></p>

<p>The other box is a solid state relay.</p>

<p>This is more intimidating than I thought it would be. How do I proceed now? If I get a brand new controller board to play with, which should it be? Also, I can't seem to locate any RAMPS shield.</p>

CC BY-SA 3.0
2017-06-03T23:54:31.100Z
The reason that you have no RAMPS board is that, on your board, the RAMPS and the Arduino circuitry are merged into one. Any new controller would work, as they all run the same firmware. There are many to choose from. As you are just experimenting (and reverse engineering) at this stage, I personally would buy a cheap Chinese Arduino Mega 2560 and RAMPS board on eBay, for only $10 (if you buy them separately - don't get a combination "deal"), to test your settings. Once you are happy with those settings, *then* you can spend more money on a better board, should you feel that you need it.
Greenonline
<fdm><repetier>
Help with Repetier firmware (probably locked and licensed)
Ojasvi Srivastava
# Help with Repetier firmware (probably locked and licensed)

(Asked by: username_0 on 2017-05-30)

I'm in the process of tweaking the firmware (Repetier 0.92.6) because of some problems mentioned here: Delta printer printing incorrect dimensions in X and Y directions. Z dimensions are correct
But I found out that the printer manufacturer has locked the firmware (probably) and I cannot edit it. So I have to burn a new one (I guess? Correct me if I'm wrong)
Printer name: Dimension Dual Delta
Manufacturer: J Group Robotics
Website: http://www.jgrouprobotics.com/dimension-dual-delta
I have the slicer (Simplify3D) configured with the FFF profile as my printer was working completely fine up until a few weeks ago. I just want to know that if I change the firmware, would I have to change/update the profile as well? If yes, how do I do that?

Here is a screenshot of Repetier host. The "JGR" continues indefinitely:

Here is the actual log text
22:56:00.216 : OpenGL version:4.2.0
22:56:00.218 : OpenGL renderer:GeForce GT 540M/PCIe/SSE2
22:56:00.218 : Using fast VBOs for rendering is possible
22:56:06.634 : Printer reset detected - initalizing
22:56:06.661 : start
22:56:06.662 : Info:External Reset
22:56:06.662 : Info:Autoleveling enabled
22:56:06.662 : Transformation matrix: 0.999994 0.000010 0.003587 0.000000 0.999996 -0.002727 -0.003587 0.002727 0.999990
22:56:06.865 : N1 M110*34
22:56:06.865 : N2 M115*36
22:56:06.865 : N3 M105*36
22:56:06.865 : N4 M114*35
22:56:06.865 : N5 M111 S6*98
22:56:06.869 : N6 T0*60
22:56:06.870 : N7 M20*22
22:56:06.871 : N8 M80*19
22:56:06.872 : N9 M105*46
22:56:08.706 : Free RAM:1002
22:56:08.706 : Autoretract:0
22:56:08.706 : X:0.00 Y:0.00 Z:0.000 E:0.0000
22:56:08.713 : N10 M220 S100*80
22:56:08.713 : N11 M221 S100*80
22:56:08.714 : N12 M111 S6*84
22:56:08.714 : FIRMWARE_NAME:Repetier_0.92.6 FIRMWARE_URL:https://github.com/repetier/Repetier-Firmware/ PROTOCOL_VERSION:1.0 MACHINE_TYPE:Delta EXTRUDER_COUNT:2 REPETIER_PROTOCOL:3
22:56:08.714 : Printed filament:32.75m Printing time:0 days 6 hours 0 min
22:56:08.714 : PrinterMode:FFF
22:56:08.714 : N13 T0*8
22:56:08.745 : X:0.00 Y:0.00 Z:0.000 E:0.0000
22:56:08.745 : Begin file list
22:56:08.746 : End file list
22:56:09.726 : JGR
22:56:09.960 : N14 M105*18
22:56:10.972 : JGR
22:56:11.979 : JGR
22:56:12.969 : JGR
22:56:13.016 : N15 M105*19
22:56:14.028 : JGR
22:56:15.035 : JGR
22:56:16.025 : JGR
22:56:16.072 : N16 M105*16
22:56:17.085 : JGR
22:56:18.091 : JGR
22:56:19.081 : JGR
22:56:19.134 : N17 M105*17
22:56:20.157 : JGR
22:56:21.163 : JGR
22:56:22.154 : JGR
22:56:22.189 : N18 M105*30
22:56:23.202 : JGR
22:56:24.208 : JGR
22:56:25.199 : JGR
22:56:25.245 : N19 M105*31
22:56:26.253 : JGR
22:56:27.261 : JGR
22:56:28.267 : JGR
22:56:28.307 : N20 M105*21
22:56:29.319 : JGR
22:56:30.326 : JGR
22:56:31.316 : JGR
22:56:31.363 : N21 M105*20
22:56:32.376 : JGR
22:56:33.382 : JGR
22:56:34.372 : JGR


Edit: Since it is advisable to get a new controller board and keep the current one as it is, I'm attaching a picture of what my printer is controlled by.

The black box on the green board reads HRD 12008. Google says its a DC-DC SMPS module but mine has some extra connectors than what I could find online.
The black board is a MKS Base v1.3
The other box is a solid state relay.
This is more intimidating than I thought it would be. How do I proceed now? If I get a brand new controller board to play with, which should it be? Also, I can't seem to locate any RAMPS shield.

**Tags:** fdm, repetier
> **Comments:**
> **username_1**: The reason that you have no RAMPS board is that, on your board, the RAMPS and the Arduino circuitry are merged into one. Any new controller would work, as they all run the same firmware. There are many to choose from. As you are just experimenting (and reverse engineering) at this stage, I personally would buy a cheap Chinese Arduino Mega 2560 and RAMPS board on eBay, for only $10 (if you buy them separately - don't get a combination "deal"), to test your settings. Once you are happy with those settings, *then* you can spend more money on a better board, should you feel that you need it.  

---

## 1 answers

### Answer by username_1 on 2017-05-30. Score: 2 | Accepted answer

The firmware is not really locked by the OEM1, you just need to upload (or, as you say *burn*) a new version. This is not unusual2.

Repetier is just like any other firmware that uses Arduino boards. While it may seem intimidating at first, it really is quite easy to regularly upload new firmware to the Arduino Mega 2560 board3. If you are not familiar with Arduino programming at all, then there are a good number of *Repetier oriented* guides out there, for example, from Repetier's own web site, [Repetier-Firmware Documentation](https://www.repetier.com/documentation/repetier-firmware/rf-installation/).

If are you familiar with Arduino programming, then it really is the same as uploading the `Blink` sketches, but the base code is just bigger, that is all.

There is too much to detail in a simple answer here and, as I stated above, there are a lot of online guides. However, *en bref*:

1. Download and install the Arduino IDE to your Mac/Wintel/Linux PC;
2. Download the *latest* [Repetier firmware](https://www.repetier.com/downloads/#f) to your Mac/Wintel/Linux PC4;
3. Connect the Arduino Mega 2560 to your PC using a USB cable;
4. Change the settings, i.e. Boards and Port settings, in the Arduino IDE, so that your PC can "see" the Arduino Mega 2560;
5. Open the Reptier firmware, that you have just downloaded, in the Arduino IDE;
6. Configure the Repetier firmware source code, i.e. make some edits in the `Configuration.h` file5, with the tweaks that you require (which you mention in your question)6;
7. Compile the firmware using the Arduino IDE. and (finally);
8. Upload the firmware to the Arduino Mega 2560.

That is it. Once you have done it a few times, it will become second nature.

Watch a few online youtube videos, as well, before you start, so that you have a better idea of what to do. For example:

* [Repetier 0 92 8 Firmware Configration](https://www.youtube.com/watch?v=x4v7QvT36gc). or;
* [Kossel Mini 3D Printer Repetier Firmware and Calibration](https://www.youtube.com/watch?v=Nexaf7XOoPg).
* As an aside, for gaining a basic understanding of the configuration file of *Marlin*, **not** Repetier, I found this video [#18: Calibration](https://www.youtube.com/watch?v=QuEhQU8vGZk) *extremely* useful. If you feel like changing the firmware completely, this may come in handy.

With respect to the Slicer's profile settings... I am not sure about that at all.

The reason that you have no RAMPS board is that, on your MKS board, the RAMPS and the Arduino are merged into one. Any new controller would work, as they all run the same firmware. There are many to choose from. As you are just experimenting (and reverse engineering) at this stage, I personally would buy a cheap Chinese Arduino Mega 2560 (€6) and RAMPS (€4) board on eBay, for a total of only €10 (if you buy them separately - don't get a combination "deal" as they are generally more expensive - although compare the prices first, you may find a bargain), to test your settings. Once you are happy with those settings, *then* you can spend more money on a better board, should you feel that you need it.

---

### Footnotes

1 If you have to get around the licensing, then it sounds like you could/should recompile the firmware, or use some other firmware, i.e. Marlin. However, wait to see what other people suggest.

2 There really isn't much risk in uploading new firmware. The only risk, which I guess [Mark is referring to](https://3dprinting.stackexchange.com/questions/4161/help-with-repetier-firmware-probably-locked-and-licensed/4163?noredirect=1#comment5759_4163), is that you may/will not have the correct firmware settings for your make of printer, and therefore the printer may not work correctly, until you get the firmware settings correct. So, in that respect, it is a good idea to buy a secondary Arduino Mega and RAMPS1.4 board to play with, for just $10 (Chinese clones work just fine). But, as you say that your board already has bad settings, and you do not wish to pay for more licensing, then you haven't much to lose by uploading new firmware to it, except the warranty. So, if I were in your position, and I did not want to pay the licensing, I would set aside the supplied controller (for possible future use/reference), and use a Arduino Mega 2560/RAMPS 1.4 combination to control the printer. That said, if your printer is still under warranty, can't you ask the manufacturer to supply you a new controller with the correct settings?

3 There is no way of extracting the code from an Arduino and then modifying it. You need the *original source code files*. See [Is there any way to download a sketch from an Arduino?](https://arduino.stackexchange.com/questions/179/is-there-any-way-to-download-a-sketch-from-an-arduino) OK, you can obtain the machine code, but unless you are an expert, or guru, modifying it is impossible.

4 The installation order, of the Arduino IDE and Repetier, will not matter. You probably need to rebuild the firmware, I would guess, but I am not 100% sure. It might be a good idea to contact the vendor to see what they recommend, before overwriting their code (assuming that the control board came pre-programmed)

5 I found this video [#18: Calibration](https://www.youtube.com/watch?v=QuEhQU8vGZk) extremely useful, for configuring Marlin, and understanding the firmware settings in the `Configuration.h` file.

6 You may find this link useful for your "tweaks": [Repetier-Firmware configuration tool for version 0.92.9 version](https://www.repetier.com/firmware/v092/)

> **Comments:**
> **username_0**: Actually I just need to change a few parameters in the firmware since after an unexpected reboot, the calibration got all screwed up. But when I tried to do that using the repetier host, the log constantly shows the name of my printer's manufacturer and I'm unable to execute anything. Is there any workaround to it?  
> **username_1**: @OjasviSrivastava - Can you post the log file contents, or a relevent excerpt, in your question? Also, clarify in your question that you are using Repetier Host and state exactly what happens, and what you are doing, or trying to do. The more information you provide, then the more accurately someone will be able to address the issue that you are experiencing.  
> **username_0**: I've added a screenshot. I've never really done this before so let me know if you need any more details. Is it important to install Arduino IDE before repetier host? I did it in the other order.  
> **username_1**: @OjasviSrivastava - No the installation order will not matter. You probably need to rebuild the firmware, I would guess, but I am not 100% sure. It might be a good idea to contact the vendor to see what they recommend, *before overwriting their code* (assuming that the control board came pre-programmed). WRT the log, instead of a screen shot, it would be better to copy and past the actual text from the log (if possible), as, thereafter, it is easier to copy, or search (whereas the text in a screenshot is neither copiable nor searchable), or provide *both* the text and screenshot.  
> **username_0**: well the vendor is asking me to renew the contract which will cost me a lot. He'll provide me any support only after I do that. If I could only tweak the relevant parameters (delta radius, rod length etc) without rebuilding the entire firmware that'd be great. PS: I've pasted the log in the question. Hope that helps  
> **username_1**: @OjasviSrivastava - If you have to get around the licensing, then it sounds like you could/should recompile the firmware, or use some other firmware, i.e. Marlin. However, wait to see what other people suggest. Can you edit your question to state the actual brand/make/model of the printer? BTW, I found this video [#18: Calibration](https://www.youtube.com/watch?v=QuEhQU8vGZk) extremely useful, for configuring Marlin.  
> **username_0**: so there isn't any way to edit the current configuration.h file? I'll wait for some time for an answer to this. Alternately, is there any way to view the file so that i can use most of the values and change only the relevant ones while compiling a new firmware? Also, is Marlin better than Repetier?  
> **username_2**: @OjasviSrivastava be aware that there is some risk burning custom firmware.  I know of one person that tried this and was unable to print for quite some time.  If you cannot tolerate the down time, I recommend that you consider either buying a second controller card (they are often VERY cheap on ebay if your printer is using a generic RAMPS/Melzi board) or get an external programmer (that connects to the ISP connector) so that you can first make a copy the firmware/fuse settings so you can restore your printer controller to its current state if things do not go well.  
> **username_0**: @markshancock can you please elaborate the two methods you've stated here? I have zero idea about all this. Any tutorial link would be helpful too. So you're saying that a firmware can only be copied to another controller card/ external programmer? I was wondering if there is any way to extract the firmware from the current board as a workable file that I can tweak in Arduino IDE. So far I've only been able to extract EEPROM value using Repetier host. But for all I know, those values are incorrect as my printer is likely reading those values following the unfortunate reboot  
> **username_1**: @OjasviSrivastava - Sorry, I meant to reply last night. There is no way of extracting the code from an Arduino and then modifying it. *You need the original source code files*. See [Is there any way to download a sketch from an Arduino?](https://arduino.stackexchange.com/questions/179/is-there-any-way-to-download-a-sketch-from-an-arduino). OK, you can obtain the machine code, but unless you are an expert, or guru, modifying it is impossible.  
> **username_1**: @OjasviSrivastava - There really isn't much risk in uploading new firmware. The only risk, which I guess Mark is referring to, is that you may/will not have the correct firmware settings for your make of printer, and therefore the printer may not work correctly, until you get the firmware settings correct. So, in that respect, it is a good idea to buy a secondary Arduino Mega and RAMPS1.4 board to play with, for just $10 (Chinese clones work just fine). But, as you say that your board already has bad settings, then you haven't much to lose by uploading new firmware to it, except the warranty.  
> **username_2**: @OjasviSrivastava This [article](https://www.hackster.io/rayburne/avr-firmware-duplicator-115d8f) explains how to use an AVR programmer to backup your existing firmware so (in theory) you can always get back to your original code.  As Greenonline mentioned, this is a binary backup and is not intended to be modified.  Trying to reverse-engineer modifiable code from the binary code on the Arduino is not realistic.  
> **username_1**: @OjasviSrivastava - As comments may be deleted at any time, I have moved the pertinent information, from those comments, into my answer, as footnotes, so that the information is not lost. Please see my updated answer.  
> **username_1**: @markshancock - As comments (especially extended discussions, such as this) may be deleted at any time, it might be wise to post the information, contained in your comments, into an answer - so that the information is not lost. Also, it would centralise the information, and save others having to trawl through a lot of comments  :-)  
> **username_0**: @Greenonline I've edited the question with a picture of my printer's control board. Please let me know how to proceed. My printer is not under warranty otherwise the vendor would've taken care of everything.  

---

