Anyone good with g-code

I don’t like the options to use a skirt, or brim, or raft. I like the option where a single line of filement is laid down for ~75mm or so, down one side of the bed. I think DrVAX has put out some utilities that do this.

Can anyone tell me what gcode to use to do something like this?

Here is the start code from DrVax that I use on the MP10 mini which has a 20x20 cm bed:

----- Start G-Code -----
G21;(metric values)
G90; (absolute positioning)
M82; (set extruder to absolute mode)
M107; (start with the fan off)
G28; (Home the printer)
G92 E0; (Reset the extruder to 0)
G0 Z5 E5 F500; (Move up and prime the nozzle)
G0 X-1 Z0; (Move outside the printable area)
G1 Y60 E8 F500; (Draw a priming/wiping line to . . .)
G1 X-1; (Move a little closer to the print area)
G1 Y10 E16 F500; (draw more priming/wiping)
G1 E15 F250; (Small retract)
G92 E0; (Zero the extruder)
— end ----


Thanks. I’m sure I’ll have to tweak it a bit for the Ender 5, but no biggie (I did spend 50 years programming).

Yep for the ender 3, i used the default Cura one:
; Ender 3 Custom Start G-code

G92 E0 ; Reset Extruder

G28 ; Home all axes

G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed

G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position

G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line

G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little

G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line

G92 E0 ; Reset Extruder

G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed

G1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish

This runs on the left from front to back, then extrudes half way to the back, and continues to extrude as it moves all the way back to the front and leaves a blob then starts the print.
I still use a raft or skirt after this default gcode.

Here is a video that talks about how the g-code startup code works and includes a link to a startup file I use. The line on the side of the print is called many different things, but most often a purge line, index line or waste line. The startup code described in my video uses one. Thanks for the questions is a topic many people are interested in.

In addition, I have an extensive and updated discussion about the start code in this video about printing PETG.

Here is a direct link to the startup code I use for most of my 3d printers. The start code is on slide 9. Many people have pointed out that the second wait for temperature is probably unnecessary which is correct. But if the printer is already at temperature these commands will execute immediately and do no harm.

As a programmer, my first thought was that people/slicers put in both M104/M109 and M140/M190 commands because some devices might properly execute one but not the other. I’ve run into that with in the past: this machine understands this command, but not that one, so you put in both, so the program will run on both machines. Does that sound familiar Irv?

Got to say thanks for posting this start code.
I’m having a much better time getting my prints started now, on my Artillery genius :slight_smile:

I’m going to throw in my two cents. Something I noticed in all most everyone’s start Gcode is that you don’t get the bed and nozzle up to temp before doing anything else. Maybe it was not included, but if you do have an ABL system the bed should be hot before probing. I copied the heating sequence from someone else a long time ago, but you can heat the nozzle and bed at the same time. This is from my PrusaSlicer, but would be the same in CURA. This uses the values from the slice for bed temp and first layer (nozzle) I wait for the nozzle temp to stabilize after probing, as the TH3D firmware I’m using turns off the heater while probing. The waste lines are code I came up with you can replace with your own. The bold text is the important area.

M140 S[first_layer_bed_temperature];
M104 S[first_layer_temperature];
M109 S[first_layer_temperature];
M190 S[first_layer_bed_temperature];
M109 S[first_layer_temperature];
G92 E0;

G1 E-2 F1500;
G1 X1 Y3 Z0.350 F2000;
G92 E0;
G1 E8 F1500;
G92 E0;
G1 X1 Y185 E30 F1000;
G1 X2 Y185;
G1 X2 Y3 E60;
G92 E0;
G1 E-2 F1500;
G92 E0;
G1 X1 Y1 Z4;
M300 S1000 P500;
G92 E0;
G4 S5;
G1 E2 F1500;
G92 E0;

@ woodwaker_dave
Interesting comment on the heating sequence. I’ve only got the one fdm printer, so nothing to compare to, but my machine always heats the bed first, then the nozzle before doing anything in the start code. I just assumed it was in the firmware of the printer.

My Artillery Genius has an AC heated bed. It heats up very quickly. I’m really happy with it.

I always use the Preheat PLA on the printer as soon as turning on or when previous print is finished, this heats both bed and hot end at the same time. By the time I have the correct SD card inserted, picked the colour I want to use, nozzle is about at temp, I change colour and bed had some time to allow glass to heat and I’m good to select the print. Since both are at temp it just starts the print.
When finishing a print, I also use the Preheat PLA, remove the glass bed with previous print attached, remove print by cooling etc (sit on bench or put in fridge) and in the meantime I change the filament colour while print pops off glass bed, reattach and allow a min or so to reach temp. Then good to go no waiting.

I’ve done both of those things. I have several profiles for my printer. I’ve modified some of them, but haven’t got around to all yet.