Hello wonderful people! I have encountered an error when using eagle brd import on

Hello wonderful people!

I have encountered an error when using eagle brd import on grbl .9j and 1.1

Maybe you guys can help me?

I have noticed that when milling holes, Chilipepprs generated gcode seperates it arc commands resulting in error messages and it not completing the arcs.

In other areas, it combines everything into 1 single g3 command which works well.

I am wondering if there is a way to make milling holes use a single gcode command or if I am somehow able to convert the arc commands to G1’s?

I have attached some pics of the error I am getting.

Please help!




What are the error messages you are getting? Eagle import should not generate arcs that are non compliant with grbl dialect.

I see the photos now.

The lines around n3660 are missing the xy values and obviously should have incrementing z moves between them.
Absence looks like a bug in the widget or perhaps an anomaly caused by a change in eagle XML?

shrugs diagnosing it is beyond me. Milling holes is a great feauture though! Hope it can be fixed!

I’ve found the error in the code but am amazed that no-one has reported it since it has been there since Jan 15 this year.

Can you post lines 3655 to 3670 of your gcode please.

That is shocking! and amazing you were able to find it so fast!

I have been playing with it so I do not have the exact .nc but here is two holes its attempting to mill.

(------ MILLING HOLES -----)
M5 (spindle off)
T1 M6 (Milling holes/board dimensions)
(T1 D=1mm - PCB End Mill)
M3 S12000 (spindle on)
(generate hole at x:15.0450 y:10.9700 with dia:1.3970 in 3 passes)
G0 Z1
G0 X14.5965 Y10.97
G1 Z-0.6000
G3 I0.4485
G1 Z-1.2000
G3 I0.4485
G1 Z-1.7000
G3 I0.4485
G0 Z1
(generate hole at x:15.0450 y:14.7200 with dia:1.3970 in 3 passes)
G0 Z1
G0 X14.5965 Y14.72
G1 Z-0.6000
G3 I0.4485
G1 Z-1.2000
G3 I0.4485
G1 Z-1.7000
G3 I0.4485
G0 Z1
(generate hole at x:5.7200 y:42.7700 with dia:1.3970 in 3 passes)

Thanks. Which workspace are you using? If /jpadie then this is a quick fix.

I Am assuimg that is your workspace xD

My GoTo has been /jpadie. I have tried them all though hoping one would work.

yup. not exclusively mine - the code that ported to grbl 1.1 and a bunch of other stuff was equally written by Luca.

the eagle board import is not a widget I maintain. That’s in @jlauer 's camp and I think that Ameen updated this last January.

Anyway, in the /jpadie workspace I’ve applied a fix which should keep the gCode in spec when holes are being milled rather than drilled.

give it a try (you might need to forceRefresh and empty your cache). you won’t need to run the job to test it - just look at the generated code and make sure that there are X and Y values on each line where there are also I or J values. If you want to look in a text editor then clicking the gCode button in the gCode widget spawns a new browser window with the raw code. Search for lines with this text “(added by fixes 2017-12-28)” for an easy method.

grbl actually has a test mode in which it simply checks whether each line is valid check code. Someone ought to implement that as an option, perhaps.

Thank you for the quick work!

I cleared my cache and did a force refresh and it was still producing the error. I will try again in a bit.

I really appreciate your efforts and glad that this bug has been brought to attention.

Thank you.

N3534 (generate hole at x:10.1500 y:15.6700 with dia:1.3970 in 3 passes)
N3535 F100
N3536 G0 Z1
N3537 G0 X9.7015 Y15.67
N3538 G1 Z-0.6000
N3539 G3 I0.4485
N3540 G1 Z-1.2000
N3541 G3 I0.4485
N3542 G1 Z-1.7000
N3543 G3 I0.4485
N3544 G0 Z1
N3545 (generate hole at x:14.8600 y:29.0700 with dia:1.3970 in 3 passes)

so your browser hasn’t yet picked up the new workspace. you need to do a force refresh from inside chilipeppr. click the down arrow at the top right of the page and select force refresh mode.

you’ll know when it has updated as the eagle board widget version string will have (visibly) gone from 5.6 to 5.6jpa


Thank you!!

N3567 (generate hole at x:1.5000 y:1.5000 with dia:1.8000 in 3 passes)
N3568 F100
N3569 G0 Z1
N3570 G0 X0.85 Y0.85
N3571 G1 Z-0.6000
N3572 G3 I0.6500 X0.85 Y0.85 (added by fixes 2017-12-28)
N3573 G1 Z-1.2000
N3574 G3 I0.6500 X0.85 Y0.85 (added by fixes 2017-12-28)
N3575 G1 Z-1.7000
N3576 G3 I0.6500 X0.85 Y0.85 (added by fixes 2017-12-28)
N3577 G0 Z1

no worries. good news but sorry it took so long to fix since your first post.

@Justin_Adie I went ahead and did a test cut and it is indeed milling the holes. I noticed that the arcs are no longer centered though. I checked the 3d viewer and the issue is also displayed there. See photos below.
missing/deleted image from Google+

missing/deleted image from Google+

interesting. I wonder who wrote that original code and can help there? I’ll see whether I can decipher the geometry too. all my kludge did was echo back the starting x/y coordinates.

aha! i think i see the problem. give it ten minutes and try again. but be aware that gin has been involve in this solution …

@Justin_Adie hahaha! Sah-lut! Thanks again sir!

tbh i’m not sure after all. The original code seems pretty sound. I’ve removed some rounding which appeared to create errors of up to 0.5mm. worth trying though.

I think it was @ameen.nihad that added the G3 arcs for hole drilling. I think it was in this pull request: https://github.com/chilipeppr/widget-eagle/pull/21

I’ve used the widget a lot in the last year and not had problems. I think it’s ok to not have any XY value in a G3 arc line and it just assumes the previous XY, so not sure why Grbl doesn’t like that.