1. Got a question or need help troubleshooting? Post to the troubleshooting forum or Search the forums!

Z Axis - Marlin "Baby Stepping"

Discussion in 'Mods and Upgrades' started by Ziggy, Jul 1, 2014.

  1. SteveC

    SteveC Well-Known Member

    Joined:
    Jun 12, 2013
    Messages:
    894
    Likes Received:
    316
    Robert, does the garbled LCD ever happen with the USB port is not plugged in? Try it.
     
  2. Robert Choban

    Robert Choban Active Member

    Joined:
    Aug 22, 2014
    Messages:
    279
    Likes Received:
    27
    I will give that a try and let you know what happens.
     
  3. Robert Choban

    Robert Choban Active Member

    Joined:
    Aug 22, 2014
    Messages:
    279
    Likes Received:
    27
    Ziggy, when you are printing do you print from the XXL controller and at the same time do you have you computer hooked up to the printer.

    I'm trying to determine why my XXL controller will work for a short period of time and then start displaying garbage on the screen. SteveC suggested that I disconnect my computer USB connection and see if the controller starts showing garbage after a short time. I will do this, but was wondering if anyone else out on the forum is having the same problem with the XXL controller, and if they have there computer connected to the printer. Lately I have been starting my prints from the computer, it's just easier than having to download the print to an SD card and them move the SD card from the computer to the XXL controller. I have unplugged and plugged the XXL back in a few times but the problem still happens.
     
  4. Paul Yeh

    Paul Yeh Active Member

    Joined:
    Mar 17, 2014
    Messages:
    170
    Likes Received:
    58
    I had the XXL LCD display issue once in a while as well and I was printed with SD without the USB connection. Don't know what the problem was.
     
  5. Ziggy

    Ziggy Moderator
    Staff Member

    Joined:
    Feb 20, 2013
    Messages:
    707
    Likes Received:
    530
    I print from the LCD but usually have the PC connected (via Repetier) at least for the start of the print. Often I just disconnect the PC part way through the print.

    Never had the LCD scramble at all.
     
  6. Galaxius

    Galaxius Well-Known Member

    Joined:
    Jan 18, 2014
    Messages:
    632
    Likes Received:
    342
    FYI, Ziggy and I have the Full Graphic LCD as opposed to the XXL LCD.
     
  7. Ziggy

    Ziggy Moderator
    Staff Member

    Joined:
    Feb 20, 2013
    Messages:
    707
    Likes Received:
    530
    And that could be an important difference. Because the firmware for the XXL LCD is different. It's possible there is a bug in the XXL LCD coding.
     
  8. SteveC

    SteveC Well-Known Member

    Joined:
    Jun 12, 2013
    Messages:
    894
    Likes Received:
    316
    Just another datapoint - my XXL has never glitched. No problem with the original cable length or with the 26" or so I have on it now.

    I did manage to glitch it when I was careless with an oscilloscope probe on the serial port pins thougho_O.
     
  9. Robert Choban

    Robert Choban Active Member

    Joined:
    Aug 22, 2014
    Messages:
    279
    Likes Received:
    27
    Are all your LCD's enclosed in a case. I printed a case for mine from thingsaverse, not sure if that could be a problem. I did use the round spacers in the box I printed.

    Could there be interference from the cable being too close to the Ramps card. I have the controller laying in front of the Robo (I have not mounted it yet). The cable runs under the controller, I have the enclosed bottom and cut a slot in the front of the bottom so the cable has a place to go, so I can't see exactly how it lays down by the ramps card.

    Paul what software are you using and are you still having problems with your XXL.

    Ziggy, who would I contact about the firmware for the XXL LCD. Not sure how I would checkout a error in the software?
     
  10. Ziggy

    Ziggy Moderator
    Staff Member

    Joined:
    Feb 20, 2013
    Messages:
    707
    Likes Received:
    530
    I think it is very unlikely there is a bug in Marlin causing the garbled LCD. This firmware has been stable for a long time. Your problem is far more likely to be a hardware issue with an intermittent connection between the Ramps/LCD or between the Arduino/LCD.

    The problem is not likely to be noise/interference on the LCD cable either. The reason is the LCD screen is completely updated every few seconds by the firmware. So any garbling would be "repaired" if you just moved the cables around to avoid any temporary interference/noise.
     
  11. Jeff Mercado

    Jeff Mercado Member

    Joined:
    Aug 12, 2013
    Messages:
    41
    Likes Received:
    32
    Am I missing something? I have reread (from Ziggy's pdf on baby stepping) the configuration_adv.h file a few times without finding any baby stepping code to adjust. Am I looking in the wrong place?
     
  12. Mike Kelly

    Mike Kelly Volunteer

    Joined:
    Mar 11, 2013
    Messages:
    6,967
    Likes Received:
    2,276
    3 people like this.
  13. Jeff Mercado

    Jeff Mercado Member

    Joined:
    Aug 12, 2013
    Messages:
    41
    Likes Received:
    32
    Thanks Mike! I thought I was going crazy (but as usual, just ignorant :) ). I'll update and get it running.
     
  14. R/C Heli

    R/C Heli New Member

    Joined:
    Sep 16, 2014
    Messages:
    4
    Likes Received:
    1
    Mike, I need some help. I just upgraded to firmware Auto_Level_7_17_516 "RoBoDR1AUTOV4" At the same time I replaced the Pololu A4988 stepper driver boards with the DRV8825 stepper driver boards. I wanted the cooler running boards, to keep the long prints from failing due to heat. I have the DRV8825's set to .59 volts and set the firmware to 1/32 stepping by changing "#define DEFAULT_AXIS_STEPS_PER_UNIT {160,160,4435.44,1446.76}" which seems to be working fine.

    The problem is after upgrading both of these the Baby Stepping stopped working. I can hear it trying when I turn the knob but the motors don't turn.

    Have you seen this before? Any suggestions.

    Thanks
    Rick
     
  15. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
  16. R/C Heli

    R/C Heli New Member

    Joined:
    Sep 16, 2014
    Messages:
    4
    Likes Received:
    1
    mark tomlinson

    Your the man, I put the A4988 back in for the Z axis and made the required firmware changes and it works. I am going to have to do some research to find out why the DRV8825 does not work with Baby-stepping.

    Thanks
    Rick
     
    #36 R/C Heli, Apr 4, 2015
    Last edited: Apr 4, 2015
    mark tomlinson likes this.
  17. Ziggy

    Ziggy Moderator
    Staff Member

    Joined:
    Feb 20, 2013
    Messages:
    707
    Likes Received:
    530
    If you look in stepper.cpp you will see that Marlin has been "tuned" to work with the A4988 stepper driver. The statement I have bolded below just adds a minimum step pin high/low pulse duration. It may be the DRV8825 needs a longer delay. Look at the spec sheets for the A4988 v DRV8825.

    //perform step
    WRITE(Z_STEP_PIN, !INVERT_Z_STEP_PIN);
    #ifdef Z_DUAL_STEPPER_DRIVERS
    WRITE(Z2_STEP_PIN, !INVERT_Z_STEP_PIN);
    #endif
    //wait a tiny bit
    {
    float x=1./float(axis+1); //absolutely useless
    }
    WRITE(Z_STEP_PIN, INVERT_Z_STEP_PIN);
    #ifdef Z_DUAL_STEPPER_DRIVERS
    WRITE(Z2_STEP_PIN, INVERT_Z_STEP_PIN);
    #endif

    EDIT :

    A4988 needs min 1us step pulse duration
    DRV8825 needs min 1.9us
     
    #37 Ziggy, Apr 6, 2015
    Last edited: Apr 6, 2015
    mark tomlinson likes this.
  18. Ziggy

    Ziggy Moderator
    Staff Member

    Joined:
    Feb 20, 2013
    Messages:
    707
    Likes Received:
    530
    I tested babystepping with a DRV8825 driver. Replace the useless statement (in the previous post) with a 2us delay and it works.

    I'll raise an issue on Github Marlin.

    //perform step
    WRITE(Z_STEP_PIN, !INVERT_Z_STEP_PIN);
    #ifdef Z_DUAL_STEPPER_DRIVERS
    WRITE(Z2_STEP_PIN, !INVERT_Z_STEP_PIN);
    #endif
    //wait a tiny bit
    {
    delayMicroseconds(2);
    }
    WRITE(Z_STEP_PIN, INVERT_Z_STEP_PIN);
    #ifdef Z_DUAL_STEPPER_DRIVERS
    WRITE(Z2_STEP_PIN, INVERT_Z_STEP_PIN);
    #endif
     
    mark tomlinson likes this.
  19. ANDERSON GODOY

    ANDERSON GODOY New Member

    Joined:
    May 15, 2015
    Messages:
    1
    Likes Received:
    0
    Hi!
    My name is Anderson Godoy.
    I am new here.
    I managed to install Babystepping, but when I send it to move the Z during printing, it does not move. At least I can see the axis moving.
    What can be? I use drivers of 1/32 and 8mm diameter bar with 8mm step. Tested with the multiplier set to 1 and 2 and in no nothing happens.
    Sorry for English errors.
     
  20. Jeff Mercado

    Jeff Mercado Member

    Joined:
    Aug 12, 2013
    Messages:
    41
    Likes Received:
    32
    It is very possible the z axis is moving but you can't tell. It moved very very slowly. When printing a rim around a part I can spin the knob many times to get it to the right height. Make sure you are giving it a chance with several spins of the knob. There is a firmware variable I think that will enable you to increase the speed of the movement.
     

Share This Page