New Machine Build JGRO-based CNC using Android/TinyG controller


Page 1 of 2 12 LastLast
Results 1 to 20 of 22

Thread: JGRO-based CNC using Android/TinyG controller

  1. #1
    Registered
    Join Date
    Jan 2012
    Location
    US
    Posts
    10
    Downloads
    0
    Uploads
    0

    Default JGRO-based CNC using Android/TinyG controller

    I thought that some of you might be interested in the work I've been doing with building an Android tablet-based CNC controller for my JGRO CNC unit. When I was starting this project a few months back, I spent a lot of time looking at all of the back threads, and wanted to contribute something of my own back to the community.

    Since I can't post the links directly since this is my first post, I'll break this up into two postings.
    -Matt

    Similar Threads:


  2. #2
    Registered
    Join Date
    Jan 2012
    Location
    US
    Posts
    10
    Downloads
    0
    Uploads
    0

    Default

    When I was looking at controller options, I wanted something a little different than a parallel port-based stepper controller. While they are tried and true, I was looking for something that 1) was a little more readily available on modern machines, and 2) didn't require a full sized computer to operate. Most implementations have all of the "smarts" in the PC, and the processing capabilities of modern embedded systems are more than capable of doing the work.

    I considered Linux-based single board computers, but ended up trying out the TinyG controller from Synthetos. It has 4 motor drivers on board with a decent current limit, and talks to the upstream PC via USB. Best of all, you can program it with your machine profile (feed rates, etc), and it will process gcode files directly. For the price, it seemed worth the experiment.

    As I mentioned before, one of my goals was to eliminate a big PC from the toolchain if I could, and having the PC act as a glorified serial terminal for the TinyG made even less sense. So I wrote an Android app to act as the GUI for TinyG! At the moment, it can talk to the TinyG directly via USB on supported devices, or though the network. It displays machine status and allows jogging and zeroing of the axes. I'm still working on it though, and I expect to add gcode file downloads and some other features soon.

    The app is up on Google Play, and the source is on github for those of you who enjoy programming.

    The full details of my CNC quest are listed on my blog, but most of the focus isn't on the mechanical build, since I think there are many good examples of that already.

    I'm finally ready to actually make some dust!
    -Matt



  3. #3
    Registered
    Join Date
    Jan 2012
    Location
    US
    Posts
    10
    Downloads
    0
    Uploads
    0

    Default More progress

    I was able to add gcode file upload capabilities, and I've published an update for both of the apps up on the Google Play app store. It should be a little easier for folks to use, though it's still a bit rough. I'm probably going to play with it for a while (and maybe grab some video while I'm at it), but the next step is to make some significant improvements to the interface.

    If you have any suggestions for features, please let me know. Also, while this is currently designed to talk to TinyG, there's a good chance it could be adapted as an interface for other controller systems. If someone wants to give that a shot I'd be willing to help.
    -Matt



  4. #4
    Registered
    Join Date
    Aug 2007
    Location
    Canada
    Posts
    17
    Downloads
    0
    Uploads
    0

    Default

    <duplicate reply deleted>

    Last edited by dcartier; 06-07-2012 at 07:43 AM. Reason: Server failed to respond. Double posted.


  5. #5
    Registered
    Join Date
    Aug 2007
    Location
    Canada
    Posts
    17
    Downloads
    0
    Uploads
    0

    Default What a great idea!

    Let me be the first say, what I a great idea!

    Although my first machine has yet to be created, I was already wondering what to do with it when I used it to bootstrap a better one. I plan to use EMC, but did not want to dedicate a whole PC to something that may get used infrequenetly.

    The TinyG and your interface to it are a perfect solution to this situation. Small, low cost, self contained. Just perfect.

    Thanks for your efforts!

    Dennis



  6. #6
    Registered
    Join Date
    Jan 2012
    Location
    US
    Posts
    10
    Downloads
    0
    Uploads
    0

    Default Thanks!

    Thanks for your comments. Let me know if you end up using the system in any way and if you have any feature suggestions.
    -Matt



  7. #7
    Registered
    Join Date
    Aug 2007
    Location
    Canada
    Posts
    17
    Downloads
    0
    Uploads
    0

    Default

    As they say, a picture is worth a thousand words ... so video must be worth even more!!!

    .. and I if I am not mistaken, I think Matt has a video on Youtube.

    http://www.youtube.com/watch?v=HGICVsXBy2w]Android CNC controller demo - YouTube



  8. #8
    Registered
    Join Date
    Aug 2012
    Location
    USA
    Posts
    12
    Downloads
    0
    Uploads
    0

    Default

    Wow, this is fantastic. So im under the impression that you hook up the tinyG, connect your Android via USB to the tinyG, and then control your steppers? Its that easy?

    Can you plug a GCode file yet - or is that comming?



  9. #9
    Registered
    Join Date
    Jan 2012
    Location
    US
    Posts
    10
    Downloads
    0
    Uploads
    0

    Default

    Quote Originally Posted by rawkstar320 View Post
    Wow, this is fantastic. So im under the impression that you hook up the tinyG, connect your Android via USB to the tinyG, and then control your steppers? Its that easy?
    Well, life is never that easy. :-) You need to configure the TinyG for your CNC system - feed rate max, direction of the axes, etc. But then yes, it's basically plug and play.

    Can you plug a GCode file yet - or is that comming?
    Yes, it will do gcode downloads. It's not perfect - because of some android business I haven't quite sorted out, I've introduced an artificial delay between each gcode line being sent to TinyG. For the most part that isn't a big deal - it's just a little slower. But in some cases, where the instructions are processed quickly, it can "starve" TinyG, and that means it can't look ahead in the instructions to optimize acceleration, etc. Not fatal in my experience, but something to be aware of.

    I've been taking a break and working on other projects for a while since this is up and usable, but I'm still interested in going back and making more improvements. Any comments are appreciated.
    -Matt



  10. #10
    Registered
    Join Date
    Aug 2012
    Location
    USA
    Posts
    12
    Downloads
    0
    Uploads
    0

    Default

    Haha, of course not. Sometime after I get my machine up and running (first build) I may have to check out the TinyG. My current scheme was to use arduino and some EasySteppers.

    Thanks and good luck with the projects



  11. #11
    Registered
    Join Date
    Jan 2012
    Location
    US
    Posts
    10
    Downloads
    0
    Uploads
    0

    Default New features

    Some of you may be interested in some additions I'm making to the system. I'm in the process of building a small control system for TinyG that will allow you to run a stored gcode program at the press of a button. I'm using an Arduino Mega ADK for this subsystem, and am starting to work on the Android-Arduino interactions now. For those of you who have been interested in my Android app but didn't have the capability to use it because of the USB Host Mode requirement, these changes should allow a much broader use of Android devices using the Android Accessory Mode.

    Short demo video below:

    http://www.youtube.com/watch?v=9hTMhfjwdbA]TinyG connected to Arduino Mega ADK - YouTube



  12. #12
    Registered
    Join Date
    Aug 2006
    Location
    thailand
    Posts
    6
    Downloads
    0
    Uploads
    0

    Default seen on youtube

    u u u great!



  13. #13
    Registered
    Join Date
    Dec 2007
    Location
    USA
    Posts
    9
    Downloads
    0
    Uploads
    0

    Default

    Hi Matt
    Very cool. Question: I belive that you used NEMA 23 steppers. Exactly what make and model did you use and how are working out for you?
    TIA
    Tony



  14. #14
    Gold Member doorknob's Avatar
    Join Date
    Jan 2010
    Location
    USA
    Posts
    2141
    Downloads
    0
    Uploads
    0

    Default

    I don't know how I missed your thread earlier, but I'm glad that I stumbled across it today. It looks like you've done some interesting work, and I'll have to check out your blog.

    I've started to do some Arduino and Android 'hacking', but was unaware of the TinyG before reading about it here (and also found the discussion of Android with USB host mode vs. accessory mode quite useful).



  15. #15
    Registered
    Join Date
    Jan 2012
    Location
    US
    Posts
    10
    Downloads
    0
    Uploads
    0

    Default

    @Tonico, yes, NEMA 23 from Build Your CNC. They seem to work fairly well, but I've found limitations with the basic JGRO materials and the very basic leadscrews I started with. As I suspect you've guess as you've looked at my videos, I've been going down a particular path that's taken me away from making sawdust to doing more coding. Not that I'm complaining, but what it means is that before I do anything big with the system, I'm almost certainly going to rethink the gantry system, probably going down the makerslide route or something similar.

    @doorknob, glad my work has been helpful. There's surprisingly little information about Accessory mode that goes beyond toy projects. If I can be of any assistance on your tinkering, let me know. I hope to be at a point where I can publish some of my Arduino work related to TinyG soon. The paying work comes first!



  16. #16
    Registered
    Join Date
    Dec 2007
    Location
    USA
    Posts
    9
    Downloads
    0
    Uploads
    0

    Default

    Thank you. I am also changing a few things. ACME lead screws, aluminum adjustment blocks and where it calls for bolts threaded into the MDF if I cannot figure a different arrangement I will use studs instead of bolts which will be set permanently in place. If the rails flex too much I will probably go with slightly larger tubing of some serious wall thinkness or maybe even DOM.
    Tony



  17. #17
    Registered
    Join Date
    May 2012
    Location
    USA
    Posts
    3
    Downloads
    0
    Uploads
    0

    Default

    Matt,
    I know there hasn't been much action on this in a few months But this is very interesting to say the least. I'm full of questions..
    How do you think the cost of your TinyG board will compare to what is currently being used. I'm curious to see how things hold up and what limitations you encounter once you can start making some chips fly.

    I'm totally interested in following your progress on the TinyG!
    Thanks for taking the path less traveled.
    Kev



  18. #18
    Registered
    Join Date
    Jan 2012
    Location
    US
    Posts
    10
    Downloads
    0
    Uploads
    0

    Default

    Kev,

    I wish I could take credit for the controller board itself, but that's the work of the guys over at Synthetos. My part has been more developing a tablet-based UI to stream Gcode to the unit, view status, and function as a pendant.

    I've been distracted with some other projects for the past couple of months. It looks like they will be pushing a new firmware release soon that should address some of communication issues that had me stalled. I'm going to be picking the project up again soon, and I hope that the gcode downloads will be both faster and more reliable.

    I need an automated drilling rig for some PCBs, and so I suspect that will be a good test of the setup. If there are problems, it will be on the mechanical end of things. It will be interesting to see if the basic JGRO setup will be able to have the accuracy required for 10 mil spacing...
    -Matt



  19. #19
    Registered
    Join Date
    Mar 2013
    Location
    Canada
    Posts
    7
    Downloads
    1
    Uploads
    0

    Default

    Hi, i have been looking for some real world experience information on the TinyG platform. have you been able to use it much? have you used others and be able to offer a comparison?



  20. #20
    Registered
    Join Date
    Jan 2012
    Location
    US
    Posts
    10
    Downloads
    0
    Uploads
    0

    Default

    Blaisun,

    I'm afraid I can't give you a good comparison. I've played with TinyG and written some of the control app for it, but recently I've been distracted by other projects. I think it holds a lot of promise, and there is certainly some momentum there. The most recent code updates have really knocked out some of the low-level problems I had with the board, and so I hope to continue to develop the companion app more.

    I'd talk to the Synthetos folks directly for some references. They have some video demos that are pretty neat.
    -Matt



Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


About CNCzone.com

    We are the largest and most active discussion forum for manufacturing industry. The site is 100% free to join and use, so join today!

Follow us on


Our Brands

JGRO-based CNC using Android/TinyG controller

JGRO-based CNC using Android/TinyG controller