IMPORTANT EDIT 7/28/17: This method of adding custom profiles to MatterControl was deprecated with the release of cloud-based profiles. 

If you want to add a custom profile to MatterControl, generate the .printer file as outlined in this article, then email it to support@mattercontrol.com and we will upload it so it is available for you and all MatterControl users.

--------------------------------------------------------------------------------------------

Making MatterControl an intuitive, easy to use 3D printing software solution has been the central goal of the MatterControl development team since its inception. That’s why we work directly with printer manufacturers to preload their optimal print settings into a drop-down menu to get you up-and-printing on the most popular makes and models in just a few clicks.

But what if you’ve built your own printer, or you are an advanced user and want to create a custom profile? To show some love to these innovative users, we've created this step-by-step guide on how to integrate a custom printer profile into MatterControl.

Step 1: Navigate to the “PrinterSettings” folder in your MatterControl package

Below are the locations of the “PrinterSettings” folder on different operating systems

Windows

C:\Program Files (x86)\MatterControl\StaticData\PrinterSettings

Mac OS X

/Applications/MatterControl.app/Contents/MonoBundle/StaticData/PrinterSettings

Linux

/usr/lib/MatterControl/StaticData/PrinterSettings

Once you’ve located the “PrinterSettings” directory, create a new folder and name it “Custom Manufacturer." Now go into the “CustomManufacturer” folder, create a new folder and name it “CustomPrinter."

Folder list with CustomManufacturer selected


Step 2: Navigate to the “OEMSettings” folder and open the Settings.json file

Below are the locations of the “Settings.json” file on different operating systems:

Windows:

C:\Program Files (x86)\MatterControl\StaticData\OEMSettings\Settings.json

Mac OS X:

/Applications/MatterControl.app/Contents/MonoBundle/StaticData/OEMSettings/Settings.json

Linux:

/usr/lib/MatterControl/StaticData/OEMSettings/Settings.json

Once you have opened up the Settings.json file add “CustomManufacturer” to the PrinterWhiteList.

Code snippet listing whitelisted 3D printer manufacturers


Now when you open up MatterControl and attempt to add a printer, you will see your custom printer appear in the Make and Model drop down menu.

Custom 3D printer setup form with name, make, and model fields


Step 3: Create the default settings file for your custom printer

In the same window that you just viewed your custom printer, select the “Other” option for Make,

and the “Other” option for Model and then click the “Save & Continue” button.

3D printer setup screen with printer name, make, and model fields


The next window will prompt you to select a baud rate, but you can click Cancel. Once you are back at your list of printers, select the Other Other printer that was just created.

3D printer configuration selector showing Other Other not connected


Now you can navigate to your Settings page in MatterControl and enter settings that are specific to your custom printer. The most important settings will be hardware specifications such as nozzle diameter, number of extruders, filament diameter etc..

Printer hardware settings panel with heated bed and extruder count options


MatterControl print area settings for bed size, print center, build height, Z offset, and bed shape


After you have settings that you are happy with, click on the “Options...” dropdown and select the “Export” menu option.

3D printing software Options menu with Import and Export commands


Once the file dialog window opens, rename the “default_settings.ini” to “config.ini” and save it to the “CustomPrinter” folder you created earlier.

Step 4:Create the setup.ini file so that you can connect to your printer

Open up a text editor and enter the information shown in the picture below:

Configuration snippet setting baud rate to 250000 and Windows driver to MHSerial.inf


If you have a different baud rate set in the firmware on your printer, set it to that value. Save this file as ‘setup.ini’ and place it in the “CustomPrinter” folder that was created earlier.

Congratulations...it’s a new printer profile!  Whenever you open MatterControl, it will now discover and interact with your profile from the drop-down menu.  If you’d like to tweak any of your settings down the line, simply return to the “CustomPrinter” folder and repeat the process, entering in your new settings.  

Happy printing!