www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2016/01/19/16:25:54

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
X-ASG-Debug-ID: 1453238666-0978df3f99d2c30001-9re8WH
X-Barracuda-Envelope-From: gheskett AT shentel DOT net
X-Barracuda-RBL-Trusted-Forwarder: 204.111.2.25
From: "Gene Heskett (gheskett AT shentel DOT net) [via geda-user AT delorie DOT com]" <geda-user AT delorie DOT com>
X-Barracuda-Effective-Source-IP: n64s149.fttx.shentel.net[204.111.64.149]
X-Barracuda-Apparent-Source-IP: 204.111.64.149
X-Barracuda-RBL-IP: 204.111.64.149
To: geda-user AT delorie DOT com
Subject: Re: [geda-user] pcb vs gcode export
Date: Tue, 19 Jan 2016 16:24:25 -0500
X-ASG-Orig-Subj: Re: [geda-user] pcb vs gcode export
User-Agent: KMail/1.9.10 (enterprise35 0.20100827.1168748)
References: <201601182153 DOT 15624 DOT gheskett AT shentel DOT net> <CAC4O8c_fDrxeAKezz7VT8cO6bYNfHME8OadYTY3Ge4cajLRwDQ AT mail DOT gmail DOT com>
In-Reply-To: <CAC4O8c_fDrxeAKezz7VT8cO6bYNfHME8OadYTY3Ge4cajLRwDQ@mail.gmail.com>
X-KMail-QuotePrefix: >
MIME-Version: 1.0
Message-Id: <201601191624.25526.gheskett@shentel.net>
X-Barracuda-Connect: smtp2.edbg.cloud.shentel.net[204.111.2.25]
X-Barracuda-Start-Time: 1453238666
X-Barracuda-URL: https://204.111.1.146:443/cgi-mod/mark.cgi
X-Barracuda-Scan-Msg-Size: 14915
X-Virus-Scanned: by bsmtpd at cloud.shentel.net
X-Barracuda-BRTS-Status: 1
X-Barracuda-BRTS-Evidence: geneslinuxbox.net
X-Barracuda-Spam-Score: 1.00
X-Barracuda-Spam-Status: No, SCORE=1.00 using per-user scores of TAG_LEVEL=1000.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=6.0 tests=BSF_RULE7568M, HTML_MESSAGE, WEIRD_PORT
X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.3.26278
Rule breakdown below
pts rule name description
---- ---------------------- --------------------------------------------------
0.50 WEIRD_PORT URI: Uses non-standard port number for HTTP
0.00 HTML_MESSAGE BODY: HTML included in message
0.50 BSF_RULE7568M Custom Rule 7568M
Reply-To: geda-user AT delorie DOT com

--Boundary-01=_JmqnWSq13enWI4Y
Content-Type: text/plain;
  charset="utf-8"
Content-Transfer-Encoding: 7bit

On Tuesday 19 January 2016 13:53:01 Britton Kerin (britton DOT kerin AT gmail DOT com) [via geda-user AT delorie DOT com] wrote:

> On Mon, Jan 18, 2016 at 5:53 PM, Gene Heskett (gheskett AT shentel DOT net)
> [via
>
> geda-user AT delorie DOT com] <geda-user AT delorie DOT com> wrote:
> > Greetings;
> >
> > Since I have a milling machine capable of doing PCB's, albeit slow
> > as molasses since the spindle's tongue is hanging out and dripping
> > on the floor at 2650 rpm's.  But it works.
> >
> > Which is ATM more than I can say for the gcode exporter.
> >
> > It leaves out thru holes, or makes them the wrong size, as in too
> > big, destroying the pad itself.  This missing holes also affects the
> > bottom etching file, skipping the peck with the engraving tool in
> > the center of the pad, and despite being told to peck that about 5
> > thou deeper, it doesn't even make it thru the copper.
> >
> > But I am fairly decent, not a guru, but capable of fixing a line of
> > code here and there, so I was able to add the peck the hold in the
> > pad without a lot of hacking around. So that did cut what was a
> > usable bottom(solder) side of the board.  Then, attacking the
> > drillmill file, I found the bit of code that needed help by mouse
> > clicking on the line in the LCNC backplot to locate it in the code,
> > first adding the missing holes with a straight drill of 0.03125
> > diameter.  But some holes were still either too big or tool small.
> > Using the point and click, I found it in the code, and except for
> > the original placement move, I ripped out the octagonal carving code
> > and did a straight drill.  Checking the sizes, I added a global var
> > to the gcode file which served as the additional radius the hole
> > needed to be the right size. Setting it for 3 to 6 thousandths, and
> > calling a circle cutter subroutine, I was able to fine tune the hole
> > sizes.
> >
> > So then I coded up a step & repeat, and made the circuit 4 up. I
> > populated the first one last night but ran out of giddyup, so it got
> > tested today, works great.
> >
> > So today, I had pcb make some Gerber's that I could look at with
> > gerbv. No missing holes, but since it was working with the .pcb
> > file, the holes were still mostly too small.
> >
> > So, my  wish list is:
> >
> > 1. Make a library pad patterns adjustable in the editor, both for
> > interlead spacing, and the pad OD and hole size, using a unit of
> > measure we are familiar with.  Maybe it can be done to the copy in
> > memory, but its not obvious from the current screen the device
> > editor menu shows a new bee.
> >
> > 2. Fix the gcode export menu so it saves the last set of "makeit"
> > settings even if I don't load pcb again for a month, and reloads
> > them when next called.  Continuity would be very handy, almost on a
> > par with sliced bread and bottled beer.
>
> I think the way this would work is the normal settings would go in
> ~/.pcb/preferences, and then individual boards could override them
> with their own settings.  I'm looking at how all this works a little
> bit at the moment with an eye to cleaning up load/save somewhat.
>
> > 3. Fix the missing drill holes in the gcode exporter.  Not everyone
> > is as familiar with LinuxCNC and gcode as I am, and I am by no means
> > a guru. For probably 75% of the people who might use that code to
> > directly generate the gcode files, and who often depend on a CAM
> > program to generate the code they run, this is for those people, an
> > absolute show stopper.
>
> Sounds like a great thing to fix for sure.  Unfortunately I know
> nothing about the gcode or gerber exporters myself.  I would guess
> that the gcode one doesn't get a lot of exercise hence bugs like
> these.
>
> > 4. I have no facilities to lay down a solder mask, and being able to
> > do that would be a huge help, but I haven't the foggiest where to
> > start. Hints about that gleefully read and noted to see if its
> > practical when I
>
> I used to use a mask pen and only bothered with the fine pitch parts. 
> It's fussy but you can do it for etch/mill boards using the edges of
> the copper to guide the pen.  I'm not sure how necessary it was
> though.
>
> > haven't had a working chemical darkroom set up since about 1977 when
> > I moved to a new office where the door said Chief Engineer, at a tv
> > station that is no more. That was also the title on the door for the
> > last 18 years of my working carrear which ended 13.5 years ago. I am
> > now 81 and counting.
>
> Welcome!
>
> > Any help that can be put into PCB in these areas will be
> > appreciated, a lot.
>
> It sounds to me like you've already made some real fixes. 

Needs concept clarification here:

But I am doing it in the gcode delivered, primarily because I have forgotten most of what I once knew about c, or any other "higher" level language.  I guess it goes with the years on the wet ram, darnit.

I do have the pcb source here, I built it from a tarball, but my ability to look at, and spot the error is virtually nil.

So I am not patching anything in pcb. I am just "massaging" its defective output from its export to gcode translator.

Interestingly, the problem seems to be one of failing to fill in the blanks, because on the first such run, it missed spotting 6 holes in the bottom.ngc file, but the spot code WAS there in the generated file, all filled in with 0.0000 for both x and y, so the machine went to the gcode x0y0 position, and pecked it 6 times, once for each missing hole.  But the drill-mill file was not the same in terms of missing holes, only 4 were on the missing list in that file.  And the sizes weren't correct.  

So I fixed that, but not in PCB, but in the gcode output file.

> You might 
> want to get set up with git as that's probably the easiest way to get
> them approved and integrated.  Another option is to open pcb launchpad
> bugs with your patches and email the list about them, and someone else
> can look at them and create a corresponding branch.

Not a particularly appetizing thought.  You likely would look at my code & wonder if its even to be taken seriously, or should you just hit the delete key. :-\

But I sure can test and report what I find.  Perhaps its time for a version 1.991a?, before this is one renamed to version 2.00 and announced as such. :)

Thanks Britton.

Cheers, Gene Heskett
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page <http://geneslinuxbox.net:6309/gene>

--Boundary-01=_JmqnWSq13enWI4Y
Content-Type: text/html;
  charset="utf-8"
Content-Transfer-Encoding: 7bit

<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:14pt;font-family:Liberation Mono">
<p>On Tuesday 19 January 2016 13:53:01 Britton Kerin (britton DOT kerin AT gmail DOT com) [via geda-user AT delorie DOT com] wrote:</p>
<p></p>
<p>&gt; On Mon, Jan 18, 2016 at 5:53 PM, Gene Heskett (gheskett AT shentel DOT net)</p>
<p>&gt; [via</p>
<p>&gt;</p>
<p>&gt; geda-user AT delorie DOT com] &lt;geda-user AT delorie DOT com&gt; wrote:</p>
<p>&gt; &gt; Greetings;</p>
<p>&gt; &gt;</p>
<p>&gt; &gt; Since I have a milling machine capable of doing PCB's, albeit slow</p>
<p>&gt; &gt; as molasses since the spindle's tongue is hanging out and dripping</p>
<p>&gt; &gt; on the floor at 2650 rpm's.  But it works.</p>
<p>&gt; &gt;</p>
<p>&gt; &gt; Which is ATM more than I can say for the gcode exporter.</p>
<p>&gt; &gt;</p>
<p>&gt; &gt; It leaves out thru holes, or makes them the wrong size, as in too</p>
<p>&gt; &gt; big, destroying the pad itself.  This missing holes also affects the</p>
<p>&gt; &gt; bottom etching file, skipping the peck with the engraving tool in</p>
<p>&gt; &gt; the center of the pad, and despite being told to peck that about 5</p>
<p>&gt; &gt; thou deeper, it doesn't even make it thru the copper.</p>
<p>&gt; &gt;</p>
<p>&gt; &gt; But I am fairly decent, not a guru, but capable of fixing a line of</p>
<p>&gt; &gt; code here and there, so I was able to add the peck the hold in the</p>
<p>&gt; &gt; pad without a lot of hacking around. So that did cut what was a</p>
<p>&gt; &gt; usable bottom(solder) side of the board.  Then, attacking the</p>
<p>&gt; &gt; drillmill file, I found the bit of code that needed help by mouse</p>
<p>&gt; &gt; clicking on the line in the LCNC backplot to locate it in the code,</p>
<p>&gt; &gt; first adding the missing holes with a straight drill of 0.03125</p>
<p>&gt; &gt; diameter.  But some holes were still either too big or tool small.</p>
<p>&gt; &gt; Using the point and click, I found it in the code, and except for</p>
<p>&gt; &gt; the original placement move, I ripped out the octagonal carving code</p>
<p>&gt; &gt; and did a straight drill.  Checking the sizes, I added a global var</p>
<p>&gt; &gt; to the gcode file which served as the additional radius the hole</p>
<p>&gt; &gt; needed to be the right size. Setting it for 3 to 6 thousandths, and</p>
<p>&gt; &gt; calling a circle cutter subroutine, I was able to fine tune the hole</p>
<p>&gt; &gt; sizes.</p>
<p>&gt; &gt;</p>
<p>&gt; &gt; So then I coded up a step &amp; repeat, and made the circuit 4 up. I</p>
<p>&gt; &gt; populated the first one last night but ran out of giddyup, so it got</p>
<p>&gt; &gt; tested today, works great.</p>
<p>&gt; &gt;</p>
<p>&gt; &gt; So today, I had pcb make some Gerber's that I could look at with</p>
<p>&gt; &gt; gerbv. No missing holes, but since it was working with the .pcb</p>
<p>&gt; &gt; file, the holes were still mostly too small.</p>
<p>&gt; &gt;</p>
<p>&gt; &gt; So, my  wish list is:</p>
<p>&gt; &gt;</p>
<p>&gt; &gt; 1. Make a library pad patterns adjustable in the editor, both for</p>
<p>&gt; &gt; interlead spacing, and the pad OD and hole size, using a unit of</p>
<p>&gt; &gt; measure we are familiar with.  Maybe it can be done to the copy in</p>
<p>&gt; &gt; memory, but its not obvious from the current screen the device</p>
<p>&gt; &gt; editor menu shows a new bee.</p>
<p>&gt; &gt;</p>
<p>&gt; &gt; 2. Fix the gcode export menu so it saves the last set of &quot;makeit&quot;</p>
<p>&gt; &gt; settings even if I don't load pcb again for a month, and reloads</p>
<p>&gt; &gt; them when next called.  Continuity would be very handy, almost on a</p>
<p>&gt; &gt; par with sliced bread and bottled beer.</p>
<p>&gt;</p>
<p>&gt; I think the way this would work is the normal settings would go in</p>
<p>&gt; ~/.pcb/preferences, and then individual boards could override them</p>
<p>&gt; with their own settings.  I'm looking at how all this works a little</p>
<p>&gt; bit at the moment with an eye to cleaning up load/save somewhat.</p>
<p>&gt;</p>
<p>&gt; &gt; 3. Fix the missing drill holes in the gcode exporter.  Not everyone</p>
<p>&gt; &gt; is as familiar with LinuxCNC and gcode as I am, and I am by no means</p>
<p>&gt; &gt; a guru. For probably 75% of the people who might use that code to</p>
<p>&gt; &gt; directly generate the gcode files, and who often depend on a CAM</p>
<p>&gt; &gt; program to generate the code they run, this is for those people, an</p>
<p>&gt; &gt; absolute show stopper.</p>
<p>&gt;</p>
<p>&gt; Sounds like a great thing to fix for sure.  Unfortunately I know</p>
<p>&gt; nothing about the gcode or gerber exporters myself.  I would guess</p>
<p>&gt; that the gcode one doesn't get a lot of exercise hence bugs like</p>
<p>&gt; these.</p>
<p>&gt;</p>
<p>&gt; &gt; 4. I have no facilities to lay down a solder mask, and being able to</p>
<p>&gt; &gt; do that would be a huge help, but I haven't the foggiest where to</p>
<p>&gt; &gt; start. Hints about that gleefully read and noted to see if its</p>
<p>&gt; &gt; practical when I</p>
<p>&gt;</p>
<p>&gt; I used to use a mask pen and only bothered with the fine pitch parts. </p>
<p>&gt; It's fussy but you can do it for etch/mill boards using the edges of</p>
<p>&gt; the copper to guide the pen.  I'm not sure how necessary it was</p>
<p>&gt; though.</p>
<p>&gt;</p>
<p>&gt; &gt; haven't had a working chemical darkroom set up since about 1977 when</p>
<p>&gt; &gt; I moved to a new office where the door said Chief Engineer, at a tv</p>
<p>&gt; &gt; station that is no more. That was also the title on the door for the</p>
<p>&gt; &gt; last 18 years of my working carrear which ended 13.5 years ago. I am</p>
<p>&gt; &gt; now 81 and counting.</p>
<p>&gt;</p>
<p>&gt; Welcome!</p>
<p>&gt;</p>
<p>&gt; &gt; Any help that can be put into PCB in these areas will be</p>
<p>&gt; &gt; appreciated, a lot.</p>
<p>&gt;</p>
<p>&gt; It sounds to me like you've already made some real fixes. </p>
<p></p>
<p>Needs concept clarification here:</p>
<p></p>
<p>But I am doing it in the gcode delivered, primarily because I have forgotten most of what I once knew about c, or any other &quot;higher&quot; level language.  I guess it goes with the years on the wet ram, darnit.</p>
<p></p>
<p>I do have the pcb source here, I built it from a tarball, but my ability to look at, and spot the error is virtually nil.</p>
<p></p>
<p>So I am not patching anything in pcb. I am just &quot;massaging&quot; its defective output from its export to gcode translator.</p>
<p></p>
<p>Interestingly, the problem seems to be one of failing to fill in the blanks, because on the first such run, it missed spotting 6 holes in the bottom.ngc file, but the spot code WAS there in the generated file, all filled in with 0.0000 for both x and y, so the machine went to the gcode x0y0 position, and pecked it 6 times, once for each missing hole.  But the drill-mill file was not the same in terms of missing holes, only 4 were on the missing list in that file.  And the sizes weren't correct.  </p>
<p></p>
<p>So I fixed that, but not in PCB, but in the gcode output file.</p>
<p></p>
<p>&gt; You might </p>
<p>&gt; want to get set up with git as that's probably the easiest way to get</p>
<p>&gt; them approved and integrated.  Another option is to open pcb launchpad</p>
<p>&gt; bugs with your patches and email the list about them, and someone else</p>
<p>&gt; can look at them and create a corresponding branch.</p>
<p></p>
<p>Not a particularly appetizing thought.  You likely would look at my code &amp; wonder if its even to be taken seriously, or should you just hit the delete key. :-\</p>
<p></p>
<p>But I sure can test and report what I find.  Perhaps its time for a version 1.991a?, before this is one renamed to version 2.00 and announced as such. :)</p>
<p></p>
<p>Thanks Britton.</p>
<p></p>
<p>Cheers, Gene Heskett</p>
<p>-- </p>
<p>&quot;There are four boxes to be used in defense of liberty:</p>
<p> soap, ballot, jury, and ammo. Please use in that order.&quot;</p>
<p>-Ed Howdershelt (Author)</p>
<p>Genes Web page &lt;http://geneslinuxbox.net:6309/gene&gt;</p>
<p></p>
</body></html>
--Boundary-01=_JmqnWSq13enWI4Y--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019