Skip to content

Latest commit

 

History

History
149 lines (102 loc) · 6.84 KB

README.md

File metadata and controls

149 lines (102 loc) · 6.84 KB

RepRapPro version of https://github.com/kliment/Printrun

Printrun consists of printcore, pronsole and pronterface, and a small collection of helpful scripts.

  • printcore.py is a library that makes writing reprap hosts easy
  • pronsole.py is an interactive command-line host software with tabcompletion goodness
  • pronterface.py is a graphical host software with the same functionality as pronsole

INSTALLATION

This repository includes a pre-compiled version of Pronterface for Windows, the original Python-based Printrun files, and scripts to run pronterface in Windows and Linux, for Fisher, Huxley, Mendel and Ormerod printers, with variations for the electronics supplied (Duet/Melzi).

To install, download the ZIP and extract to a sensible place, or clone the repository. To run:

  • On Windows, run the relevant .cmd script.
  • On Linux, install dependencies (see below), then run the relevant .sh script
  • On Apple OS X, install dependencies (see below), then run pronterface/pronterface.py

PRE-COMPILED SOFTWARE

For your convenience, pre-compiled versions of Pronterface are available. If you use a pre-compiled version of Pronterface, you do not need to 'install dependencies', which is the next step of the instructions. Just run the application.

Windows

A precompiled version is supplied in this repository, in the 'Win7' folder. Run 'pronterface.exe'.

Apple OS X

A precompiled version is available here: https://reprappro.com/wp-content/uploads/2014/02/RepRapPro-Pronterface-Mac.zip Download, extract, and run the Pronterface application.

INSTALLING DEPENDENCIES

If you prefer to run the Python-based pronterface.py application in the 'pronterface' folder, rather than any pre-compiled version, you need to install support files (called 'dependencies') for it to run.

Ubuntu/Debian

sudo apt-get install python-serial python-wxgtk2.8 python-pyglet python-tk

Fedora 15

sudo yum install pyserial wxpython pyglet

Windows

Download the following, and install in this order:

  1. http://python.org/ftp/python/2.7.2/python-2.7.2.msi
  2. http://pypi.python.org/packages/any/p/pyserial/pyserial-2.5.win32.exe
  3. http://downloads.sourceforge.net/wxpython/wxPython2.8-win32-unicode-2.8.12.0-py27.exe
  4. http://pypi.python.org/packages/any/p/pyreadline/pyreadline-1.7.1.win32.exe#md5=ffe3987562d0891901ebccdd94933a39
  5. http://pyglet.googlecode.com/files/pyglet-1.1.4.zip

For the last one, you will need to unpack it, open a command terminal, go into the the directory you unpacked it in and run python setup.py install

Mac OS X 10.7 (Lion) and later

  1. Ensure that the active Python is the system version. (brew uninstall python or other appropriate incantations)
  2. Download an 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 Known to work PythonWX: http://superb-sea2.dl.sourceforge.net/project/wxpython/wxPython/2.8.12.1/wxPython2.8-osx-unicode-2.8.12.1-universal-py2.7.dmg
  3. Download and unpack pyserial from http://pypi.python.org/packages/source/p/pyserial/pyserial-2.5.tar.gz
  4. In a terminal, change to the folder you unzipped to, then type in: sudo python setup.py install
  5. Repeat 4. with http://http://pyglet.googlecode.com/files/pyglet-1.1.4.zip

The tools will probably run just fine in 64bit on Lion, you don't need to mess with any of the 32bit settings. In case they don't, try 5. export VERSIONER_PYTHON_PREFER_32_BIT=yes in a terminal before running Pronterface

Mac OS X 10.6 (Snow Leopard) and earlier

  1. Download and install http://downloads.sourceforge.net/wxpython/wxPython2.8-osx-unicode-2.8.12.0-universal-py2.6.dmg

  2. Grab the source for pyserial from http://pypi.python.org/packages/source/p/pyserial/pyserial-2.5.tar.gz

  3. Unzip pyserial to a folder. Then, in a terminal, change to the folder you unzipped to, then type in:

    defaults write com.apple.versioner.python Prefer-32-Bit -bool yes

    sudo python setup.py install

Alternatively, you can run python in 32 bit mode by setting the following environment variable before running the setup.py command:

This alternative approach is confirmed to work on Mac OS X 10.6.8.

export VERSIONER_PYTHON_PREFER_32_BIT=yes

sudo python setup.py install

Then repeat the same with http://http://pyglet.googlecode.com/files/pyglet-1.1.4.zip

USING PRONTERFACE

To use pronterface, you need:

  • python (ideally 2.6.x or 2.7.x),
  • pyserial (or python-serial on ubuntu/debian),
  • pyglet
  • pyreadline (not needed on Linux) and
  • wxPython

Download and install the above (as covered in the 'Installing dependencies' instructions above. Start pronterface by running pronterface.py Select the port name you are using from the first drop-down, select your baud rate, and hit connect. Load a GCODE file. You can upload it to SD or print it directly. The "monitor printer" function, when enabled, checks the printer state (temperatures, SD print progress) every 3 seconds. The command box recognizes all pronsole commands, but has no tabcompletion.

USING PRONSOLE

To use pronsole, you need:

  • python (ideally 2.6.x or 2.7.x),
  • pyserial (or python-serial on ubuntu/debian) and
  • pyreadline (not needed on Linux)

Start pronsole and you will be greeted with a command prompt. Type help to view the available commands. All commands have internal help, which you can access by typing "help commandname", for example "help connect"

If you want to load stl files, you need to put a version of skeinforge (doesn't matter which one) in a folder called "skeinforge". The "skeinforge" folder must be in the same folder as pronsole.py

USING PRINTCORE

To use printcore you need python (ideally 2.6.x or 2.7.x) and pyserial (or python-serial on ubuntu/debian) See pronsole for an example of a full-featured host, the bottom of printcore.py for a simple command-line sender, or the following code example:

p=printcore('/dev/ttyUSB0',115200)
p.startprint(data) # data is an array of gcode lines
p.send_now("M105") # sends M105 as soon as possible
p.pause()
p.resume()
p.disconnect()

LICENSE

Printrun is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

Printrun is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with Printrun.  If not, see <http://www.gnu.org/licenses/>.