Octoprint for controlling a 2D pen plotter. Based on the Mr. Beam fork of Octoprint.
Find a file
Gina Häußge 31d7eaad90 Add ";" delimiters between bundled JS files
This is to make sure that they all end on a ; and hence stuff doesn't break if a file included directly after starts with a (...) construct. Of course it would be better if all bundled files are valid in that matter, however since we can't enforce that, we'll add this slight overhead to reduce the risk of stuff breaking.

See for example: http://stackoverflow.com/questions/20307462/js-cant-combine-lib-files
2015-06-18 13:00:18 +02:00
.tx Updated transifex config file to point to new translation directory 2015-06-02 15:50:27 +02:00
docs Docs: Updated plugin tutorial to utilize new cookiecutter template 2015-06-11 15:04:27 +02:00
scripts scripts: init and default files now specify a process priority. 2015-05-28 05:04:58 -07:00
src Add ";" delimiters between bundled JS files 2015-06-18 13:00:18 +02:00
tests New hook octoprint.filemanager.preprocessor 2015-04-17 14:45:58 +02:00
translations Updated and bundled german core translation 2015-06-09 15:00:43 +02:00
.editorconfig Added an EditorConfig file 2015-05-29 11:58:36 +02:00
.gitattributes Versioning by versioneer: https://github.com/warner/python-versioneer/ 2014-06-22 00:41:03 +02:00
.gitignore Improved slicing and file management 2014-10-06 17:34:07 +02:00
.travis.yml Travis should use the develop flavor for install so that tests can run 2015-03-02 13:15:46 +01:00
.versioneer-lookup Modified versioneer to allow specification of manual versions based on branches 2014-09-02 11:35:42 +02:00
babel.cfg Webassets are now written to ~/.octoprint/generated 2015-06-03 18:27:30 +02:00
CHANGELOG.md New section "Note for Upgraders" & corrected a typo 2015-06-12 20:15:22 +02:00
CONTRIBUTING.md Update CONTRIBUTING.md 2015-01-27 09:53:09 +01:00
LICENSE Moved LICENSE file to root directory to make it more visible. Added hint to README.md that OctoPrint is released under AGPL 2013-01-20 00:29:48 +01:00
MANIFEST.in Merge pull request #784 from DanLipsitt/feature/manifest-setup-reqs 2015-02-26 11:39:58 +01:00
README.md Preparing release of 1.1.1 2014-10-27 09:48:54 +01:00
requirements.txt Removed accidentally committed line in requirements.txt 2015-03-12 19:19:42 +01:00
run Insert src folder at first position of sys.path 2014-06-21 20:11:04 +02:00
setup.py Better fix for #931, stays backwards compatible to older setuptools versions 2015-06-10 17:25:23 +02:00
versioneer.py Fix: Another versioneer branch issue 2015-04-20 12:45:38 +02:00

OctoPrint

Flattr this git repo

OctoPrint provides a responsive web interface for controlling a 3D printer (RepRap, Ultimaker, ...). It is Free Software and released under the GNU Affero General Public License V3.

Its website can be found at octoprint.org.

Contributing

Please see the project's Contribution Guidelines.

Installation

Installation instructions for installing from source for different operating systems can be found on the wiki.

If you want to run OctoPrint on a Raspberry Pi you might want to take a look at OctoPi which is a custom SD card image that includes OctoPrint plus dependencies.

Dependencies

OctoPrint depends on a couple of python modules to do its job. Those are automatically installed when installing OctoPrint via setup.py:

python setup.py install

You should also do this every time after pulling from the repository, since the dependencies might have changed.

OctoPrint currently only supports Python 2.7.

Usage

Running the setup.py script installs the octoprint script in your Python installation's scripts folder (which depending on whether you installed OctoPrint globally or into a virtual env will be on your PATH or not). The following usage examples assume that said octoprint script is on your PATH.

You can start the server via

octoprint

By default it binds to all interfaces on port 5000 (so pointing your browser to http://127.0.0.1:5000 will do the trick). If you want to change that, use the additional command line parameters host and port, which accept the host ip to bind to and the numeric port number respectively. If for example you want the server to only listen on the local interface on port 8080, the command line would be

octoprint --host=127.0.0.1 --port=8080

Alternatively, the host and port on which to bind can be defined via the configuration.

If you want to run OctoPrint as a daemon (only supported on Linux), use

octoprint --daemon {start|stop|restart} [--pid PIDFILE]

If you do not supply a custom pidfile location via --pid PIDFILE, it will be created at /tmp/octoprint.pid.

You can also specify the configfile or the base directory (for basing off the uploads, timelapse and logs folders), e.g.:

octoprint --config /path/to/another/config.yaml --basedir /path/to/my/basedir

See octoprint --help for further information.

OctoPrint also ships with a run script in its source directory. You can also invoke that to start up the server, it takes the same command line arguments as the octoprint script.

Configuration

If not specified via the commandline, the configfile config.yaml for OctoPrint is expected in the settings folder, which is located at ~/.octoprint on Linux, at %APPDATA%/OctoPrint on Windows and at ~/Library/Application Support/OctoPrint on MacOS.

A comprehensive overview of all available configuration settings can be found on the wiki. Please note that the most commonly used configuration settings can also easily be edited from OctoPrint's settings dialog.