Close



Page 1 of 38 12311 ... LastLast
Results 1 to 10 of 396

Hybrid View

  1. #1
    Technologist dacb's Avatar
    Join Date
    Aug 2014
    Location
    Edmonds, WA
    Posts
    139

    Marlin firmware fork for MakerFarm i3v w/ auto bed level & Roxy's enhancements

    I have been frustrated with having to dig through lots of places to get all the bits and pieces for the most recent code for the Marlin firmware for the i3v. I also note that the trunk is slow to incorporate pulls.

    So, I have setup a fork of the Marlin trunk with the Type 6 therm. table modified, auto bed leveling enabled (this is easy to turn off) and Roxy's enhanced G29 (and G28) commands with the debugging info on. For a better description of the therm table stuff, see this post.

    If you don't have ABL, there is an example Configuration.h that should get you started: Configuration.h.without_ABL . Rename this to Configuration.h and rebuild. The ABL enhanced Gcodes will be disabled.

    I am trying to keep this current against the Marlin trunk, e.g. it includes the 9/14 fix for the vector calculations and the fixes for the defines related to the sleds.

    Here is the repo:
    https://github.com/beckdac/Marlin

    It isn't necessary to use the Git tools or to clone the above repository if you don't plan on ever making changes that you will want to push back to the community. Instead, just use the Download Zip button on the right hand side of the page.

    Make sure you update your E-steps and set the ABL servo angle before using!

    Updates:
    Fix: Moved do_blocking_move_relative call from retract_z_probe to homeaxis.
    Feature: Added a modified version of the dynamic ABL probe area code from here: https://github.com/ErikZalm/Marlin/pull/1022
    Option: Added example for non ABL Configuration.h
    Last edited by dacb; 09-29-2014 at 01:51 PM. Reason: Added warning. Added notice. Added no ABL info. Added update... Added note that you can just download a zip and avoid git.

  2. #2
    Staff Engineer printbus's Avatar
    Join Date
    May 2014
    Location
    Highlands Ranch, Colorado USA
    Posts
    1,437
    Add printbus on Thingiverse
    Sounds good. Safe to assume updates would be noted here?

  3. #3
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    536
    What do we do with the configuration.h.makerfarm?

    Also, I'm getting this error when compiling:

    Marlin_main.cpp: In function ‘void prepare_arc_move(char)’:
    Marlin_main.cpp:4166:49: error: ‘hypot’ was not declared in this scope
    float r = hypot(offset[X_AXIS], offset[Y_AXIS]); // Compute arc radius for mc_arc

    I do not know why, it's the same as the line in the old Marlin_main.cpp.
    Last edited by AbuMaia; 09-24-2014 at 07:34 PM.

  4. #4
    Technologist dacb's Avatar
    Join Date
    Aug 2014
    Location
    Edmonds, WA
    Posts
    139
    Quote Originally Posted by printbus View Post
    Sounds good. Safe to assume updates would be noted here?
    Definitely.

    Quote Originally Posted by AbuMaia View Post
    What do we do with the configuration.h.makerfarm?

    Also, I'm getting this error when compiling:

    Marlin_main.cpp: In function ‘void prepare_arc_move(char)’:
    Marlin_main.cpp:4166:49: error: ‘hypot’ was not declared in this scope
    float r = hypot(offset[X_AXIS], offset[Y_AXIS]); // Compute arc radius for mc_arc

    I do not know why, it's the same as the line in the old Marlin_main.cpp.
    The *.makerfarm could be removed from the repo, I suppose. They are from the MakerFarm firmware source ball I downloaded from MakerFarm's Google Drive. They are for reference only.

    As for your compilation problem... I just went to a new machine and did a git clone into a new directory. Then I opened the Marlin.ino in Marlin/Marlin in the Arduino IDE (1.05) and hit Verify. Does this differ from your protocol? Make sure you are in a new directory. I will add that this also builds under 1.5.2 (both on a Mac).

  5. #5
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    536
    Well, I solved the hypot problem. The /* -*- c++ -*- */ at the top of marlin_main got replaced by some other text somehow. I've restored it, 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)

    That would be line 1091 in the zipped file. I'm stumped this time.
    Last edited by AbuMaia; 09-24-2014 at 08:47 PM.

  6. #6
    Go into configuration.h around line 455 or so, do you have #define PROBE_SERVO_DEACTIVATION_DELAY 300 enabled, if so put a // in front of it and see if it compiles.

    I just ran into the same thing.....

    Quote Originally Posted by AbuMaia View Post
    Well, I solved the hypot problem. The /* -*- c++ -*- */ at the top of marlin_main got replaced by some other text somehow. I've restored it, 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)

    That would be line 1091 in the zipped file. I'm stumped this time.

  7. #7
    Staff Engineer printbus's Avatar
    Join Date
    May 2014
    Location
    Highlands Ranch, Colorado USA
    Posts
    1,437
    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.

  8. #8
    Super Moderator Roxy's Avatar
    Join Date
    Apr 2014
    Location
    Lone Star State
    Posts
    2,182
    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!

  9. #9
    Engineer
    Join Date
    Jul 2014
    Location
    Eastern Colorado
    Posts
    536
    I downloaded the .zip file, otherwise it's the same as I did, after I migrated my settings across.

    I just compared the modified files with a new set fresh out of the zip file. I can't find any missing hypot declaration anywhere.
    Last edited by AbuMaia; 09-24-2014 at 08:29 PM.

  10. #10
    Staff Engineer printbus's Avatar
    Join Date
    May 2014
    Location
    Highlands Ranch, Colorado USA
    Posts
    1,437
    Add printbus on Thingiverse
    I believe hypot is an Arduino function. It wouldn't be defined in the Marlin files.

Page 1 of 38 12311 ... 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
  •