Using the M3D Micro in 2020

4 minute read 14 October 2020

Nearly 6 years ago, a 3D printing startup called M3D successfully kickstarted the Micro. At the time, this was marketed as one of the "first" small consumer-grade 3D printers.

Time has passed, and the original ~300 USD price tag of the Micro seems absurd given the varied selection of cheap consumer printers currently for sale. It's painfully slow, prone to jams, has an extremely small print volume, and awful outdated proprietary software. Even so... I paid for it, and I'm going to get my money's worth.

Making the Micro Better

Thankfully, a handful of open-source firmware updates and applications make the printing experience tolerable.

The first step is to download M33 Manager. M33 Manager will allow you to install iMe, an open-source firmware for the M3D Micro that allows for greater print speed and control via RepRap G-Code.

iMe Installation links

After installation, ensure the printer driver is installed. If it isn't, there is a handy button within M33 Manager to do that for you. Hit the "Connect" button and wait for your printer to connect. If you have issues connecting, try power-cycling your Micro and trying again, and ensure no other application is taking over the device.

Once connected, you can begin the firmware update. Click the "Install iMe Firmware" button, and wait for completion. That's it! Easy.

Some caveats

iMe will put your printer in bootloader mode whenever it is powered on. To begin printing, you will need to open M33 manager every time the printer is powered on, connect, and click the "Switch to firmware mode" button. Then, disconnect.

Ditching the M3D Beta

Slicing

If you're still using the M3D Micro in 2020, you'll know the last update the print software got was a beta 2016. What a great gift for us early backers! Well, we can finally junk that pile of trash software and install Cura. (Interestingly enough, I believe the original M3D software uses the Cura slicer anyways.) We will be using Cura to slice our STL models into usable G-Code.

After installing Cura, we'll need to adjust a few settings.

Go to Settings > Machines > Manage Machines and then click on "Add Machine". Select the "Custom FFF printer" option in "Add a non-networked printer" and press "Next". On the machine settings page, enter the following values for the print size:

  • X: 109
  • Y: 113
  • Z: 116

WARNING: keep in mind that the printhead limits the XY space on very tall prints. This is not considered in Cura.

On the same tab, set the G-Code flavor to "RepRap". Now, move on to the Extruder tab and enter these settings:

  • Nozzle size: 0.35
  • Compatible material diameter: 1.75

All other settings can be left as-is. Press next to complete printer setup.

Setting up profiles

We'll also need printer profiles for our Micro. Adafruit provides a couple just for this application. Check out their repository here. We want to download "M3D 2mm PLA.ini" and "M3D 3mm PLA.ini". Import both these profiles into Cura. We will be using either whenever slicing with the Micro.

Sending G-Code

Now, if you happened to read the M33/iMe documentation, you'll know it says Cura should support our new firmware out of the box. However, the last version of iMe was released quite some time ago, and 3D printing has largely moved away from USB printers. I haven't had success connecting via Cura in version 4.7, even after hours of messing about with settings. So, we'll need a separate application for sending G-Code.

After testing a few solutions, I found PrintRun. It's not a pretty application, and was last updated in 2017, but it connects! I'm on a Windows PC, so I installed their binary and it just works(tm).

So why the combo of Cura and PrintRun? Why not just install an old version of Cura? Well, I'd much rather the slicer is up to date. It's alright if PrintRun is old, because we're just using it to send over our G-Code that was generated by a modern application.

Hooking it up

The process looks like this:

  1. Set the printer into firmware mode on initial power on using M33 Manager
  2. Import model into Cura
  3. Slice model in Cura using the 2mm or 3mm profile provided by Adafruit
  4. Save slice to G-Code
  5. Open G-Code in PrintRun
  6. Print using PrintRun

Hope this is helpful for the 3 people out there still using a Micro!