TinyG2 with a proper Shield and Due

Home Forums TinyG TinyG Support TinyG2 with a proper Shield and Due

Viewing 15 posts - 1 through 15 (of 16 total)
  • Author
    Posts
  • #9593
    Latif
    Member

    Good day,
    I use my platform with arduino due ..
    pins assignment is different
    Driver Allegro A3977:

    Pin 13 Sleep Stepper X and Y
    Pin 12 Reset Stepper X and Y
    Pin 11 Stepper Y Low Current
    Pin 10 Stepper Y Step
    Pin 9 Stepper Y you
    Pin 8 Stepper Y Enable
    Pin 7 Stepper X Low Current
    Pin 6 Stepper X Step
    Pin 5 Stepper X you
    Pin 4 Stepper X Enable

    What can I change to TinyG2
    I ask for help
    Thank you

    #9597
    cmcgrath5035
    Moderator

    Your question is somewhat unclear.

    Are the Allegro A3977s on a unique shield board?
    Or are they assembled onto a Gshield pwb?
    Or are you working with them on a prototype board?

    Does the A3977 interface with 3.3V logic?

    #9605
    Latif
    Member

    First many thanks for your reply and your help.

    the 3 allegro Drivers are already installed in my developed board.
    the A3977 interface with 3.3V logic.

    pins are connected so physically:

    Pin 13 Sleep Stepper X and Y
    Pin 12 Reset Stepper X and Y
    Pin 11 Stepper Y Low Current
    Pin 10 Stepper Y Step
    Pin 9 Stepper Y Dir
    Pin 8 Stepper Y Enable
    Pin 7 Stepper X Low Current
    Pin 6 Stepper X Step
    Pin 5 Stepper X Dir
    Pin 4 Stepper X Enable

    I can move the motors with arduino code.
    to wake the driver, i must set the Two Pins (Sleep and Reset) High.

    The Problem:
    I would like to work with TinyG2 Version 0.98.
    under the folder: TinyG2\platform\atmel_sam\board\due are the 3 files:

    gShield-pinout.h
    motate_pin_assignments.h
    shopbotShield-pinout.h

    Can you tell me what I need to change in code

    Thank you for your Help.

    #9611
    cmcgrath5035
    Moderator

    Is your developer board pinout same as Gshield?

    I’d start by wandering thru

    where you will get a general idea of how the Motate layer works.

    Then compare your develope pinouts to Gshield, and hack away at a My_development_board.h following the example you see.
    then recompile.
    Or, perhaps better yet, remap the pin assignments on your developer board to match Gshield.

    FYI, I don’t know what your development board looks like, but my initial suspicion would be limited thermal conductivity. Your drivers, like the TI drivers used on Gshield, are in special heat slug packages.
    Don’t drive the proto very hard, and don’t expect to do much real ‘work’ without a good thermal solution.

    Is there a particular reason you are using these drivers?

    #9619
    Latif
    Member

    Hello…

    I just needed more power and Flexibility.
    The pins of arduino due are physically lashed to the Pins Of Driver.
    I can not change anything.
    I can not remap the pin assignments on my developer board to match Gshield.

    for example:
    Step/dir Pins X-Motor on Gshield are (2 / 5) On my Board are (6 / 5)
    Step/dir Pins Y-Motor on Gshield are (3 / 6) On my Board are (10 / 9)

    Thanks for your Help

    #9621
    Latif
    Member

    Hello ..

    My question is Can Ever Change pins assignment at TinyG2?

    Thanks

    #9626
    cmcgrath5035
    Moderator

    See post above.
    Yes, can reassign pins on the Due to match your development board.

    Motate is the abstraction of hardware.
    Read the above references to Motate

    Wait a minute, your said developed, not development board.

    Motate is still your answer, as long as the tinyG signalling characteristics are compatible between tinyG and Allegro drivers

    #9627
    cmcgrath5035
    Moderator

    By the way, you may find this diagram helpful

    I am frankly not sure in what Pin numbering space your developed board is described. I am assuming it is physically compatible/mates directly to the DUE?

    #9649
    Latif
    Member

    Good evening,

    I have the software adapted to my Shield.
    if my Shield energized, the motors are enabled.
    but if I give a command for example: G0 X10 Y10 then the two motors will be disable.
    Have you perhaps a idea? why the motors do not move.

    Thank you for your Help.

    $sys
    [fb] firmware build 89.03
    [fbs] firmware build ” build”
    [fv] firmware version 0.98
    [cv] configuration version 7.00
    [hp] hardware platform 2.00

    angle 1.800 deg
    [1tr] m1 travel per revolution 40.0000 mm
    [1mi] m1 microsteps 8 [1,2,4,8,16,32]
    [1po] m1 polarity 0 [0=normal,1=reverse]
    [1pm] m1 power management 2 [0=disabled,1=always on,2=in cycle,3=when moving]
    [1pl] m1 motor power level 0.375 [0.000=minimum, 1.000=maximum]
    [2ma] m2 map to axis 1 [0=X,1=Y,2=Z…]
    [2sa] m2 step angle 1.800 deg
    [2tr] m2 travel per revolution 40.0000 mm
    [2mi] m2 microsteps 8 [1,2,4,8,16,32]
    [2po] m2 polarity 0 [0=normal,1=reverse]
    [2pm] m2 power management 2 [0=disabled,1=always on,2=in cycle,3=when moving]
    [2pl] m2 motor power level 0.375 [0.000=minimum, 1.000=maximum]
    [3ma] m3 map to axis 1 [0=X,1=Y,2=Z…]
    [3sa] m3 step angle 1.800 deg
    [3tr] m3 travel per revolution 40.0000 mm
    [3mi] m3 microsteps 8 [1,2,4,8,16,32]
    [3po] m3 polarity 1 [0=normal,1=reverse]
    [3pm] m3 power management 2 [0=disabled,1=always on,2=in cycle,3=when moving]
    [3pl] m3 motor power level 0.375 [0.000=minimum, 1.000=maximum]

    Thanks

    #9653
    cmcgrath5035
    Moderator

    I might guess you have the enable lead inverted – tinyG2 Enable(inverted) [enable bar] – a zerologic state when enable is on.
    What are your drivers looking for?

    #9659
    Latif
    Member

    Hello ,

    thanks that’s right, my enable pin is inverted.
    where can I invert it in software?
    my Driver is Allegro A3977.

    Thank you

    #9660
    Latif
    Member

    Hello..

    Now the motor trembles but does not move.
    should I take care of something even.

    Thank you for your Help.

    #9662
    Latif
    Member

    Good Morning,
    I’ve noticed when I givea comman to move coolTerm crashes.
    is because drivers (TinyGv2.inf)?
    because I work with my own shield.

    Thank you for your help.

    #9666
    cmcgrath5035
    Moderator

    My suggestion would be to make the logic inversion with a logic gate or just a small fet and appropriate pullup.

    It might be possible to to invert the I/O logic in the firmware, but not necessarily simple.

    I can only guess a bit at what you call ‘motor tremble’ – is it a buzz but no movement?
    That could just be the energized motor holding current position.

    Have you compared all specs for your drivers to comparable TI specs, for example step pulse width?

    #9670
    Latif
    Member

    Hallo..
    Thank you cmcgrath5035 it work now thank you…
    now i need your Help for Homing and switch.
    i have 2 sensors and i wanted to use it as a switches.
    — Sensor X for minX
    — Sensor Y for minY
    i don’t need MaxX/MaxY

    help me please
    thank you

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