Profile

Cover photo
OctoPrint
1,266 followers|875,739 views
AboutPostsPhotosVideos

Stream

Pinned

OctoPrint

Shared publicly  - 
 
New release: 1.2.4

Again mostly fixes of minor bugs and annoyances ;)

Find the changelog here: https://github.com/foosel/OctoPrint/releases/tag/1.2.4

If you don't get an "Update Now" button with your update notification, read this: https://github.com/foosel/OctoPrint/wiki/Plugin:-Software-Update#making-octoprint-updateable-on-existing-installations

Plugin authors, please read this: This release also makes OctoPrint compatible with plugins that require external dependencies that are not available on PyPI (e.g. unreleased fixed versions of 3rd party libraries). Please use this sparingly and only if absolutely necessary, e.g. if you don't want to wait for a specific bug fixed version of one of your dependencies to become publicly released. If you depend on a lib you wrote yourself, preferably make it available on PyPI instead of depending on the dependency_links functionality for plugins - it is a bit tricky to get to work right due to very different behaviour across pip versions and so the less plugins depend on it, the better.
6
2
Piero Bizzotto's profile photoBryan Mayland's profile photoGina Häußge's profile photoNils Hitze's profile photo
9 comments
 
I wish github would let us +1 commits. I wanted to quietly high-five you for 81bc8c784adbb5952441ecb337d224d4081c030e thanks!
Add a comment...

OctoPrint

Shared publicly  - 
 
Make editing config.yaml less painful: Yamlpatcher Plugin

I noticed that some of you were having some issues when having to manually edit YAML files, most prominently the config.yaml file that makes up the backbone of OctoPrint's settings.

It is not an option to expose all settings that are stored within this file via the UI - you certainly wouldn't be happy with having every little thumbscrew taking up space on your screen that you possibly might never need. But having to edit raw configuration files is quite error prone too.

So let's try something new. I wrote a plugin for OctoPrint (1.2.0 or higher) that allows pasting patches into an input field, then presents you with a preview of how the change to config.yaml will look like and requiring you only to acknowledge that through clicking "Apply". The idea is that if over the course of supporting you or in case of new releases that necessitate configuration changes that can't (or shouldn't) be done automatically a manual change to your config.yaml file is necessary, you'll get provided with a handy little string you just have to copy and paste into that field in order to get up and running.

The plugin is called Yamlpatcher and already available on the plugin repository: 

  http://plugins.octoprint.org/plugins/yamlpatcher/

Now, this is where the a bit more tech-savy people among you come into. I want to bundle this plugin with OctoPrint in the very near future (I have 1.2.3 already trying to jump out), but I also need a bit help in testing this in order to be able to that. So, please, if you feel comfortable working with YAML in case something goes wrong, or at least have no problem with and know how to quickly back up config.yaml, give this a test drive. 

Example: In case you haven't yet setup your Softwareupdate Plugin to automatically update OctoPrint for you on your existing OctoPi install (as explained in https://plus.google.com/u/0/b/110130855001142142895/+OctoprintOrg/posts/TgBsvS6kdZh), that's one thing that can now be done quite easily with the plugin. Install it, then paste this into it:

[["merge","plugins.softwareupdate",{"checks":{"octoprint":{"checkout_folder":"/home/pi/OctoPrint"}},"octoprint_restart_command":"sudo service octoprint restart","environment_restart_command":"sudo shutdown -r now"}]]

and click Preview. Verify that everything looks ok - see the linked image for how it should look when you do it and pay special note to the green highlighted lines, they should look quite similar for you! If it does, click "Apply" and once the input and preview vanish again (which they should if the application was successful) restart OctoPrint. That should hopeful set you up. 
8
1
Gina Häußge's profile photo
Add a comment...

OctoPrint

Shared publicly  - 
 
New release: 1.2.1

I just tagged and pushed 1.2.1 to the master branch. It includes some minor bug fixes of things that were reported to me since the 1.2.0 release.

Changelog can be found here: https://github.com/foosel/OctoPrint/releases/tag/1.2.1

An update notification should pop up soon too for everyone already running 1.2.0 thanks to the bundled Software Update plugin (it might take a while since the update information is cached). In case you didn't set this up yet to allow one-click-updating of OctoPrint (the new OctoPi release will ship with everything configured that way already btw), take a look here: https://github.com/foosel/OctoPrint/wiki/Plugin:-Software-Update#making-octoprint-updateable-on-existing-installations
7
Todd Ferguson's profile photoOctoPrint's profile photoDaniel fielding's profile photo
7 comments
 
Cheers for the prompt feedback. I did hit the tab key when editing the config.yaml. When I get home from work I will change it and use space bar instead. I have never used yaml before so I learned something new. 
Add a comment...

OctoPrint

Shared publicly  - 
 
Trouble updating OctoPrint to 1.2.0 on OctoPi? Read this

It has come to my attention that apparently the last release of OctoPi 0.11.0 from February (the one that introduced RPi2 compatibility and which is based on the Raspbian release from 2015-01-31) contains a little issue with the shipped OctoPrint checkout that prevents updates of OctoPrint on this image to run smoothly.

If you are running this version and/or are getting a message along the lines of "timeout for gnet.homelinux.com" when performing the "git pull" step, please just do this (after cd'ing to ~/OctoPrint):

    git remote set-url origin https://github.com/foosel/OctoPrint.git

With this in place "git pull" should work again. The update instructions contains in OctoPrint's FAQ have been adjusted accordingly too.

Background: OctoPi builds are done from a mirrored version of OctoPrint for performance reasons. Usually, the repository URL will be set to the public/official one however during the build process. Apparently for that specific build there was a bug present that caused that "reset" to not take place, causing the image to ship with the wrong repository URL. The above command simply does fix that URL again.

Sorry for not including this information in the release announcement, I only just today learnt that this is an issue with OctoPi 0.11.0 (I so far thought it was only an issue with some of the nightlies put out a while ago). And if you are wondering why I wasn't aware of that before today, a quick reminder since people tend to forget or not know this: I maintain Octo*Print*, not Octo*Pi* (and I usually do my own builds of the latter, especially when testing around with experimental stuff). I try to support +Guy Sheffer every way I can, but this one slipped by me (and a lot of you too when testing the RC of OctoPi 0.11.0 ;))
7
Guy Sheffer's profile photoJoe Mitchell's profile photo
3 comments
 
+Guy Sheffer We just used the GPX plugin.
Add a comment...

OctoPrint

Shared publicly  - 
 
New release: 1.2.0

The day has finally arrived, I'm declaring 1.2.0 as stable :) Just pushed and tagged 1.2.0 on the master branch, no "-RC" postfix on this one ;)

Release Notes are here: https://github.com/foosel/OctoPrint/releases/tag/1.2.0
More details on what's in there can be found in the announcement post for the first release candidate: https://plus.google.com/+OctoprintOrg/posts/czVKSZa39TB

Next step is supporting +Guy Sheffer in any way I can to push out a new OctoPi version including that ASAP. And of course getting back into full-blown development mode to make everything even better ;)

Until then you can find the update instructions for getting your OctoPrint version on your OctoPi installation upgraded in the FAQ: https://github.com/foosel/OctoPrint/wiki/FAQ#how-can-i-update-the-octoprint-installation-on-my-octopi-image
39
10
Mark Walker's profile photoAsensar Sensar's profile photoPaco Lucas Herrera's profile photoLluis Vilarrubies's profile photo
10 comments
 
Congrats +Gina Häußge!
Add a comment...

OctoPrint

Shared publicly  - 
 
New release (candidate): 1.2.0-RC3

I just tagged and pushed another Release Candidate of 1.2.0 to the master branch on Github, 1.2.0-RC3.

What is this, didn't you say something of wanting to release 1.2.0 proper this week?

You might be thinking that right now. And yes, I did, but I also said "depending on the feedback I'll get". A couple of issues were discovered by the community in RC2 and since the fixes were a bit more complex I decided on giving it another RC instead of directly going for the stable release. The reasoning being that if the fixes of the issues in RC2 introduced problems elsewhere, there is now a chance those will be discovered before that stuff becomes stable.

So, another RC round, with the hope of releasing 1.2.0 proper around the middle of next week (again - depending on the feedback I get, really keeping my fingers crossed that all the major kinks in the more exotic configurations are now ironed out though).

Thank you to everyone who reported back on their experiences with RC1 and RC2, you rock and help making the 1.2.0 release a hopefully solid one!

The Changelog can be found here: https://github.com/foosel/OctoPrint/releases/tag/1.2.0-rc3

Commits are here: https://github.com/foosel/OctoPrint/compare/1.2.0-rc2...1.2.0-rc3

Update instructions are in the FAQ: https://github.com/foosel/OctoPrint/wiki/FAQ#how-can-i-update-the-octoprint-installation-on-my-octopi-image

Please report back. Keep in mind though that naturally there is currently a feature freeze. So if you have suggestions on how to make the new functionality even better, that is heartily welcome, but won't make it's way into 1.2.0 anymore.
12
Add a comment...
In their circles
26 people
Have them in circles
1,266 people
Mauro Polgatti's profile photo
Kevyn Watkins's profile photo
Edward Boston's profile photo
Riccardo Carturan's profile photo
Alex Clements's profile photo
Brint Kriebel (bekit)'s profile photo
Xiaojun Liu's profile photo
Attila Aron Nagy's profile photo
Marcus “Guin” Klütmann's profile photo

Communities

OctoPrint

Shared publicly  - 
 
New release: 1.2.3

Mostly fixes of minor bugs and annoyances.

Find the changelog here: https://github.com/foosel/OctoPrint/releases/tag/1.2.3

If you don't get an "Update Now" button with your update notification, read this: https://github.com/foosel/OctoPrint/wiki/Plugin:-Software-Update#making-octoprint-updateable-on-existing-installations
11
Jules's profile photoRichard Polivka's profile photo
3 comments
 
Did manual update yesterday. Works just fine.
Add a comment...

OctoPrint

Shared publicly  - 
 
Important security update: 1.2.2 released

I was made aware of a security issue with OctoPrint 1.2.0 and 1.2.1 a couple of hours ago. I just fixed that and pushed a new release 1.2.2. The changelog is here: https://github.com/foosel/OctoPrint/releases/tag/1.2.2

The issue is only exploitable when having access to the instance and then only for users that have administrator rights. So if you followed the initial setup procedure by enabling access control, set up an administrator account and kept that secret, you should not be at risk. I nevertheless advise you update your installation.

Let me also take this opportunity to remind you that you should never make your OctoPrint instance available over the internet without securing it at the very least with the included access control.
6
2
Franz Scherz's profile photoGina Häußge's profile photoNils Hitze's profile photoGuy Sheffer's profile photo
16 comments
 
> Report a bug is too complicated

Sorry, but if you can't be bothered to go through the process of collecting the info a bug report necessitates and pasting it in a template that is even prepared for you, I actually don't see why I should bend over backwards to try to still help you. Please realize that all this support is free and especially at this time of day it is definitely not part of my job description. What do you think would happen if everyone thought like this?

Also, you are not reading the information that is provided to you, how to setup updating from the UI was explained in the release announcement for 1.2.1 and again just a couple posts above your's, and I guess is you didn't follow the update guide for prior versions because your "permission denied" issues reek of using sudo for the setup which is not necessary and nowhere mentioned. 
Add a comment...

OctoPrint

Shared publicly  - 
 
OctoPi release candidate looking for testers
 
Hey all,
We finally have a release candidate for OctoPi 0.12.0.
I would appreciate if you people download and test it, so we know it does not break anything.
There are a lot of shiny new features which include:

* Finally we have CuraEngine shipped for slicing directly from OctoPrint! (Raspberrypi 2 recommended for this)
* Software Update plugin - lets you automatically update OctoPrint to the latest version
* a new file /boot/octopi-network.txt which contains sample config snippets for getting wifi connectivity configured for WPA/WPA2-PSK
* webcamDaemon script is now a new service webcamd
* New official bananapi build (BananaPi cam does not work).
* OctoPrint 1.2.0, Raspberrypi new firmware.

RaspberryPi build:
http://docstech.net/OctoPiMirror/2015-06-29_2015-05-05-octopi-wheezy-0.12.0.zip

BananaPi build:
http://docstech.net/OctoPiMirror/bananapi-m1/2015-05-05-octopi-wheezy-0.12.0-2015-06-29.zip
Links will change after release

All comments are appreciated!
30 comments on original post
8
2
Guy Sheffer's profile photoRoss Bagley's profile photoNils Hitze's profile photoMark Walker's profile photo
5 comments
 
I downloaded the RC last night but ended up fighting a thermistor failure instead of playing with the octopi. I'll wait for the new RC.
Add a comment...

OctoPrint

Shared publicly  - 
 
On what's next

Now that 1.2.0 is out of the door, you might be wondering what's next in line for OctoPrint.

I have a big list of things to tackle, and I hope to get to a more regular release schedule now that this big release is out of the door too. 

A little sneak peek at what's currently on my whiteboard:

  * Support for CuraEngine 15.06+ - that one needs a slightly different way of calling it and changes a number of setting names, and hence OctoPrint's integration needs to be adjusted to that to detect the version and use the correct way of calling it.
  * A repository for language packs similar to plugins.octoprint.org - you might have noticed that the current release only includes a german translation, and the reason for this is simply that this is all that was guaranteeable to be ready on release. Instead of trying to bundle half-done translations whose quality I can't check for myself I established a new concept called "Language Packs", which are really just ZIP files following a certain folder structure (and which can easily be created from translations with the included development tools, the wiki describes how) and which you already can upload through OctoPrint's Settings dialog to install and manage there. The idea would be to establish a central repository for these language packs, similar to the plugin repository, not only for contributed translations of OctoPrint's core but also plugins.
* Update a bunch of bundled libs - and make sure everything still works afterwards (it's overdue)
* Get the Pushbullet plugin republished - currently down while some dependency issues are being solved, but I noticed a certain popularity on that one already :)
* Finalize the setup of the new OctoPrint forum that will also allow you voting for features in the future ;)

And some more stuff a bit further down the road:

* Adding the possibility for plugins to offer custom web frontends - I think some of you've been waiting for that ;)
* Splitting Printer Profiles into machines and models - hence allowing the sharing of pre configured machine profiles for the various printers out there, and then customizing them further to your specific setup.
* Getting the new comm layer finalized/ported - that was put on a big back burner a while back after running into one problem after the other with firmware compatibility, just didn't want to risk it slowing down 1.2.0 progress further
* Fixes, removal of small annoyances here and there, ... oh, and: https://github.com/foosel/OctoPrint/labels/type%3Arequest

And let's not forget: More events, hooks and plugin types to allow you awesome plugin authors out there to do even more cool stuff - honestly, I'm still trying to get my jaw off the floor again after seeing what people have already been doing with what's there <3
18
ThantiK's profile photoOctoPrint's profile photoBrad Hopper's profile photoGina Häußge's profile photo
13 comments
 
I actually spend lots of time deleting files from Octoprint because I mostly do prototype stuff and rarely pring the same thing twice.

See, that would be the moment where I'd look into getting my design tool to directly export the STL to OctoPrint, have it slice to a file with the same name (optionally via a plugin that uses a slicer set up on some "workhorse system" on my LAN instead of directly on the Pi) and just print it on each iteration ;) Add a plugin to it that adds queue support and you could even carry this thought further.

For me it would be ideal if instead if creating more functionality for filing and storing if OP could include folders from Dropbox or similar

This is one of the reasons why I completely overhauled the file management system. Before 1.2 it only knew how to handle gcode files stored in one folder on your disk. Now, it can store a extensible list of file types in multiple folders in multiple storage backends. Yes, right now we only have the same old upload folder, and the folder support isn't yet part of the UI, but underneath everything is now different and way more modular. And with the groundwork that has been done it is now possible to add a new extension point there, do some changes to the UI and then easily have plugins be able to add support for Dropbox, or Google Drive, or your NAS, or what else you might think of. OctoPrint won't care about where the file comes from anymore. 

In fact as a quick improvement why not put an uploaded file directly into the loaded position if another file is not already printing?

Have a plugin that injects a piece of javascript that listens to the "FileUploaded" event, if no print job is currently active select it directly.

While we're on requests, I would love for OP to accommodate multiple cameras with ability to switch focus among them.

That is probably already possible with a plugin too. Just have it add a dropdown to the navigation bar or something, and associate that with a little javascript function that sets the webcam stream url to the one of the selected camera. Add a settings screen to configure an unlimited number of cams to cycle through.

I'm writing this to try to make clear why it makes way more sense to call this release the plugin release - if anything ;) I know that right now it's not that visible yet (unless you are the owner of a Flashforge or one of the older Makerbots, thanks to +Mark Walker ;)), but I hope that once even more people will start playing with the plugin system (and also I enhance it even more) more usecases will be taken care of than I, you or anyone else ever could think of, no matter how exotic they may be.

The last years development of new OctoPrint features usually meant having to think about the general usefulness of something: Would it benefit a large percentage of the user base, or only a select few? And that not only when developing myself, but also when PRs came in. Why? Because just having a feature added is only part of the deal. It also has to be maintained. If stuff is refactored, it needs to be migrated too. If there are bugs in it, those need to be fixed too. And let's also not forget that something that one person wants another one absolutely hates and considers bloat. So how to make everyone happy and keep the stuff maintainable? Well, I'm not sure I have it all figured out, but I hope that this release is a big step in the general direction to answer that question, and not because of the readily visible new features or improvements or bug fixes that are in it, but actually because of a select few of the things that are quite invisible but add a whole new set of possibilities ;)

(PS: BTW, sorry for writing from the wrong account again up there this morning, G+ really makes it impossible to distinguish which account it is using while typing up a message on mobile)
Add a comment...

OctoPrint

Shared publicly  - 
 
PSA: "There's an error on the wiki"

I've gotten a few comments, messages and even emails in the past about errors in the additional guides (e.g. for controlling relays and whatnot via OctoPrint) that are hosted in the OctoPrint wiki on Github.

Let me quickly remind everyone: It is a wiki, a public wiki that everyone with a valid Github account can edit. That's in fact why most of the guides are there in the first place, because people just like you decided "Hey, I know how to do something cool here, I'll write it down so others know how to do it too!".

OctoPrint doesn't cost a dime. The full source code is available for everyone to hack on, and so is the documentation and basically everything else related to it. This is not only my project - it is your's too! This is the principle of Open Source, that not only the software is free as in beer, but that actually everyone can help making it better - in code, in documentation and regarding the environment around it. I understand if you don't feel comfortable coding in Python or Javascript, but honestly, fixing a comma or a wrong statement on a wiki page is really not something that only I can do, right? :)

All I'm asking is: If you encounter something that seems off, and you can fix it yourself - please don't wait for someone else to do it, spend the few minutes it takes to do it yourself and give back to the project this way.

Thank you!
27
Jules's profile photo
Jules
 
I'm one of those people! sorry, had not realized it was an open wiki!
Add a comment...

OctoPrint

Shared publicly  - 
 
New release (candidate): 1.2.0-RC2

Since there were some minor issues reported with the RC1 (concerning backwards compatibility to older versions of setuptools and pip that are still present on a large number of systems out there) I fixed those and just tagged RC2.

See the changelog here: https://github.com/foosel/OctoPrint/releases/tag/1.2.0-rc2

The full changelog for 1.2.0 can be found here: https://github.com/foosel/OctoPrint/blob/1.2.0-rc2/CHANGELOG.md#120-unreleased

Please test this and report back. I want to release the final 1.2.0 version next week, and I'd prefer if I didn't have to do a bugfix release immediately after, so any reports I get now help to get 1.2.0 as stable as possible for general consumption.
12
3
OctoPrint's profile photoGina Häußge's profile photoNils Hitze's profile photoMcu Lover's profile photo
7 comments
 
Yes, in the FAQ.
Add a comment...
People
In their circles
26 people
Have them in circles
1,266 people
Mauro Polgatti's profile photo
Kevyn Watkins's profile photo
Edward Boston's profile photo
Riccardo Carturan's profile photo
Alex Clements's profile photo
Brint Kriebel (bekit)'s profile photo
Xiaojun Liu's profile photo
Attila Aron Nagy's profile photo
Marcus “Guin” Klütmann's profile photo
Communities
Story
Tagline
A responsive web interface for 3d printers
Introduction

OctoPrint provides a responsive web interface for controlling a 3D printer (RepRap, Ultimaker, ...). It currently allows

  • uploading .gcode files to the server and managing them via the UI
  • selecting a file for printing, getting the usual stats regarding filament length etc (stats can be disabled for faster initial processing)
  • starting, pausing and canceling a print job
  • while connected to the printer, gaining information regarding the current temperature of both head and bed (if available) in a nice shiny javascript-y temperature graph
  • while printing, gaining information regarding the current progress of the print job (height, percentage etc)
  • reading the communication log and send arbitrary codes to be executed by the printer
  • moving the X, Y and Z axis (jog controls), extruding, retracting and custom controls
  • changing the speed modifiers for inner & outer wall, fill and support
  • optional: visual monitoring of the printer via webcam stream integrated into the UI (using e.g. MJPG-Streamer)
  • optional: creation of timelapse recordings of the printjob via webcam stream (using e.g. MJPG-Streamer) -- currently two timelaspe methods are implemented, triggering a shot on z-layer change or every "n" seconds
Contact Information
Contact info
Email