Keyboard Shortcuts
Likes
- Pcbgcode
- Messages
Search
pcbgcode.com domain secured
#pcb-gcode
In a moment of being overly generous a few years ago, someone asked if they could register the pcbgcode.com and I agreed. Seventeen minutes later, I regretted it. He was selling some modified version of pcb-gcode, which also didn't sit well. Since 2003, my goal has been for pcb-gcode to be a free tool available to everyone that wanted it.
?I checked this morning and the domain was available again, so I paid the ransom to Network Solutions and bought the domain. It's still processing, and not active yet (it's only been 5 hours, and you know how slow computers are this century). Anyway, should be live soon, and I'll probably just forward to the groups group, like pcbgcode.org does, but wanted to share what I think is good news. ps. the beta of pcb-gcode with hole milling should be available soon. If you're interested in trying the alpha, send me an email. Thanks! Regards, JJ |
Re: Textmate bundle for Eagle’s ULP language? Or an Emacs mode?
#eagle
#development
开云体育Thanks Peter and Harald! Actually, Textmate isn't that bad. I just added .ulp to the extensions for C programming language, and it does pretty well. When I tried it years back, things like: ?? ???? ??? // Process all the wires. Would throw all the indentation off if you ran Text | Indent Selection. Now the main thing that is kind of wonky are switch / case / break statements, so I
just won't try to format those. Thanks, On 8/21/22 4:35 PM, peterg1000 via
groups.io wrote:
Hi guys, |
Re: Textmate bundle for Eagle’s ULP language? Or an Emacs mode?
#eagle
#development
Hi guys,
For what it's worth the FreeBasic ide? "FBide" will provide a color highlighted presentation of a .ulp file. Available for Windows, Mac and Linux so the blurb says. Peter |
Re: Textmate bundle for Eagle’s ULP language? Or an Emacs mode?
#eagle
#development
Ok, thanks!
-- Harald _____________________ |
Re: Textmate bundle for Eagle’s ULP language? Or an Emacs mode?
#eagle
#development
开云体育Thanks Harald. I don't use Windows, but posted a message on the thread. Someone
might have something. On 8/21/22 11:05 AM, Harald wrote:
Hi John, |
Re: Textmate bundle for Eagle’s ULP language? Or an Emacs mode?
#eagle
#development
Hi John,
just wanted to dig a bit through your code to get some understanding on this "drill/spot drill" problem, still included in your Alpha version. I use Notepad++ for editing/viewing text files and so searched for a means of syntax highlighting for NP++. I succeeded here: I don't know Textmate nor Emacs, but NP++ is worth a try... HTH -- Harald _____________________ |
开云体育Corrected image. Nothing like hitting Send to bring these things out.On 8/20/22 2:05 PM, John Johnson wrote:
|
开云体育
Hello Folks, The question recently came up about how pcb-gcode calculates it's toolpath, and why pads aren't isolated when there seems to be plenty of room between. Hopefully, this will help show how this is done. I'll add this to
the manual at some point (or revise what's there). Eagle has the ability to create "pours", which are usually used for things like ground planes. It fills in around areas where there aren't any tracks, and does this obeying a couple of parameters that are relevant to this discussion, width, and isolation. Width is the size of the line used to draw the polygons that make up the pour. For our purpose, this is the tool size. By using tool size as the width, the outer edge of the polygon becomes the tool path. This saves me from having to do tool offset myself, which is a pain (especially in inner corners), and the reason I abandoned a BASIC version I was working on in another CAD program. Isolation is a minimal amount that the pour (polygons) should be from all tracks. This is the minimum isolation parameter in pcb-gcode-setup. So here's why the pads you think should be isolated aren't isolated. As shown in the image below, the total width of everything between the pads is isolation+width+width+isolation. To give an example, say you have a 0.1mm tool, and have minimum isolation set to 0.05mm. The total then is 0.05+0.1+0.1+0.05=0.3mm, which may be larger than the space between the pads you want to isolate. Technically, yes, everything might fit, but that would require my (or someone) writing code to do tool offset, and that's not practical for me at the moment. How to work around this? - Change minimum isolation to 0.0, if your machine is rigid enough. - Edit the parts in Eagle and make the pads smaller (I think it's restring?). - Use a smaller tool. - Draw the pad outlines on the milling layer. Set the line width to the width of your tool to see the actual tool path. - Fudge a little on the tool size, realizing your tracks will be slightly smaller. Maybe you folks have other workarounds? Hope this helps! Regards, |
开云体育Hello Folks, Here are some details about the logic of hole milling:
Here's a video of how helical hole milling is treated. Art and Harald are alpha testing, let me know if you want in on the fun! Regards,
On 8/10/22 2:45 PM, John Johnson wrote:
|
On Fri, Aug 12, 2022 at 11:11 PM, John Johnson wrote:
If you're interested in alpha testing, let me know. Alpha software is not for circulation to others.Hi John, please provide me with the Alpha version. I will test it on my mill, but it may take me a few days to get to it. ? -- Harald _____________________ |
开云体育JJ,Now if only real world tests go as smoothly as the simulation show! Like the video and this will be a great addition to the software. Also, please include me for alpha testing. Thanks in advance. Country On 8/12/2022 5:10 PM, John Johnson
wrote:
|
开云体育Here's a I ran on a test board. The rack file looks like this. E means end mill, T is a standard
drill. This strategy mills from the center out at increasing depths. Helical at the max diameter is a possibility too - for another
day. #tool??? drill_size??? minimum???
maximum??? length??? step??? step_z If you're interested in alpha testing, let me know. Alpha software is not for circulation to others. Let me know what you think of the video. Regards, On 8/10/22 2:45 PM, John Johnson wrote:
|
toggle quoted message
Show quoted text
More or less like working with Arduino... Possible but without great fun ? |
开云体育I'd forgotten how tedious and terrible development is without a debugger and the ability to step through code and inspect variables ? On 8/10/22 2:45 PM, John Johnson wrote:
|
开云体育
Hi,
as I have already posted any hole over 1.5mm diameter I use circular interpolation. Given that I use 1.5mm endmill for this purpose its fine to plunge and cut to full depth of the PCB at full speed (600mm/min) in one pass. That would fail with smaller diameter
tools.
I do have, and use 0.8mm endmills, but have and use many 0.5mm endmills (Kyocera Tycom). I now seldom use them for PCB manufacture however I use them to bore holes in fractional sizes for which I do not have a drill. In particular drilling the hole to install
a pointer on a meter shaft. If the shaft is 0.6mm in diameter (some Nissan tachometers for instance) then I need to bore
a hole 0.57mm to 0.58mm in order for the plastic of the pointer boss grip the shaft. For this purpose I would use 0.5mm endmill and a helical interpolated path.
Standard endmills are typically three times longer than their diameter. In the case of my 0.5mm endmills the flute length is 1.5mm. Thus drilling a 1.5mm PCB is about as much as it could handle without the flare of the tool fouling the top of the hole. I use
Fusion and/or MachMill to generate the tool path for the helical milling. This is a toolpath for a 0.75mm hole 2.5mm deep:
(posted for Brass )
(Strategy: Equal )
(Rapid height: 2.0000 ?Clearance height: 1.0000 )
G98 G80 G17 G90 G54 G64 G91.1
G21 G90
(***New Tool Selected***)
(ToolNum: 21 ?Diameter: 0.5000 ?)
(Feed: 240.0000 ?SFM: 168.0000 ?Plunge: 120.0000 ?ChipLoad: 0.0050 ?)
M06 T21 (0.5mm EndMill)
G43 H21
M03 S24000
(***Cut Circle***)
(Inside)
(Xorign: 0.0000 ?Yorign: 0.0000 ?Dia: 0.7500 Dir: 01 ?)
(Ztop: 0.0000 ?Zdepth: -2.5000 ?Zstep: 0.8333 )
(will make ?3.0000 ?cuts of: ?0.8333 )
G00 Z2.0000
X0.1250 Y0.0000
Z1.0000
G01 Z0.0000 F120.00
G00
G03 Z-1.0000 I-0.1250
Z-2.0000 I-0.1250
X-0.1250 Y0.0000 Z-2.5000 I-0.1250
X0.1250 Y-0.0000 I0.1250 J-0.0000 F240.00
X-0.1250 Y0.0000 I-0.1250 J0.0000
X-0.0625 Y-0.0625 I0.0625 J-0.0000
G00 Z2.0000
M09
M05
M30 (end of file)
It helically interpolates down in two 1mm deep steps, followed by one 0.5mm deep helical path at a cut speed of 240mm/min. In harder materials, this was meant for brass, a less aggressive cutting strategy is required.?
This path was generated by MachMill, nothing special. I can choose to mill a pocket or as in this case just on the inside of the circle. With a diameter of 0.75mm there would be no divot and therefore a pocket is not required. I have found no appreciable
difference in climb or conventional milling, either being selectable. The good thing is that it takes two, maybe three minutes to generate this path at my machine and the job takes less than thirty seconds. It takes longer to set the part in the work holding
and touch off than it does to generate the path and do the job.
I have used this and many similar toolpaths in plastic, brass and aluminium, and would suggest that anyone wishing to experiment with helically interpolated toolpaths use it as a starting point.
Craig
From: [email protected] <[email protected]> on behalf of mariob_1960 via groups.io <mariob_1960@...>
Sent: Friday, 12 August 2022 7:00 am To: [email protected] <[email protected]> Subject: Re: [pcbgcode] Helical milling drill holes with endmill #pcbgcode #helical ?
[Edited Message Follows] Hello people.
my opinion:
1- G2 and G3 can be used with R without problems (two 180° arcs) or I J mode (my Trochoidal 3d bCNC plugin uses R, without problem after years)
2- If the cut of the circle is to generate a cut of the material, I do not see it as essential to make a pocket
3-if pocketing, option a) by discrete jump to next circle (40% overlap?) or b) enlarge in spiral movement (it will always keep a lateral cut, in the other mode, each step to next circle is a slot ). I prefer spiral.
4- I think G3 generates a better finish (finish on the material on the left side of the cutter). Add option box CW - CCW?
5-Select descent step per lap (pitch). Flat final pass.
Perhaps this repeats other opinions: my English is terrible.
hugs, Mario
|
Hello people.
my opinion:
1- G2 and G3 can be used with R without problems (two 180° arcs) or I J mode (my Trochoidal 3d bCNC plugin uses R, without problem after years)
2- If the cut of the circle is to generate a cut of the material, I do not see it as essential to make a pocket
3-if pocketing, option a) by discrete jump to next circle (40% overlap?) or b) enlarge in spiral movement (it will always keep a lateral cut, in the other mode, each step to next circle is a slot ). I prefer spiral.
4- I think G3 generates a better finish (finish on the material on the left side of the cutter). Add option box CW - CCW?
5-Select descent step per lap (pitch). Flat final pass.
Perhaps this repeats other opinions: my English is terrible.
hugs, Mario |
开云体育I think that the direction depends on the stage of the operation. The tolerances depend on the cutting tool, the rigidity of the
setup (unimat NOT rigid, Seig X2 much better, Bridgeport no
problem), and the material being cut (not only hardness but how
smoothly it cuts). Were this metal machining (and cutting a pocket in, say, aluminum, T6063), I would use conventional milling to within a certain distance, as a guess, I'd say about 25 thousandths.? I'd switch to climb milling and take off? no more than 5 thousandths each pass. Now, PC boards?? Lots less experience.? Assuming a 1/16th board, and a 1/8 carbide roughing tool, you don't want to take off more than 1/4 of the width of the bit (IMHO), so about 32 thousandths per cut, then go down to the usual 5 thousandths or so (rather conservative perhaps) for the final passes. The numbers are guesses, and I'd want to refine them under actual
practice, but there they are.? Someone with more experience would
be able to provide more accuracy. Harvey
On 8/11/2022 2:24 PM, John Blanchard
wrote:
I stand corrected. Thank you for the clarification. The picture makes it much more clear. |