Just wanted to introduce the rookie in the group. Just got my first laser Class IV. Anycubic combo.
Trying to get the thing to fire up and nothing. Not much support out there for this product.
Anyway thought I would look around and found great reviews about this software.
Just wanted a toy to engrave some stuff on BBQ tools I make.
Hopefully I can get it working. The machine doesn’t even read the Card that came with it!
If it’s using Marlin, you’ll need to use ‘Create Manually’ to set up a device for it, and Marlin is really configurable, which makes it a bit of a pain to set up. GRBL and Smoothieware tend to be much simpler, partly because they don’t have 17 different ways to connect a laser.
Thank you for the quick reply. It does mention Gcode in the manual. But doesn’t say I have to do that. I just need to save a .bmp file and load that up and boom.
Except after I did that … no boom.
If I am working of windows. Which software should i grab. It a fairy new window laptop.
Thanks again for the reply.
Sorry for the rookie questions. I literally know nothing about lasers. But looks like a hoot once the curve is achieved.
I’ve also got the Anycubic Mega Pro. It is using Marlin according to Cura. As mentioned earlier, the Mega Pro is a 3D Printer. The Extruder / Hot end cable are disconnected and replaced with the 1500mW Laser module’s cable. This leads me to think that the gcode start commands are most likely the same as the 3D printer. This might explain why you can control the X/Y with the gcode from LightBurn. Unlike other laser engravers, the Mega Pro (being a 3D printer) also needs the Z-axis set to 50mm.
Anyways, I think the gcode start command should be M117?! @LightBurn
Hope to play with this later this week. Just no time to try my theory.
It seems very strange that you would need to send it a command to start processing gcode when the command being sent is gcode. What is M117 supposed to do?
My bad about M117. Was trying to gather information. Making progress. I’ve got the source code for the 1.2.9 firmware on the Mega Pro. My issue is that I’m not sure what the gcode should look like. But I’ll add some snippets that I think are associated.
#define MAX_X_SIZE 220 #define MAX_Y_SIZE 150 #define LASER_X_OFFSET 0 //The distance in the X direction between the laser and the extruder #define LASER_Y_OFFSET 65 //The distance in the Y direction between the laser and the extruder
#endif // CONFIGURATION_H
and then…
“G” Codes
*
G0 → G1
G1 - Coordinated Movement X Y Z E
G2 - CW ARC
G3 - CCW ARC
G4 - Dwell S or P
G5 - Cubic B-spline with XYZE destination and IJPQ offsets
G10 - Retract filament according to settings of M207
G11 - Retract recover filament according to settings of M208
G12 - Clean tool
G20 - Set input units to inches
G21 - Set input units to millimeters
G28 - Home one or more axes
G29 - Detailed Z probe, probes the bed at 3 or more points. Will fail if you haven’t homed yet.
G30 - Single Z probe, probes bed at X Y location (defaults to current XY location)
G31 - Dock sled (Z_PROBE_SLED only)
G32 - Undock sled (Z_PROBE_SLED only)
G38 - Probe target - similar to G28 except it uses the Z_MIN endstop for all three axes
G90 - Use Absolute Coordinates
G91 - Use Relative Coordinates
G92 - Set current position to coordinates given
“M” Codes
M0 - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled)
M117 - Display a message on the controller screen. (Requires an LCD)
M119 - Report endstops status.
M120 - Enable endstops detection.
M121 - Disable endstops detection.
M126 - Solenoid Air Valve Open. (Requires BARICUDA)
M127 - Solenoid Air Valve Closed. (Requires BARICUDA)
M128 - EtoP Open. (Requires BARICUDA)
M129 - EtoP Closed. (Requires BARICUDA)
M140 - Set bed target temp. S
M145 - Set heatup values for materials on the LCD. H B F for S (0=PLA, 1=ABS)
M149 - Set temperature units. (Requires TEMPERATURE_UNITS_SUPPORT)
M150 - Set Status LED Color as R U B. Values 0-255. (Requires BLINKM or RGB_LED)
M155 - Auto-report temperatures with interval of S. (Requires AUTO_REPORT_TEMPERATURES)
M163 - Set a single proportion for a mixing extruder. (Requires MIXING_EXTRUDER)
M164 - Save the mix as a virtual extruder. (Requires MIXING_EXTRUDER and MIXING_VIRTUAL_TOOLS)
M165 - Set the proportions for a mixing extruder. Use parameters ABCDHI to set the mixing factors. (Requires MIXING_EXTRUDER)
M190 - Sxxx Wait for bed current temp to reach target temp. ** Waits only when heating! **
Rxxx Wait for bed current temp to reach target temp. ** Waits for heating or cooling. **
M200 - Set filament diameter, D, setting E axis units to cubic. (Use S0 to revert to linear units.)
M201 - Set max acceleration in units/s^2 for print moves: “M201 X Y Z E”
M202 - Set max acceleration in units/s^2 for travel moves: “M202 X Y Z E” ** UNUSED IN MARLIN! **
M203 - Set maximum feedrate: “M203 X Y Z E” in units/sec.
M204 - Set default acceleration in units/sec^2: P R<extruder_only> T
M205 - Set advanced settings. Current units apply:
S T minimum speeds
B
X, Y, Z, E
M206 - Set additional homing offset.
M207 - Set Retract Length: S, Feedrate: F<units/min>, and Z lift: Z. (Requires FWRETRACT)
M208 - Set Recover (unretract) Additional (!) Length: S and Feedrate: F<units/min>. (Requires FWRETRACT)
M209 - Turn Automatic Retract Detection on/off: S<0|1> (For slicers that don’t support G10/11). (Requires FWRETRACT)
Every normal extrude-only move will be classified as retract depending on the direction.
Lastly, I followed the two wires from the connector to the Laser and cross referenced them to the 3D print head wiring. The two wires go to a circuit board which has 6 wires on the 3D print head. Two Fans (4 wires) and the Extruder (2 wires). It looks like the wires for the Extruder are the same wires for the Laser. Which now gets me thinking that the S value for the extruder is probably the Laser action.
The best help would be if you can figure out which commands fire the laser, set the power, and turn it off again. I don’t have your hardware here so I have no means of testing any of this. Given that the extruder is just an axis (usually E) it seems strange that the laser would use that. Extruders are usually driven by a stepper, which would require more than 2 wires - it could be step and direction signals if the extruder has its own power and motor driver, which could mean the 6 wires are:
and S values higher than 0 are on. Looks like PWM. However, I’m not sure how I can test my theory? Can I generate Gcode with LightBurn, and modify the Gcode and replace the M106 with G6?
Also the wires I spoke of earlier (the plug we have to unplug in order to plugin the laser) looks like the pinout when matched, are also the same ones for the Heater.
I just played with this and it works. G6 Sxx fires the laser, so G6 S25 is 25% power I guess. G6 S0 turns it off. But where do I put these values into Lightburn?
You don’t, as these aren’t exposed anywhere - we’ll have to create this as an option for the Marlin profile, or just make an AnyCubic Mega profile for it.
I still haven’t had much time to further go thru the Firmware. I also think there might be a sighting laser code, but I’ll need more time to go thru the code (~588 files!)
@wildfang You could try SAVE GCODE in LightBurn, open with a Text Editor, Find and Replace M106 / M107 with G6, Save, Re-open LightBurn, and click Run Gcode and open the file you saved.
Yes, find and replace works, but I messed up some test wood because the laser indication doesn’t work with this method. Need some more time fiddling with this, but I just bought a cnc at it’s eating my time