Close



Page 2 of 40 FirstFirst 123412 ... LastLast
Results 11 to 20 of 396
  1. #11
    Staff Engineer printbus's Avatar
    Join Date
    May 2014
    Location
    Highlands Ranch, Colorado USA
    Posts
    1,441
    Add printbus on Thingiverse
    Quote Originally Posted by AbuMaia View Post
    ...now I get

    Marlin_main.cpp: In function ‘void retract_z_probe()’:
    Marlin_main.cpp:1100:13: error: ‘axis’ was not declared in this scope
    if (axis==Z_AXIS)
    I don't have the code with the retract_z_probe function in it. BUT, looking at the number of other places in marlin_main.cpp that where similar code exists in the older version, I'll bet the 'void retract_z_probe()' should really be 'void retract_z_probe(int axis)'.
    Last edited by printbus; 09-26-2014 at 09:01 AM.

  2. #12
    Something else to look at in the configuration.h, right about that line it says :
    //If defined, the Probe servo will be turned on only during movement and then turned off to avoid jerk
    //The value is the delay to turn the servo off after powered on - depends on the servo speed; 300ms is good value, but you can try lower it.
    // You MUST HAVE the SERVO_ENDSTOPS defined to use here a value higher than zero otherwise your code will not compile.



    Quote Originally Posted by AbuMaia View Post
    I don't have to check, I know I have it enabled and set to 1000. All commenting it out will do is cause Marlin to skip that part, as the "if" will no longer match. The unmodified version from the zip file compiles properly. It's something to do with my settings somehow.

    Oh, I see, the unmodified version has that line commented out, too. Hmm. Yes, if I activate that line, it throws that error.

  3. #13
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    538
    Quote Originally Posted by printbus View Post
    Jeez. Looks like I'll be needing to download the newer code to help out where I can. I don't have the code with the retract_z_probe function in it. BUT, looking at the number of other places in marlin_main.cpp that where similar code exists in the older version, I'll bet the 'void retract_z_probe()' should really be 'void retract_z_probe(int axis)'.
    I tried that, it threw many more errors which I can't remember well enough to quote right now.

    Quote Originally Posted by ctcwhexdx View Post
    Something else to look at in the configuration.h, right about that line it says :
    //If defined, the Probe servo will be turned on only during movement and then turned off to avoid jerk
    //The value is the delay to turn the servo off after powered on - depends on the servo speed; 300ms is good value, but you can try lower it.
    // You MUST HAVE the SERVO_ENDSTOPS defined to use here a value higher than zero otherwise your code will not compile.
    Yes, I saw that too. I used the deactivation delay before this fork came out, so it was working properly before. I have it set up properly.

    Comparing the new version with what I was using yesterday, that whole "Retract Z Servo endstop if enabled" section is new. I commented it all out for now.
    Last edited by AbuMaia; 09-24-2014 at 09:32 PM.

  4. #14
    Super Moderator Roxy's Avatar
    Join Date
    Apr 2014
    Location
    Lone Star State
    Posts
    2,184
    Quote Originally Posted by printbus View Post
    I'll bet the 'void retract_z_probe()' should really be 'void retract_z_probe(int axis)'.
    I don't remember retract_z_probe() ever having any arguments. I have a different theory. If you go find the declaration:

    void retract_z_probe()

    and then search for the first occurrence of

    if (axis==Z_AXIS)

    because that is what that error message:

    Marlin_main.cpp:1100:13: error: ‘axis’ was not declared in this scope
    if (axis==Z_AXIS)

    is complaining about... You find this stuff just before the if (axis==Z_AXIS)


    #ifndef Z_PROBE_SLED
    engage_z_probe(); // Engage Z Servo endstop if available
    #endif // Z_PROBE_SLED
    run_z_probe();
    float measured_z = current_position[Z_AXIS];
    #ifndef Z_PROBE_SLED
    if (retract_probe) {
    do_blocking_move_to(current_position[X_AXIS], current_position[Y_AXIS],current_position[Z_AXIS]+Z_RAISE_BETWEEN_PROBINGS );
    retract_z_probe();
    }
    #endif // Z_PROBE_SLED


    I bet those Z_PROBE_SLED #ifdef problems are biting you!

  5. #15
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    538
    That section with the Z_PROBE_SLED is about 64 lines after the line throwing the error for me.

  6. #16
    Super Moderator Roxy's Avatar
    Join Date
    Apr 2014
    Location
    Lone Star State
    Posts
    2,184
    Quote Originally Posted by dacb View Post
    I pulled this down... And it compiled clean. This must not be the code base you guys are having trouble with ????

  7. #17
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    538
    It is. I downloaded the zip file, and merged my settings into it. If you compile it without changing anything, it will compile clean, but if you uncomment the servo deactivation delay line in configuration.h, it will not compile.

  8. #18
    Technologist dacb's Avatar
    Join Date
    Aug 2014
    Location
    Edmonds, WA
    Posts
    139
    Thanks to everyone who has tried a build.

    I can confirm that if I clone the repo and open the "Marlin-Marlin_v1/Marlin/Marlin.ino" and do a build without altering anything else, it does build cleanly.

    BUT: As with AbuMaia, uncommenting line 454 on Configuration.h (#define PROBE_SERVO_DEACTIVATION_DELAY 300) does cause a build failure.

    SO: I pushed a fix: https://github.com/beckdac/Marlin/co...d5ba1a103c1f64

    DO: You can reclone the repo or do a git pull. Modify your Configuration.h to reflect the DELAY you want and build.

    NOTE: I'm pretty wedded to the command line. However, I'm trying to convert as many people as possible to "open source and open science & engineering" and I just discovered the GitHub desktop app. I'm on OS/X, but I see there is a windows version. It is pretty intuitive to use and has a nice visual of the history of a repo. Once you have cloned a repo locally, you can use an app like this in order to have a GUI into your local work.

    Edit: For those of you who have "localized" this to your specific printer, would you mind posting a diff or a description of what you changed so that others may have some direction?
    Last edited by dacb; 09-25-2014 at 02:13 AM. Reason: Added request for more 411

  9. #19
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    538
    Quote Originally Posted by dacb View Post
    For those of you who have "localized" this to your specific printer, would you mind posting a diff or a description of what you changed so that others may have some direction?
    Here is mine, set up for an 8 inch i3v with auto bed levelling and an end-of-filament detection switch.

    https://dl.dropboxusercontent.com/u/...ia-Marlin.diff

  10. #20
    Staff Engineer printbus's Avatar
    Join Date
    May 2014
    Location
    Highlands Ranch, Colorado USA
    Posts
    1,441
    Add printbus on Thingiverse
    Quote Originally Posted by Roxy View Post
    I don't remember retract_z_probe() ever having any arguments.
    That was exactly my point. All of a sudden in the retract_z_probe function an attempt to use variable axis shows up and the compiler errors because it doesn't know what it is. It's evidently not a global, so it should be passed to retract_z_probe as an argument.

    The number of ifdefs in the Marlin code is incredible.

Page 2 of 40 FirstFirst 123412 ... LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •