Close



Page 2 of 2 FirstFirst 12
Results 11 to 17 of 17
  1. #11
    // Travel limits after homing
    #define X_MAX_POS_DEFAULT 450
    #define X_MIN_POS_DEFAULT 0
    #define Y_MAX_POS_DEFAULT 355
    #define Y_MIN_POS_DEFAULT 0
    #define Z_MAX_POS_DEFAULT 310
    #define Z_MIN_POS_DEFAULT 0


    #define X_MAX_LENGTH (base_max_pos[0] - base_min_pos[0])
    #define Y_MAX_LENGTH (base_max_pos[1] - base_min_pos[1])
    #define Z_MAX_LENGTH (base_max_pos[2] - base_min_pos[2])

    I'm going to print the function and see if I can find a problem.

  2. #12

    Post

    Quote Originally Posted by wubwub View Post
    // Travel limits after homing
    #define X_MAX_POS_DEFAULT 450
    #define X_MIN_POS_DEFAULT 0
    #define Y_MAX_POS_DEFAULT 355
    #define Y_MIN_POS_DEFAULT 0
    #define Z_MAX_POS_DEFAULT 310
    #define Z_MIN_POS_DEFAULT 0


    #define X_MAX_LENGTH (base_max_pos[0] - base_min_pos[0])
    #define Y_MAX_LENGTH (base_max_pos[1] - base_min_pos[1])
    #define Z_MAX_LENGTH (base_max_pos[2] - base_min_pos[2])

    I'm going to print the function and see if I can find a problem.
    I am about to have a stroke, my arduino libraries decided to self destruct on their own... As stupid as that sounds, I'm getting huge errors on compilation now, files not being found etc. I'll fix that later, probably with a hammer.
    Here is my Config module; https://drive.google.com/file/d/0Bx9...ew?usp=sharing

  3. #13
    Well, I found a band-aid.
    i sent a command to the board, specifically M211 Xn Yn Zn, where n is our expected max build, works fine now. I still think it's strange that I couldn't find any modifiers in the different modules.

    Im not sure if anyone tried to build something this size off of a printrboard. I wonder if they've run into a similar issue, or if there really was something I did wrong n compilation?

  4. #14
    Super Moderator Roxy's Avatar
    Join Date
    Apr 2014
    Location
    Lone Star State
    Posts
    2,183
    I think it is more like who ever made this work for the Printer did some strange things to the source. Where are base_max_pos[] and base_min_pos[] defined? They are only referenced in Confgiuration.h They are defined somewhere else. And it doesn't seem like they need to be because just above that you have the values for:

    #define X_MAX_POS_DEFAULT 450
    #define X_MIN_POS_DEFAULT 0
    #define Y_MAX_POS_DEFAULT 355
    #define Y_MIN_POS_DEFAULT 0
    #define Z_MAX_POS_DEFAULT 310
    #define Z_MIN_POS_DEFAULT 0

    But base_max_pos[] and base_min_pos[] are used to set the length of each axis. How does this make any sense?

    #define X_MAX_LENGTH (base_max_pos[0] - base_min_pos[0])
    #define Y_MAX_LENGTH (base_max_pos[1] - base_min_pos[1])
    #define Z_MAX_LENGTH (base_max_pos[2] - base_min_pos[2])

    You need to find where base_min_pos[] is defined and where (and how) it is used.

  5. #15
    Quote Originally Posted by Roxy View Post
    I think it is more like who ever made this work for the Printer did some strange things to the source. Where are base_max_pos[] and base_min_pos[] defined? They are only referenced in Confgiuration.h They are defined somewhere else. And it doesn't seem like they need to be because just above that you have the values for:

    #define X_MAX_POS_DEFAULT 450
    #define X_MIN_POS_DEFAULT 0
    #define Y_MAX_POS_DEFAULT 355
    #define Y_MIN_POS_DEFAULT 0
    #define Z_MAX_POS_DEFAULT 310
    #define Z_MIN_POS_DEFAULT 0

    But base_max_pos[] and base_min_pos[] are used to set the length of each axis. How does this make any sense?

    #define X_MAX_LENGTH (base_max_pos[0] - base_min_pos[0])
    #define Y_MAX_LENGTH (base_max_pos[1] - base_min_pos[1])
    #define Z_MAX_LENGTH (base_max_pos[2] - base_min_pos[2])

    You need to find where base_min_pos[] is defined and where (and how) it is used.
    base_min_pos[n] and base_max_pos[n] are defined as the values X/Y/Z__MIN/MAX_POS_DEFAULT in a separate module, I didn't see any other pointers or variables.

    What this came down to, the base EEPROM variables needed to be scripted and stored again after a flash, this included acceleration, digital pot config, you name it. After sending values and saving with M500, variables persisted. It did not click for me since the source variables were something like
    #define X_MAX_POS_DEFAULT 200
    #define X_MIN_POS_DEFAULT 0
    #define Y_MAX_POS_DEFAULT 200
    #define Y_MIN_POS_DEFAULT 0
    #define Z_MAX_POS_DEFAULT 235
    #define Z_MIN_POS_DEFAULT 0

    Where if they were all 250 to begin with, this would have made more sense. I looked for a while, still I have no idea where these values of 250 were generated. It was very counter intuitive for me, but I'm sure there is an excellent reason for this behavior.

    The good news is, I'm pretty much ready to roll now. I did change my safety margins a little, 425x355x300mmH, can't wait to print some one piece quad copters!

  6. #16
    Super Moderator Roxy's Avatar
    Join Date
    Apr 2014
    Location
    Lone Star State
    Posts
    2,183
    This code base has been modified enough from the original.... If you end up with another problem, please .ZIP up the whole thing and post it with your questions. I think we are going to need to have the actual code you are building in order to help.

  7. #17

    Quote Originally Posted by Roxy View Post
    This code base has been modified enough from the original.... If you end up with another problem, please .ZIP up the whole thing and post it with your questions. I think we are going to need to have the actual code you are building in order to help.
    No prob Roxy, thanks for the brain time.

    It's on my other machine at the moment, I really didn't change much from the release archive, outside of the Config.h and Config_adv.h.

Page 2 of 2 FirstFirst 12

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
  •