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

Marlin Firmware Upgrade 1.1.0 RC8 & RCBugFix (For R1 & R1+PLUS)

Discussion in 'Mods and Upgrades' started by WheresWaldo, Jun 11, 2015.

Thread Status:
Not open for further replies.
  1. WADZOQUADZ

    WADZOQUADZ Member

    Joined:
    Mar 16, 2015
    Messages:
    90
    Likes Received:
    23
    yea i dont see a value just the name in menu that does nothing. Iv printed like 6 things already on mesh and all worked fine except one printed started with the nozzle too close to the bed and wouldnt extrude . Thats why i tried to use the babystepping . I then stopped the print and restarted it and again too close to extrude. i shut the printer off ,turned it back on and it then printed fine. Must have been a fluke misreading when homing or something but thats the one time babystepping z in print could have been good.
     
  2. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    Without modification Baby-Stepping does not actually show you a value on the LCD screen. That is not what I meant by my statement. I meant there should be little or no reason to do any baby-stepping if MESH is done correctly. Any adjustment needed can be done with M851 the Z_Offset command. The whole idea behind MESH leveling is to make it set and forget.

    I have found a few things that mess up MESH leveling. For example, if I push too hard on the extruder while it is up in the air, the lead screws move so smoothly that I can actually rotate them and upset the level of my X Axis with very little force. I have to be careful changing filaments or home all axes before I make the change. Only then can I guarantee that I haven't moved the lead screws. But one benefit I found is that once I return the X axis to level I don't even have to be in a hurry to redo the MESH measurements.
     
  3. WADZOQUADZ

    WADZOQUADZ Member

    Joined:
    Mar 16, 2015
    Messages:
    90
    Likes Received:
    23
    Now that you mention it ,i believe that is what happened. I will cleaning filament off the nozzle when i was starting to home and it through off the offset. Hasnt happened other then the one print.
     
  4. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    I asked a question about M851 Z_Offset and MESH leveling on Marlin's GITHUB. I am curious to see the answer. I tried several times to adjust the leveling procedure and it is inconsistent with regard to M851. I also don't think baby-stepping works with MESH, and the lack of displayed numbers or even an indicator as to which direction you are stepping makes testing it very hard. I will ask that after I have an answer to the Z_Offset question.

    I have a feeling we are going to end up with at the very least and RC6 before any final code.
     
  5. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    I guess I should learn to read. Z_Offset with MESH leveling uses the G29 command. The exact syntax is
    Code:
    G29 S4 Zn.nn
    Where n.nn is positive to move the entire mesh away from the bed and negative moves the entire mesh closer to the bed.
     
    mark tomlinson likes this.
  6. daniel871

    daniel871 Well-Known Member

    Joined:
    Apr 18, 2015
    Messages:
    1,322
    Likes Received:
    510
    I thought the S value was for a specific probing point in a particular mesh if you were doing the probing via the Terminal window in whatever software you used to control the printer.

    So, if I was doing my 7 x 7 grid via the Terminal I'd have to send G29 S1 through G29 S49 (instead of the LCD Level Bed procedure that is much easier).

    Would

    Code:
    G29 Zn.nn
    Also work? Is the actual S point chosen relevant so long as it's one of the points within your mesh sampling?
     
  7. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    Nope, to fix a specific point in the mesh your command is
    Code:
    G29 S3 Xn Yn Zn.nn
    Xn where n is 1 to maximum number of X probe points
    Yn where n is 1 to maximum number of Y probe points
    and Zn.nn where n.nn is the actual measurement you want stored.

    From the guy who actually wrote the routine:
    https://github.com/epatel/Marlin/bl...cbac1fab1fa6/Documentation/MeshBedLeveling.md

    All this stuff about different ways to include the Z_Offset is just confusing. They need to settle on a single way to handle the bed offset. So far it is:

    M565 Zn.nn for Marlin 1.0.0 and auto-bed-leveling
    M851 Zn.nn for Marlin 1.1.0 w/auto-bed-leveling enabled
    G29 S4 Zn.nn for Marlin 1.1.0 w/MESH leveling enabled

    Now off to figure out if baby-stepping works with MESH leveling.
     
    #307 WheresWaldo, Apr 5, 2016
    Last edited: Apr 5, 2016
    mark tomlinson likes this.
  8. WADZOQUADZ

    WADZOQUADZ Member

    Joined:
    Mar 16, 2015
    Messages:
    90
    Likes Received:
    23
    I have been using a offset with mesh just by using

    M851 Z.025
    G29

    It seems to be working as it definitely adjusting the first layer height when i change the offset. The one problem i do have is after a print i cant just go and start another print or it will print too close to the bed and not extrude . This is with or without a offset defined in the start code. If i turn the printer off and then on again it works fine.

    I also made sure i dont touch the z axis but still dont work without restarting the printer.
     
    mark tomlinson likes this.
  9. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    Well it shouldn't work according to the developer that created the MESH code. It should be as I have written it in post #307. I have tested M851 myself and it doesn't work with MESH enabled. I am about to test G29 S4 Zn.nn now.
     
  10. daniel871

    daniel871 Well-Known Member

    Joined:
    Apr 18, 2015
    Messages:
    1,322
    Likes Received:
    510
    After the Mesh testing, here is another diagnostic question.

    Is there anything in Marlin along the lines of a backlash testing script like there is in Repetier firmware? Where it repeatedly tests the triggering on each axis endstop and determines how much backlash there is on a given axis for opening/closing the circuit and giving back the results so you can determine whether a belt needs to be tightened/whatever, repeat the test and then eventually apply backlash compensation once you have it mechanically as tight as you can get it?

    EDIT:

    Here is the Octopi add-on for printers that have Repetier firmware.

    http://plugins.octoprint.org/plugins/autocalibration/
     
    #310 daniel871, Apr 5, 2016
    Last edited: Apr 5, 2016
  11. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    There are no backlash commands used by Marlin. Some custom versions have implemented M98 and M99 but that code was never mainstreamed into Marlin. (Info provided by Marlin dev)
     
  12. daniel871

    daniel871 Well-Known Member

    Joined:
    Apr 18, 2015
    Messages:
    1,322
    Likes Received:
    510
    Yeah, I found the ones intended for use with delta printer calibrations, but nothing for cartesian printers.
     
  13. WADZOQUADZ

    WADZOQUADZ Member

    Joined:
    Mar 16, 2015
    Messages:
    90
    Likes Received:
    23
    You are correct Sir . What was throwing me off is the offset was working however it disabled mesh which i didnt realize until i printed a really large part. I now have it setup with only the G29 S4 Z0.025 saved in Eprom and no offset in the start code.

    One question i do have . I had to set the steps to .01 from .025 as my encoder on my lcd would only register .050 when set to .025 and .02 when set to .01 That .025 is between encoder clicks but it wont stop on it. Is this normal ? Anything i can do in the code to improve the encoder step resolution? It does this when turning the feedrate up on the lcd as well.
     
  14. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    You can change clicks to be 1:1 in Configuration.h but it makes large changes very slow. I left it at Marlin's default setting. I am fairly certain these two items are what you need to play with:
    Code:
    //#define ENCODER_PULSES_PER_STEP 1 // Increase if you have a high resolution encoder
    //#define ENCODER_STEPS_PER_MENU_ITEM 5 // Set according to ENCODER_PULSES_PER_STEP or your liking
    You actually should be able to move the encoder slowly between detents to get intermediate values.
     
    WADZOQUADZ likes this.
  15. WADZOQUADZ

    WADZOQUADZ Member

    Joined:
    Mar 16, 2015
    Messages:
    90
    Likes Received:
    23
    Awesome thanks. . Yea i can get the encoder to go inbetween detents but when i go to click it the encoder registers one up or down.
     
  16. TstarkEngineering

    TstarkEngineering Active Member

    Joined:
    Mar 10, 2016
    Messages:
    114
    Likes Received:
    38
    went from RC4 to RC5 getting thermal runaway now, kinda odd in my opinion.
     
  17. daniel871

    daniel871 Well-Known Member

    Joined:
    Apr 18, 2015
    Messages:
    1,322
    Likes Received:
    510
    The firmware settings for thermal runaway are way too sensitive in my opinion. I increased the time frame for triggering as well as fudging the forgiveness for temperature variation so that it had to really be going wrong before triggering instead of a maybe going wrong.
     
  18. TstarkEngineering

    TstarkEngineering Active Member

    Joined:
    Mar 10, 2016
    Messages:
    114
    Likes Received:
    38
    what did you change? I will have to do this to mine as well.
     
  19. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    Actually it is not the settings for hysteresis that are incorrect. It is an actual bug that tried to compare a FLOAT to an INT, it was dumb on the part of the Marlin gatekeeper to continually add new code to RC's (which should be feature frozen), without any regression testing. Go back to RC4 or move forward to RCBugFix and this issue is gone. Please note that RCBugFix has issues as new untested code is still being merged into it. There will be an RC6 but I can't figure out their timetable.
     
    mark tomlinson likes this.
  20. TstarkEngineering

    TstarkEngineering Active Member

    Joined:
    Mar 10, 2016
    Messages:
    114
    Likes Received:
    38
    tried going back to RC4 now, and Im getting a new error when compiling.

    #error A probe needs a pin! [Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN || HAS_Z_PROBE]
     
Thread Status:
Not open for further replies.

Share This Page