<h1>Basics</h1>
<p>Firmware can be distributed in 2 ways:</p>
<ul>
<li>As a compiled file (for example as .hex).</li>
<li>As an uncompiled repository (as in a preconfigured marlin distribution) that needs to be compiled at the users' side.</li>
</ul>
<h1>compiled file</h1>
<p>Compiled files <strong>can't</strong> be altered easily. The only way to change settings after installation is to send the correct commands via a <a href="https://3dprinting.stackexchange.com/questions/10573/what-is-a-printer-console-terminal">console</a> to alter the settings in the SRAM then save the new settings into the EEPROM via <a href="https://marlinfw.org/docs/gcode/M500.html" rel="nofollow noreferrer"><code>M500</code></a> from the <a href="https://3dprinting.stackexchange.com/questions/11438/m502-will-reset-all-configurable-settings-to-their-factory-defaults-which-set/11440#11440">M50X family of commands</a> - and hoping that EEPROM was activated in the firmware to begin with.</p>
<h1>uncompiled distribution</h1>
<p>To alter an uncompiled Repository, you can follow the basic path in <a href="https://3dprinting.stackexchange.com/questions/12153/updating-marlin-firmware-step-by-step-guide">Updating Marlin Firmware - Step by Step Guide
</a></p>

CC BY-SA 4.0
2020-04-25T07:10:47.400Z
2020-04-25T07:10:47.400Z
2020-06-18T08:29:41.667Z
Trish
<p>The previous answer is good, but here's one specific for Bigtreetech. </p>

<ol>
<li>Install platform.io. I use the command-line interface (CLI)</li>
<li>Modify your marlin files. You can clone existiing firmware for your board from the BigtreeTech Github for your board. </li>
<li>Remove microUSB card from your Bigtree tech board</li>
<li>Plug microUSB card into microUSB reader, and the microusb reader into the computer. You should be able to read your microUSB card</li>
<li>Enter the command in the root directory of your Marlin files: <code>platformio run -e STM32F103RC_bigtree_USB</code>. At least, this is the one for my board. You should have to run this in one folder before the <code>Marlin</code> folder. </li>
<li>It creates a file called <code>firmware.bin</code> in the directory <code>.pio/build/STM32F103RC_bigtree_USB/firmware.bin</code>. Copy it to your microUSB card, replacing and deleting any existing <code>.bin</code>. You can use the name <code>firmware.bin</code>.</li>
<li>Remove microSD card from computer and plug into board.</li>
</ol>

<p>In your Marlin <code>Configuration.h</code> file, there should be a variable called something like <code>MACHINE_NAME</code>. If you make that name custom, then it will appear in the Octoprint terminal when connecting to your board, letting you know that you have updated the firmware. </p>

CC BY-SA 4.0
2020-04-25T13:23:53.483Z
2020-04-25T16:22:57.647Z
2020-04-25T16:22:57.647Z
K Mmmm
<p>I recently purchased a BIGTREETECH SKR mini E3 V1.2 and need to adjust some of the settings in configuration h to accommodate for my custom built 3d printer. In the past I've used the RAMPS 1.4 board and adjusted the firmware in the arduino IDE. What is the best way/recommended way to do this for the mini E3 V1.2.</p>

<p>Thanks.</p>

<marlin><firmware><bigtreetech>
How to access BIGTREETECH firmware
Jack Hasselbring
# How to access BIGTREETECH firmware

(Asked by: username_0 on 2020-04-25)

I recently purchased a BIGTREETECH SKR mini E3 V1.2 and need to adjust some of the settings in configuration h to accommodate for my custom built 3d printer. In the past I've used the RAMPS 1.4 board and adjusted the firmware in the arduino IDE. What is the best way/recommended way to do this for the mini E3 V1.2.

Thanks.

**Tags:** marlin, firmware, bigtreetech

---

## 2 answers

### Answer by username_1 on 2020-04-25. Score: 1 | Accepted answer

# Basics

Firmware can be distributed in 2 ways:

* As a compiled file (for example as .hex).
* As an uncompiled repository (as in a preconfigured marlin distribution) that needs to be compiled at the users' side.

# compiled file

Compiled files **can't** be altered easily. The only way to change settings after installation is to send the correct commands via a [console](https://3dprinting.stackexchange.com/questions/10573/what-is-a-printer-console-terminal) to alter the settings in the SRAM then save the new settings into the EEPROM via [`M500`](https://marlinfw.org/docs/gcode/M500.html) from the [M50X family of commands](https://3dprinting.stackexchange.com/questions/11438/m502-will-reset-all-configurable-settings-to-their-factory-defaults-which-set/11440#11440) - and hoping that EEPROM was activated in the firmware to begin with.

# uncompiled distribution

To alter an uncompiled Repository, you can follow the basic path in [Updating Marlin Firmware - Step by Step Guide](https://3dprinting.stackexchange.com/questions/12153/updating-marlin-firmware-step-by-step-guide)


---

### Answer by username_2 on 2020-04-25. Score: 2

The previous answer is good, but here's one specific for Bigtreetech.

1. Install platform.io. I use the command-line interface (CLI)
2. Modify your marlin files. You can clone existiing firmware for your board from the BigtreeTech Github for your board.
3. Remove microUSB card from your Bigtree tech board
4. Plug microUSB card into microUSB reader, and the microusb reader into the computer. You should be able to read your microUSB card
5. Enter the command in the root directory of your Marlin files: `platformio run -e STM32F103RC_bigtree_USB`. At least, this is the one for my board. You should have to run this in one folder before the `Marlin` folder.
6. It creates a file called `firmware.bin` in the directory `.pio/build/STM32F103RC_bigtree_USB/firmware.bin`. Copy it to your microUSB card, replacing and deleting any existing `.bin`. You can use the name `firmware.bin`.
7. Remove microSD card from computer and plug into board.

In your Marlin `Configuration.h` file, there should be a variable called something like `MACHINE_NAME`. If you make that name custom, then it will appear in the Octoprint terminal when connecting to your board, letting you know that you have updated the firmware.


---

