Switching to a TinyG Controler

Now that you’ve had time to figure everything out … how do you like the switch to the TinyG? Do you have a list of pros and cons compared to the GShield?

I like that it has each Y motor on its own chip. It did help me determining that the “ripple” issue in my high speed carving was not due to the Y motors being connected together.
The motion does seem a bit smother, but not as dramatic a difference as I had expected. There doesn’t seem to be any good guide or machine defaults for these settings. it is a trial and error and tune by yourself situation. My thought is that the mechanicals of my machine may not be able to handled the increased speed performance that the smooth motion allows.

It is very configurable. You have so many different configuration options. Especially if you want to use a rotary axis.

I still have not got the current levels dialed in properly. I am not having motors slip during carving, but can make them slip with hand pressure. I am not sure but it seems like the gshiled was stronger. Again I may just need to adjust things better as they used the same chips.

The dual cooling fans helped with the overheat issues. I don’t know if it needs both or just the one on the top, but the one on the bottom was not enough. (I out it on the bottom because the bottom of the board is the main heat sink)

I am pretty much locked into using chillipeppr with it. But this is not necessarily a bad thing as chillpepr has more features than UGS. And the tinyG version has a lot more coordinate systems. It was tricky to figure out but a bit more versatile. Handy if you want to carve the same object over and over on a large piece of stock (I did this)

My thoughts are
If you are running a stock machine you don’t need it. The stock machine will no be able to take advantage of any performance enchantments the tinyg provides.

If you want to add a rotary axis, you want this. Being able to configure the rotary axis with deg per step means you don’t have to re-calibrate your setps per mm ever time you cut a different diameter object.

If all you want is higher current without cooling issues, and a separate y controllers, I would take a look at the X-Controller instead.

I am thinking that down the line I will build a rotary axis machine (with the left over bits from all my upgrades) and drive it with my tinyG. and Use a x-controller or maybe a gecko controller on my main machine.

I may change my mind if I can get the jerk setting tuned for smother movement. :wink:

If I was building a machine totally from scratch, I would probably go with the tinyG because it is more configurable. (and i am getting used to how the corrdinate system works on chillpepr tinyG)
But I would not go out of my way to upgrade to it if I had a gShiled & Arduino laying around.

1 Like

Thanks, very informative, I’m considering building a new machine and just trying to gather information on different controllers.

Hi @AaronMatthews, thank you for sharing all of this information. I was wondering if you would mind sharing the latest settings you had for TinyG? I have just started with a TinyG2 to use with a 4th axis I bought and having your tried and tested values would save me a lot of time.

Sure. It is still a work in progress. Initially I had some problems because I had mistakenly not had the y motor settings the same (except for direction).
I also needed to disable the limit switch function (homing only) as I kept getting false switch trip errors. (the carve would shut down and the spindle turn off)

Here is my initial TinyC configuration for the stock XC:
TinyG Config.txt (9.2 KB)

Here is the updated config file for the modified XC.
Upgraded C-Beam for the X axis and Y axis. The main difference being the steps per mm values.
TinyG RXC Config.txt (9.2 KB)
(I will check later this weekend and what my current setting are.)

I still need to tweak the jerk and acceleration settings. But they are a lot more options to play with. So that will take a bit more reading and trail and error to get dialed in.


That is really nice of you Aaron. Thanks a ton.

I was thinking of switching to a new controller myself.
I want to have the play pause and stop switches on the controller.

The gShield should already support this, you just need to wire in the switches.
If all you want is the pause buttons I would consider the XController. having the higher current stepper drivers would be nice.
I went with the tinyG for better smoothing (it didn’t work out as I hoped) and rotary axis support. (degrees per step variable)
If I wind up making a dedicated rotary axis machine I will put the tinyG on that and get a Xcontroller or gecko for the XC

Where is this documented?



Thanks LarryM

when you set the motors up in chili pepper what did you use for travle per revolution what Ive found so far is 2mm prt rev on the Z and 40 for the X,Y that seems a bit much on the X and Y.

I modified my XC so that the X axis is on a acme screw drive. So the X axis steps per mm are similar to the Z axis. And the Y axis is a thicker belt so it’s setting are different as well.
Motor 1 (X axis) 7.9700 mm (per revolution)
Motor 2 (Y axis-L) 59.7920 mm (per revolution)
Motor 3 (Z axis) 7.9700 mm (per revolution)
Motor 4 (Y axis-R) 59.7920 mm (per revolution)

I am using an 8mm Acme screw - one full revolution of the screw moves 8mm along the thread. So one revolution of the motor moves ~8mm. (7.9700 mm in my case)

I am using a GT3 Belt - 3mm per tooth, with a 20 tooth pulley - one full revolution of the pulley moves 20 teeth which is ~60mm (59.7920 mm in my case)

I assume you are using the standard GT2 Belt - 2mm per tooth, with a 20 tooth pulley. So for you it should be ~40mm per revolution for the X and Y axis

On the tiny g it should automatically recalculate the values for whatever micro stepping setting you have.

I have run into a problem with my TinyG.

I am not sure if it was static electricity damage, or if somehow some aluminum chips managed to get onto the mother board? But I have had some circuit failures with my tinyG.

First one of the micro stepping pins on the Z axis stepper driver chip stopped responding. This resulted in me being able to set the Z axis to 0 and 2x’s micro stepping, but not 4x’s or 8x’s.

This manifested when my Z travel sudden was 6x’s what it should be. It took me forever to figure out what was going on and that it was hardware related.

When I change to 4x’s or 8x’s micro stepping TinyG is adjusting the step per rev value but the driver chip is not actually micro stepping so the values were now off.

My work around was to set the Z axis to 2x’s micro stepping. Less than ideal but workable until I replace the controller.

Another problem that showed up is the touch probe pin stopped working. I don’t know if this occurred at the same time or if it happened later. This is more problematic, as I had gotten used to using the touch probe to adjust z height after a bit change.

For now, I plan to limp along as is, until I can afford to upgrade to a higher current controller. Thought I did make sure I have my old Gshield ready to go if the TinyG fails before then. :wink:

1 Like

I’m still getting the machine dilaled in. i just finished the build last night and was trying to get a good smooth movement out of it when i noticed the defauld travel was set at 1.25mm per rev so it was flying all around.

1 Like

I just got a used machine that has a TinyG V8 controller. I am new to this, so I am not sure what to do as far as setup and configuration. Any help is appreciated!

THANK YOU FOR THIS POST! I guess I pushed the wrong button in Chillipepper or updating the firmware nuked all of the settings. My machine was DEAD. Now by using the data here, I got it back online. I have some weirdness with the Y Axis where the gantry shifts when the motors power down after a 100 or longer run.

I am on a team project where we are looking to etch PMMA acrylic. We are looking at creating dot patterns on the sheets of acrylic that need to be small and precise, looking at dot sizes as small as .2 mm and space between dots in the range of 1 mm or less. The team is looking at a laser gantry system that is controlled by proprietary software and it takes in imported files of images. After experimenting, the software leaves a lot to be desired as when images are imported (which I have created in Adobe Illustrator using dimensions of the actual sheets) they are imported at low quality and are shrunk down and then have to be extended back to size which causes quite a bit of distortion. Samples returned by the company clearly show this distortion as the dots are exactly how they appear in the software. The motor resolution and laser spot diameter are definitely precise enough to do what we want, it’s just the software holding the laser system back. I was looking at using the TinyG controller and GCode files that I have generated to control the motors and the rest of the hardware of the system, essentially skipping the provided software and controller. I am hoping to get some input on this and if anybody has any more information on whether this setup would work. The laser system we are looking at is here: https://www.smartdiys.cc/pages/fabool-laser-co2-ds
and here is the manual for it:
Thanks in advance for your time!

My 2 cents.
Double check the motherboard on the laser. There is a good chance it is some flavor of GRBL controller. If so you just need to figure out if you can connect to it with some other version of G-Code sender. (there are a few options out there now, I am still using Universal G-Code Sender because it works ok with my older setup.)

I got a K40 laser a while back and had nothing but problems creating and sending code to it, even with a new controller board.
I eventually purchased a copy of LightBurn Software and it fixed all my data issues. It got the machine working great for about a week until it literal meted down in the summer heat. (burned out motors and controller chips.)

I could not find any info about lightburn software working with a FABOOL controller so it may still need a new controller to get working.

Good luck.

Hey Aaron,
Thank for the reply and info! It is a GRBL based controller and I was really hoping I could use UGS to bypass ordering a new controller for it but I read on another forum that using UBS to send G-Code was attempted but did not work. I still intend to try using UGS with Fabool on my own before going the new controller route but we shall see what happens. I will definitely check out the LightBurn Software and see if that is an option worth taking. Thanks again!