Hi guys. USS Enterprise finished. A hard work to make with a laser diode.

Hi guys.
USS Enterprise finished.
A hard work to make with a laser diode.
Gcode created with LW4, with some issues in the gcode file created.
Send to ramps 1.4 with LW3.

very good man, specially on a diode. Lots of patience :slight_smile:

@Ariel_Yahni_UniKpty more than 5 hours to cut all the parts.
Files from here: http://www.thingiverse.com/thing:1902315
if some one are interested.

what wattage is the diode you used and what type of wood?

@Scott_Lewis 3mm plywood and the láser is 3w

Nice work. Is your RAMPS board attached to a MEGA2560 or to something else, and what firmware does it run?

@Jason_Frazier firmware here:

The endstops don’t work for me. Be carefull

Thanks for the link. Is this improved over the other one I found? It’s now updated to to GRBL 1.1e. https://github.com/gnea/grbl-Mega

I tried your link, the oficial versión grbl-mega 1.1 but did not work with my ramps. The lino from minks is 1.1 also.

Got it. Can you elaborate on the non-working part from grbl-mega? I’m not a big fan of broken endstops )-: I have a knockoff Mega2560 1.1 board with RAMPS 1.4.

Nice job.

Follow-up: I used the same branch as Roberto, and with some minor reconfiguration, I did get homing to work on my mega+ramps.

What lines did you change?

@Roberbike I changed several things.
In config.h I modified the section for #define HOMING_CYCLE_0 to first home only X, then separately home Y in cycle 1, and remove Z from being homed at all. I also needed to modify #define INVERT_MAX_LIMIT_PIN_MASK and also its MIN complement, to configure grbl correctly for my mechanical normally-closed endstop configuration (using max switches, no min switches connected). You have to configure all of them – grbl logically combines min+max for each axis even if you use only one endstop. You have to get your endstops working correctly such that the XYZ values are shown on the grbl positioning output that streams in the node.js terminal, only when you trigger the corresponding homing switch.

In defaults.h I needed to adjust #define DEFAULT_HOMING_DIR_MASK, which is a bitmask. It was set to 0x1 (x homes toward 0, y toward MAX), and I changed to 0x3 (both home toward MAX).

Finally I had to change the homing command in Laserweb to $H (I think?).

I also changed the port/pin assignments to swap my X and Z axes and endstops in cpu_map.h but this was purely for personal wiring tastes and not likely related to my homing success.

@Jason_Frazier thanks, the homing is working now.