Forum Replies Created
-
AuthorPosts
-
cmcgrath5035Moderator
Can we assume you are running very recent FW, such as 440.20?
What you describe is “old” behavior.
A change was made such that when a probe command,e.g. G38.2 Z0 , is sent,FW logic changes to looking for a change of state on Zmin switch, rather than a high or low. The other 5 limit/home switches remain level only, not change of state.So all switches can be set NC (recommended) or NO with the $ST parameter, when probing the probe will trigger when the Zmin switch changes state.
Here is a descriptive reference comment
-
https://github.com/synthetos/TinyG/wiki/TinyG-Configuration-for-Firmware-Version-0.97#st—switch-type
See also
for how ChiliPeppr uses this
September 28, 2015 at 6:57 am in reply to: Motion suspend or stop when the switch is on & TinyG communication programming #8786cmcgrath5035ModeratorWhat you describe does sound strange.
When I send single command, for example:
G1 X100 Z100 A90 F400I turned on the Y limit switch(I use a switcher to simulate) during the motors are driving. All the motors can stop and the LED of SpDir on board can flash. It looks like normal.
What steps do you take to bring tinyG back to an operating state?
A reset?
Are you using tinyGV8 or tinyG2?
If tinyG2, a reminder that parameter changes are not persistent, a board reset is same as a $defa=1 command when running tinyGV8. Therefore, when running tinyG2, when recovering from alarm/limit state, all parameter changes must be reentered.Then I send a text file that contains 25 GCode commands(the samiliar as the above command), I turn on the Y limit switch after around 5 seconds, the SpDir LED is not flashing and the board doesn’t go to the Reset status, the GCode is still executed and the motors is still running.
cmcgrath5035ModeratorSounds like a bad flash, not clear why. (A guess).
If you press reset button on tinyG, do you get a 2Hz flashing green (means boot loader running)?
If yes, try the “manual” avrdude method here:
September 25, 2015 at 7:20 am in reply to: Motion suspend or stop when the switch is on & TinyG communication programming #8779cmcgrath5035ModeratorBill
If tinyG2 running on a DUE plus a shield meets your project criteria, it will likely be a much more development friendly experience.
The G2 development environment is well documented, the DUE has more flexible I/O and you can easily prototype using Arduino/Atmel tools.LABview ? I’m not all that familiar with it’s interfaces and capabilities.
Most developers here work in C/C++ (tinyG2) and/or JS (Chilipeppr), plus many are doing personal CAMs using python and other scripting .Review the G2 Wiki at
September 24, 2015 at 7:05 am in reply to: Motion suspend or stop when the switch is on & TinyG communication programming #8776cmcgrath5035ModeratorOn quick read, your project is more like a CAM layer application than a machine control application, which is tinyG’s role in life.
Give this Wiki item a good readCurrent FW for tinyGV8 is FV=0.97.
tinyG2, the next generation, implements an evolving (daily) implementation of FV=0.98. Some of the FV=0.98 functionality is being back-ported to tinyG, if the hardware can do it, but perhaps not in your time frame.Your challenge is that switch I/O on tinyGV8 is somewhat limited. Limit switch operation is treated like a fatal error, shutting down the processing.
Be aware that the tinyGFW uses most available physical memory space and cpu cycles, so extensive reworking FW code might be challenging. The broadly supported command interface is Gcode. Many folks have or are developing scripted interfaces via python code or ChiliPeppr Macros.
It is also possible to build a new widget in CP that leverages all the resource management available in the current application.cmcgrath5035ModeratorHere is the applicable schematic page:
The regulator device is a 7812 device, using the board ground plane as a heat sink.
Assuming the fans you already have are cooling tinyG, it is a bit difficult to guesstimate where on the power dissipation curve for the 7812 your implementation will lie.
With no heat sink, the 7812 is rated at 2.5W at 50C.
So you are currently drawing 1.4W, my guess is you’ll be safe with LED’s added to load.
I’d suggest a before and after finger tip test; if the 7812 feels hot to the touch, perhaps consider an alternate solution.cmcgrath5035ModeratorYou are in “low level development land”, you’ll get much better help here
It is unclear if G2 has much/any support yet for the SD Card capability once you get the pins properly moved.
Are you using a custom shield?cmcgrath5035ModeratorFor starters, you need to move up to FW 440.20, the most recent master.
Some behavior you report is similar to bugs cleared as various times in the past year or so.
There is no incremental support for old releases, aside from moving to most recent.All G0 commands, by definition, move at maximum velocity. If you want to do your jog at F400, use “G1 X1500.0000, F400”. Make sure you consider logic as to absolute or relative movement.
To share parameter sets, Gcode etc use this method:
It is usually helpful for us to know what OS you are using for your controlling PC (Win, Linux, Mac)
Of the many complexities you will face, flow control will be a big one.
RTS/CTS may work for you, but not all serial drivers do a real good job at high speed. CP manages flow control via buffer fill management; complex but most effective.Good luck with your project
cmcgrath5035ModeratorQuestions such as:
Now I need move all texts,warnings,messages from USB CDC to classic UART?
How can I remap stderr FROM USB to UART->TX1 on TinyG2?are better asked and tracked here:
cmcgrath5035ModeratorThanks.
Apparently, the implementation of full circle (360 degree ) arcs is highly non-standardized in the Gcode world.
If you look closely, you will see that in fact your files send two arc commands that comprise 360 deg.
That may explain why my gcode tool has an output option to break circles into two arcs, which does work for me.
So problem understood, if not completely solved.BTW: I found it amusing that my Gcode simulator imports your files with error – 3/4 of a circle and 1/4 of the circle arc incorrectly rotated! No wonder Alden is pulling his hair out with Arcs.
cmcgrath5035ModeratorYour job seems to run fine, but it is so large it is difficult to tell if there are issues.
In fact, looking at it it is not obvious that there are any single command circles – 360 degree arcs from a point back to that point.
Can you with “designer knowledge” identify any (by Gcode line number)?cmcgrath5035ModeratorGot it, thanks. I am off to try it on my machine.
FYI, I found that My issue was resolved by invoking a Gcode generator option to cut circles as two half arcs.
But I see that you have some full circles, so yours will be a good test.cmcgrath5035ModeratorLink?
I’d like to give a trycmcgrath5035ModeratorOK, reran a series of tests.
I have two Gcode files availableThis is a new job, simple one at that. Eight (8) holes and two circles.
The CAD generated Gcode used a single G03 (ccw) arc command for each circle.
When I originally found it didn’t run, I manually changed the two commands from G03 to G02 (cw) arcs and created a second file.Results:
FW Ver SPJS CW CCW
—— —- — —
440.18 1.83 OK Bad
440.18 1.80 OK Bad
440.20 1.83 Bad Bad
440.20 1.80 Bad BadBad == Bit descends to proper cut depth then immediately returns to safe level and moves to next line of Gcode without any arc movement.
This is a new job, I never tried it on 440.14 and no longer have the 440.14.hex around.
If of use, the tinyGV7 parameters are here (same used 440.18 and 440.20)——-
For rtgallus – 440.20 has been tested by Alden with a MUCH tougher Gcode file and worked well, so whatever is going on here may not affect others.
The fact that these are full circle cuts may be the issue.(?)
If 440.18 is failing you for some reason, I would say give 440.20 a try and post your results. -
AuthorPosts