Monthly Archives: August 2011

Hacks Host

Hacking Printrun to send a chat message when a job is finished

My Prusa lives in the workshop room but my main PC lives in our main living area.  In order to be notified when a print is finished I have made a little hack in Printrun so that it sends a message over XMPP to my chat client when the print is finished.

(Note: My version of Printrun is not yet in sync with the latest from Kliment because mine uses Skeinforge and his uses SFACT. If you use SFACT and want this hack then let me know and I will create a branch in my repo to mirror the latest version from Kliment.)

First install the xmpppy library. I used pip:

pip install xmppy

Second step is optional, but I created a jabber account for the printer at, so as not to use my day-to-day account:

Finally, with the hacked version of pronterface, enter the new xmpp settings in the options tab:

  • xmpp_notification_jid : The jabber id used to send the message.
  • xmpp_notification_password : The password of the jabber id used above.
  • xmpp_notification_server : The server name of the jabber service you wish to use, e.g.
  • xmpp_notification_target_jid : the jabber id of the account you wish to send a message to.

(Note: The port defaults to 5222, but it would be trivial to turn this into a setting too.)

That’s it.  Now Printrun will send a message when the job is finished:

One small hiccup I did find is that Printrun calls the “end callback” function when the job is paused as well as at the very end.  This means the message is sent when the job is paused, which is something I can live with at the moment.

The actual code change can be seen in this commit (but note that a later commit fixes the indentation :))

Development Tracker

Announcing Development Tracker

[Note: This is a cross-post taken from the new Development Tracker Blog.  Future updates relating to the Development Tracker will be posted there]

For a little while I have been working on a side-project that hopes to answer the question: “How can I find out what other people are developing within the particular online community I am a part of?”.  Specifically, how to discover developments within the 3D Printing space.

I think one of the key reasons for the recent explosion of interest, and success, in 3D printing is the open-source, share-a-like mentatility that pervades the ecosystem.  The RepRap Project is proudly oriented around the GPLv2 license; Makerbot’s Thingiverse promotes sharing things regardless of whether they were made on, or for, a Makerbot printer; and Github makes collaborating on a project easy. And there are many more applications and services out there.  All of these services are either free, or have generous freemium options, which makes the barriers to entry lower and helps to foster a rich sense of community.

Diversity and competition help drive innovation, but tracking what is happening across these sites, plus the myriad of blogs, wikis and forums, can be tricky.  RSS feeds, mailing lists and search engines can help, but can be either overlooked or, until the Semantic Web really takes off, provide insufficient context and related material.

Development Tracker Screenshot

Development Tracker is a simple, online, open registry where developments can be submitted, categorised, discovered and tracked.  Whether a complete project, a part, a document, a technique, or software, all can be entered, linked together, and made available for the community to find.  The application holds metadata about each development, and links to the projects page – which could be a blog, a github project, a thing on thingiverse or even a forum post.  Links can also be made between entries, allowing hierarchies and groups to be formed.

It is very early days for the project and there are many features to come which should help make the application ever more useful. Some of these ideas can be found on the future page.  As new features are introduced the blog will be updated, and there is also a twitter feed.

Authentication is handled by OpenId, so you can log in with either your own OpenId provider, or a Google, Yahoo, WordPress or Blogger account

This application has been developed as a contribution to the 3D Printing ecosystem and I hope it provides a useful service. Feedback from the community is crucial in determining how it develops, and so please look over the application, browse or search for entries already there, or add new ones you feel are relevant, and please let me know of any bugs, ideas or other comments you may have:


Host Skeinforge

Hacking Printrun: Skeinforge Quick-Edit and Profile Selector

I recently forked Kliment’s Printrun and added a couple of features that others will perhaps find handy.  One of these has been pulled back into the original project, but is modified to use SFACT rather than the original Skeinforge.  In case people would prefer to use the full Skeinforge I will outline the modifications here.
The first mod is a Quick Edit screen for the currently active Skeinforge profile. This shows what I think are some key settings all on one page, and thus saves opening Skeinforge and hunting though the tabs.
The second mod is having the ability to change profile from a menu list within Printrun.
So far these seem to work on my setup – but please backup any important profiles before giving this version a go.
The modified version is at