Glass bed upgrade for Monoprice Select Mini

I recently picked up a Monoprice Select Mini and have been extremely impressed. After a number of stuck prints and an inherent desire to mess with things I decided to upgrade to a glass bed.

I didn’t have any exposure to 3D printing before going with the mini and can say that it’s a great starter printer. I’ve been able to learn a lot with only experiencing a few mild fails in the months since I got it. One of my annoyances was that my prints would get extremely stuck to the bed after printing and I got tired of replacing the tape every 4 or 5 prints. It sounded like glass was the way to go so I ventured a trip to Lowes and grabbed some.

Note, I did not get borosilicate glass. I know it has better thermal properties and is a superior product.

I read a few opinions on various forums where folks have said that it’s only really needed if you’re printing 80C and higher. I plan to go no higher than 60C for PLA and decided a $2.50 experiment with regular glass be worth the risk. If this turns out to be a bad idea I’ll make another post and/or become vocal in ‘borosilicate’ vs ‘regular’ threads. I’m also not printing non-stop or doing extremely long prints so take that into consideration.

Step 1: Print the Glass Bed Spacer

The Monoprice Select Mini Glass Bed Spacer by Sumpy (Thingiverse) printed perfectly for me with supports. It clips on easily and activates the endstop switch on the Z axis sooner to compensate for the glass. It printed out at a 3/32” thickness practically identical to the glass I purchased.

Glass Bed Spacer. Once printed set aside.

Step 2: Disassemble the printer

We need to access the back side of the printer so we can attach the spacer. Unplug the printer and lay it on flat on a solid surface. Unscrew the six screws on the bottom and set aside. Be careful as the main board is mounted to this plate. It can be rotated and moved out of the way without unplugging anything for this procedure.

Unscrew the three screws that hold the back plate on. Be extra careful to not lose the washers!

Reattach the bottom plate (I cheated and only used two screws) and set the printer back upright. Remove the three screws holding the back plate on. Again, don’t lose the washers!

Pull the back plate directly back towards you to remove it. You can see the Z endstop switch near the mounting hole for the filament holder.

Z endstop switch

Step 3: Attach the Glass Bed Spacer

Attaching the glass bed spacer is fairly simple. I started at the bottom, hooked it on the front, and then pushed in on until it clipped in to place. See below:

Glass Bed Spacer in place

After the bed spacer is in place reassemble everything and you’ll be ready to attach your glass.


I removed the existing tape and cleaned off the remaing residue with Goo Gone. Then I went to my local Lowes and had them cut some glass for me. I had them cut it roughly 130mm by 140mm. I also stopped by my local MicroCenter and picked up a couple packs of Heatsink Thermal Pads. I have to be honest in that I’m not 100% thrilled by the pads, but they seem to have done the trick. Check the reviews on Amazon; a few of the pads didn’t stick well and go along with what folks have complained about.

I placed the glass onto the bed and placed binder clips all around to squeeze it onto the pads (not pictured). After ensuring everything was level and the distance from the extruder was good I removed the clamps and set out to reprint another bed spacer in case the current one cracks (backup parts are the best parts!).

Glass Bed Spacer

So far, so good– though it has only been one print so far. Time will tell if this was a good idea or not.

I have a virtual instance of pfSense running on my ESXi box that serves as a firewall/gateway for my VMs. One of these VMs happens to be running Splunk. I’m going to fumble my way through getting some of the great logs out of pfSense and into Splunk to see just what is actually going on within my network.

Please note I’m not an expert in either pfSense or Splunk and would gladly welcome any feedback! Following this guide is no guarantee of setting things up correctly. Please reach out if you find errors or know of better ways of accomplishing things.

System Info

I’m currently running the following sytems. If there is interest I can do a quick write-up on deploying them.

  • pfSense - 2.3.2-RELEASE-p1
  • Splunk 6.5.1, installed on Ubuntu 16.04.1 LTS


Add Data

Fresh off of a new Splunk install, log into Splunk http://[Splunk]:8000 and navigate to Settings and click the big Add Data button.

Splunk Add Data

We’re going to set ultimately set up a UDP Forwarded input. Start by clicking the big eye icon titled monitor and then select TCP / UDP as your source. I want to set this listener up as a generic syslog listener for my whole network so I’m going to configure the following settings:

Select Source

  • TCP / UDP - Select UDP
  • Port - Enter 514
  • Source name override - blank
  • Only accept connection from - blank so all of my hosts can forward their logs

Click the Next > button at the top of the screen.

Input Settings

  • Source type - Select Select and then find syslog in the drop down
  • APp context - Keep the default Search & Reporting
  • Host - I’m using DNS as my home network has decent dynamic records setup for each hostname
  • Index - Leaving this as Default

Click the Review > button at the top of the screen.


Splunk will show you all the settings you just set. Here’s a redundant list of my settings:

  • Input Type - UDP Port
  • Port Number - 514
  • Source name override - N/A
  • Restrict to Host - N/A
  • Source Type - syslog
  • App Context - search
  • Host - (DNS entry of the remote server)
  • Index - default

Click the Submit > button at the top of the screen. Splunk is now listening on that port for logs. You can verify this by SSH’ing to your Splunk host running netstat. The output below is truncated to only show port 514 that I opened just now.

$ sudo netstat -lnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
udp        0      0   *                           15629/splunkd

Note: sudo allows you to see the PID name, running without would just show the port

pfSense Settings

I’m a fan of logging everything so we start this adventure by logging into pfSense and going to Status / System Logs / Settings.

General Logging Options

My recommendation is to check all of the Log firewall default blocks options, but you may want to consider impacts to performance and disk space (more checks = more logs).

pfSense Logs

Remote Logging Options

This is where we tell pfSense to remotely log to our Splunk instance. Checking Enable Remote Logging will expand the options screen to show all of the fun settings. My recommendations/interpretations:

  • Source Address - I prefer to not select Default (any) and instead select the interface that is either directly connected to the Splunk VM’s network OR select an internal/LAN interface. In my case I’m selecting the SERVERS interface becuase that’s where Splunk lives. Assuming you don’t go moving your Splunk server around all that often this won’t make a difference, but I’d rather be specific for this types of settings.
  • IP Protocol - Select IPv4 unless you’re specifically doing IPv6
  • Remote log servers - This is the IP and port for your Splunk server.
  • Remote Syslog Contents - Did I mention that I like logging everything?

pfSense Remote Logging Options

Click Save to enabling logging!

Verify Logging

Go back to your Splunk instance and select the Search & Reporting app on the left sidebar. Under What to Search you should see events being indexed. Clicking Data Summary and going through the three tabs will also show you a, drumroll please, summary of the data. I just enabled logging a few minutes ago:

splunk What to Search

Splunk Data Summary, click to englarge

Viola, we have logs. Next up, parsing!