Odd behaviors – only X axis works

Home Forums TinyG TinyG Support Odd behaviors – only X axis works

Tagged: 

Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #1511
    greyhound716
    Member

    Hi, just got the TinyG recently and wired up a couple of NEMA23 steppers (bipolar serial) to give it a whirl. I’m getting some fairly odd behaviors, and I don’t know why. In short, I can’t get any output except the 1st to work, and g0 (seek) doesn’t seem to do anything.

    If I reset and then run the following:

    f600
    g1x100y100z100

    Only the motor 1 light lights up (and if I have a motor attached at the time, it runs), and if I query the current position, it indicates that only the X axis has moved to 100mm. If I instead use a seek (g0), no axis change. I do not get a parse error, the terminal settings work fine, etc.

    Any suggestions on what I’m doing wrong would be appreciated. I do not have any limit switches installed, and so I believe I have disabled those checks. I also have the pots set about mid-position, and so I should get the LED indicator. Both red and blue power lights are fired up. I didn’t plug or unplug anything with the power on. 🙂

    Settings:

    0.92 build 326.01
    Set all of the critical axis modes to be the same:

    Profile 1.00 [P_1.00]
    Version 0.90 [V_0.90]
    Motor 1 – Mapped to axis 0 [0=X,1=Y…] $1MA0
    Motor 1 – Step angle 1.80 degrees $1SA1.80
    Motor 1 – Travel/rev 1.25 mm $1TR1.25
    Motor 1 – Microsteps 8 [1,2,4,8] $1MI8
    Motor 1 – Motor polarity 0 [0,1] $1PO0
    Motor 1 – Power mgmt mode 1 [0,1] $1PW1
    Motor 2 – Mapped to axis 1 [0=X,1=Y…] $2MA1
    Motor 2 – Step angle 1.80 degrees $2SA1.80
    Motor 2 – Travel/rev 1.25 mm $2TR1.25
    Motor 2 – Microsteps 8 [1,2,4,8] $2MI8
    Motor 2 – Motor polarity 0 [0,1] $2PO0
    Motor 2 – Power mgmt mode 1 [0,1] $2PW1
    Motor 3 – Mapped to axis 2 [0=X,1=Y…] $3MA2
    Motor 3 – Step angle 1.80 degrees $3SA1.80
    Motor 3 – Travel/rev 1.25 mm $3TR1.25
    Motor 3 – Microsteps 8 [1,2,4,8] $3MI8
    Motor 3 – Motor polarity 0 [0,1] $3PO0
    Motor 3 – Power mgmt mode 1 [0,1] $3PW1
    Motor 4 – Mapped to axis 3 [0=X,1=Y…] $4MA3
    Motor 4 – Step angle 1.80 degrees $4SA1.80
    Motor 4 – Travel/rev 18.00 mm $4TR18.00
    Motor 4 – Microsteps 8 [1,2,4,8] $4MI8
    Motor 4 – Motor polarity 0 [0,1] $4PO0
    Motor 4 – Power mgmt mode 1 [0,1] $4PW1
    X axis – Axis mode 1 [0-10] $XMO1
    X axis – Seek rate 600 mm/min $XSR600
    X axis – Feed rate 600 mm/min $XFR600
    X axis – Travel hard limit 400 mm $XTH400
    X axis – Travel soft limit 380 mm $XTS380
    X axis – Jerk maximum 76200 mm/min^3 $XJM76200
    X axis – Cornering delta 0.0500 mm $XCD0.0500
    X axis – Limit switch mode 0 [0,1] $XLI0
    X axis – Homing enabled 1 [0,1] $XHE1
    X axis – Homing seek rate 600 mm/min $XHR600
    X axis – Homing close rate 10 mm/min $XHC10
    X axis – Homing offset -200 mm $XHO-200
    X axis – Homing backoff 5 mm $XHB5
    Y axis – Axis mode 1 [0-10] $YMO1
    Y axis – Seek rate 600 mm/min $YSR600
    Y axis – Feed rate 600 mm/min $YFR600
    Y axis – Travel hard limit 400 mm $YTH400
    Y axis – Travel soft limit 380 mm $YTS380
    Y axis – Jerk maximum 76200 mm/min^3 $YJM76200
    Y axis – Cornering delta 0.0500 mm $YCD0.0500
    Y axis – Limit switch mode 0 [0,1] $YLI0
    Y axis – Homing enabled 1 [0,1] $YHE1
    Y axis – Homing seek rate 600 mm/min $YHR600
    Y axis – Homing close rate 10 mm/min $YHC10
    Y axis – Homing offset -87 mm $YHO-87
    Y axis – Homing backoff 5 mm $YHB5
    Z axis – Axis mode 1 [0-10] $ZMO1
    Z axis – Seek rate 500 mm/min $ZSR500
    Z axis – Feed rate 500 mm/min $ZFR500
    Z axis – Travel hard limit 75 mm $ZTH75
    Z axis – Travel soft limit 71 mm $ZTS71
    Z axis – Jerk maximum 76200 mm/min^3 $ZJM76200
    Z axis – Cornering delta 0.0500 mm $ZCD0.0500
    Z axis – Limit switch mode 0 [0,1] $ZLI0
    Z axis – Homing enabled 1 [0,1] $ZHE1
    Z axis – Homing seek rate 500 mm/min $ZHR500
    Z axis – Homing close rate 10 mm/min $ZHC10
    Z axis – Homing offset -37 mm $ZHO-37
    Z axis – Homing backoff 5 mm $ZHB5
    A axis – Axis mode 3 [0-10] $AMO3
    A axis – Seek rate 12000 deg/min $ASR12000
    A axis – Feed rate 12000 deg/min $AFR12000
    A axis – Travel hard limit -1 degrees $ATH-1
    A axis – Travel soft limit -1 degrees $ATS-1
    A axis – Jerk maximum 50000000 deg/min^3 $AJM50000000
    A axis – Cornering delta 0.0500 mm $ACD0.0500
    A axis – Radius value 10.000 mm $ARA10.000
    A axis – Limit switch mode 1 [0,1] $ALI1
    A axis – Homing enabled 1 [0,1] $AHE1
    A axis – Homing seek rate 12000 deg/min $AHR12000.00
    A axis – Homing close rate 360 deg/min $AHC360.00
    A axis – Homing offset 0 degrees $AHO0.00
    A axis – Homing backoff 5 degrees $AHB5.00
    B axis – Axis mode 3 [0-10] $BMO3
    B axis – Seek rate 12000 deg/min $BSR12000
    B axis – Feed rate 12000 deg/min $BFR12000
    B axis – Travel hard limit -1 degrees $BTH-1
    B axis – Travel soft limit -1 degrees $BTS-1
    B axis – Jerk maximum 50000000 deg/min^3 $BJM50000000
    B axis – Cornering delta 0.0500 mm $BCD0.0500
    B axis – Radius value 10.000 mm $BRA10.000
    B axis – Limit switch mode 1 [0,1] $BLI1
    B axis – Homing enabled 0 [0,1] $BHE0
    B axis – Homing seek rate 12000 deg/min $BHR12000.00
    B axis – Homing close rate 360 deg/min $BHC360.00
    B axis – Homing offset 0 degrees $BHO0.00
    B axis – Homing backoff 5 degrees $BHB5.00
    C axis – Axis mode 3 [0-10] $CMO3
    C axis – Seek rate 12000 deg/min $CSR12000
    C axis – Feed rate 12000 deg/min $CFR12000
    C axis – Travel hard limit -1 degrees $CTH-1
    C axis – Travel soft limit -1 degrees $CTS-1
    C axis – Jerk maximum 50000000 deg/min^3 $CJM50000000
    C axis – Cornering delta 0.0500 mm $CCD0.0500
    C axis – Radius value 10.000 mm $CRA10.000
    C axis – Limit switch mode 1 [0,1] $CLI1
    C axis – Homing enabled 0 [0,1] $CHE0
    C axis – Homing seek rate 12000 deg/min $CHR12000.00
    C axis – Homing close rate 360 deg/min $CHC360.00
    C axis – Homing offset 0 degrees $CHO0.00
    C axis – Homing backoff 5 degrees $CHB5.00
    Gcode: Units {G20,G21} 21 [20,21] $GU21
    Gcode: Plane {G17,G18,G19} 17 [17,18,19] $GL17
    Gcode: Path {G61,G61.1,G64} 64.0 [61,61.1,64] $GP64.0
    Gcode: Distance Mode {G90,G91} 90 [90,91] $GD90
    Enable Acceleration 1 [0,1] $EA1
    Junction acceleration 50000 mm/min^2 $JA50000
    Min line segment length 0.080 mm $ML0.0800
    Min arc segment length 0.100 mm $MC0.1000
    Min segment time 10000 uSec $MT10000
    Homing mode 0 [0,1] $HM0
    Convert LF to CR LF (outgoing) 0 [0,1] $EC0
    Ignore Incoming CR 0 [0,1] $IC0
    Ignore Incoming LF 0 [0,1] $IL0
    Enable Xon/Xoff Flow Control 1 [0,1] $EX1
    Enable Echo 1 [0,1] $EE1
    Status Report Enable 0 [0,1,2] $SE0
    Status Report Interval 500 ms $SI500
    Profile 0.90 [0.90]

    Thanks!
    -Matt

    #1512
    alden
    Member

    Thanks for the detailed explanation. So if you start from a reset and do a seek – g0x100y100z100 do you have the same result?
    (You do know that since Gcode coordinates are absolute (unless G91 is active) that doing another identical move has no effect: issuing a second g0x100y100z100 will not move because the Gcode model is already at those coordinates).

    Can you try the following Gcode blocks (lines) and tell me what’s happening for each one (LEDs, does it move, final position reported by ? cmd)
    <reset>
    g0x100
    y100
    z100
    x0
    y0
    z0
    $2ma0
    $4ma0
    <repeat the above>

    Can you tell me if at any time the Y or Z axis trimpots were over-torqued? They are only supposed to rotate through 270 degrees and can be damaged if forced beyond that.
    Thanks

    #1513
    greyhound716
    Member

    Thanks for the quick response!

    When I reset and do the g0x100y100z100, I get another ok prompt immediately, however no motor lights go on, etc. Hitting ? it tells me the position is still x0y0z0. I reset again, and for each of the instructions you gave, the result is the same – no motor lights, and the position doesn’t change.

    The trimpots are freely moving – I don’t think I even touched them until I start to diagnose the problem, and I didn’t try to torque them past their limit stops.

    Given that the internal position doesn’t appear to change, I’m inclined to think it’s a software/settings issue, but I’m at a loss on how to diagnose it.

    BTW, if I use g1, the motor light comes on, but only for x, and the x position changes with ?. I did not try g1 with the command sequence you gave me however.

    One last bit of data… If I say g0x100y100z100 and then enter g1, the X motor kicks in and changes position. No other axis does anything.
    -Matt

    #1514
    jmnoeth
    Member

    Do you by chance have limit switches connected? Maybe the software thinks the axis (y and z) are at their limits?

    #1515
    alden
    Member

    Matt, I think we sent you a board with the wrong firmware. The current production firmware is 326.06, not 326.01, which was a release candidate. We apologize for our mistake. Here are your options:

    – Reprogram the board from the correct firmware
    – Send the board back to us and well do it ASAP (and we’ll pay shipping both ways)
    – Send the board back and wait a week or two for the 0.93 firmware
    – Return the board for refund

    To re-program the board from the current production use the master on https://github.com/synthetos/TinyG
    For programming we recommend using AVRStudio4 from Atmel (windows), and an Atmel AVRisp mkII programmer – about $35 from Mouser Electronics. For future upgrades you will want to be able to program the board yourself but I understand if you want a swap.

    We are putting the finishing touches on the 0.93 firmware revision that has automatic status reports, feedholds, multiple coordinate axes (G54-G59), advanced homing and JSON support. But that’s probably a week or so away. Of course if this is all too much we will refund you on board return.

    Again, we apologize for the mistake.

    – Alden

    #1516
    greyhound716
    Member

    Thanks for the info. I don’t have a programmer yet, but I was planning to get one soon. I actually bought the one from SparkFun before I realized it doesn’t support Xmega. :-/

    I noticed the rev, but figured it was a minor and probably didn’t matter!

    I’ll let you know when I reprogram and if there are any issues.
    -Matt

    #1517
    alden
    Member

    Matt, Thanks for your patience.

    – Alden

    #1518
    greyhound716
    Member

    Ok, good news and bad news. I flashed the firmware, but I’m still getting similar behaviors with the driver. I definitely have the newer firmware on the board (it reports 326.06 now). When I run the test series you describe above, with the axis mapped normally and not, there is no change to the position information and the motors don’t fire.

    I did a couple more experiments… It looks like only X is working, and only for g1. If I set a feed rate of 400, switch to g1 mode, and move X, it fires the motor and changes the internal position. If I $1ma0, $2ma0, $3ma0, $4ma0, ALL of the motors fire. In the last case, it looks like it is pulsing output 4, but the others are continuous. I’m currently testing without motors attached, just looking at the LED outputs.

    I’m happy to test anything you can think of that might shed light on what’s going on.

    Should I try to erase the EEPROM? It seems like it preserved the settings from when I re-flashed, but if I can get it back to a factory default that would be good.
    -Matt

    #1519
    alden
    Member

    Well congrats on the good news and drat on the bad news. I’m not sure this can be diagnosed over the wire. It doesn’t sound like HW as all the motors work, and it doesn’t sound like firmware as you have a new load. So if you don’t mind, can you send the board back and we’ll swap one in the mail? I’d like the chance to put your board on the bench and see what’s wrong. Riley will follow up with an email in response, if this is OK with you.

    – Alden

    #1520
    greyhound716
    Member

    Sounds like a plan!

Viewing 10 posts - 1 through 10 (of 10 total)
  • You must be logged in to reply to this topic.