Making A Portable 3D Printer - Part 1

Monoprice Mini Delta

Freshly unboxed Monoprice Mini Delta

The Monoprice Mini Delta is a neat little delta printer that can be had for about $160 USD. On paper, it is the perfect small printer: compact, heated bed, auto-leveling, color LCD. I was an early backer of the printer, and received one of the earlier printers. After using the printer for a few weeks, the flaws were quite evident. The biggest issue I had with the printer was the bed material and the auto-leveling. Parts of the print would have trouble sticking to the bed and print quality suffered as a result.  I shelved the printed for nearly a year before taking another look at it.


The Idea and the Problems

The idea of a portable 3D printer was an concept that has been bouncing around my head for a while, but never really explored. After staring at the Mini Delta for the better part of a year, I finally decided to see if it was viable. The first issue was to attempt to level the build correctly. After following the instructions found on various forums and wiki, the printer still wasn't quite right.

Overall quality wasn't spectacular, but was serviceable. Some tuning on the slicer side improved the print quality, but issues with the first few layers persisted.

The quality and reliability wasn't good enough for my needs. I started looking at replacement firmware options.  The board is actually pretty good for being in a budget printer. The microcontroller being a STM32F070CB, removed mainline Marlin as an option.

Solution

Then I found Marlin4MPMD on Github. After some investigation I discovered that my particular printer didn't ship with a UART bootloader. In order to load a fresh image on to the microcontroller, I had to breakout my Segger J-Link, but any Serial Wire Debug programmer would work.

The pinouts for the STM32F070CB yielded the appropriate pins for SWCLK (PA14) and SWDIO (PA13). The pins should be 5V tolerant according to the documentation, but without having the schematics for the board, 3.3V is a safer move.

Jumper wires were soldered to the through holes to make future use easier.  

Following the instructions on the Github wiki, the chip was reflashed with a prebuilt image using Seggar's J-Flash Lite. Since I have an pre v43 version of the Mini Delta and the provided power brick, I went with the standard image with a 5A limit.  

Before going into the calibration phase, I felt that replacing the bed material would be a good idea. I wasn't able to find a 120mm circular magnetic build plate, so I went with borosilicate glass.

The original bed material was pulled off with the help of a putty knife. The new glass bed was attached using thermally conductive double side tape. It's not the best way to do the job, but it will work for now.

Results

Stock Left, First Pass Center, Calibrated Right
Stock Left, First Pass Center, Calibrated Right

After going through the calibration steps, the printer was again ready to print. Mesh auto-leveling was used to probe the bed and results saved to the SD card. The baseline before the firmware update is on the left, first pass calibration in the center, and completed calibration on the right. The cat on the right had accurate dimensions within 0.08mm, so it's doing quite well. There were no adhesion problems when using some glue stick on the bed. The hotend on the Mini Delta uses a single 30mm fan for both heat sink and part cooling. From the print quality it's obvious that the part cooling airflow is insufficient to cool the PLA.

Next Steps

It seems that the mechanics of the printer are solid and are more than capable of delivering the accuracy I'm interesting in. However, the hotend falls far short. I wasn't impressed by the existing designs people have come up with for replacing the hotend on the Mini Delta, so I set out to design my own. More to follow in Part 2 of this series.