Converting a Chinese laser cutter to work with Mach3


Like most of us, [Chris] has pined over the very, very inexpensive Chinese laser cutters available on eBay for a while now. When most of us disregarded these machines due to their inability to work with the file formats commonly used with laser cutters, [Chris] took the plunge. He was a might disappointed the included software didn’t allow him to use his machine with Mach3 CNC software, so he replaced the included electronics board with one of his own design, giving him all the features of a more expensive laser cutter at a low, low Chinese eBay auction price.

The laser cutter [Chris] bought came with the moshidraw software and controller board that according to one auction can only use BMP, JPEG, WMF, EMF, and PLT files.Wanting a board that can use more common file formats such as PDF and DWG, [Chris] built his own board to communicate with his Mach3 software.

From what we can tell, the new board works with off-the-shelf Pololu stepper drivers and is a complete drop in replacement for the moshidraw board. He’s still finalizing the design, but when the layout, BOM, and schematic are finalized, [Chris] will be putting the files up for everyone to copy. Wonderful piece of work, [Chris].

38 thoughts on “Converting a Chinese laser cutter to work with Mach3

    1. Reprap Hardware and Firmware (basically any Arduino with Marlin/Sprinter firmware) reads gcode over USB, handles acceleration and much more. As an Arduino Nano afiak is cheaper than a parallel port card (and works with any Win/Linux PC or Mac), this would be the way to do it.

      1. Reprap related firmware lacks of several features and it only supports
        linear and circular interpolation.The parallel port is old indeed but it’s still widely used in homemade cnc cause it need no dedicated controller, however it needs a realtime O/S and a low jitter hardware (newer mobo seems not to be the perfect match) for better result. I agree an external microcontroller should be the way to follow but imho actually there are no open projects wich can fully replace a Mach3/Linuxcnc system

    2. Use of the parallel port is really a non-issue. Cards are commonly available for desktop PCs. If you don’t want to use the parallel port, it can easily be replaced by a variety of motor control cards or an AVR running GRBL, without changing the design of the laser cutter.
      Lack of a parallel port on notebooks isn’t an issue either, since very few notebooks have the realtime performance needed to run LinuxCNC (and most likely MACH).

    3. Search for mini-itx and parallel port. There are still many motherboards in production and I suspect there will be for years to come. Less than £50 for an all in one PC AND parallel port on a 15x15cm board that runs Linux or XP.
      Cheap, simple and work great with my machines.

    4. Parallel ports aren’t so bad! USB is a pain because it might not be assigned the same device name any two times it is plugged in, at least not unless you feel like mucking around in udev scripts. What a pain! Is it ttyUSB0, ttyUSB1 or mayby ttyACM0 doday? Blah!!!

      Any old motherboard I am likely to stick in a box dedicated to a purpose such as controlling a laser cutter, CNC or RepRap is probably still going to have a parallel port. Actually, my desktop which does none of those things has one built into the motherboard.

      Now, about the RTOS argument, yes, if you are controlling the motors directly with the parallel port you will need an RTOS. I’d still put a microcontroller between the computer and the motors for that reason. So.. might as well save some pins and use RS232. But USB? No thanks!

      Ultimately what killed parallel ports for me when it comes to regular, 2D paper printing was ethernet. Maybe that would be a great way to control these things too! I like it!

    5. Stop humiliating yourself… Obviously, you have no idea what Mach3/LinuxCNC can do. Yes, parallel port is Jurassic, but what Mach3 and LinuxCNC can do is nowhere near what these arduino based 3d printer controller can do… LinuxCNC/Mach3 can do complicated stuff, like real time scripting, real time movements, pin reassignments, HAL, can control multiple and different type boards, PLC, DSP, highly customizable, very rich gcode instruction set, and a lot more… it already has built in support for most of the hobby and industiral CNC machines out there, from lathe, milling, lasers, even 3d printer, from 3 axis, 4 axis, 5 axis, 6 axis, cartesian, parallel, scara robots, you name it….

      Are there any any Arduino based 3d printer controller out there that can do this in a single package? No. And would I trade these features with USB? No way!… Now you know what you don’t know. :)

  1. DWG PDF not a problem i use corel draw to import, then moshi plugin to export to plt, it automatically launches moshi draw. Drawback of moshi draw that it can only cut (outline) or engrave so if you need combine cutting and engraving i usually do this. First i import in to corel draw file, then i copy things that i need to engrave to one page ant things that need to be cut to second page. Then i export first page to moshi draw with engravings after it finished i export things that need to be cut.

    This board look good but its parallel port .. come on ! It is dinosaur… Hardly you wild find notebook with parallel port. PC? who is still using that furniture/heater?:D And what about mach3 engraving possibilities? I doubt that it is capable without some-kind plugin.

    1. Yeah I was kind of wondering why folks weren’t just converting the file format to something they could read. Nice tip :)
      I love this! I think Chris has done some good work here. A direct drop-in replacement is sweet and could finally land me a home laser cutter next year :) The parallel port is a non-issue for me as all of my gear is older and apparently (embarrassingly) still has parallel ports. I have a few cards if anyone needs one for their old desktop, but it probably has a parallel anyway. I remember there being usb to parallel adapters (dongles) but I’m not sure of the specs as far as data thruput and sitch. Might be something for the small form factor crowd to check out and report back on. Thanks again Chris for diving in :)

  2. My old hand-me-down Compaq laptop, on which I was running Mach3 to drive a HobbyCNC driver through the parallel port, died, found another just like it on eBay for $28, plugged in my hard drive and back up and running fine. Cheap and functional, works great for this task in the shop.

  3. Anyone who used Mach3 for CNC work knows that this particular bit of software needs a parallel port. There are still Dell PCs that include one. Otherwise a cheap old machine will do the job – especially if it’s just going to be used in the workshop.

    I’m toying with getting a laser myself at the moment. Torn between buying (and then converting) a Chinese one or going for a 2.x build.

  4. This is great! If I’m adding things up correctly, you could have a 40 watt laser cutter that uses Mach3 or Linux CNC for under $1000 with shipping.

    Since Mach3 and Linux CNC are *Designed* to work with a parallel port I see that as a non issue. If this was to work over USB the cost would go up substantially, without any functional benefit to the user… Buying a $15 parallel port card is no big deal to me.

    The really neat thing about this board is you don’t have to hack off the built in connectors that come with that laser, which would be especially annoying with the ribbon cable. Just plug in, configure your ports and pins in Mach or Linux CNC and start cutting.

  5. hmm… the original reason for the conversion seems to have gone missing. While I’m sure it’s nice to work with the extra file formats, the conversion became necesary because the original board shorted when a wire came loose moving house.
    Chris just needed to get it working fast and cheap as he makes his living from it.
    Maybe if that had been mentioned it would have avoided the debate about parallel ports
    but then again probably not.

    1. oops wrong Chris how would you be two guys with the same name doing the same project at the same time but for different reasons.
      A series on what happened and how he fixed it starting with this video here

  6. I think some people are missing the point of this particular conversion. The great thing is that it is a single board drop in replacement for the cheap chinese laser cutters, that has the isolators, the stepper drivers, and the right connectors so you don’t need to mess with custom wiring. And if you ever want to go back to the original board, it is only a couple of minutes to swap the cables.

    Anyone who knows anything about CNC machines will also know that the parallel port is still widely used, and very reliable, and there are still plenty of options out there for computers with them.

    I have a CNC router with a computer running dual-boot LinuxCNC and Mach3, with a parallel port, and I plan on getting one of these laser cutters, and Chris’ board so I can hook both machines up to the same computer using just a parallel port switch.

    Nice job Chris, I love it!

  7. In the same kind, but a bit more complex and autonomous, the SmoothieBoard ( project is a card for driving small CNC machines.
    I have see this kind of laser cutter working with a prototype board. The card take some G-code file from SD Card or through Network or USB.
    The board can be used for 3D printer too (driving up to 4 stepper motor in microstep and thermal control..)
    I think a first batch is on the way.

  8. I ordered Chris’s board and plugged it into my chinese 40W laser and it is freaking awesome. If you hear someone talk about not using a parallel port – thanks because they don’t understand how incredibly reliable (rock solid) the parallel port is, and how finicky USB ports are. I’m cutting my own SMD stencils now and it now the machine will have paid for itself inside of the week. Awesome and thanks!

  9. Hi Guys
    I am new to laser cutters and CNC but want to start up a hobby/business with one of this Chinese cutters. I will use DXF files so I understand that the moshidraw software will not work well for it. Now, if I order a USB machine, will I be able to convert it afterwards to use Chris’s board (obviously will need pc with parallel port) and Mach3? or does the USB machine have completely different wring that makes it not compatible with the card (I suspect it should work, but just double checking). Finally, the Mach3 software, is it freely available or does it have to be purchased? Any help will be highly appreciated. Thanks!

  10. Hi can you pls help me .i buy a cnc machine named 2417 ..but i lost it firmware .where i get thath firmwere and how to install it .this machine is a cnc laser engraver.and it controlled with arduno nano and a4988 drivers.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.