Topics

#drill #etch #gcode #gcode #etch #drill


peterg1000
 

As of a couple of days ago, pcbgcode appear to have suddenly lost the ability to use G82 code in all drilling operations.  I've run extensive tests using alternative backup copies of pcb-gcode, .brd files and earlier versions of Eagle ( currently using 9.6.0, so reverted to 9.5.2 for test).  I'm fresh out of ideas on what might have changed to cause the problem as all the alternative copies were archived from fully working applications.

Could it be caused by something evil in the registry as I know I have run "Advanced System Care" recently??

Spot drills in the etch file now use the same substitute code as the drill file.

What was this code  in the drill file:-
"Absolute Coordinates)
G90
S18000
G00 Z10.0000
G00 X0.0000  Y0.0000 
M03
G04 P7.000000
M05
G00 Z40.0000
M06 T01  ; 0.9000 
G01 Z0.0000  F175  
M06
G00 Z2.0000 
M03
G04 P7.000000
G82 X6.0960  Y10.1600 Z-2.2500 F175   R2.0000  P1.000000
G82 X6.0960  Y12.7000
G82 X6.0960  Y15.2400
G82 X23.3934 Y8.4836 
G82 X23.3934 Y5.9436 
M05
G00 Z40.0000 "

Has now become this:-
"(Absolute Coordinates)
G90
S18000
G00 Z10.0000
G00 X0.0000 Y0.0000
M03
G04 P7.000000
M05
G00 Z40.0000
M06 T01  ; 0.9000
G01 Z0.0000 F175.00
M06
G00 Z3.0000
M03
G04 P7.000000
G00 Z3.000000
G00 X6.0960 Y10.1600
G01 Z-2.2500 F175.00
G01 Z3.000000
(R3.0000  P1.000000)
G00 X6.0960 Y12.7000
G01 Z-2.250000
G01 Z3.000000
G00 X6.0960 Y15.2400
G01 Z-2.250000
G01 Z3.000000
G00 X23.3934 Y8.4836
G01 Z-2.250000
G01 Z3.000000
G00 X23.3934 Y5.9436
G01 Z-2.250000
G01 Z3.000000
M05
G00 Z40.0000 "

Peter H


John Johnson
 

Looks like 'Use simple drill code' is turned on. Pg. 14 in the manual for more info.

Regards,
John

On Aug 5, 2020, 7:46 AM -0400, peterg1000 via groups.io <petergharrison@...>, wrote:
As of a couple of days ago, pcbgcode appear to have suddenly lost the ability to use G82 code in all drilling operations.  I've run extensive tests using alternative backup copies of pcb-gcode, .brd files and earlier versions of Eagle ( currently using 9.6.0, so reverted to 9.5.2 for test).  I'm fresh out of ideas on what might have changed to cause the problem as all the alternative copies were archived from fully working applications.

Could it be caused by something evil in the registry as I know I have run "Advanced System Care" recently??

Spot drills in the etch file now use the same substitute code as the drill file.

What was this code  in the drill file:-
"Absolute Coordinates)
G90
S18000
G00 Z10.0000
G00 X0.0000  Y0.0000 
M03
G04 P7.000000
M05
G00 Z40.0000
M06 T01  ; 0.9000 
G01 Z0.0000  F175  
M06
G00 Z2.0000 
M03
G04 P7.000000
G82 X6.0960  Y10.1600 Z-2.2500 F175   R2.0000  P1.000000
G82 X6.0960  Y12.7000
G82 X6.0960  Y15.2400
G82 X23.3934 Y8.4836 
G82 X23.3934 Y5.9436 
M05
G00 Z40.0000 "

Has now become this:-
"(Absolute Coordinates)
G90
S18000
G00 Z10.0000
G00 X0.0000 Y0.0000
M03
G04 P7.000000
M05
G00 Z40.0000
M06 T01  ; 0.9000
G01 Z0.0000 F175.00
M06
G00 Z3.0000
M03
G04 P7.000000
G00 Z3.000000
G00 X6.0960 Y10.1600
G01 Z-2.2500 F175.00
G01 Z3.000000
(R3.0000  P1.000000)
G00 X6.0960 Y12.7000
G01 Z-2.250000
G01 Z3.000000
G00 X6.0960 Y15.2400
G01 Z-2.250000
G01 Z3.000000
G00 X23.3934 Y8.4836
G01 Z-2.250000
G01 Z3.000000
G00 X23.3934 Y5.9436
G01 Z-2.250000
G01 Z3.000000
M05
G00 Z40.0000 "

Peter H


peterg1000
 
Edited

I think I have recovered the situation with regard to the G82 code - the problem lies in the gcode-defaults.h file.  The one I had been using, dated 31/07/20 on my system, explicitly states :-

//
// Drilling holes
//
// Not using G82 so it will be very generic.
//
string DRILL_CODE       = ";( G82 not used )";
string RELEASE_PLANE    = "R" + FORMAT;
string DWELL_TIME       = PARAM + "%f";

Whereas the file that works dated 28/04/18 ( from another backup taken recently before a different change was made to this file) contains:-

//
// Drilling holes
//
// G82 Xx.xxx Yy.yyy Z.zzz Fff.f Rr.rrr #dwell
//
string DRILL_CODE       = "G82 ";
string RELEASE_PLANE    = "R" + FORMAT;
string DWELL_TIME       = PARAM + "%f";
string DRILL_FIRST_HOLE = DRILL_CODE + MOVE_XYZ + FR_FORMAT + RELEASE_PLANE + DWELL_TIME + EOL;
string DRILL_HOLE       = DRILL_CODE + MOVE_XY + EOL;

I had forgotten that a change was entered to  "string END_PROGRAM "  which somehow resulted in the  31/07/20 file being used.  Unfortunately I have no exact idea how this file arrived.  I did see the forum post regarding moving to X = 0, Y = 0, Z = n.nnn, and though I had implemented this correctly.

Incidentally I did try to download a fresh copy of the .zip file, but the recovered application (in a completely separate folder ) never ran correctly as it was apparently unable to access proper image files. I abandoned this approach as another diversion I didn't need!!


peterg1000
 

I've now unearthed the gruesome truth!!  The culpritt gcode-defaults.h file was down loaded from John Ferguson's post on April 11 (#8087) because having the machine return to X = 0, Y = 0 Z = n.nnn for a manual tool change seemed a good idea.   

What I failed to realise was the John had left a booby trap in his file by disabling G82 codes for drilling  (Sorry John, no Christmas card this year!!). 

To compound the problem, the backup I used contained the same file.   Pity I didn't follow the golden rule - "Record every change, otherwise it will bite you sooner or later !! ".

Still don't know why the fresh download didn't work - no graphics and some options not on the screen.  That's for another rainy day (or week).                   

.


John Ferguson
 

Wow,

Sorry Peter.  I suppose I fell into the trap of having something work for me without realizing I'd messed something else up. Clearly I need to revisit this.

apologies,

JOhn

On 8/6/20 4:34 AM, peterg1000 via groups.io wrote:


I've now unearthed the gruesome truth!!  The culpritt
gcode-defaults.h file was down loaded from John Ferguson's
post on April 11 (#8087) because having the machine return
to X = 0, Y = 0 Z = n.nnn for a manual tool change seemed a
good idea.

What I failed to realise was the John had left a booby trap
in his file by disabling G82 codes for drilling  (Sorry
John, no Christmas card this year!!).

To compound the problem, the backup I used contained the
same file.   Pity I didn't follow the golden rule - "Record
every change, otherwise it will bite you sooner or later !! ".

Still don't know why the fresh download didn't work - no
graphics and some options not on the screen.  That's for
another rainy day (or week).

.


John Ferguson
 

Peter,

I took G82 out of my code because I couldn't see any purpose in having dwell at the bottom of a through-hole. How does G82 have anything to do with your current issue?

John

On 8/6/20 4:34 AM, peterg1000 via groups.io wrote:
I've now unearthed the gruesome truth!!  The culpritt gcode-defaults.h file was down loaded from John Ferguson's post on April 11 (#8087) because having the machine return to X = 0, Y = 0 Z = n.nnn for a manual tool change seemed a good idea.   

What I failed to realise was the John had left a booby trap in his file by disabling G82 codes for drilling  (Sorry John, no Christmas card this year!!). 

To compound the problem, the backup I used contained the same file.   Pity I didn't follow the golden rule - "Record every change, otherwise it will bite you sooner or later !! ".

Still don't know why the fresh download didn't work - no graphics and some options not on the screen.  That's for another rainy day (or week).                   

.


peterg1000
 

Hi John,

The main downside was that when doing spot drills, which were meant to be only 0.3mm deep, the spot was drilled to the full depth defined for drilling - all done with the etching tool.  Anyway all's well that ends well, it now spots and drills correctly with G82  !!

At least I now have a vague understanding of how this amazing piece of software works - JJ is a genius !!

I've not yet implemented the EOF move but have corrected the stencil size anomaly that was bugging me - I'll post the alteration I made under the correct topic later on.

Cheers,
Peter


John Ferguson
 

HI Peter,

After some mishaps with very small vias (Well, in truth, too small) I was advised that it is better to drill first, then etch. Doing it this way eliminates a need to spot-drill, although I suppose you might be able to spot drill first without etching.  In any case, I've had no problem since starting to drill first.

I'm not sure I know what code I'm running now.  I run LinuxCNC on a PC to drive the router. 

I must say, I've been very happy with this setup.  I do use dxf for the physical board design and SheetCAM to generate the G-Code for big holes and the perimeter.  I can offset inside or outside line or on the line with SheetCAM so I usually get exactly what I asked for although sometimes I don't ask for what I really wanted.

best regards,

John Ferguson

On 8/6/20 11:59 AM, peterg1000 via groups.io wrote:
Hi John,

The main downside was that when doing spot drills, which were meant to be only 0.3mm deep, the spot was drilled to the full depth defined for drilling - all done with the etching tool.  Anyway all's well that ends well, it now spots and drills correctly with G82  !!

At least I now have a vague understanding of how this amazing piece of software works - JJ is a genius !!

I've not yet implemented the EOF move but have corrected the stencil size anomaly that was bugging me - I'll post the alteration I made under the correct topic later on.

Cheers,
Peter