Sửa chữa Robot đồ chơi công nghệ
Sửa chữa Robot dân dụng

Experience 3d printing for newbie (Extend)

Posted at: Wenesday - 07/12/2016 11:20 - post name: SuperG
Experience 3d printing for newbie (Extend)

Experience 3d printing for newbie (Extend)

So i want to turn off the bed at some layer height or layer # to prevent my tape from pealing off... How do that?

Can Turnoff Hotbed at Gcode?

This are my last lines of code

G1 X12.0 F4000 ; home (almost) x - stops extruder crashing into frame if at very top of Z height
G1 Y170 F4000 ; move the print to the front.
M104 S0 ; make sure the extuder is turned off.
M140 S0 ; make sure the bed is turned off.
M84 ; shut down motors.

Is there otherway to turn off bed after layer # or height for Cura?

You can do it with this plugin:



Open Cura go to plugins then click in Open plugin location and copy the plugin you download in that folder and restart Cura.

Implemented G Codes:

  • G0 -> G1
  • G1 - Coordinated Movement X Y Z E
  • G2 - CW ARC
  • G3 - CCW ARC
  • G4 - Dwell S or P
  • G10 - retract filament according to settings of M207
  • G11 - retract recover filament according to settings of M208
  • G28 - Home all Axis
  • G29 - Detailed Z-Probe, probes the bed at 3 points. You must de at the home position for this to work correctly.
  • G30 - Single Z Probe, probes bed at current XY location.
  • G31 - Dock Z Probe sled (if enabled)
  • G32 - Undock Z Probe sled (if enabled)
  • G90 - Use Absolute Coordinates
  • G91 - Use Relative Coordinates
  • G92 - Set current position to cordinates given

M Codes

  • M0 - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled)
  • M1 - Same as M0
  • M17 - Enable/Power all stepper motors
  • M18 - Disable all stepper motors; same as M84
  • M20 - List SD card
  • M21 - Init SD card
  • M22 - Release SD card
  • M23 - Select SD file (M23 filename.g)
  • M24 - Start/resume SD print
  • M25 - Pause SD print
  • M26 - Set SD position in bytes (M26 S12345)
  • M27 - Report SD print status
  • M28 - Start SD write (M28 filename.g)
  • M29 - Stop SD write
  • M30 - Delete file from SD (M30 filename.g)
  • M31 - Output time since last M109 or SD card start to serial
  • M32 - Select file and start SD print (Can be used when printing from SD card)
  • M42 - Change pin status via gcode Use M42 Px Sy to set pin x to value y, when omitting Px the onboard led will be used.
  • M80 - Turn on Power Supply
  • M81 - Turn off Power Supply
  • M82 - Set E codes absolute (default)
  • M83 - Set E codes relative while in Absolute Coordinates (G90) mode
  • M84 - Disable steppers until next move, or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout.
  • M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default)
  • M92 - Set axis_steps_per_unit - same syntax as G92
  • M104 - Set extruder target temp
  • M105 - Read current temp
  • M106 - Fan on
  • M107 - Fan off
  • M109 - Sxxx Wait for extruder current temp to reach target temp. Waits only when heating
  • Rxxx Wait for extruder current temp to reach target temp. Waits when heating and cooling
  • M112 - Emergency stop
  • M114 - Output current position to serial port
  • M115 - Capabilities string
  • M117 - display message
  • M119 - Output Endstop status to serial port
  • M126 - Solenoid Air Valve Open (BariCUDA support by jmil)
  • M127 - Solenoid Air Valve Closed (BariCUDA vent to atmospheric pressure by jmil)
  • M128 - EtoP Open (BariCUDA EtoP = electricity to air pressure transducer by jmil)
  • M129 - EtoP Closed (BariCUDA EtoP = electricity to air pressure transducer by jmil)
  • M140 - Set bed target temp
  • M190 - Sxxx Wait for bed current temp to reach target temp. Waits only when heating
  • Rxxx Wait for bed current temp to reach target temp. Waits when heating and cooling
  • M200 D- set filament diameter and set E axis units to cubic millimeters (use S0 to set back to millimeters).
  • M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000)
  • M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!!
  • M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec
  • M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate
  • M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk, E=maximum E jerk
  • M206 - set additional homeing offset
  • M207 - set retract length S[positive mm] F[feedrate mm/min] Z[additional zlift/hop], stays in mm regardless of M200 setting
  • M208 - set recover=unretract length S[positive mm surplus to the M207 S*] F[feedrate mm/min]
  • M209 - S<1=true/0=false> enable automatic retract detect if the slicer did not support G10/11: every normal extrude-only move will be classified as retract depending on the direction.
  • M218 - set hotend offset (in mm): T X Y
  • M220 S- set speed factor override percentage
  • M221 S- set extrude factor override percentage
  • M240 - Trigger a camera to take a photograph
  • M280 - Position an RC Servo P S, ommit S to report back current angle
  • M300 - Play beepsound S P
  • M301 - Set PID parameters P I and D
  • M302 - Allow cold extrudes
  • M303 - PID relay autotune S sets the target temperature. (default target temperature = 150C)
  • M304 - Set bed PID parameters P I and D
  • M400 - Finish all moves
  • M401 - Lower z-probe if present
  • M402 - Raise z-probe if present
  • M404 - N Enter the nominal filament width (3mm, 1.75mm ) or will display nominal filament width without parameters
  • M405 - Turn on Filament Sensor extrusion control. Optional D to set delay in centimeters between sensor and extruder
  • M406 - Turn off Filament Sensor extrusion control
  • M407 - Displays measured filament diameter
  • M500 - stores paramters in EEPROM
  • M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
  • M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
  • M503 - print the current settings (from memory not from eeprom)
  • M540 - Use S[0|1] to enable or disable the stop SD card print on endstop hit (requires ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED)
  • M600 - Pause for filament change X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal]
  • M907 - Set digital trimpot motor current using axis codes.
  • M908 - Control digital trimpot directly.
  • M350 - Set microstepping mode.
  • M351 - Toggle MS1 MS2 pins directly.
  • M928 - Start SD logging (M928 filename.g) - ended by M29
  • M999 - Restart after being stopped by error


Bed adhesion is one of the most important elements for getting a good 3D print. (For more information about printing with ABS, like tips and tricks for success, check out our other article here.)

A 3D printer with a heated bed is required for successfully printing with ABS filament because ABS plastic shrinks when cooling. Without a heated bed, the bottom of your print will cool at a different rate than the rest of your ABS print, resulting in dreaded ABS warp. The following guide can help you produce perfectly flat, warp-free ABS prints on virtually any 3D printer:



Tip 1:  ABS doesn't adhere well to bare 3D printer heated bed glass.

While you can often get ABS to adhere to bare, heated borosilicate glass build plates, the process is difficult and you will more than likely experience warping/curling or failed prints due to the print breaking free from the glass mid-print.

Tip 2: ABS should NEVER be cooled with a layer fan.

If you have a part that gets mushy/blobby because of too much residual heat, try printing two of them at a time. This will allow the first part to cool while the second part is printing and vice versa. The easiest solution is within MatterControl (our incredible, community-driven, free 3D printing software - yep, it's totally free). A few easy slice settings allow you to require layer times to be at least (X) amount of seconds. If that's still not enough cooling time, you can specify the hot end to move off the print for a set amount of time after each layer, and then resume printing the next layer. These settings can be seen in the image below:

Enable Extruder Lift and Set Print Speeds Here

Just remember, cooling fans and ABS are not friends! 

And on that same note, make sure there is not an Air Conditioner or any other forced air disturbing the print area of your 3D printer environment; this can have the same warping or splitting effect as a layer cooling fan when 3D printing with ABS filament. 

Tip 3: Your 3D printer heated bed should always be on.

Depending on the part and bed adhesion method you're using, 85-90°C is usually an adequate temperature range for your 3D printer heated bed when printing with ABS filament. You should never exceed 120°C.

A Few ABS Bed Adhesion Solutions:

In order of best (strongest adhesion) to worst (weakest adhesion).

A) PEI Sheets, PET sheets, or Kapton tape on the 3D printer heated bed with ABS Juice. 

We made a simple, short video on how to apply PET tape to your 3D printer glass bed.


ABS Juice (or ABS Glue) is dissolved ABS filament in acetone. Start with 2-3oz of acetone and 6-7 inches of ABS 3D printing filament, then adjust as needed. More ABS plastic dissolved in the acetone equals greater bed adhesion. The ideal consistency is thicker than water but thinner than milk. If your mixture is too thick - like paste or yogurt - just add some more acetone to dilute.

Apply the ABS Juice to the 3D build plate using a brush when the bed is hot. You will see the acetone evaporate and the bed surface become dry rather quickly. 

Pro Tip: Natural ABS filament is the most convenient for making ABS Juice because it will not leave any coloration on your prints. Remember that if you are printing in Red ABS and use Black Juice, the bottom of your print will be black and red as the plastic extrudes over the thin layer of black. 

B) ABS Juice directly on the 3D printer heated bed's glass. Same as above, just without the PET or Kapton tape. Works very well and makes cleanup a bit easier. 

C) Glue stick. Pretty much any PVA based glue stick works (Elmer's, Scotch, UHU, etc). Apply a thin layer of glue to a cool 3D print bed in one direction, and then apply another layer in the opposite direction (think of a crosshatch pattern). Then bring bed up to temp allow the glue to dry before printing. PVA is water soluble so you can remove the thin film from the 3D printed part by rinsing with water. Use a wet paper towel to evenly redistribute the PVA glue stick film on the bed. 

D) Hairspray. We use Aquanet's unscented, extra super hold - it works well, and it's pretty cheap. Spray a thin coat on a cool 3D build plate, let it dry, then spray another thin coat, let it dry, bring it up to temp and then print. This the weakest hold - but is the easiest to do and not a bad place to start when beginning with printing ABS filament on a 3D printer with a heated bed. 

Pro Tip: Scented Hairsprays do work perfectly fine, but they will leave you with a very smelly 3D printing room - and probably not in a good way. 

Tip 4: The footprint of your part plays a HUGE role in bed adhesion.  

The bigger and thicker the footprint/base of your 3D printed part, the more warping forces present. We use hairspray successfully for a lot of our ABS prints, but prints with very large footprints - like a pyramid - often require stronger adhesion to stay firmly in place. The closer the prints are to the center of the print bed (where it's typically hottest) the better.

Footprint example:

Pyramid = large footprint and more tendency to warp.
Inverted pyramid = small footprint and less tendency to warp.

Remember, ABS Juice is very easily the best method of bed adhesion for ABS prints, but it is also the biggest pain for both clean-up and for print removal. Too much ABS Juice (or too thick a concentration) could lead to you breaking your glass trying to remove the part.

Tip 5: Infill plays a huge role in 3D printed ABS parts.

Too many solid layers on the bottom followed by light infill (<15%) will increase your chances of warp. Rapid changes of infill density will cause the print to cool differently and lead to warp. Use the least amount of solid layers possible to avoid warping. In general, the more infill you use, the more warping forces you introduce to your 3D part. To further understand slice settings we have a 3 part series you may want to check out as a guide. 

We've 3D printed thousands of things in ABS filament and found we could prevent warping every single time by following some or all of these tips. 

Happy Warp-Free Printing!


Article reviews
Total number of articles is: 0 in 0 rating
You click on a star to rate article

About us

About us We provide 3D printers for retail and wholesale, We produced and assembled at Hanoi, Vietnam with many type: Cube, Delta, Mendel, scara, robot arm, custom by client...  - Repair 3D printers - Provide 3D printing materials...

1 1 1