586,060 active members*
4,389 visitors online*
Register for free
Login
IndustryArena Forum > OpenSource CNC Design Center > Open Source Controller Boards > Interfacing Arduino + GRBL with 3020 control box
Results 1 to 4 of 4
  1. #1
    Join Date
    Feb 2014
    Posts
    5

    Interfacing Arduino + GRBL with 3020 control box

    I've recently purchased a 3020 CNC machine with a large control box, and I'd like to go down the route of using an Arduino loaded with GRBL to control it. I have some familiarity with Arduino's and AVR's generally, using them for robotics projects.

    I have the most recent version of GRBL (0.8) loaded on an Arduino, and can communicate with it. I am able to power up the 3020 control box, and spin up the spindle, I've also verified that with the control board powered up, the 3 axis steppers are stopped - which I take as being powered.

    What I've then attempted to do is wire the Arduino digital pins to the Parallel pins of the control board such that:
    The Axis Pulse outputs of the Arduino Go to the Axis Pulse inputs of the 3020 box
    The Axis Dir outputs of the Arduino Go to the Axis Dir inputs of the 3020 box
    The Reset button output of the 3020 box goes to the Abort/Reset input of the Arduino.

    The control box appears to be based on 2 boards, one with a parallel port + 3 toshiba TB6560 stepper controllers, big heatsinks, a huge toroidial transformer, a pot connected to a 555 for the spindle, and some rectifier + 7812 vreg for the stepper board - roughly described.

    Using the standard pinout of GRBL from https://github.com/grbl/grbl/wiki/Connecting-Grbl, and the 3020 "DesktopCNC.doc" - showing the Mach3 pin settings for the board.

    The GRBL settings pulse width appears to match the settings shown on the mach3 screenshots in the router manual too - 3us for pulses. Both parallel and Arduino board (an Uno R3 style board) are at 5v.

    However, when attempting a couple of basic G code commands to see if anything happens - I get not a peep from the router.
    So connected, I see the GRBL greeting, and "?" will show the status. It is all defaults - 9600, using putty, and local echo so I can see what I am doing.
    I then try:
    G00 X 50

    Which I would expect to start moving the X axis from the current position. Nothing happens.
    However "?" repeatedly show GRBL "thinking" the coordinates are moving.

    I have some routes to diagnose this - but experience from someone else doing the same would help.
    My next task will be connecting an oscilloscope to various places in the control board carefully, to see if GRBL is pulsing them...

    I think getting this working and documented would be a great alternative to an additional PC, or some Parallel/USB interface that is capable.

    Has anyone experience of connecting GRBL to a parallel control board this way?
    Am I off the mark in considering the parallel board to be just a GPIO breakout, and that PWM from a mach3 controlled parallel port compared with PWM from GRBL should be the same?
    Is there any reason why this definitely wouldn't work as a plan (something I am missing)?

  2. #2
    Join Date
    Jan 2010
    Posts
    2141
    If you can get your hands on an oscilloscope, that will probably be the shortest route to figuring out what is happening (or, not happening).

    I have used an Arduino running GRBL to drive a Geckodrive G540. So what you are trying to do should be do-able.

    Is it possible that the polarity of your step pulse needs to be inverted? Have you tried lengthening the step pulse (to maybe 5 us or 10 us)?

    Does your driver have an 'enable' signal line, and are you driving it with the proper polarity signal, or else tie the enable pin to GND (or +5 volts, if that's the right sense of the signal that is necessary)?

  3. #3
    Join Date
    Feb 2014
    Posts
    5
    Okay - I made a bit of a silly error. Because I was looking at pinouts for a female connector, and wiring a male connector I had the pins backwards. The Arduino resetting as I started the machine was a bit of a clue for that. I inverted the pins and now I am getting movement. Next step is working out how to home and calibrate the thing...

  4. #4
    Join Date
    Jan 2010
    Posts
    2141
    Ouch... Don't you just hate when that happens?

Similar Threads

  1. Which pp to choose for arduino grbl?
    By CptanPanic in forum Post Processors
    Replies: 2
    Last Post: 03-08-2021, 11:05 PM
  2. Anyone have GRBL running on Arduino Nano?
    By hondaman900 in forum Open Source CNC Machine Designs
    Replies: 11
    Last Post: 04-20-2015, 08:10 PM
  3. DIY CNC Router - Arduino + GRBL - Question about accuracy - integer precision?
    By vitaminrad in forum Open Source Controller Boards
    Replies: 8
    Last Post: 01-09-2014, 10:10 PM
  4. Solidcam Post-Processor for Arduino GRBL
    By jlcorzo in forum SolidCAM for SolidWorks and SolidCAM for Inventor
    Replies: 2
    Last Post: 11-13-2013, 09:36 AM
  5. Should I use LinuxCNC or grbl/arduino?
    By CptanPanic in forum LinuxCNC (formerly EMC2)
    Replies: 3
    Last Post: 04-23-2012, 07:06 PM

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
  •