Commit 9350ffa6 authored by Kliment's avatar Kliment

Merge branch 'master' of github.com:kliment/Printrun

parents 1307f980 55052854
# Sample .pronsolerc file - copy this into your home directory and rename it to .pronsolerc
!print "Loaded " + self.rc_filename
macro up move Z 10
macro loud !self.p.loud = 1
macro quiet !self.p.loud = 0
macro loud
!if self.p.loud:
!self.p.loud = 0
!if hasattr(self,"cur_button") and self.cur_button is not None:
!self.onecmd('button %d "loud (off)" /c green loud' % self.cur_button)
!else:
!self.p.loud = 1
!if hasattr(self,"cur_button") and self.cur_button is not None:
!self.onecmd('button %d "loud (on)" /c yellow loud' % self.cur_button)
button 0 "loud (off)" /c "green" loud
This is a python-based host software for reprap printers, in various forms.
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
INSTALLING DEPENDENCIES
* 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
# INSTALLING DEPENDENCIES
## 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://launchpad.net/pyreadline/trunk/1.7/+download/pyreadline-1.7.win32.exe
## Ubuntu/Debian
`sudo apt-get install python-serial python-wxgtk2.8`
On Windows, download the following, and install in this order:
http://python.org/ftp/python/2.7.2/python-2.7.2.msi
http://pypi.python.org/packages/any/p/pyserial/pyserial-2.5.win32.exe
http://downloads.sourceforge.net/wxpython/wxPython2.8-win32-unicode-2.8.12.0-py27.exe
http://launchpad.net/pyreadline/trunk/1.7/+download/pyreadline-1.7.win32.exe
## Fedora 15
`sudo yum install pyserial wxpython`
On Ubuntu/debian, do:
sudo apt-get install python-serial python-wxgtk2.8
## Mac OS X Lion
On Fedora 15 do:
sudo yum install pyserial wxpython
1. Ensure that the active Python is the system version. (`brew uninstall python` or other appropriate incantations)
2. Download an install [wxPython version 2.9-Carbon](http://wxpython.org/download.php#unstable) (the Cocoa version doesn't work)
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`
On Mac OS X, download and install:
http://downloads.sourceforge.net/wxpython/wxPython2.8-osx-unicode-2.8.12.0-universal-py2.6.dmg
Grab the source for pyserial from http://pypi.python.org/packages/source/p/pyserial/pyserial-2.5.tar.gz
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
The tools will run just fine in 64bit on Lion, you don't need to mess
with any of the 32bit settings.
## Mac OS X (pre Lion)
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:
export VERSIONER_PYTHON_PREFER_32_BIT=yes
`export VERSIONER_PYTHON_PREFER_32_BIT=yes`
Then repeat the same with http://launchpad.net/pyreadline/trunk/1.7/+download/pyreadline-1.7.zip
USING PRONTERFACE
# USING PRONTERFACE
To use pronterface, you need:
To use pronterface, you need:
python (ideally 2.6.x or 2.7.x),
pyserial (or python-serial on ubuntu/debian),
pyreadline (not needed on Linux) and
wxPython
* python (ideally 2.6.x or 2.7.x),
* pyserial (or python-serial on ubuntu/debian),
* pyreadline (not needed on Linux) and
* wxPython
Download and install the above, and start pronterface.py
Select the port name you are using from the first drop-down, select your baud rate, and hit connect.
......@@ -48,12 +63,13 @@ The command box recognizes all pronsole commands, but has no tabcompletion.
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 pronterface.py
USING PRONSOLE
# 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)
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"
......@@ -61,16 +77,17 @@ All commands have internal help, which you can access by typing "help commandnam
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:
# 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
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()
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()
......@@ -391,10 +391,10 @@ class pronsole(cmd.Cmd):
os.rename(rci.name,rci.name+"~old")
rco.close()
os.rename(rco.name,self.rc_filename)
if definition != "":
print "Saved '"+key+"' to '"+self.rc_filename+"'"
else:
print "Removed '"+key+"' from '"+self.rc_filename+"'"
#if definition != "":
# print "Saved '"+key+"' to '"+self.rc_filename+"'"
#else:
# print "Removed '"+key+"' from '"+self.rc_filename+"'"
except Exception, e:
print "Saving failed for",key+":",str(e)
finally:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment