Sailfish Firmware - Installation Guide

Install Guide > > > Setup

The Sailfish Firmware referenced in this manual can be found on Thingiverse Thing 32084


This document provides directions on how to install versions 4.0 and later of Sailfish Firmware on a Replicator 1, Thing-o-Matic, Cupcake, or other RepRaps using either Gen 4 or Gen 3 electronics. For versions prior to v4.0, please see Jetty Firmware - Setup Guide.

Sailfish requires use of "ReplicatorG 39 - Sailfish" or later. This version of Sailfish may be obtained at Thing 32084. Use of "ReplicatorG 40" or "ReplicatorG 40 - Sailfish" is not recommended with one exception: to enable "Extruder Hold" for bots with 3mm filament extruders.

Machine Requirements

The Sailfish firmware described here runs on MightyBoard, Gen 4 and Gen 3 electronics. For Replicators, single and dual extrusion is supported.

  • Replicator 1s: Makerbot MightyBoard revE or later electronics with one or two extruders.
  • Thing-o-Matics: a Makerbot v2.X motherboard, a Makerbot v3.6 Extruder Controller, Makerbot v3.3 Stepper Drivers, a stepper-based extruder, and an Arduino Mega or Arduino Mega 2560. Other than the extruder, these are all "stock" Thing-o-Matic electronics; i.e., Gen 4 electronics. Stepper-based extruders include the Mk6, Mk6+, Mk7, and Mk8. Other electronics and extruders may or may not work with the Sailfish firmware.
  • Cupcakes with Gen 4 electronics: As per the above.
  • EXPERIMENTAL: Cupcakes with Gen 3 electronics: A 3G5D Shield or the "Ugly Cable Hack" is required in order to control a stepper-based extruder. Additionally, the remaining complement of Gen 3 electronics: RepRap Motherboard v1.2, Plastruder Extruder Controller, and v2.3 or later stepper drivers.

Volumetric 5D and Skeinforge 50

Thing-o-Matic and Cupcake operators: please note that Sailfish assumes the use of Volumetric 5D and works best with Skeinforge 50 and later. The machine profiles supplied with "ReplicatorG 39 - Sailfish" all assume use of Volumetric 5D.

For Replicator operators, note that your out-of-the-box experience with ReplicatorG and Skeinforge assumed use of Volumetric 5D: you were using even if you did not realize it. Consequently, there's no change to your usage of Skeinforge here: this only impacts Thing-o-Matic and Cupcake operators.

Step 1: Save your acceleration settings

This step is only applicable to Replicator operators.

You may wish to note your existing 5.5 or 6.0 firmware acceleration settings from ReplicatorG's Onboard Preferences window,

  1. Launch your current version of ReplicatorG — do not use "ReplicatorG 39 - Sailfish" yet
  2. Connect to your bot via USB
  3. From the Machine menu, select "Onboard Preferences…"
  4. In the resulting Onboard Preferences window, note the settings from the Acceleration tab

Step 2: Install the firmware

Before proceeding you should know the motherboard type you have. For Gen 4 electronics (Thing-o-Matics, or upgraded Cupcakes), this will be an Arduino Mega or Arduino Mega 2560 and will appear in ReplicatorG's Firmware Upgrade window as "MakerBot Motherboard v2.X (Gen4)" or "MakerBot Motherboard v2.X (Gen4) with Mega 2560". For Gen 3 electronics (Cupcakes), it'll be a RepRap Motherboard v1.X and will appear in ReplicatorG as "RepRap Motherboard v1.X (Gen3)".

If you don’t know the board type, stop now and inspect your bot to find out the type of board you have installed. For Thing-o-Matics, you will need to open up the bottom to inspect the board. You may even have to remove the Gen 4 shield (Motherboard v2.X) from the Arduino board. If that is the case, then carefully remove it, lifting straight up. When re-attaching it, be careful to not bend any of the pins.

Stop Conveyor if using MakerWare(tm)

The Conveyor component of MakerWare(tm) takes control of the USB connection to your bot and prevents ReplicatorG from communicating with the bot. Conveyor remains running in the background even if MakerWare is not running. You must stop Conveyor before updating your firmware and using ReplicatorG to communicate with your bot. Note that you can continue to use MakerWare to manipulate STL files and generate gcode, even when Conveyor is stopped.

To stop Conveyor, launch MakerWare(tm). From MakerWare's "Services" menu, select the "Stop Conveyor" item. To restart Conveyor, use the "Services" menu's "Restart Conveyor" item.

Updating the Extruder Controller firmware

The Sailfish firmware is a derivative of version 3.1 of the motherboard firmware. Consequently, you must first ensure that your Thing-o-Matic's Extruder Controller (EC) is updated to v3.1 firmware. You can do this with ReplicatorG as per the directions found at

Thing-o-Matic EC

Thing-o-Matic owners should complete this step before beginning the next step.

This step is not necessary for Cupcakes using Gen 3 electronics and the 3G5D shield. However, directions on upgrading your Plastruder firmware may be found at:

Plastruder Firmware Update

Obtaining the Sailfish firmware

Start ReplicatorG and and from the ReplicatorG menu, select “Preferences”. Click the “Advanced” button. Change the “Firmware update URL” field from:


Then click “Close”.


After a few minutes, you will see something written in the bottom log region of ReplicatorG indicating the firmware has been downloaded; e.g.,

3495 bytes written to ~/.replicatorg/firmware.xml
351571 bytes written to ~/.replicatorg/firmware/Mighty-mb40-Sailfish-v6.2.0-r642.hex
345737 bytes written to ~/.replicatorg/firmware/MB-mb24-Jetty-v3.1-3.5-r507.hex
328224 bytes written to ~/.replicatorg/firmware/MB-mb24-Sailfish-v4.0-r642.hex
345716 bytes written to ~/.replicatorg/firmware/MB-mb24-2560-Jetty-v3.1-3.5-r507.hex
328203 bytes written to ~/.replicatorg/firmware/MB-mb24-2560-Sailfish-v4.0-r642.hex
159154 bytes written to ~/.replicatorg/firmware/MB-rrmbv12-5DShield-Jetty-v3.1-3.5-r634.hex

If you don’t see this message after a few minutes, restart ReplicatorG.

Installing the Sailfish firmware

Connect your bot via USB, and then power your bot on. Check the "Connection (Serial Port)" sub-menu of ReplicatorG's "Machine" menu. Make sure that you see the USB port for your bot listed. If it does not appear, then select the "Rescan serial ports" item of that sub-menu. You cannot proceed until your bot's serial port appears.

From ReplicatorG select the "Upload New Firmware" sub-menu of the “Machine” menu. You’ll see different boards listed. The suitable choice will be one of,

  1. Makerbot Replicator (MightyBoard) — Use for Replicator 1
  2. MakerBot Motherboard v2.X (Gen4) — Use for the Arduino Mega
  3. MakerBot Motherboard v2.X (Gen4) with Mega 2560
  4. 3G 5D Shield for 3G Hardware — Use for Cupcakes with Gen3 electronics

Select the correct one for your bot and then click "Next".

You should then see firmware listed. In the following picture you see 4.0
as well as earlier versions; however, select the latest version. For a Replicator, the screen might appear as


For a Thing-o-Matic,


Click "Next" and then select the USB port your bot is connected to (it’s normally the first item). Again, click "Next":


Now press the reset button on your bot a fraction of a second before you click the “Upload” button on your computer screen. You may have to try this a few times, but when you have it correct, you’ll see the debug light rapidly flash whilst the upload takes place.

When the upload has finished, restart ReplicatorG and ensure that you can connect to your bot. The connect should happen automatically if you had previously checked the "Automatically connect to machine at startup" box in ReplicatorG's preference window.

Note some machines may need the bot to be powered off to upgrade, some require electronics to be disconnected. This is a standard upgrade: whatever worked last time you installed firmware, is the same you should do here.

Step 3: Let your bot reboot

Once the firmware has been uploaded, your bot should perform a software reset, thereby rebooting itself. Connect to your bot over the USB cable from ReplicatorG. You should see in the activity log window at the bottom of ReplicatorG that the connection is successful and the reported firmware is the new version. There will also be a report of the Extruder Controller firmware. The Extruder Controller firmware will still be an older version such as 3.1. That is expected and as it should be.

Step 4: Setup

You're now ready to setup "ReplicatorG 39 - Sailfish" and your Makerbot for accelerated printing. Proceed to the Setup Guide.

Install Guide > > > Setup

Unless otherwise stated, the content of this page is licensed under GNU Free Documentation License.