PrintrBot Simple Metal with Panelolu2

posted 5 Oct 2014, 11:31 by Colin Bell   [ updated 5 Oct 2014, 11:31 ]

After playing with the Huxley for quite a while, I decided it was high time to look for a 3D printer which was more wife friendly in the looks department so I didn't have to dismantle and put it in the cupboard after use, and also be (slightly) less high maintenance for day to day use. I still have a 3 head Mendel in the works, but I needed something that was a bit more plug & play than the venerable Huxley.

After watching a video on Tested regarding the PrintrBot Simple Metal (model 1403), I decided to give that a bash, in the kit form.

The build itself was very straightforward, taking about 4 hours from tipping the box of bits out to first print stage. Being an all metal construction using very rigid parts, and high quality bearings, the print tolerances are immediately far superior to my previous Huxley which makes dialling in the settings for a half decent print very straightforward. The inclusion of (pseudo) auto-bed-levelling also removes a major headache I'd previously had with the Huxley, as every time I moved the thing, I would need to level the bed again. With the Simple Metal this is a thing of the past, although I have a few comments on PrintrBot's choice of components...(more on this later). There's a million reviews on the Simple Metal already out there, so I won't bother doing another here - suffice to say I'm pretty pleased with the printer at this price point, and would recommend it to others.

The Simple Metal comes with a PrintrBoard as it's brain, which as far as I can tell is a derivative of the Sanguinololu boards I'm already familiar with. The brain on the board is an Amtel AT90USB128 which boasts 128k of writable memory, built in USB 2.0 and OTG support. The board itself boasts all the usual motor drivers, end-stops, expansion ports, JTAG and of course ICP and I2C support.

The one thing this printer doesn't come with is an LCD Panel - totally unacceptable of course in this day and age...

Previously, I had used a kit called the Panelolu with other printers, designed and supplied by Think3DPrint3D, and when I checked in with them, I found the updated version which already had PrintrBoard support - Bonus! 

As always, Roland was extremely helpful in answering my questions, and even sent me two different types of adaptor boards to try as although they had the board, the hadn't tried it with a Simple Metal before and the chassis dimensions weren't available at the time of ordering. As it happened, I did modify one of the boards to make it work, more on that later in this post.

The hardware itself is great - good build quality and seems to work fine! The only design issue I had is with the adapter and the dimensions of the Simple Metal - don't misunderstand, the adapter works great, but the design of the Simple Metal's chassis, and placement of the PrintrBoard to allow access to USB/SD ports from the side of the chassis under the bed, mean that with the Panelolu2 adapter in place, the ribbon header protrudes around 2mm from the bottom of the chassis (see pictures below). This results in the printer not sitting flat with it installed. This won't be an issue if you've already got some feet printed for your Simple Metal, but at this stage I hadn't.

In order to resolve this, I did a simple modification on the adapter but shortening the header pins by half,
and then by making up a patch cable which was soldered directly onto the shorter header pins, and plugged into the original female header cable. The advantage of all of this was that I could use the printer now without feet (and still be level!), and also manage the cables so that the Panelolu2 ribbon exits the rear of the printer and is about 15cm longer, which is what I required.

That was pretty much it from the hardware perspective - the challenging part came from the firmware updates to Marlin which are required to get LCD support up and running.

I had some trouble getting Marlin to compile - I used the latest version from the PrintrBot GitHub (here) which is pretty much up to date with the latest Marlin including the Panelolu2 code.

It wouldn't compile in Auduino 023, despite me adding the required LiquidTWI2 and AT90USB1286 libraries and drivers. After fiddling for a while I saw that Lincomatic has uploaded a pre-configured version of Arduino 1.0.5 (thanks Lincomatic!) for use with the Teensy1286, so I downloaded that, installed the LiquidTWI2 library and the Marlin code compiled fine using the BootloaderCDC: Printrboard as it's board profile.

I strongly recommend that if you need to customise your Marlin firmware in anyway for a PrintrBoard, that you use the pre-configured Arduino 1.05 version - it will save you a few frustrating hours of trying to get it to compile!

This version of Marlin doesn't require the  #define EEPROM_SETTINGS and #define EEPROM_CHITCHAT to be enabled as they are already done - I simply uncommented the Panelolu2's define statement and compiled from there.

The 'official' way of reflashing is here. The only deviation for me was to copy the newly compiled firmware HEX from "\\C:\Users\<user>\AppData\Local\Temp\build9099755623119380086.tmp" (just sort the folder by date and pick the newest entry to identify the correct file set) to a folder, and then flashed that to the board instead of the recommended one.

So, why not use the recommended one? Well, in their wisdom, PrintrBot only show the compiled HEX file on the site, meaning you can't actually make any changes to the firmware - I had to do quite a bit of research on forums and sites to even figure out which version would work with my revision D PrintrBoard, and then manually search GitHub to find the least it was there though! 

Once re-flashed, the PrintrBoard booted up into Marlin, and the display happily lit up and did it's thing showing the usual expected info. Success!

Here's the PBSM1403 making itself a set of feet, and in the next picture, printing the back of the case for the Panelolu2.