Forum Replies Created
-
AuthorPosts
-
cmcgrath5035Moderator
The chilipepper issue is that the parameter widget will only allow $_mi of 1,2,4,8.
So don’t try to use the parameter setter widget.
tinyG actually computes with whatever value is entered. 1,2,4 and 8 are the fixed available values of $mi for the on board drivers.
$2mi=10 will work fine.If $2pm=1 fixes the issue, it sounds like there is some sort of phasing issue with the enable lead relative to step pulse. With $2pm=1, the enable lead from tinyG is always low, so a step pulses make it to the motor.
Perhaps the gecko needs a longer setup, or time before step that enable must be tru (or in gecko, disable false.cmcgrath5035ModeratortinyG with $2mi=10 should work fine with this external driver.
I had to read the gecko document a couple times too, first I have seen a driver with fixed microstepping.Does Y move at all? If you command Y to move 10mm, how far does it move?
What Voltage are you driving the motors with, and what is your current setting for the gecko?The LED behavior you report sounds OK.
The red flashing on reboot/startup is the bootloader waiting for possible communication with Avrdude wanting to download new code.
Once boot delay is done, tinyG starts up with all motors energized at current location for $mt time, in your case, 2 seconds.Your $2pm=2 setting is the usually prefered value, motor energised when any motor is moving. If things still not working right you can try $2pm=1, but that is overkill.
Your $2tr = 24.9350 mm is a bit strange, too large for a screw machine but on the low side for a belt machine. Are you sure it is correct, and not the right value for a different controller? I am not aware of an available belt and pulley combo that would yield 24.935mm per revolution
The delay on command send does sound strange.
Are you sure of proper connection to step, dir and enable plus ground?
Schematic are here https://github.com/synthetos/TinyG/tree/master/hardware/v8schematicscmcgrath5035ModeratorAs a general statement many users have reported good luck using geckodrive external drivers, but this is the first reference to the G203V I have seen.
The interface is Step,Dir,Disable speaking positive logic, which I interpret to be compatible with tinyG, which is Step,Dir,Enable[bar,active low].
The gecko input specs are good for logic voltages a low as 2.5V, tinyG is 3.3V logic.A difference I see from other drivers is that the G203V is hard coded as 10 microsteps per step.
What setting are you using for $_mi?
Setting $xmi = $ymi = $zmi = 10 should work, but your CAM software(e.g. Chilipeppr) may barf on that value as the native (on-board) tinyGdrivers don’t accept $_mi=10.If problems continue, provide a list of your tinyG parameters.
Run $$ in a console, copy the results to a file and post the file to a cloud drive, provide us with a URL. Parameter sets pasted directly into this interface are difficult to read.Other pertinent info might be what current setting you are using on the gecko and a description or picture of you tinyG to gecko wiring
cmcgrath5035ModeratorI love the smell of burning plastic in the morning :<
cmcgrath5035ModeratorYou might want to experiment with jerk settings as well; think of jerk as an ‘aggressiveness’ setting for both ramp up and ramp down along the S curve.
Higher (larger) jerk –> more aggressive.cmcgrath5035ModeratorThe simple answer would be no.
tinyG provides On/Off and direction control signalling for a spindle as well as a continuous, single phase PWM stream whose duty cycle is related to the S command via a programmable linearization of a range of speeds.
G code commands M3, M4 and M5 as well as S are the controlling parameters.It might depend on what you are really trying to implement.
If you are manually coding a Gcode stream to implement some sort of robotic movement, you could code complex XYZ motion and manually edit in continuous rotation on a rotary axis (A,B or C), I supposecmcgrath5035ModeratorWow, cool junk box machine.
It is amazing what can be fabricated from cast-offs just lying around.The 0.22uf conditioning might be enough, but it was early field experience with V7 that has Synthetos recommending NC over NO switches I suspect.
In CNC world, the term EStop is usually read as an emergency power removal, not just abrupt removal of signalling to motors.
If the reboot is what you want, it should work but be aware that some folks may misinterpret .The behavior you report sounds like limit behavior rather than homing behavior.
Does you machine behave more normally with the A limit turned off ?When you rewire, do connect the sheield drain wires to Vmot- rather than the Port ground connector; keeps any collected noise off the tinyG board.
And, grounding the base metal directly to Vmot – is probably OK, assuming that there is no other connections to motors or wires. But for sure leave the machine end of the shield drains floating.
A shielded cable with shield connected at both ends is a great antenna and noise accumulatorGood luck
cmcgrath5035ModeratorMaybe a picture of your stuff would help.
Electrolytic – nope, you need good high frequency cap. 0.22uf ceramic or mylar, etc.
Make a two wire connection between tinyG and each switch individualy; one wire ground, one wire the other switch terminal. The two wires should be shielded, typically two wire shielded is twisted pair but I understand your comment.
Twisted pair is what is most available. Connect the shields together and ground them to Vmot “-” terminal. The four ground wires, one from each cable, to the Gnd on port terminal block.
You can ground the structure of your machine if you want, separately, but do not consider the machine to be grounded for switch wiring purposesI could read your description above to say that you run 4 leads plus one ground between tinyG and the machine, but am not sure that is what you are saying. That would inevitably lead to a cable breakout mess at the machine end, as the switches ar in different physical locations.
This is a good reference to read thru https://github.com/synthetos/TinyG/wiki/Homing-and-Limits-Setup-and-Troubleshooting#limit-switches
cmcgrath5035ModeratorFor discussion purposes, you may find these schematic sheets helpful.
tinyGv7 ports are on this sheet – https://github.com/synthetos/TinyG/blob/master/hardware/v7schematics/DipTrace%20Schematic%20-%20tinyG-v7-pg1.pdf
tinyGv8 ports are on this sheet –
https://github.com/synthetos/TinyG/commit/a364308c8800ee2fb2227bb83f5d8edce0aae304#diff-c752e2755161eb51bfb73d76d5581df7Simple answer looking at schematic would be yes, v7 pins are likely more sensitive. On v7, all switch ports are pulled high by a 2.7K resistor. If you compare with the typical V8, a 0.22uF chip cap to ground was added to the PCB was added for each port
Are you sure that unused switch ports are turned off, e.g. $ysx=0 ?
Are your switches wired with shielded twisted pair, shield grounded at tinyG end only?
Are you using NC switches ?I run a v7, but don’t have Limit switches so can’t compare results.
Adding something like https://www.ebay.com/itm/20-Wima-MKS2-22uf-100v-5-5mmLS-Metallized-Polyester-Capacitor-0-22uf-63v/283306163530?hash=item41f65cfd4a:g:WpMAAOSwOjBZZQcZ:rk:14:pf:0 right at each port connector might help.
cmcgrath5035ModeratorNoise mitigation is a combination of art and engineering.
I would start with a focus on the wiring of the limit/homing switchesYou don’t need a lot of current capacity, so 18, 20 or 22 ga shielded twisted pair cable would suffice and easier to deal with.
Here is just an example https://www.amazon.com/Custom-Cable-Connection-Conductor-Stranded/dp/B071DFHKRB/ref=sr_1_4?ie=UTF8&qid=1545042425&sr=8-4&keywords=shielded+2+conductor+cableCould be solid or stranded conductors, stranded more flexible.
Make no shield connection at the switch end (machine end).
At tinyG end, connect all shield drain wires together and connect to the ” – ” Vmot terminal.
Use the red wire for the input terminal (e.g. Xmin, Ymin, etc) and the black wire connects to the gnd terminal on J8 terminal blockTry to route the switch wires separately from the stepper cables and the spindle drives.
cmcgrath5035ModeratorGood news!
And note, you should use shielded twisted pair for connecting up your switches.
I’ll take a raincheck on the beer 😉
- This reply was modified 5 years, 11 months ago by cmcgrath5035.
cmcgrath5035ModeratorYou asked “Will [setting $gppa=1} change require me to recalibrate all axis? Ans:No, but you likely figured that out already
Suggestion: From console set $p1pof=0.00. This will turn off the PWM LED when you machine is at rest. Mostly cosmetic, but might help with the next question.
When the machine stops midway thru your job, do you get flashing LEDs or other indicator?
From staring at your board wiring diagram, I believe I see an issue.
It appears that your switch connections are single wires, not shielded twisted pairs. But I can see the whole run, so it might be OK but out of view.Do you have a separate power supply for the spindle?
Limit switch interfaces are very sensitive to noise spikes, even when using NC switches.
A symptom of a limit switch activation would be a flashing LED.Have you reviewed https://github.com/synthetos/TinyG/wiki/Homing-and-Limits-Setup-and-Troubleshooting#limit-switches-fire-in-the-middle-of-a-cutting-job ?
cmcgrath5035ModeratorI got to thinking about your switch.
I understand that a wire soldered to pogo pin is one lead, what is the other lead?
If it is the metal gantry or rail structure, I would be concerned – a huge noise accumulator.cmcgrath5035ModeratorThanks, good info to work with.
Some housekeeping, looking at your most recent $$
1. Set $p1pof=0.0 With that, the Spin LED will be off when the spindle is turned off
2. Set $asn=0 to turn off the A axis limit switch input.
3. With tinyG, all switches share the same config, NC or NO. Switches are individually configurable in G2Core (the next generation)
4. I am somewhat concerned with you switch (pogo pins) but they used to work so probably not the issue. tinyG has debounce software conditioning the input signal that has been experimentally optimized for typical microswitches. The contact bounce from you pogo setup might be significantly worse, but probably OK.I think I might see your issue.
Your first $$ post showed the $xtr=$ytr=40mm.
After $defa=1 it is 5mm, so your axes are moving 8 times faster than tinyG is computing. So the reported movement of -178mm to (apparently)find home on X is actually 8*178mm, which does not make sense since your physical machine is not that large.Fix $tr values (and microsteps while you are at it) and see if that helps.
cmcgrath5035ModeratorDoes g28.2 y0 similarly misbehave?
Are you running all this from Coolterm, Chilipeppr, or ?Any flashing LEDs when it stops?
Are limits mechanical microswitches or electronic switches?
-
AuthorPosts