Simplify 3d printer

Buy Simplify3D Software | Simplify3D

What comes with your Simplify3D license?

  • Powerful Software – the most powerful 3D printing software available, giving you complete control over how your prints are created
  • Extensive Support Resources – access industry-leading resources that help you improve your print quality and quickly learn the software
  • Full-Time Professional Support Staff – our 3D printing experts are here to help if you run into any problems along the way
  • Latest and Greatest Updates – your license includes 1 year of free upgrades so that you can stay up-to-date with the latest improvements
  • Instant Online Delivery – download and start using the software immediately after your purchase

Purchase Simplify3D today

Buy Now

You may qualify for volume discounts!
Please contact us to learn more.

Try it for a full two weeks!
If you don’t love the software, return it for a full refund.

Frequently Asked Questions

How do I download the software after my purchase?

Simplify3D Software is an electronic download. Following your purchase, a verification email will be sent to you from [email protected] You can follow the instructions in this email to download and install the software. If you do not see this email within 30 minutes, please check your spam folders.  Please Contact Us if you need additional help locating the verification email. If you ever need to download the software again in the future, you can do this by logging in to your Simplify3D account on our website and then proceeding to the Downloads page.

How do I obtain a receipt for my purchase?

An order confirmation will be sent to you immediately following your purchase of the software.  This email contains a “Click here for a printable version of this document” link near the bottom that can be used to view your official proof of purchase.

How can I get an receipt with my company’s VAT number or a relevant PO number?

If you are purchasing on behalf of a company, please enter the company name during the checkout process.  You will also have the option of entering a PO number or a VAT number during checkout.   This information will then be included in the order confirmation that is sent to you.

How do I purchase a license for someone else while still receiving the receipt for the purchase?

During the checkout process, please select that the license is “for someone else” and enter the name and email address of the person who will be using the software.  After completing the purchase, the order confirmation will be sent directly to you, while the software download instructions will be sent to the licensee.

How can I add an additional license to my existing account?

If you need to add an additional license to your account, please complete the normal checkout process making sure that you enter the same email address that is currently associated with your account.   If the same email address is used, the new license will be automatically merged into your existing account.

Does Simplify3D offer an education discount for makerspaces, robotics teams, or administrators?

Yes, we currently offer a 25% discount to makerspaces and robotics teams. The team or space needs to be an official part of the school in order to qualify for the discount. Please review our Education page for more details. Once you are ready to place your order, please select the “Education programs” option on our Contact Form. Please contact us prior to placing your order, as this discount cannot be applied after the purchase has been submitted.

Do you offer an educational discount for students and teachers?

Yes, we currently offer a 25% educational discount for all enrolled university students and faculty. This discount is for the same professional version of Simplify3D that we offer to all other customers, so you will have access to all of the great features and performance that our software is known for. Once you are ready to purchase, please select the “Education programs” option on our Contact Form. Please contact us prior to placing your order, as this discount cannot be applied after the purchase has been submitted.

Do you offer bulk discounts for purchasing a large quantity of licenses?

Yes, we offer bulk discounts for organizations that need to purchase many licenses at once.  Please Contact Us for additional details.

Is Simplify3D available in other languages?

Simplify3D is available in English, Japanese, Spanish, German, French, Italian, and Portuguese. To change the display language, go to Help > Change Language in the Simplify3D menu bar.

Software Features

The last 3D printing software you’ll ever need!

Simplify3D includes everything you need to work with your 3D printer. Model setup and plating, slicing and print file creation, pre-print simulations, customizable support structures, mesh analysis and repair, machine control and monitoring, and much more! With support for hundreds of 3D printers, Simplify3D is the last software you’ll ever need!

New! Simplify3D Version 4.1 just released! See What's New

Amazing Features

Calibrated for Your 3D Printer

Support for Hundreds of Different 3D Printers
Simplify3D has partnered with 3D printing companies in over 30 countries to ensure the software is compatible with the latest 3D printing hardware. We have tested and optimized hundreds of different 3D printers so that you can achieve exceptional results right out-of-the-box!

Easily Switch Between Multiple Machines
Instead of learning a different software program for each 3D printer that you buy, you can now use the same application for all of your 3D printing hardware. The software can be quickly switched between different machine configurations, allowing you to control everything from one central application.

Simulate Your Prints in Advance

Incredibly Realistic Simulations
Simplify3D includes an incredibly realistic pre-print simulation that allows you to see the exact actions your 3D printer will perform before you start the print. You can literally watch an animation of the extruder as it lays down each individual line of plastic, giving you more insight than ever before!

Identify Issues In Advance
The simulation includes information about the exact speeds, sequences, and settings that are used for your print so that you can quickly verify these settings at a glance. Stop wasting time on failed prints and use the realistic simulation to spot potential issues before even turning on your 3D printer!

Award-Winning Support Structures

Improved Print Quality and Easy Break-Away Removal
Simplify3D is well-known for providing the best support structures available, allowing you to achieve the highest level of surface quality for even the most complex prints. Once the print is finished, the supports break-away easily without any special tools or post-processing.

Customize Your Supports for the Perfect Print
The software automatically suggests where support material should be added, but the ability to customize your supports is a fan favorite! Easily add more support in areas that may be prone to instability, or remove unnecessary supports for faster print times.

Expert Resources and Support

Resources to Improve Your Print Quality
Simplify3D customers have access to industry-leading resources that have been developed to help our customers improve their print quality. We’ve put decades worth of knowledge into these resources to make sure you can achieve the best print quality possible.

Experts Are Available to Help
If you encounter issues using your 3D printer, contact the 3D printing experts at Simplify3D who are here to help! Our support team has helped thousands of users improve their print quality. Buy with confidence knowing that our team is available if you run into any issues.

Universal Compatibility

Trusted by users worldwide in over 120 countries. Software translations in French, German, Italian, Japanese, Spanish and Portuguese.

Simplify3D has already been tested and optimized for hundreds of different 3D printers.
See Supported Printers

Windows, Mac, and Linux versions are available to support any desktop environment.
View Technical Specifications

Pro-Tools and Advanced Options

Built for High Performance

Simplify3D is known for its lightning-fast slicer that allows you to process incredibly complex models with ease. This allows you to spend more time perfecting your prints, and less time waiting on the software!

Variable Print Settings

Simplify3D has a unique ability that allows you to vary the slicing settings for different regions of your print. Optimize the settings for different features of your model or vary the mechanical properties of your part with only a few clicks!

Optimized for Multiple Extruders

The software contains many features that were specifically created to improve the print quality from multi-extruder printers. Quickly access these features using the built-in Dual Extrusion Wizard for simple setup.

Precision for Small Features

Innovative features allow you to print smaller shapes than previously possible on FFF/FDM printers. The software dynamically adjusts the amount of flow to print small, tapering, or sharp edges with better definition.

Multi-Part Customization

Simplify3D includes an unprecedented level of control for multi-part prints. Adjust the order of how each part is printed, optimize the settings used for different models, or print each object one-by-one to minimize travel movements.

Total Control, Improved Quality

If you’re looking to achieve the best print quality possible, the software includes many advanced tools to optimize your printer’s performance. Whether you’re seeing zits, strings, banding, or gaps, the software has the options you need!

Powerful Scripting Engine

The software includes a built-in scripting engine so that you can customize your print files. Insert custom commands at a specific layer, modify critical sequences of the print, or customize the command syntax for new applications.

Mesh Analysis and Repair

If you’ve ever worked with a problematic STL file, you know how frustrating that can be! Simplify3D includes built-in tools to help you identify and fix common mesh issues so that you can quickly get back to printing.

Machine Control and Monitoring

Simplify3D knows how to talk to your printer. The software includes a full machine interface, allowing you to manually control the 3D printer. You can also monitor the printer in real-time to make sure you know the latest status.

Start improving your print results today!

Buy Simplify3D Now - Risk Free!

Simplifying work with a 3D printer using GCODE macros


  • G commands
  • M commands
  • Types of macros for 3D printers
    • Initial
    • Between layers
    • Final
    • Special0019
    • Macros in Cura
    • Basic command tables
  • If you look in the dictionary of computer terminology, then a macro (or macro command) is a software algorithm of actions recorded by the user. That is, by definition, the computer must repeat the actions of a person. But in 3D printing, the term has a different meaning. Instead of recording and repeating human actions, the 3D printer will also execute commands, but now they will be written by hand, and not using a slicer. This allows you to directly control the actions of the printer, bypassing the standard way of slicing the model with a slicer. If you look at the GCODE file with notepad or any other text editor, you will see thousands and even tens of thousands of lines with a combination of letters and numbers. It may be scary, but in fact, almost any macro can be written in 5-10 lines. The main thing is to understand the order of writing a separate command.

    Structure of G-code files

    Each GCODE file can be divided into 2 parts: the comment that occurs at the beginning of the program and after the commands, and the commands themselves. Consider the example of a model sliced ​​using PrusaSlicer (Version 2. 3.0).

    In the first line we are greeted by the name of the slicer, its version, date and time of slicing:

    ; generated by PrusaSlicer 2.3.0+win64 on 2021-04-22 at 12:31:50 UTC

    Please note that at the very beginning of the line there is a semicolon sign, it indicates a comment. Everything that is in the line before it is read by the printer, but it does not pay attention to what is after it.

    Next, we see several lines that show us the line width settings that the slicer used to slice the model. All of them are comments.

    ; external perimeters extrusion width = 0.45mm

    ; perimeters extrusion width = 0.45mm

    ; infill extrusion width = 0.45mm

    ; solid infill extrusion width = 0.45mm

    ; top infill extrusion width = 0.40mm

    ; first layer extrusion width = 0.40mm

    After that there are lines that describe the initial temperatures, the command for finding the zero point of coordinates and the commands for moving. All commands that are involved in the beginning and the process of printing will be discussed further.

    Tip: Many slicers, when slicing the GCODE for the printer, leave comments in the file indicating the layer change and / or its number. This will help in orienting in commands during manual editing.

    Gcode command

    Many are mistaken, calling this language for the operation of a 3D printer a programming language. In fact, this is a generally accepted format for working with CNC machines, including 3D printers. Each command is on a separate line and represents the name of the command (letter and number) and its parameters (also letters and numbers). For example, a command to move the nozzle to a certain coordinate with plastic extrusion:

    G1 X101.912 Y136.607 E2.04825

    G1 - team name

    X101.912 - X coordinate

    Y136.607 - Y coordinate

    E2.04825 - amount of extruded plastic

    All commands are divided into two main types:

    • G commands

    • M commands

    There are other few types, but they are not used in 3D printers, so we will omit them in this article.

    G commands

    All commands in this group are for movement or calibration. A 3D printer does not use all of them, and not every 3D printer uses the same commands as another. For example, there is a command to auto-calibrate the table. Obviously, if this function is not provided for in your printer by design, then this command will not be executed. Below is a table of the most popular G-commands:

    Team Options Description

    X - X coordinates
    Y - Y coordinates
    Z - Z coordinates

    Moving without plastic extrusion

    X - X coordinates
    Y - Y coordinates
    Z - Z coordinates
    E - amount of pressed plastic (mm)

    Moving with plastic extrusion


    S - time in seconds
    P - time in milliseconds



    X-axis X
    Y - Y axis
    Z - Z axis

    Moving to zero coordinates.

    If parameters are specified, then parking only along the specified axes


    The parameters differ depending on the firmware. Automatic construction of a table height map


    - Transition to absolute coordinate system (all coordinates are relative to zero)


    - Change to relative coordinate system (all coordinates are relative to the current position of the nozzle)


    X - X coordinates
    Y - Y coordinates
    Z - Z coordinates
    E0 - coordinates of extruder No. 0 (amount of extruded plastic)

    Set position without movement and extrusion

    M commands

    These commands are auxiliary. They are mainly related to setting and calibrating temperatures, working with files, and setting up movement parameters.

    Team Options Description


    X - motors according to X
    Y - motors according to Y
    Z - motors according to Z
    E0 - extruder motor No. 0

    Supply power to all motors if no parameters are specified. Otherwise, only the specified

    X - motors according to X
    Y - motors according to Y
    Z - motors on Z
    E0 - extruder motor No. 0

    Power off on motors

    Command reverse M17


    - Listing files from an SD card


    - Memory card initialization


    - Disabling the memory card


    After the command enter the name of the file Selecting a file from the SD card


    - Start execution of file selected with M37


    - Pausing SD Card Printing


    After the command enter the name of the file

    A file with the specified name is created or overwritten, all commands that are entered into the printer via a wired connection will be written to it


    After the command enter the name of the file

    The file with the specified name is saved. All further commands are executed as usual.


    After the command enter the name of the file

    Deleting a file with the specified name



    Switching to absolute mode for the extruder

    M83 -

    Switching to relative mode for the extruder


    X - value on X
    Y - motors according to Y
    Z - motors according to Z
    E0 - extruder motor No. 0

    Set the number of steps per millimeter for each specified motor


    S - nozzle temperature

    Set the nozzle temperature without waiting for heating up to the set temperature



    Print nozzle temperature to console


    S - rotation speed (from 0 to 255)

    Turn on fan with speed indication



    Turn off the fan



    Cancel waiting for the nozzle to heat up to the temperature specified in M109 and M190


    S - nozzle temperature

    Set the nozzle temperature and wait for heating to the set temperature



    Emergency stop:
    All heaters turn off
    Motors are de-energized


    Xn (1/0) - X axis limit switch

    1 - invert value
    0 - do not invert value

    Get the status of the limit switches on the axes, if parameters are not specified


    S - table temperature

    Set the table temperature without waiting for heating to the set temperature


    S - table temperature

    Set the temperature of the table and wait for heating to the set temperature


    D - diameter (in millimeters)
    T - extruder number

    Set filament diameter


    X - acceleration for the X axis
    Y - acceleration for the Y axis
    Z - acceleration for the Z axis
    E - extruder acceleration

    Setting accelerations along the axes


    X - jerk for X axis
    Y - jerk for the Y axis
    Z - jerk for the Z axis
    E - extruder jerk

    Setting the jerk along the axes


    X - offset along the X axis
    Y - offset along the Y axis
    Z - offset along the Z axis

    Setting the offset relative to the limit switches


    S - frequency in Hertz

    P - duration in milliseconds

    Emits a beep at a specified frequency for a specified time


    H - heater number
    P - coefficient P
    I - factor I
    D - coefficient D

    Set the value of PID parameters for a given heater

    Some of the above commands can be used before printing to evaluate the status of the printer, such as M20 and M119. But many other commands are used to create macros, which we will describe next.

    Types of macros for 3D printers

    Like any other text document, GCODE files can be edited in Notepad. But for this you need to open the file every time, find the desired section and enter your macros. Instead, many slicers offer to manually enter macros, which will then be automatically inserted at the beginning, end or middle of the GCODE file. PrusaSlicer has the most flexibility - you can add a macro in it at the beginning, at the end, before and after layer changes, during a pause and between objects in a sequential print. Next, we will look at the most popular and convenient macros.


    All macros of this type are designed to prepare the printer before printing. For example, with a single M301 command, you can set the PID on the printer for different temperatures. This can be very important, as the PID depends not only on the characteristics of the printer and its design, but also on the temperature of the print. If the hot end is very inert, then the PID values ​​for different temperatures will differ slightly, so it makes no sense to change them every time. But if the hot end has low inertia, then the difference in PID coefficients for different temperatures is large enough to spoil the model due to temperature jumps. You can read more about PID tuning in the article on choosing the print temperature on our website. Once you find the value of the PID parameters for the temperatures you print most often, they can be substituted into the initial GCode. In PrusaSlicer, this can be done in the "Printer Setup" window, inside the "Custom Gcode" tab.

    For convenience, you can create several printer profiles for different temperatures at once.

    Loading filament

    If you change the plastic every time you print, then for convenience you can use a small macro to change / refill the filament before printing:

    G91; setting the origin relative to the last position

    G1 E-100 F2400; Pulling out the filament
    G4 S15; Pause for 15 seconds

    G1 E100 F2400; Filament loading

    G90; Transition to absolute coordinates

    G92E0; Setting the extruder coordinate to zero

    The value of the E parameter in the two G1 commands must be matched to your printer. If you have a bowden extruder, then measure the length of the tube in millimeters and add 30-50 millimeters, then insert the resulting value into parameter E. If you have a direct extruder, you can insert a value of 50-70mm. Paste all the received code into the “Starting G-code” window after the standard commands.

    Attention: after each change, do not forget to save the profile!

    Between coats

    This group contains macros that directly affect the printing process. They are often the most difficult, due to the need to manually edit the GCode file in notepad or other text editor. But in fact, there is nothing complicated about this, because each such file has comments that make it easy to find the desired section of code. For example, you can add a sound signal when changing layers. To do this, use the M300 command:

    • M300 S500 P800

    It should be borne in mind that the simplest speaker is installed in the printer, so you should not specify a frequency below 500 Hz, as the sound will be quieter and greatly distorted. You can use this site to select the frequency. The square waveform most closely resembles the sound of a speaker. Once you have chosen the appropriate frequency and time, the resulting string can be pasted into the “G-code executed on layer change” window.

    Filament change

    This macro allows you to print one model in several colors on a printer that has one extruder. There are only 2 limitations: the color will change exactly at the border between the layers, and with each layer change, you need to manually change the filament.

    First you need to determine the place to change the layer. To do this, calculate the height at which the boundary between the layers is located. This is easy to do with the formula:

    Layer change height = layer number * layer height (in millimeters).

    After you find the height, you need to open the Gcode file and find the first line in it, which contains the Z parameter with the desired layer height. For example, we need to change the color of the calibration cube on the tenth layer, while we print with a layer height of 0. 2 mm. So in the Gcode file you need to find the first line where there is Z5. Then, after the comments that the slicer put, you need to insert the following macro:

    G91; transition to relative coordinate system

    G1Z5; raising the nozzle by 5 mm

    G90; change to absolute coordinate system

    G1 Y10 X10 F1000; moving to the edge of the table

    G4 S60; pause 60 seconds (at this time you need to insert the plastic)

    G91; transition to relative coordinate system

    G1 E100 F100; filling plastic

    G92E0; zeroing extruder coordinates

    G90; change to absolute coordinate system

    In the end, your file should look something like the image below:

    If you translate these commands into human language: as soon as the next layer begins, the printer raises the nozzle and moves it to the edge of the table. It then waits 60 seconds for you to replace the plastic. After that, the printer will extrude 100mm of loaded plastic to stabilize the flow and continue printing. This command can be inserted several times, but keep in mind: each layer change adds 1-2 minutes to the total print time and requires your active actions.


    All slicers at the end of printing leave standard commands: raising the nozzle, turning off the heaters and blowing. But if several models are printed one after another, then it will take a lot of time to reheat the nozzle and table. To prevent the printer from turning off the heat, you must remove the M104 S0 command from the “Final G-code” window. You can also increase the convenience of working with a 3D printer by adding a macro to play a sound signal at the end of printing.

    Sound alert

    To play the end-of-print melody, you must add one or more M300 commands after the standard commands in the End G-code window. For example, you can insert three consecutive beeps:

    M300 S1000 P100

    M300 S1000 P100

    M300 S1000 P100

    Or the opening theme from Mario:

    M300 S2637 P150

    M300 S2637 P150

    M300 S0 P75

    M300 S2637 P300

    M300 S2093 P150

    M300 S2637 P300

    M300 S3135 P300

    M300 S0 P300

    M300 S1567 P300

    Star Wars:

    M300 S1396 P166

    M300 S1396 P166

    M300 S1396 P166

    M300 S932 P1000

    M300 S2793 P1000

    M300 S2489 P166

    M300 S2349 P166

    M300 S2093 P166

    M300 S1864 P1000

    The Simpsons:

    M300 S2093 P562

    M300 S2637 P375

    M300 S2959 P375

    M300 S1760 P187

    M300 S3135 P562

    M300 S2637 P375

    M300 S2093 P375

    M300 S880 P187

    M300 S1479 P187

    M300 S1479 P187

    M300 S1479 P187

    M300 S1567 P750

    And even music from Indiana Jones:

    M300 S1318 P240

    M300 S0 P120

    M300 S1396 P120

    M300 S1567 P120

    M300 S0 P120

    M300 S2093 P960

    M300 S0 P180

    M300 S1174 P240

    M300 S0 P120

    M300 S1318 P120

    M300 S1396 P960

    M300 S0 P360

    M300 S1567 P240

    M300 S0 P120

    The scope for imagination is huge, so you can come up with your own composition and record it in the form of M300 command sequences.

    Interesting fact: the author of the Make Anything channel played a tune from the Nintendo service using a 3D printer. The highlight of this video is the use of not only the speaker on the printer board, but also the sound of motors and even a kind of maracas printed on the same printer.


    This group of macros includes exceptional macros that are often inapplicable, but in some situations they can greatly simplify printing. For example, a macro for sequential printing of models. That is, the printer prints a model, then either the printer itself or a person separates the part from the table, and the printer starts printing the next model. This process has many limitations and is extremely difficult to customize specifically for your printer. An example of the execution of this idea can be seen in this video.

    Nozzle cleaning

    If the nozzle gets dirty quickly and you are tired of cleaning it, and you don’t have a silicone cover for the hotend, then you can clean the nozzle before each print using a metal brush. To do this, you need to fix a metal brush in the far corner of the table, and add the following lines to the initial G-code, after the nozzle heating commands:

    G28; Movement to the origin

    G90; change to absolute coordinate system

    G0Z10; raising the nozzle to “Cleaning Height”

    G0 Xnnn Ynnn; moving to the far edge of the brush

    G0 X(nnn-10) Ynnn; moving to the near edge of the brush

    G0 Xnnn Ymmm

    G0 X(nnn-10) Ynnn

    G0 Xnnn Ymmm

    G0 X(nnn-10) Ynnn

    G0 Xnnn Ymmm

    G0 X(nnn-10) Ynnn

    G28; return to origin

    Here, instead of Xnnn and Ynnn, there should be the coordinates at which the far edge of the brush is located. For example, for a 200x200mm table, the movement commands would look like this:

    G0 X195 Y195

    G0 X185 Y195

    The height at which the nozzle will be located must be selected experimentally. It is desirable that the bristles of the brush completely cover the nozzle, but do not interfere with its movement.

    Attention: the brush must be firmly fixed, otherwise, when it is separated from the table, it can block the movement mechanics and break the motors!

    Macros in Cura

    Relatively recently, the Cura slicer has acquired the ability to edit Gcode in the program itself. A distinctive advantage of this method is the feedback between the slicer and this function, which allows, for example, to display the remaining print time directly on the printer screen.

    To start working with macros, you need to open the post-processing window. To do this, select the “extensions” tab in the toolbar, then “post-processing” and click “Change G-code”.

    A post-processing window will open in front of you. In the left half there will be a list of plugins, on the right the settings of the selected plugin. Working with multiple plugins is similar to working with layers in Photoshop. Scripts will edit the Gcode file in order, meaning a script can affect upstream scripts, but not vice versa.

    The following is a list of scripts and their brief description:

    • Change at Z

    This script allows you to change the speed, temperature, flow and blowing power at a certain height. The values ​​are applied to all subsequent layers. You can also choose to display changes on the printer screen. Basically the script is used to print test models.

    • color mix

    This script is for mixing extruders (eg A10M from Geeetech). Unlike just two-color printing, this extruder can mix two plastics, which allows you to create transitional shades.

    • Create Thumbnail

    Create icons for Ultimaker Format Package (.ufp) files. Used when implementing a slicer in Octoprint.

    The name speaks for itself: displaying the file name and layer number on the screen.

    Displaying the remaining print time on the printer screen

    • Filament Change

    Automate the Gcode editing process for changing filament.

    It is an analogue of the Gcode insertion windows when changing the layer in PrusaSlicer

    • Retract Continue

    Allows you to add recoil during nozzle movement between parts of the model

    • Search and Replace

    Removes the specified characters and replaces them. If replaced with a space character, then this script simply removes the specified characters

    • time lapse

    This script helps in creating high-quality time-lapses using the camera. At each layer, the printer will move the carriage to the side and send a command that can activate the camera.

    If your printer has the ability to build a table height map, then this script will replace the repeated height measurement with the result of previous measurements.

    The most commonly used and useful plugins are Change At Z and Search and Replace. They cover 80% of all required changes in Gcode. Therefore, even if you are not going to use them in the near future, it is still better to study them at least at a superficial level.

    Basic command tables

    When servicing the printer, the final step in checking and setting up is to self-diagnose the printer and check it in operation. But not all actions can be done from the printer menu. For convenience, we have collected all the necessary commands in one small table that you can quickly open and use.

    Team Options Description


    X-axis X
    Y - Y axis
    Z - Z axis

    Moving to zero coordinates.

    If parameters are specified, then parking only along the specified axes


    X - value on X
    Y - motors according to Y
    Z - motors according to Z
    E0 - extruder motor No. 0

    Set the number of steps per millimeter for each specified motor


    S - temperature
    C - number of cycles

    PID autotuning command. The more cycles, the higher the accuracy


    H - heater number
    P - coefficient P
    I - factor I
    D - coefficient D

    Set the value of PID parameters for a given heater



    Emergency stop:
    All heaters turn off
    Motors are de-energized

    WARNING! If the printer gives an extruder or bed heating error, then the M112 command may not fix the problem, as this error often occurs when the transistors / relays are “jammed” or shorted! It is better to immediately turn off the power to the printer, and then find out the cause of the error.


    Expert in the field of additive and subtractive technologies, 3D equipment and CNC machines with over 10 years of experience.


    all materials

    Do you have any questions?

    Our specialists will help you with the choice of 3D equipment or accessories, and will advise on any issues.

    Optimization of a model for 3D printing using Blender software as an example / Sudo Null IT News

    Good afternoon!

    3Dtool is with you.

    Today we will not talk about any model of 3D printer, and not about the 3D printing process. We would like to talk about how to make the process of preparing a model before 3D printing more efficient.
    We all know that a large working field is good. But what to do when we start trying to create control programs for a huge part and the program goes into eternal waiting at the stage of cutting layers or exporting code to a file. There were cases when the program was prepared for more than a day. To understand what is happening, you need to delve a little into the algorithm of the process that takes place inside the “Black Box” of the slicer. Not much, because it is enough to know that the most difficult and costly thing in the process of preparing a program is cutting the model into layers and forming trajectories along these sections.

    All the complexity in quality.
    as a model.
    As a printed part.
    In optimum quality.
    in the desired quality.

    Sometimes it's a very loose concept... and so on. But we don't have a moment of philosophy.
    Let's get down to specifics. An example from life.

    As a result of 3D scanning, inaccurate, illegal and uneconomical modeling, various transformations and conversion, there are cases when the model mesh becomes proportionally dense, with a large number of extra polygons. This greatly increases the "weight" stl file. The document begins to take up a lot of memory and increases the time it takes to generate the control program code, causing the slicer to freeze and go to the bottom of the list of operating system processes. In such cases, the model must be optimized, i.e., the mesh density must be reduced without losing the quality of the geometry and the quality of the details.


    Control program preparation software - heavy, complex, inconvenient, but in our opinion terribly effective, Slic3r .

    Optimization software - absolutely free, open source Blender , supported by almost all operating systems (https://

    Go to business

    Install and run Blender . To import a model, go to File –> Import –> stl , select the required model.

    To optimize the model, use the modifier Decimate


    In order to evaluate the level of detail to which the model will be simplified without loss of quality (visually printed part corresponds to a mathematical 3D model). If you really go into details, then you need to take into account the ratio of the physical size of the printed model, the diameter of the nozzle and the height of the layer. Below, quantitatively, it is shown what such optimization procedures lead to.

    How not to do it

    Now let's go from the other side. Too low a factor reduces the quality of detail: Ratio 0.05 – 0.03 . For a small model (20-30 mm), Ratio 0.05-0.03 is suitable, since the layer height and nozzle diameter will not physically allow printing the necessary detail, which is preserved at higher ratios. And we all remember that the diameter of the nozzle is 0.3mm , and the plastic thread at the exit is a little more. And this means that all sharp edges will have a radius of at least 0.15mm .

    And in the final, a few shots of what excessive enthusiasm for the cherished parameter 9 can lead to1075 Ratio .

    Ratio: 0.

    Learn more