External controller with CNC3018

Hello everybody,
with a direct USB connection my little CNC does a fine job everything works well.
During the lasering I usually place the CNC outdoor. As not to use the PC I bought a little offline controller.
I can control the CNC and also printing the example files of the controller works fine, but printing the Lightburn file does not work.
If I start the GRBL file from Lightburn the controller shows immedeately “printed” but nothing happens.

I think there is an issue with the header of the files:

Example file:
G90
G1Z3F200
M03 S1000
G0 X21.0087 Y10.646
G1Z-0.2

G1 X20.3867 Y10.646
G02 X19.6926 Y10.7646 I-0. J2.0906
G02 X19.3633 Y11.0062 I0.2335 J0.6636
G02 X19.1824 Y11.3961 I0.8284 J0.6211
G02 X19.0932 Y12.1849 I3.4437 J0.7888

Lightburn:
; LightBurn 0.9.11
; GRBL device profile, current position
G00 G17 G40 G21 G54
G91
M4
; Cut @ 400 mm/min, 100% power
M9
G0X33.5Y20.69
G1X1.78Y-1.3S2400F400
G1X0.92Y-0.64
G1X0.94Y-0.63
G1X0.96Y-0.62

I bought this controller:

Has anybody an idea?
Thanks for your help in advance.

Which version of GRBL is that controller using? If it’s not GRBL 1.1f or later, you should use the GRBL-M3 profile in LightBurn. I notice the code you posted that works contains an M03 command, and the LightBurn gcode is using M4, so that’s a strong possibility.

Sorry, but the M3 does not work with the offline controler.

The controller of the CNC has GRBL Version 1.1f and is working fine together with the PC (also with the M3 profile) but not with the offline controller.
As I understand the offline controller should send only the commands from the GRBL file to the CNC. So I don’t understand what happens.

This is the header of the M3-nc-file:

; LightBurn 0.9.11
; GRBL-M3 (1.1e or earlier) device profile, current position
G00 G17 G40 G21 G54
G91
; Cut @ 400 mm/min, 100% power
M9
M5
G0X5.22Y35.4
M3
G1X0.04Y0.02S2400F400
G1X0.01Y0.05
G1X-0.04Y0.71
G1X-0.01Y0.72

I see two things that are different:

  • comments (lines starting with ; )
  • spaces between commands

Try removing the comments from the LB file, and if that doesn’t work, try adding spaces between the GCode commands.

Deleted all comments and all spaces. Still the same :weary:

Will send it back to Amazon.

Has anybody a recommendation for a working offline controller together with lightburn and the 3018?

Made an other test with a GRBL freeware and it was working.

How is it possible that the CNC3018 works fine via USB and Lightburn but not with the NC-file and the offline controller?

Here’s the header from the free software:

G0 X0 Y0
M3 S0
F1000
G0 X11.667 Y3.333 S0
G1 X13 S255
G0 X14.333 Y3.667 S0
G1 X10.667 S255
G0 X10 Y4 S0
G1 X10.667 S255

It might be that the offline controller is looking for specific things in the file before it starts to send them. I do not have one, so you’d need to see if there are instructions for the offline controller and what format of data it is expecting.

Did you ever figure this out? It sure looks like the CNC has it’s own GRBL controller on it which works with the USB serial g-code streaming and then there is another GRBL based controller in the “Offline Controller”. The Offline Controller connects to the CNC controller stepper motors and switches over a ribbon cable and something in that controller doesn’t parse the G-Code files the same as the CNC’s onboard controller. There is literally just a series of lines of text being sent to GRBL, both over USB and when read from a file on an SD card.

I would ask the maker of the product why it will not read the same G-Code the same. ie the exact same G-Code is being sent over USB as is stored on the uSD card when Lightburn is involved. The only difference I could imagine getting involved is there being line ending character differences. ie some systems put CR(\r carriage return) and others put CR/LF( \r\n carriage return and linefeed ).