MKS Gen 1.4 - Dual Z steppers with Marlin firmware (Part one)

แชร์
ฝัง
  • เผยแพร่เมื่อ 24 มิ.ย. 2019
  • This is a simple tutorial on how to use Marlin firmware to create a second z-axis stepper motor.
    buymeacoffee:
    www.buymeacoffee.com/ebraiman
    Hardware:
    2 - NEMA 17 stepper motors
    2 - A4988 stepper boards
    1 - MKS Gen v1.4
    1 - Serial cable
    1- 12 v PSU
    Software:
    Marlin Firmware 2.0.x
    marlinfw.org/meta/download/
    Installing PlatformIO on Atom for Marlin Firmware
    marlinfw.org/docs/basics/insta...
    Pronterface:
    www.pronterface.com/
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 121

  • @tevya017
    @tevya017 3 ปีที่แล้ว

    A practical easy to follow needed instruction which I will be using on my new mks 1.4 board

    • @EdwardBraiman
      @EdwardBraiman  3 ปีที่แล้ว

      Thanks. Just remember VScode with Platformio IDE is becoming standard for Marlin firmware setup.

  • @Greyguild
    @Greyguild 2 ปีที่แล้ว

    Worked perfectly, I have to say that in the newer version of Marlin I saw no mention of Dual Z stepper it on asked me the number of Z stepper I wanted to use, other than that, flawless, thank you

    • @EdwardBraiman
      @EdwardBraiman  2 ปีที่แล้ว

      You're welcome.

    • @manuelrenner3671
      @manuelrenner3671 ปีที่แล้ว

      Hello Geryguild, i cant find where i can set the Number of Z-Extruders to two. Could you help me or send the exact pronounce where I can do that? Greetings

    • @Greyguild
      @Greyguild ปีที่แล้ว

      @@manuelrenner3671 in the configuration_adv. h search for #define NUM_Z_STEPPER_DRIVERS and change the value to what you want

  • @sharkpbp
    @sharkpbp 5 ปีที่แล้ว

    Thanks I really really needed this tutorial

  • @wrxsubaru02
    @wrxsubaru02 5 ปีที่แล้ว

    I have an older prusa that just has the wires spliced together with one plug into the z pins. Whats the difference between splicing and the way you did it and why did you do it this way?

  • @avejst
    @avejst 5 ปีที่แล้ว

    Impressive job, and simple shown, love it
    Thanks for sharing😀👍

    • @EdwardBraiman
      @EdwardBraiman  5 ปีที่แล้ว

      You're welcome.

    • @wilfriedpacomemenye739
      @wilfriedpacomemenye739 2 ปีที่แล้ว

      @@EdwardBraiman your whatsapp please

    • @EdwardBraiman
      @EdwardBraiman  2 ปีที่แล้ว

      Only Discord, I don't used anything else for communication.

    • @wilfriedpacomemenye739
      @wilfriedpacomemenye739 2 ปีที่แล้ว

      @@EdwardBraiman the app can't work in my phone. I dont know why

    • @EdwardBraiman
      @EdwardBraiman  2 ปีที่แล้ว

      Not sure I understand what you are saying?

  • @matthewread1913
    @matthewread1913 4 ปีที่แล้ว +1

    Hi Edward
    I am in the process of making a vertical down DLP 3D printer.
    I have bought a 32bit Bigtreetech Circuit board. I want to modify it for this project and I’m wondering if you have any thoughts and ideas on how best to do this?
    I want to use the heating bed for the heated resin tank and servomotor for the Lens shutter. The stepper motor is 2.8amp and will be driven by a TMC5160 stepper driver. It can be configured up to 256 microstepping and it all needs to work with creation workshop. I’ve spent ages trying to sort this out! I am not a programmer and I’m a newbie to coding!
    Any help or advice you can offer would be much appreciated.
    thanks
    Matt

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      Marlin firmware should have all or most of the functionality you may need. Good luck. I've not yet created a resin printer.

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      Marlin firmware should have all or most of the functionality you may need. Good luck. I've not yet created a resin printer.

  • @sex779
    @sex779 4 ปีที่แล้ว

    hi , i have a KEYES control board MKS Gen V1.2 on a bee prusa can i use marlin 2.x or i have to use only the 1.1.0
    Tkx very much and nice video

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      8 bit boards can use either Marlin 2.0.x or 1.1.x. 32 bit processors can only use Marlin 2.0.x.

  • @christianiorio8190
    @christianiorio8190 4 ปีที่แล้ว

    Hi Edward...
    i'm trying to flash the firmware but i read this
    Marlin_main.cpp:356:7: error: expected ')' before '.' token
    (card.cardOK card.initsd();
    ^
    exit status 1
    expected ')' before '.' token
    How can i resolve?thank you!

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      It might mean syntax in that line is missing a, ")".. try downloading a new Marlin firmware and recompile.

  • @user-xs8fx2ms4h
    @user-xs8fx2ms4h ปีที่แล้ว

    In the newer version of marlin, i tried two find the line dual z stepre but it doesn’t seem to be included, could you please help with this because it got me really frustrated

    • @EdwardBraiman
      @EdwardBraiman  ปีที่แล้ว

      There should be a link for Discord and we're all in general chat.

  • @MrRflowersg
    @MrRflowersg 3 ปีที่แล้ว

    Hi, friend, great tutorial. I have a issue. Im making a CoreXY. The axis Z is moving by two motors nema 17 with two drivers TMC2209. One to Z axis and other to E1. The motors move to different speeds. Could you help me please? any tips?

    • @rafareinoso9072
      @rafareinoso9072 3 ปีที่แล้ว

      Hi Rodolfo! I have the same problem. Have you solved it? Can you say to me how can I set the steps for the second stepper (E1)? Thanks!

    • @EdwardBraiman
      @EdwardBraiman  3 ปีที่แล้ว

      You might be able to compare configuration to example configuration.h and configuration_adv.h be careful as they are just example files.

  • @user-cv4mz7jl2l
    @user-cv4mz7jl2l 7 หลายเดือนก่อน

    Hi great video thy
    How does marlin 'know' it have to be use e1 as the second z stepper?
    i want to use a second Y motor with a independent endstop ( so i can square things out)
    greetz Edwin

    • @EdwardBraiman
      @EdwardBraiman  7 หลายเดือนก่อน

      It's possible to use E1 as a second Y stepper. As for the second endstop not sure why.
      Normally one endstop in each axis x, y, and Z need a zero point for homing. Adding a second endstop might not work in this case.

    • @user-cv4mz7jl2l
      @user-cv4mz7jl2l 7 หลายเดือนก่อน

      I did read that you have to say in marlin that you have to say use _e1diag_ as second y axis as endstop

  • @bobcarter6143
    @bobcarter6143 4 ปีที่แล้ว

    Edward at 6:30 in you skip defining the E1 defaults - DEFAULT_AXIS_STEPS_PER_UNIT, DEFAULT_MAX_FEEDRATE and DEFAULT_MAX_ACCELERATION. Was this because you were accepting the A4988 defaults for your E1 channel setup - or does Marlin copy the Z Axis values to E1 when you add the Z_DUAL_STEPPER_DRIVERS definition ? I am using TMC2208's in UART mode so it will makes a difference. Thanks Bob

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      E1 is a default setting for normal printers. It may change based on configuration after calibration. I have a video someplace in my playlist.

    • @lucasvandelogt5126
      @lucasvandelogt5126 4 ปีที่แล้ว

      Bob Carter thank you for your comment, I have this issue as I have the tmc2208 drivers. Basically E1 either turns faster or goes further. I have not solved the issue yet. I would like to know how you solved the issue.

    • @bobcarter6143
      @bobcarter6143 4 ปีที่แล้ว +1

      @@lucasvandelogt5126 Hi Lucas - firstly I am using a BTT SKR 1.3 and not an MKS Gen board. I have yet to put the TMC2208's on the Z Axis (I have tested them working on X and Y in both STANDALONE and UART) but I have yet to try them on the Z Axis. I do have that working currently with a pair of A4988's (as it is cheaper to screw those up). In configuration.h I have defined Z_DRIVER_TYPE and E1_DRIVER_TYPE as A4988 (Z2 remains commented out). I have set only 4 values (ignoring E1/Z2) for DEFAULT_AXIS_STEPS_PER_UNIT, DEFAULT_MAX_FEEDRATE, DEFAULT_MAX_ACCELERATION. In configuration_adv.h I have uncommented Z_DUAL_STEPPER_DRIVERS. I had a similar problem to yours on X&Y and I ran that down to only one of the TMC2208's actually being in UART mode and running 16 microsteps. I had an issue with the other and so it was running Legacy and with no jumpers present defaulted to 8 microsteps. Check your soldering on the TMC2208 and the UART connections.

    • @lucasvandelogt5126
      @lucasvandelogt5126 4 ปีที่แล้ว

      @@bobcarter6143 I solved the issue by putting the motors in parallel

    • @bobcarter6143
      @bobcarter6143 4 ปีที่แล้ว

      @@lucasvandelogt5126 Lucas that is one way to solve it - the ANET A8 V1.5 mainboard I am replacing does just that, shares an A4988 across 2 Z motors - and I have bought several parallel splitter boards of eBay just in case - that said this morning I moved the two UART jumpered TMC2208's from X&Y to Z&E1 on my SKR1.3 reconfigured it and recompiled. Marlin is not reporting any TMC_Connection errors and is turning both motors in the same (wrong) direction at the same rate. I forgot I needed to reverse the direction moving from A4988's so changed just the INVERT_Z_DIR ignored E1 and that recompiled still turns both motors the other (right) way. So Marlin appears to be ignoring some/all of the E1 settings and just duplicating the Z. Good luck Bob.

  • @ypsonar
    @ypsonar 3 ปีที่แล้ว

    Thanks friend 😊

  • @ignaciogrosso6122
    @ignaciogrosso6122 4 ปีที่แล้ว

    Would this serve for a correct alignment of Z in marlin? with the line that says #define Z_STEPPER_AUTO_ALIGN

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      Maybe, but would independent steppers will always have alignment issues.

    • @ignaciogrosso6122
      @ignaciogrosso6122 4 ปีที่แล้ว

      @@EdwardBraiman
      So you recommend using a single driver for two motors? Thanks for the prompt response!

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      Np.

  • @armancodeq3642
    @armancodeq3642 ปีที่แล้ว +1

    Edward, i followed your tutorials, my dual z stepper was working fine for 1 year.
    I didn't use my printer for a month and yesterday when i ran it, my E1 motor(which is dual z) is rotating too much Ex: if i move z axis for 0.1mm E1 motor moves for around 1cm.
    I tried re-uploading marlin firmware. Doesn't work
    Changed drivers, and adjusted current.
    I checked E2 motor and cable, all are good.
    Just cant figure out what the problem is, can u help???

    • @EdwardBraiman
      @EdwardBraiman  ปีที่แล้ว

      Different steppers or NEMA 17 motors?

    • @armancodeq3642
      @armancodeq3642 ปีที่แล้ว

      @@EdwardBraiman a4988 drivers , and nema 17 motors for both E1 and Z

    • @EdwardBraiman
      @EdwardBraiman  ปีที่แล้ว

      Are part number same on both NEMA 17 steppers?

  • @chrisbufahl4996
    @chrisbufahl4996 3 ปีที่แล้ว

    Is there a print resume function for the board?

    • @EdwardBraiman
      @EdwardBraiman  3 ปีที่แล้ว +1

      Should be, that's a function of available pins on board and setting in Marlin firmware.

  • @mahmoudzaefi2958
    @mahmoudzaefi2958 ปีที่แล้ว

    Some printers use four motors in the vertical direction. Can you please advise how to do this in Marlin? And if you please make a video about this, it would be great. Because big printers have 4 motors in vertical direction.

    • @EdwardBraiman
      @EdwardBraiman  ปีที่แล้ว

      I've shown in some tutorials in advanced boards how to do this.

    • @mahmoudzaefi2958
      @mahmoudzaefi2958 ปีที่แล้ว

      @@EdwardBraiman could you please tell me in which video you speak about four motors in the vertical direction? i check video titles, most of the video tiles are "dual z stepper" and i looking for quad motor in z axis.
      i also check Octopus board and can't find how to setup 4 motor for z axis.
      please help me about this.
      thanks.

  • @fariasandres
    @fariasandres 3 ปีที่แล้ว

    Hay! Im using some TMC 2208 and this error keeps apearing "TMC2208 or TMC2209 on Z2 requires Z2_HARDWARE_SERIAL or Z2_SERIAL_(RX|TX)_PIN."
    Any idea how to solve it??
    Thanks!

    • @EdwardBraiman
      @EdwardBraiman  3 ปีที่แล้ว

      Post your configuration for configuration.h and configuration_adv.h in Discord and I'll look after work.

    • @fariasandres
      @fariasandres 3 ปีที่แล้ว

      @@EdwardBraiman Thanks man!! I'll do it

    • @EdwardBraiman
      @EdwardBraiman  3 ปีที่แล้ว

      You're welcome.

  • @daemonjofficial
    @daemonjofficial ปีที่แล้ว

    Im running head first into a wall. I have Marlin bugfix 2.0.x and Z_Dual_Stepper_Motors are nowhere to be found!! Please help! Im going crazy trying to figure thisout

    • @EdwardBraiman
      @EdwardBraiman  ปีที่แล้ว +1

      Use non bugfix build. Bugfix is a development branch it's not stable.

    • @daemonjofficial
      @daemonjofficial ปีที่แล้ว

      @@EdwardBraiman I even tried 2.1.1 & 2.1.x. Neither show these options. What am I missing?

    • @EdwardBraiman
      @EdwardBraiman  ปีที่แล้ว

      There's a Discord link on channel. Explain your issue in general chat and I or someone else can help.

  • @TORDesign
    @TORDesign 3 ปีที่แล้ว

    Thanks very helpful - where is Part 2?

    • @EdwardBraiman
      @EdwardBraiman  3 ปีที่แล้ว

      I think I took it down for some reason and have not record a new one yet. Also BTT added configuration files, so later this month I'll update tutorials again.

  • @markferrick10
    @markferrick10 5 ปีที่แล้ว

    Good video, thank you. Can you do one with dual z, dual endstops?

    • @EdwardBraiman
      @EdwardBraiman  5 ปีที่แล้ว +1

      Soon. I'm working on about five tutorials in my queue and then will start to add more to do.

    • @markferrick10
      @markferrick10 5 ปีที่แล้ว

      @@EdwardBraiman I am just curious if it will help keep the bed level if it know to adjust 2 steppers. Thanks again.

    • @EdwardBraiman
      @EdwardBraiman  5 ปีที่แล้ว

      Steppers currently will only move in parallel.

    • @markferrick10
      @markferrick10 5 ปีที่แล้ว

      @@EdwardBraiman So I was thinking of dual z steppers/rods, dual z stepper drivers and dual z endstops. In Marlin, especially bugfix 2.0, there is the capability to re-sync thereby re-tramming the bed to the x-axis. Someday, when I get ready for a full upgrade of my E16, I will give it a go.

    • @EdwardBraiman
      @EdwardBraiman  5 ปีที่แล้ว +1

      Sounds interesting. I've not yet digested the whole firmware, but I would like to examine it soon.

  • @rodrigov424
    @rodrigov424 4 ปีที่แล้ว

    hola tengo un problema con el conector del termistor. esta quemado el pin . quería saber donde consigo el archivo pins.h para poder usar el conector del termitero del segundo extrusor . muchas gracias

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      El archivo de pines que busca es pin_MKS_GEN_13.h. es posible que desee averiguar la causa raíz de por qué el termistor se quemó en el primer pin para evitar una repetición del problema. Buena suerte.

    • @rodrigov424
      @rodrigov424 4 ปีที่แล้ว

      @@EdwardBraiman disculpa no encuentro el archivo. se quemo el conector por que no tenia la protección plástica y se me cruzaron los cables provocando un corto. fue un grave error.

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      @@rodrigov424 La ruta del archivo puede verse así para Marlin 2.0.x ... C: \ Users \ ebraiman \ Downloads \ Marlin-2.0.x \ Marlin-2.0.x \ Marlin \ src \ pins \ ramps

  • @LocoFpv
    @LocoFpv 4 ปีที่แล้ว

    I follow these steps exactly and changed drivers to drv8825 because thats what im using but i get an error when compiling.

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว +1

      What's the error?

    • @LocoFpv
      @LocoFpv 4 ปีที่แล้ว

      @@EdwardBraiman will try and reflash this morn when i get back to my shop and post error

    • @LocoFpv
      @LocoFpv 4 ปีที่แล้ว

      it actually flashed this time... I must have done something wrong the first couple times I tried. now to test on the stepper motors. I will report back

    • @LocoFpv
      @LocoFpv 4 ปีที่แล้ว

      all motors are working as they should print head is getting hot but im now not getting a hot bed.

  • @martinkaye1801
    @martinkaye1801 3 ปีที่แล้ว

    Hi. I am very new to 3D printing and code and i'm having problems uploading to the motherboard. When i follow this video and get to the part where i need to compile and upload i get a message when it is trying to upload. The message is as follows.
    Arduino: 1.8.13 (Windows 8.1), Board: "Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)"
    Sketch uses 55164 bytes (21%) of program storage space. Maximum is 253952 bytes.
    Global variables use 2460 bytes (30%) of dynamic memory, leaving 5732 bytes for local variables. Maximum is 8192 bytes.
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_ReceiveMessage(): timeout
    avrdude: stk500v2_getsync(): timeout communicating with programmer
    An error occurred while uploading the sketch
    This report would have more information with
    "Show verbose output during compilation"
    option enabled in File -> Preferences.
    Please do you have any advice for me to solve this issue?

    • @EdwardBraiman
      @EdwardBraiman  3 ปีที่แล้ว

      Do you have any devices connected to 3d printer board? What board do you have selected in Arduino IDE for chipset? Have you considered using VScode with Platformio extension?

    • @martinkaye1801
      @martinkaye1801 3 ปีที่แล้ว

      @@EdwardBraiman Thanks for the quick response. The board is on it's own with just the stepper motors plugged in. Board selected is Arduino Mega or Mega 2560. I don't know what VScode is. I am using the DRV8825 steeper drivers if that makes any difference

    • @martinkaye1801
      @martinkaye1801 3 ปีที่แล้ว +1

      I've sorted the problem. I had the wrong COM port selected. When i checked the COM port in Arduino Port 1 was ticked but it also gave me the option of Port 4 which i have just tried and it uploaded. Now to carry on with the rest.

    • @EdwardBraiman
      @EdwardBraiman  3 ปีที่แล้ว

      In my playlist for this series there is a video on how to install. It should make it easier to work with. Is almost the same, but has a configuration file called platformio.ini. are you able to connect to the board with Pronterface?

    • @martinkaye1801
      @martinkaye1801 3 ปีที่แล้ว

      @@EdwardBraiman i connected to the board in Pronterface and when i moved the motors 1mm they turned. Tried 10mm and they turned again but when i tried to go back to turning by 1mm sometimes they were hesitant to turn then 1 might turn but the other didn't. There was also a bit of a click coming from the board.

  • @rezajb7654
    @rezajb7654 4 ปีที่แล้ว

    I HAVE MKS ROBIN 2.4 BOARDS AND MARLIN 2.1. Z2 STEPPER MOTOR CONNECT TO E1 NOT MOVE.PLEASE HELP

    • @EdwardBraiman
      @EdwardBraiman  4 ปีที่แล้ว

      You'll need to set up the stepper for E1 in configuration.h and then enable E1 in configuration_adv.h for E1 as a second z stepper. Note it may fall out of synch with other stepper motor as the calibration of each stepper may vary. It might be cheaper and more precise to split the output of the stepper with a stepper divider board in one of my SKR 1.3 videos it's explained. Hope this helps.

    • @rezajb7654
      @rezajb7654 4 ปีที่แล้ว

      @@EdwardBraiman HOW enable E1 in configuration_adv.h? CAN I SEND MY CONFIG FILES FOR U? I USE MKS LV8729 DRIVER AND I WANT DUAL STEPPER DRIVER FOR Z AXIS

    • @adrianbelano5541
      @adrianbelano5541 3 ปีที่แล้ว

      @@EdwardBraiman Hello, thankyou for the help. but how to set the E1 as the second z stepper in configuration_adv.h? i cannot find it

    • @EdwardBraiman
      @EdwardBraiman  3 ปีที่แล้ว

      The Marlin firmware may have changed since the recording of the video. Which version of Marlin firmware are you using?

    • @adrianbelano5541
      @adrianbelano5541 3 ปีที่แล้ว

      ​@@EdwardBraiman im using Mks-Robin-Nano-Marlin2.0-Firmware.
      Here's the link: github.com/makerbase-mks/MKS-Robin-Nano-V2.X/wiki/Marlin_firmware
      I found how to use E1 as Z2. Here it is: NUM_Z_STEPPER_DRIVERS 2
      But when I flash it in, it still doesn't work. Do you happens to know why? Thankyou to reply!

  • @rikes7855
    @rikes7855 ปีที่แล้ว

    At 0:58, you said E0, don't you mean E1?