Dang it, YT ate my comment. Stefan, I'd be interested in your take on Gcode post-processors that change rounded corners from a series of G1 moves into a single G2/G3. Do they have any discernible effect on quality or speed? I'd love to try them out myself, but I run an Anet A8 that is so inconsistent as to render experimentation pointless :P
Sounds a lot like when my dad learned COBOL programming language back in it's days. You're the compiler. Reference the books and convert it yourself to binary for punch cards!
Pretty much the sole reason why we have such organic looking designs today is the ability to create better g-code. When it is done on paper, each hour of work costs more money. You are forced to make quite simple cuts just because there is no time to write more complicated code. But i found it right away that it is going to be a bit of both, most is created with a computer but quite a bit is created manually.. cause.. you often don't need something very complicated and taking time to transfer all of the information needed just to make a simple cut is harder A lot of time you need to modify the code by hand to fit your exact needs. Last time was two days ago, to replace G91 Z5 with G90 Z3 from the usual startup routine cause the spindle was about 3mm from max Z at the top of the object, which sets the homing position.. oh wait, i removed a bunch of M106s yesterday cause i forgot i was printing PETG.
@@squidcaps4308 yes, of course, noone is going to hand code a generative design. But if you're programming a relatively simple part on a machine like a swiss lathe, it is often times easier to code it by hand then to go through the trouble of creating a post processor for your CAM. Those are cases for mass production though, where 10h upfront to save 30 seconds on each part pays off in a week and from there on it's profit. For oneoff parts and complex geometry, modern CAM is definitely the way to go, and the only way.
I did it that way in college in the late 90s, before they let us loose on CAD/CAM software. Writing code and seeing it run always gives me a kick; writing code and seeing it *cut* *metal* was just unbelievably cool.
As someone who started in CNC running a commercial CNC milling machine, learning basic gcode is the first step in troubleshooting problems. Its amazing that robots (CNC machines) are so accessible now and a $200 3d printer is for all intents and purposes the same thing as a several hundred thousand dollar CNC mill! This video is an exceptional guide and building block for anyone who wants to actually "understand" the printing process. Slicers and CAM programs are awesome, but they also make the entry point of CNC so accessible that it can frustrate and discourage a new user because they dont have the building blocks necessary to know why things are not working as expected. Great video!
Great video! The other ones I would add is G4 - dwell: waits for a specified time, for example, for you to remove the droop of filament that purges or something like this, and M0, the unconditional stop, that waits until you press the encoder button on the LCD. For most useless G-code, I would give the medal to M510: lock the machine. I cannot imagine a single reason why anyone would need a password for a 3D printer, or maybe in some extreme case a makerspace would use that, but I dunno, feels extremely useless.
I would like to second this. Having a follow-up video would be excellent. There are so many things GCode can do I didn't even know about, and G4 would be an excellent one to start adding to my startups.
@@hyperfluff_folf EDIT: checked again to be sure: it seems the following I'll be posting is only relevant if you don't have an LCD screen. Oh, since it seems M0 got enough attention, I'll add here that Marlin requires EMERGENCY_PARSER enabled on the firmware for M0 to work, I have it enabled but dunno if all firmwares do, hope it is your case whenever you try using it
Considering g-code is a standard that's used on just about every CNC machine in existence M510 is probably there for the more dangerous equipment you might need authorization and preparation for at work. Like the type of thing that might cut your fingers off if you get them too close.
This needs to be on a 3d printing playlist for videos you must watch before getting into 3d printing. Let me say that again. WATCH THIS VIDEO NOW, REGARDLESS OF WHERE YOU ARE WITH 3D PRINTING. This seemed like it was going to be so boring, and I only clicked on it because it was 3d printing related and couldn't be bothered to get up and actually print something. I *REALLY* wish I had this video when I first started 3D printing. This video is AMAZING, and perfect for beginners that want to know a bit about GCode, rather than being scared to look at the GCode. This is the precise reason I've never succeeded at a temperature tower, and now I feel confident that I CAN do that. Thank you CNC Kitchen. If I hadn't already subbed, this video would be another great reason to do so.
Nice introduction! It would be cool to see a follow-up with a few commands for maintenance and tuning - M503/M500 and making alterations there, PID tuning for the nozzle and bed, setting steps, that sort of thing. Keep up the good work!
Great summary and explanation! I just missed one that I believe is important: M600, which pause the print for a Filament change. This way we can produce prints with multi color in different heights.
I left out G2/G3 on purpose because I'd bet 99.999% of G-Code printed on 3D printers don't use the command (which is a pity but a result of us using stls).
@@CNCKitchen next gen printers should work through STEP files or something like that so curvilinear shapes are taken into consideration, I guess that even the printer drivers will work better since they will not have to process so much lines of code in exchange of a single G2/G3 command. Thanks for all your efforts 👍🏼😁
WAH? I never noticed that! Though I already knew that 3D printing g-code had those straight lines, and had accepted it because our workshop does the same. Hehe. 😅 For those that want to know, G2 is a clockwise arc and G3 is anti-clockwise. We use G2 & G3 all the time in CNC mills. We get the code off a workshop server after loading it across from the "engineering office", and they use automatically generated code from a "drawing" file these days. But sometimes it's pretty easy to notice all the micro straight lines in the side of a milled radius metal component. But I don't see much advantage for G2 G3 in 3D printing, whereas in milling it can define and control quality of finish and cutter wear due to cutter rotation + movement direction.
Love it man I would so love to see more in-depth gcode vids from you . I come to this channel for fine tuned printing info and I thank you for what you do 🙏🏻👍
i think the knowledge of g -code comes in most handy when tuning and troubleshooting a printer. I ended up printing a small cheatsheet and slapping it onto the frame of the printer, very useful. I have some tuning commands (those that set acceleration and stuff), printer dimensions and speed limits there.
I found learning g-code to be most practical on my Vertex Nano. The motors on that printer weren't strong enough to move the belts when they were tensionned properly, so skipped steps were inevitable. I created a code which sent the nozzle from one corner of the bed to the opposite corner so that the axes would recenter. I'm now on a Prusa Mini and I'm working on g-code modifications so that I can use a stainless steel hotend without tripping the thermal runaway detection.
ich möchte auch sehr gerne CNC programmieren lernen. Ich hoffe, dass mir deine Videos helfen werden. Dieses war schonmal sehr aufschlussreich. Vielen Dank aus Bayern!😊
So, I've been 3D printing as a hobby/side business for about 2 years now. During that time I got really busy with the printed custom projects for customers and my focus was shifted to building the Bass Controllers internal components and the actual quality of the printed pieces was really inconsequential as long as the basic idea of the custom design IE the added logo or added text or overall design was aesthetically pleasing The quality of the print didn't even get noticed. So I spent more time making sure that my internal components and the workability and durability of the controller built inside of the printed part was the highest of quality and I didn't pay any attention to how well or how terrible my printing was. Obviously if there were failed prints or if there were major blemishes or inconsistencies those got addressed and the project got reprinted but there was no thought into why it had happened. However lately I have slowed my side business down and I have focused a lot more on the actual 3D printing portion as I have upgraded to an IDEX printer and hopefully coming very soon my ordered carbon X1 so quality now is my focus on the actual prints. I have also been using Cura Prusa slicer bamboo Labs and idea maker and having to import printers into different slicers that don't come with pre-designed profiles I have had to look at start code and in code and was completely lost. I found this video today and in the 12 minutes of this video I learned more than I have in the last 2 years I love how analytically adept you are and the way you approach each issue so systematically I have now watched like four or five of your videos and again I have learned more in these few videos from you then in the entirety of my two years of printing before so thank you very very much!!! But particularly this video learning those 10 g codes that you just showed us will forever change the face of my 3D printing projects and abilities. Simply put the building blocks that you just gave me are going to help propel me into a new world of 3D printing and will inevitably be the most valuable tools I will ever use so this video has changed my 3D printing life for the better and thanks to you I will never be the same!!!!
I had a feeling, this channel might have exactly this type of video (which I wanted to look for atm). Was not disappointed! Leaving comment for CZcams algorithm.
Very good! As a curious novice to 3D printing, I noticed there was a subtle difference to the way the Creality Slicer (Cura, rebranded) and Ultimaker Cura ended a print with CS moving the bed to the rear of the printer and UC presenting to the front. After discovering in the Machine Settings, this was a behaviour controlled by the G1 command, I was able to copy the *rear* presenting behaviour over to UC. The reason? I have OctoPrint's Webhook plugin fire off an event to turn on an external fan to cool the bed after a successful print. Having the print bed present to the rear enables (slightly) better cooling. Ideally I love there to be some functionally to turn off the fan once the temp is at ambient :)
Thank you! I was looking a bit for commands so I could read my codes easier. As a CNC guy, I have some G code experience, but I wasn't sure what the specific machine commands would be.
M112 is Emergency Stop, and is in the top 10 gcode commands that I manually type into the OctoPrint terminal. (PID configuration and EEPROM save commands also make the list.)
Thank you for the video, which is a good starting point to decipher the complex G-code. 😊 The kart that runs through the streets of Japan shown around 34 seconds in the introductory video used to be a service that called itself Mario Kart.🏎 However, they had been using the character without Nintendo's permission, which led to a court case, and since then they have been operating the service wearing Disney characters and stuffed animals.🐈 In January of this year, the kart company was ordered by the court to pay 50 million yen and lost.💸 This is a victory for Nintendo.
The prusaslicer "weird" if statements prevent the printer to destroy itself if it should move higher than is the maximum Z. If you remove it and your printer has max Z lets say 250 and the printer ends the print at z = 245 and you tell it to move 10mm at the end, you will grind your gears because it could never reach z = 255.
When talking about the Temperature commands, I wish you would have mentioned the difference between using a command like “M190 S35” and “M190 R35”. I use the latter in my ending scripts to force the printer to cool the bed before presenting the finished part to the user, so that it’s fully self-delaminated from the bed before the user removes the part. Since I have a glass bed, this takes awhile, but prevents me from needing to scrape or pry prints off of my build plate. I think that adding the fact that calling the R argument in the temperature commands tells the printer to wait for both heating *and* cooling would be a handy thing for intermediate users to know. All the same, this video was great! It reminds me of ElectroBOOM’s 101 series.
So I've seen flow control (if statements) in GCODE or at least in prusa and S3D. I'd like to see a video on what those are really useful for and how to use them
I've always wondered if there is a way to start a print on a Prusa mk3 without bed leveling. If you need to start a print "on top" of another one that would be great
For that, you would just need to remove the G29 -- or G80 as it happens to be in Prusa's case. Though, stacking parts in that way presents its own challenges -- bed adhesion on the first part needs to still be solid enough, or you'll just yank it with you. And you'll need a way to home the axes again and then move back to the correct start location if you've lost your positioning.
I like relative positioning for extrusion more because it's easier to edit the gcode when you want to resume a failed print. I don't recall if you talked about this in your previous video about print failures. It can be done with absolute positioning (Ideamaker was setup this way but you can change this) but I found this out after I threw my print in the garbage 🙄
Nice! Currently I'm trying to find a way to modify the travel speed in the grbl (*.nc) files generated by Fusion 360 to move faster between the operations in the private edition. So a parser would have to find the correct 'F#' command and replace the # with the desired speed. Didn't dare trying it yet, but I guess, I'll give it a try now 🙂
Hello my friend, I have a CNC laser control card, I want to rotate the Y axis continuously, (it will never stop, also it will be necessary to adjust the rotation speed) I made G1 Y1000 F350 but it stops after a certain time. How should I write a gcode?
Hi, if I use M82 command to use the absolute mode for the extruder, how the E number relates to the steps or the rotation angle of the stepper motor? I'm thinking mod the extruder motor to let it drive a rotary stage. Thank you!
Is learning G-code worth the time and effort?
Don't forget to like & subscribe and share this video on Facebook, Reddit, Twitter, and other platforms!
Yes, the more tools the better! Thanks, great vidéo again.
12:10 this way helpful and straight-forward.
T1 is the only useful 3dp command :P
.
but then the event horizon had yet to reach 2021... 1t will :D
When you start with RRF its better to know the most gcodes :D
Unless you are doing something really unusual then probably not , a slicer program is more than good enough.
Dang it, YT ate my comment.
Stefan, I'd be interested in your take on Gcode post-processors that change rounded corners from a series of G1 moves into a single G2/G3. Do they have any discernible effect on quality or speed? I'd love to try them out myself, but I run an Anet A8 that is so inconsistent as to render experimentation pointless :P
I know someone who used to design g-code on paper based on drawings. After that it was typed into the machine. It was in the 70's.
Sounds a lot like when my dad learned COBOL programming language back in it's days. You're the compiler. Reference the books and convert it yourself to binary for punch cards!
For some CNC machines that is still done today, or a hybrid approach generating some automatically and then editing it heavily by hand.
Pretty much the sole reason why we have such organic looking designs today is the ability to create better g-code. When it is done on paper, each hour of work costs more money. You are forced to make quite simple cuts just because there is no time to write more complicated code. But i found it right away that it is going to be a bit of both, most is created with a computer but quite a bit is created manually.. cause.. you often don't need something very complicated and taking time to transfer all of the information needed just to make a simple cut is harder A lot of time you need to modify the code by hand to fit your exact needs. Last time was two days ago, to replace G91 Z5 with G90 Z3 from the usual startup routine cause the spindle was about 3mm from max Z at the top of the object, which sets the homing position.. oh wait, i removed a bunch of M106s yesterday cause i forgot i was printing PETG.
@@squidcaps4308 yes, of course, noone is going to hand code a generative design. But if you're programming a relatively simple part on a machine like a swiss lathe, it is often times easier to code it by hand then to go through the trouble of creating a post processor for your CAM. Those are cases for mass production though, where 10h upfront to save 30 seconds on each part pays off in a week and from there on it's profit.
For oneoff parts and complex geometry, modern CAM is definitely the way to go, and the only way.
I did it that way in college in the late 90s, before they let us loose on CAD/CAM software. Writing code and seeing it run always gives me a kick; writing code and seeing it *cut* *metal* was just unbelievably cool.
As someone who started in CNC running a commercial CNC milling machine, learning basic gcode is the first step in troubleshooting problems. Its amazing that robots (CNC machines) are so accessible now and a $200 3d printer is for all intents and purposes the same thing as a several hundred thousand dollar CNC mill! This video is an exceptional guide and building block for anyone who wants to actually "understand" the printing process. Slicers and CAM programs are awesome, but they also make the entry point of CNC so accessible that it can frustrate and discourage a new user because they dont have the building blocks necessary to know why things are not working as expected. Great video!
I've been 3D printing with my prusa for few months and this has been the most helpful video for me to understand G-code. Much appreciated Stefan!
Hey Pera,ican help you with 3d design for 3d priting or gcode generation just hit me up on Upwork and i will sort you out 'Victor k'
Great video! The other ones I would add is G4 - dwell: waits for a specified time, for example, for you to remove the droop of filament that purges or something like this, and M0, the unconditional stop, that waits until you press the encoder button on the LCD.
For most useless G-code, I would give the medal to M510: lock the machine. I cannot imagine a single reason why anyone would need a password for a 3D printer, or maybe in some extreme case a makerspace would use that, but I dunno, feels extremely useless.
Great choices!
I would like to second this. Having a follow-up video would be excellent. There are so many things GCode can do I didn't even know about, and G4 would be an excellent one to start adding to my startups.
Ok M0 is now easily the holy grale that should have been mentioned, i always wanted to use a stop but didnt look what it was, now i know so ty
@@hyperfluff_folf EDIT: checked again to be sure: it seems the following I'll be posting is only relevant if you don't have an LCD screen.
Oh, since it seems M0 got enough attention, I'll add here that Marlin requires EMERGENCY_PARSER enabled on the firmware for M0 to work, I have it enabled but dunno if all firmwares do, hope it is your case whenever you try using it
Considering g-code is a standard that's used on just about every CNC machine in existence M510 is probably there for the more dangerous equipment you might need authorization and preparation for at work. Like the type of thing that might cut your fingers off if you get them too close.
This is like a chapter in a video based encyclopedia about 3D printing.
Great stuff!
Glad you liked it!
This needs to be on a 3d printing playlist for videos you must watch before getting into 3d printing. Let me say that again.
WATCH THIS VIDEO NOW, REGARDLESS OF WHERE YOU ARE WITH 3D PRINTING.
This seemed like it was going to be so boring, and I only clicked on it because it was 3d printing related and couldn't be bothered to get up and actually print something.
I *REALLY* wish I had this video when I first started 3D printing. This video is AMAZING, and perfect for beginners that want to know a bit about GCode, rather than being scared to look at the GCode. This is the precise reason I've never succeeded at a temperature tower, and now I feel confident that I CAN do that.
Thank you CNC Kitchen. If I hadn't already subbed, this video would be another great reason to do so.
Nice introduction! It would be cool to see a follow-up with a few commands for maintenance and tuning - M503/M500 and making alterations there, PID tuning for the nozzle and bed, setting steps, that sort of thing. Keep up the good work!
I would like to second the request for videos on PID tuning.
Again what learned! ☺️
I felt there was no proper intro vid on youtube for this type of information. Job well done Stefan.
Thanks! Appreciate it.
Great summary and explanation!
I just missed one that I believe is important: M600, which pause the print for a Filament change.
This way we can produce prints with multi color in different heights.
Thank you. This is a very helpful video for a 3-D novice.
This inspired me to write my own slicer. Now I just need a printer to test it on :). Almost done saving up.
That's awesome!
I needed this video 21 years ago.
I learned the hard way, by reading a book.
Oh boy! Time to get all sorts of custom errors I end up creating for myself while I play with this!
Great overview!
Didn't expect to see you here, but that makes sense!
Hey, it's that guy :)
Funny how everyone in the 3D printing community is interconnected like this lol
Just last semester I learned this but didn't understood anything but your explanation is really very great
Other important? Maybe many, but I’d like to say than G2/G3 were the pair I was missing. The cura plug-in for them made my day. Salut i fins aviat! 😁
I left out G2/G3 on purpose because I'd bet 99.999% of G-Code printed on 3D printers don't use the command (which is a pity but a result of us using stls).
@@CNCKitchen next gen printers should work through STEP files or something like that so curvilinear shapes are taken into consideration, I guess that even the printer drivers will work better since they will not have to process so much lines of code in exchange of a single G2/G3 command. Thanks for all your efforts 👍🏼😁
WAH? I never noticed that! Though I already knew that 3D printing g-code had those straight lines, and had accepted it because our workshop does the same. Hehe. 😅
For those that want to know, G2 is a clockwise arc and G3 is anti-clockwise.
We use G2 & G3 all the time in CNC mills. We get the code off a workshop server after loading it across from the "engineering office", and they use automatically generated code from a "drawing" file these days. But sometimes it's pretty easy to notice all the micro straight lines in the side of a milled radius metal component.
But I don't see much advantage for G2 G3 in 3D printing, whereas in milling it can define and control quality of finish and cutter wear due to cutter rotation + movement direction.
Love it man I would so love to see more in-depth gcode vids from you . I come to this channel for fine tuned printing info and I thank you for what you do 🙏🏻👍
Awesome, thank you!
Right now I'm working with full control tool. Your video helped lot to understand the code. Thanks.
i think the knowledge of g -code comes in most handy when tuning and troubleshooting a printer. I ended up printing a small cheatsheet and slapping it onto the frame of the printer, very useful. I have some tuning commands (those that set acceleration and stuff), printer dimensions and speed limits there.
I found learning g-code to be most practical on my Vertex Nano. The motors on that printer weren't strong enough to move the belts when they were tensionned properly, so skipped steps were inevitable. I created a code which sent the nozzle from one corner of the bed to the opposite corner so that the axes would recenter.
I'm now on a Prusa Mini and I'm working on g-code modifications so that I can use a stainless steel hotend without tripping the thermal runaway detection.
Very clear and valuable! I'm bookmarking this.
This basic overview gives me confidence to try it soon! Ty
Do it! It's an essential skill.
ich möchte auch sehr gerne CNC programmieren lernen. Ich hoffe, dass mir deine Videos helfen werden. Dieses war schonmal sehr aufschlussreich. Vielen Dank aus Bayern!😊
Helpful and straightforward. Thanks for your work making these videos.
I needed the temp g code command so thanks so much I really appreciate it also I completely understand g code now very easy to follow and understand
M851 is the command that you need to know. Get that right with your probe and perfect first layers every time.
Omg, solving some major problems with the absolute/relative positioning in the g code thanks so much
Very helpful and VERY straightforward.
Thank you!
So, I've been 3D printing as a hobby/side business for about 2 years now. During that time I got really busy with the printed custom projects for customers and my focus was shifted to building the Bass Controllers internal components and the actual quality of the printed pieces was really inconsequential as long as the basic idea of the custom design IE the added logo or added text or overall design was aesthetically pleasing The quality of the print didn't even get noticed. So I spent more time making sure that my internal components and the workability and durability of the controller built inside of the printed part was the highest of quality and I didn't pay any attention to how well or how terrible my printing was. Obviously if there were failed prints or if there were major blemishes or inconsistencies those got addressed and the project got reprinted but there was no thought into why it had happened. However lately I have slowed my side business down and I have focused a lot more on the actual 3D printing portion as I have upgraded to an IDEX printer and hopefully coming very soon my ordered carbon X1 so quality now is my focus on the actual prints. I have also been using Cura Prusa slicer bamboo Labs and idea maker and having to import printers into different slicers that don't come with pre-designed profiles I have had to look at start code and in code and was completely lost. I found this video today and in the 12 minutes of this video I learned more than I have in the last 2 years I love how analytically adept you are and the way you approach each issue so systematically I have now watched like four or five of your videos and again I have learned more in these few videos from you then in the entirety of my two years of printing before so thank you very very much!!! But particularly this video learning those 10 g codes that you just showed us will forever change the face of my 3D printing projects and abilities. Simply put the building blocks that you just gave me are going to help propel me into a new world of 3D printing and will inevitably be the most valuable tools I will ever use so this video has changed my 3D printing life for the better and thanks to you I will never be the same!!!!
I had a feeling, this channel might have exactly this type of video (which I wanted to look for atm). Was not disappointed! Leaving comment for CZcams algorithm.
Both helpful and straightforward. Thanks.
Very good!
As a curious novice to 3D printing, I noticed there was a subtle difference to the way the Creality Slicer (Cura, rebranded) and Ultimaker Cura ended a print with CS moving the bed to the rear of the printer and UC presenting to the front.
After discovering in the Machine Settings, this was a behaviour controlled by the G1 command, I was able to copy the *rear* presenting behaviour over to UC.
The reason? I have OctoPrint's Webhook plugin fire off an event to turn on an external fan to cool the bed after a successful print. Having the print bed present to the rear enables (slightly) better cooling.
Ideally I love there to be some functionally to turn off the fan once the temp is at ambient :)
Couldn't you do a M190 S30 then M107? Could even present print after cooling
Great video. I am a NEWBIE to this and that was straightforward, easy to understand. Thank you
hey John ,i can help you generate gcodes..
@@takeittothegrave6302 no need at this time. Thank you
Excellent video! I recently donated my old Tevo Tarantula to someone who's thinking about starting 3D printing.
That is awesome!
This is the first time I don't feel scare about coding., Thank you.
Great video! I've needed to watch this video because I'm attempting to get an ABB robot to 3D print. Now I have the resources to begin my project!
Glad it was helpful!
Another one I really preciate and use often is adjusting printspeed in octoprint with M220 S... (For example 200% => M220 S200)
Good one!
Thank you! I was looking a bit for commands so I could read my codes easier. As a CNC guy, I have some G code experience, but I wasn't sure what the specific machine commands would be.
M112 is Emergency Stop, and is in the top 10 gcode commands that I manually type into the OctoPrint terminal. (PID configuration and EEPROM save commands also make the list.)
Follow up please. I am building my own, very large, 3D printer and teaching myself gcode. It has been challenging :)
Very helpful and straight forward Stephen, you have never steered me wrong and I trust you never will. Thank You
Simple guide, thanks Stefan!
Super helpful as always
So if I understand gcode can I count it as a second language? 🤔
M115: Firmware Info
M503: EEPROM Info
G43: The proper way to run dual Z-motors ;)
PS: love the videos!
Good choice!
Thank you for the video, which is a good starting point to decipher the complex G-code. 😊
The kart that runs through the streets of Japan shown around 34 seconds in the introductory video used to be a service that called itself Mario Kart.🏎
However, they had been using the character without Nintendo's permission, which led to a court case, and since then they have been operating the service wearing Disney characters and stuffed animals.🐈
In January of this year, the kart company was ordered by the court to pay 50 million yen and lost.💸
This is a victory for Nintendo.
Omg you just helped me figure out an end gcode for raising nozzle head! Rather than use the wierd Prusaslicer "if" statements, I'll just use this lol
The prusaslicer "weird" if statements prevent the printer to destroy itself if it should move higher than is the maximum Z. If you remove it and your printer has max Z lets say 250 and the printer ends the print at z = 245 and you tell it to move 10mm at the end, you will grind your gears because it could never reach z = 255.
Great quick summary--Well done!
love cnc kitchen. A Most informative channel.
When talking about the Temperature commands, I wish you would have mentioned the difference between using a command like “M190 S35” and “M190 R35”.
I use the latter in my ending scripts to force the printer to cool the bed before presenting the finished part to the user, so that it’s fully self-delaminated from the bed before the user removes the part. Since I have a glass bed, this takes awhile, but prevents me from needing to scrape or pry prints off of my build plate.
I think that adding the fact that calling the R argument in the temperature commands tells the printer to wait for both heating *and* cooling would be a handy thing for intermediate users to know.
All the same, this video was great! It reminds me of ElectroBOOM’s 101 series.
This is a great tip, thanks for commenting. I'll start doing this.
This is great. Thank you!
Great G-code primer
Thank you for sharing your time and knowledge.
My pleasure!
I literally needed this today and was researching it myself when this popped up in my feed 👍
Thank You Stefan
Danke Stefan, It was a really helpful video.
So I've seen flow control (if statements) in GCODE or at least in prusa and S3D. I'd like to see a video on what those are really useful for and how to use them
yes this was helpful and straightforward..
As usual, you videos are so useful !
Great video mate, really well explained. Thank you. 👍🏼
My most important command is M92 to set the feeding rate for a new extruder gearbox.
Extremely helpful! Thanks!
Thank you for sharing, subbed
Thanks for the video, nice and clear.
Very nicely explained..thanks s lot
I would be interested in a short video from you, Stefan, regarding power loss recovery and specifically the use of M413, please.
Thank you so much for this video. You made my life happier :)
You are so welcome!
took screenshots of all those slides, very very useful :)
They are also all available on my website!
I've always wondered if there is a way to start a print on a Prusa mk3 without bed leveling. If you need to start a print "on top" of another one that would be great
3d printing nerd has a vid on stacking parts. starting a print ontop of another would be hard b/c of bed adhesion
For that, you would just need to remove the G29 -- or G80 as it happens to be in Prusa's case. Though, stacking parts in that way presents its own challenges -- bed adhesion on the first part needs to still be solid enough, or you'll just yank it with you. And you'll need a way to home the axes again and then move back to the correct start location if you've lost your positioning.
Check my last video on resuming failed prints!
I like relative positioning for extrusion more because it's easier to edit the gcode when you want to resume a failed print. I don't recall if you talked about this in your previous video about print failures. It can be done with absolute positioning (Ideamaker was setup this way but you can change this) but I found this out after I threw my print in the garbage 🙄
yes thanks so much very helpful
Very well done. Thank you .
Great channel. Thanks for your great videos.
Nice work Stefan!
All your vidéo and tutorials are so greats !!!!!
Big thanks to you 😀
Thumb up and subscription Mandatory 😀👍
Greetings
Cedric
France
Merci bien!
Love this! I love to tinker with gcode to customize some models.
Such an important yet underrated skill!
Awesome! Thank you for sharing! 🙂
Great video! Thanks.
Fantastic thanks a lot for this helpful work
Dickes Dankeschön!
is there a loop function with marlin gcode?
Very useful!! Thanks buddy!!
Greetings from UK!!
Cheers!
Thank you bro, very clear tutorial. But you should add a simple example and show how you execute it
Thanks Stefan!! very usefull
Glad it was helpful!
Excellent.
Great information!
Yes helpful, thanks
Great video
Impressed that your text file in the video is actually from today! :)
I'm a procrastinator...
@@CNCKitchen and I thought more like you deliberately put one in from today :)
Nice! Currently I'm trying to find a way to modify the travel speed in the grbl (*.nc) files generated by Fusion 360 to move faster between the operations in the private edition.
So a parser would have to find the correct 'F#' command and replace the # with the desired speed.
Didn't dare trying it yet, but I guess, I'll give it a try now 🙂
You're on the right track! Maybe there are some comments where the travel moves start that you can use to input the new G1 Fnnn commands.
Yes it is helpful.
Thx
Great video. Super useful for GCode introduction. Mahalo for sharing! : )
Glad it was helpful!
Hello my friend, I have a CNC laser control card, I want to rotate the Y axis continuously, (it will never stop, also it will be necessary to adjust the rotation speed) I made G1 Y1000 F350 but it stops after a certain time. How should I write a gcode?
Hi Stefan, thanks for this important knowledge on 3d printing world, greetings from Mexico!
My pleasure!
Keep it up, nice video clip, thank you for sharing it :)
Question how do you access the g-code and how do you edit it. Iam new to this and would love to know which program is used and how.
Hi, if I use M82 command to use the absolute mode for the extruder, how the E number relates to the steps or the rotation angle of the stepper motor? I'm thinking mod the extruder motor to let it drive a rotary stage. Thank you!
Perfect!