marlin, slic3r, pronterface and me

Ok. A recent move has kept me away from my prusa for a few months now. In that time all of the “cool kid” software has changed. Naturally I want to be running a similar setup with all of the new bells and whistles, so off I go.

I am going to go about uploading marlin onto my gen6 mendel-parts.com board. Installing pronterface on my Macbook running lion, and eventually get to using slicer to generate the stl files.

Step 1: Get marlin on my gen6 main board

I downloaded the most recent version of marlin from github.
https://github.com/ErikZalm/Marlin/tree/Marlin_v1/Marlin
I got the newest version of arduino (23) from here
http://arduino.cc/en/Main/Software
I got the sanguino arduino add-ons from here (Updated to arduino core 0023)
http://code.google.com/p/sanguino/downloads/list

Ok, enough downloading for now. Install the arduino first. There is a driver included with the download called the ftdi driver. Install that as well. That enables usb connectivity for some boards.
Now go here and follow the directions for installing the sanguino add-on. What you are doing is adding support for the specific chipset included in many main boards.
http://sanguino.cc/softwareformac

Now your mac side should be set for marlin. Go into the marlin folder you downloaded and open marlin.pde with arduino. It should open up a sketch with a bunch of other tabs behind it. The main one you will need to play around with is configuration.h. In there you should comment out or in the specific hardware and features you have/want.

Here is an example:

This is from the top of configuration.h

#define BAUDRATE 250000
//#define BAUDRATE 115200
//#define BAUDRATE 230400

The // that starts most lines tells the arduino to ignore it. These three lines represent a multiple choice for you. In the above example the first line is the one that is currently setting the baud rate. This is an important change. The default marlin firmware has the baud rate set to 250000 for some reason. I don’t think that will work out very well. Change it to 115200 and you ought to see better results.

Some other lines that I changed are:
#define MOTHERBOARD 5
#define THERMISTORHEATER_0 3
#define HEATER_0_USES_THERMISTOR
//#define ULTIPANEL

Feel free to look around and get a grip of all of the options available. There are a lot. Don’t play with the pid settings unless you really know what you are doing, though.

Now you should be ready to upload the firmware to your board. Before you connect your board to your computer, select the board from the pulldown menu in the arduino app. Mine was “Sanguino with atmega 644p” Hit the verify button and wait for it to verify. If it fails, then you need to determine if it is a software issue, or a config issue. Look at the error message and do what it tells you to do. The firmware will check to see if your board in arduino matches the board that you defined. If it doesn’t then it will throw an error.

With a valid verification under your belt, plug your reprap in to the wall, connect it to your computer and turn it on. In the arduino app go to tools / serial port and select your machine. It should begin with /dev/tty.usbserial and not have anything to do with bluetooth in the middle. Once that is successfully uploaded you are done flashing marlin!

Step 2: installing Pronterface on osx Lion

I basically followed the directions here https://github.com/kliment/Printrun and I only had one hiccup. I will paste them below.

Download and install [wxPython2.8-osx-unicode] matching to your python version (most likely 2.7 on Lion, check with: python –version) from: http://wxpython.org/download.php#stable

Download and unpack pyserial from http://pypi.python.org/packages/source/p/pyserial/pyserial-2.5.tar.gz
In a terminal, change to the folder you unzipped to, then type in: sudo python setup.py install

I then tried to run it by typing “python ” (including the space) and then dragging in the pronterface.py file. It gave me an error about not finding any 64 bit resources, so I scrolled down a bit on the github page and found the answer. I typed “export VERSIONER_PYTHON_PREFER_32_BIT=yes” into terminal.

That’s it! Pronterface is installed. Select your port and your speed and hit connect. Now you have the firmware and the front end gui set up. I did a bunch of little tweaks to the firmware because my board was reporting really high temps. I had the thermistor set incorrectly in the firmware, so I would disconnect the machine in pronterface, change the setting in arduino, upload it, and then reconnect in pronterface. That is going to be your loop whenever you change something from here on out.

One Response to marlin, slic3r, pronterface and me