Re: gEDA-user: Enhancements for gEDA/pcb G-code export

2010-10-27 Thread Alberto Maccioni
Hello,
here some comments about your patches; I think most of them are good,
but the gcode simplifications should not be enabled by default;
in fact the most commonly used CNC controllers (EMC and MACH3) support
all of the gcode features, it's RepRap that is behind an not standard.
In detail:

Avoid more than one G or M code per line.
Please use a flag to enable this, as it tends to generate less
readable files (esp. drilling with standard codes).

Introduce a flag on whether to use a drill cycle for drilling.
I would instead have a flag to disable M81 drill cycles, disabled by default.

Add a flag whether to use variables in G-code.
I would instead have a flag to disable variables, something like:
avoid using G-code variables. Some non-standard machine controllers
don't understand them

switch from tool-radius to tool-diameter in the user interface.
What is the reason for switching from tool radius to tool diameter? I
think tool radius gives a better understanding
of the effective distance between track and cut; in fact don't you
find the following a little hard to read?
Milling tool diameter, or twice the offset of the G-code track from
the resulting copper track

Simplify code a bit
I don't understand what simplification is done here; the new code is
longer and has more variables; is it easier to read? I find it less
immediate.

Sort drills not only by distance, but also by diameter.
I probably didn't explain correctly the original feature: it doesn't
really sort by distance from origin, it puts drills in the lowest
relative
distance sequence, starting from zero. This way the tool starts from
zero and makes the least amount of movement to reach the new hole;
now,
I know that there is probably an entire class of very smart path
minimization algorithms but this one proved to decrease the overall
length
quite a bit, so don't remove it.
Regarding the hole diameter not everybody uses different bits for
different hole sizes, so this feature should be enabled via a flag;
and for every
diameter I would run the path minimization as well. By the way, even
without tool changer there's no need to split drills in different
files, just
insert M60 (pause) after every set of holes.

Anyways it's good that somebody else is finally using the g-code exporter.
Too bad the PCB documentation doesn't mention it; some time ago I did
write a patch to update docs but it never went to the repository.

Best regards,
Alberto


2010/10/23 Markus Hitter m...@jump-ing.de:
 Am Freitag, den 22.10.2010, 23:54 +0200 schrieb Markus Hitter:

 https://sourceforge.net/tracker/?func=detailaid=3093302group_id=161080atid=818428

 Traumflug's wishlist in the Patches section, in case this long link
 doesn't work.

 New patches today:

 HID-gcode: remove a leftover debug-printf.

 HID-gcode: provide info about drill diameters in G-code as well.
 While this is currently unsorted, it's helpful for hand-editing
 already.

 HID-gcode: sort drills not only by distance, but also by diameter.
 This should help greatly when using a tool changer. Next step
 would be to actual insert tool change commands and/or split
 G-code output files by drill diameter. The later is for
 manual tool changing, then.

 HID-gcode: report one drill diameter only once in the output file.

 Cheers,
 Markus




 ___
 geda-user mailing list
 geda-user@moria.seul.org
 http://www.seul.org/cgi-bin/mailman/listinfo/geda-user



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Enhancements for gEDA/pcb G-code export

2010-10-27 Thread Alberto Maccioni
 Introduce a flag on whether to use a drill cycle for drilling.
 I would instead have a flag to disable M81 drill cycles, disabled by
 default.

 Well, the flag is supposed to do exactly this. Do you think there should be
 a better wording?
All I was saying is that advanced features should be enabled by
default, and I think it's better to have something like:
Disable feature XX (unchecked by default)
than:
Enable feature XX (checked by default)


 Add a flag whether to use variables in G-code.
 I would instead have a flag to disable variables, something like:
 avoid using G-code variables. Some non-standard machine controllers
 don't understand them

idem

 Sort drills not only by distance, but also by diameter.
 I probably didn't explain correctly the original feature: it doesn't
 really sort by distance from origin, it puts drills in the lowest
 relative distance sequence, starting from zero. This way the tool starts
 from zero and makes the least amount of movement to reach the new hole;
 now, I know that there is probably an entire class of very smart path
 minimization algorithms but this one proved to decrease the overall
 length
 quite a bit, so don't remove it.

 The sorting by distance is still there, just sorting by diameter takes
 precedence.

Now, this is plain wrong: your replacement algorithm orders holes by
distance from origin; the original algorithm does something very
different: starting from the origin it builds a sequence of holes so
that the path from one to the next is lowest. This has to be the last
operation, because if you swap again the order you have the same
problem you started with, i.e. the drill jumping all over the board
wasting time.
So I repeat that if you want to order also by size you should create a
separate list of holes for every size you have, and for each list run
my original algorithm.
Try yourself the difference by visualizing the tool path in both cases.

 Regarding the hole diameter not everybody uses different bits for
 different hole sizes, so this feature should be enabled via a flag;

 Uh, yet another flag. And I consider at least three additional flags, e.g.
 feed rates for vertical vs. horizontal movement, as unavoidable. How many
 flags can be put into this dialog before it no longer fits onto the screen?
 Hmm. Looks a bit difficult to find an agreement. If there's hand-editing of
 the G-code needed, I'd consider this as a failure of the exporter. And I
 hate adding user-visible features, stuff should just work. Hence the
 tendency to switch flags on the safe, works everywhere side by default.
This is not something that can be substituted by hand editing, it has
to do with the equipment you have: how many people do you think will
use a tool changer? Right now 0 out of 2 users, but I bet only a very
small percentage will ever do it, so the most common drill operation
will be done with only one drill.
So I'd say that drill sorting definitely has to be optional.
What you define safe features is just the set of features supported
by a not yet mature particular machine (RepRap) which accounts for an
extremely small percentage of hobby machines; G-code has been working
with variables and multiple commands for tens of years, and probably
your machine will be upgraded shortly.
Also, hand editing is very common in the CNC world, due to the fact
that you often adjust your codes on the field, based on what you
equipment can do at the moment.

Best regards,
Alberto


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Spice Netlists from Schematics with Hierarchy

2010-10-27 Thread John Doty

On Oct 27, 2010, at 4:03 PM, Shane Kaiser wrote:

 Hello All:
 
 I am trying to create hierarchy in my schematics. I have read the brorson 
 info on using .subckt. I really like to be able to push down into and pop out 
 of schematics for readability.
 
 Is it possible to use .subckt and be able to push/pop through the schematic 
 hierarchy using gschem and gnetlist?

Yes. What you want to do is disable hierarchy traversal in gnetlist, so you can 
use source= attributes to navigate in gschem but not have them generate a flat 
netlist. See:

http://archives.seul.org/geda/user/Nov-2008/msg00489.html

John Doty  Noqsi Aerospace, Ltd.
http://www.noqsi.com/
j...@noqsi.com




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Enhancements for gEDA/pcb G-code export

2010-10-27 Thread Markus Hitter


Am 27.10.2010 um 22:57 schrieb Alberto Maccioni:


Actually the code is already working;


I'm glad the current code works for you, it doesn't for me.

Please pick up what you think is useful, I'll maintain a patch for  
the remaining customisations in the RepRap Wiki. We need software  
working out of the box there, educating people about something is  
almost no option.



Markus

- - - - - - - - - - - - - - - - - - -
Dipl. Ing. (FH) Markus Hitter
http://www.jump-ing.de/







___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user