Remote printer access for Klipper – OctoEverywhere

Have you ever been half way through a long print and your social life gets in the way? Do you want to keep an eye on your printer while you are at work? Well it has been possible for a long time now but it required a pretty good level of IT understanding and awareness to do it securely and safely and the gold standard was a paid for VPN service.

Enter OctoEverywhere, a company formed in 2021 and based in Washington, US. They have offered free remote OctoPrint monitoring for a while now but just recently released full support for Klipper printers. Having tested the basic access level content I am very impressed, it is very easy to setup notifications and the responsiveness of the web app is like using the Klipper interface from within my own WiFi network. It is by far the best solution to date (and no I am in no way sponsored by them) mostly because of the ease of setup and security considerations.

They operate with a sort of Freemium model where you have access to the majority of features for free but have to pay for various supporter tiers to unlock everything.

Now these limits might sound annoying but for most people the free offering is plenty. It allows you to monitor up to 5 printers, gives you print failure detection and short webcam streaming sessions to check up on your latest 500% scaled Benchy.

One of the key features for me was status notifications and honestly when I was greeted with this huge list of notification methods I was a bit blown away. As I am a regular discord user and have other automations / bot messages that already use it I chose to experiment with notifications via Discord (see how later).

Security

The BIG question with all services which allow access to devices in your home has to be is it secure? In 2018 Octoprint was involved in a huge security blunder where thousands of it’s users opened up their printers to anyone, without any passwords, on the Internet. Whilst this wasn’t a flaw in Octoprint itself it shows that the average user needs more guidance when configuring remote access to their devices. It doesn’t take much imagination to guess how dangerous that situation could be? A machine capable of heating itself, to well above melting temperatures of the plastics around it, is now in the hands of whoever wants to cause trouble from wherever they are in the world!

I am not going to claim to be an IT security expert but I did some digging before giving it a go because well I don’t want to expose myself to any security issues.

Unsurprisingly OctoEverywhere have written a bit of a blog and 3rd party YouTube channel Renaissance Laboratories have done a video covering the steps OctoEverywhere have taken.

To summarise; All data sent and received is encrypted and no port forwarding etc. (common security weakness that is exploited) takes place. Please do your own reading but in general it promises a good level of security.

In the video Renaissance Laboratories runs a commercially available network security flaw testing tool to see the results and it simply gives 24 information notifications and no warnings. I ran the address for my printer instance through https://pentest-tools.com/ and likewise only received information notifications.

Lastly there is the question of what will OctoEverywhere do with your data? Their Terms of Service (Found here) state that images/video will be used/processed for printer notifications (print failure detection) and improving features but will never be sold or shared which is inline with what I would expect from an upstanding tech firm.

A good result all round. Right time to go ahead with an install!

Installation

Step one is to head over to https://octoeverywhere.com/ and create an account. If you read their security blog now might be a good time to choose to use a 3rd party authentication / single sign on tool from someone like Google; rather than a generic password you have used everywhere! Again take the opportunity to also enable 2 factor authentication for the added piece of mind.

Once logged in you are greeted with a home screen prompting you to add your first printer! Go ahead and click that button

There are 3 supported printer control types right now. If you are reading this then it’s highly likely you are hitting the Klipper option.

Now this is the only real technical step in the installation but if you setup Klipper yourself you already have the full skill set to tackle it!

SSH into your printer and paste the command line above. It is a bash script which will clone the Octoeverywhere repo and then install the services all for you.

If you are doing this on the standard pi installation of Klipper you probably won’t have to do anything. I installed it on my CB1 board and as such the Moonraker.conf file was located in a different place. The script fails gracefully and prompts you that it can’t find that file. Simply locate it and enter the correct location. You can use ‘pwd’ to print the directory address if you aren’t sure.

Once completed it will give you a code to use to setup your printer. Head over to https://octoeverywhere.com/code and enter it.

Add a printer name and then you should be greeted with the welcome screen!

Check back in your ssh terminal and enter ‘y’ to say your printer is paired.

That is it. Your basic functionality should be all up and running! Now there are many configuration options you can apply. For now I have just gone ahead and added Discord notifications.

Discord Notifications

Setting up discord notifications was pretty straight forward. Much like the installation you are guided through the steps. I chose to receive direct messages because no channels (not even my own) need the spam from my failed prints!

For security / discord rules their discord BOT can only message you if you are a member on their channel.

Join the channel – Note you will probably have to log into discord in your browser for this to work! Don’t accidentally create a new account like I started doing.

Once joined head over to the notification bot setup channel and post a message saying literally anything!

You will get a DM from the OctoEverywhere bot with a link to click to finish setting up the notifications. You can choose a bunch of options on what you receive notifications for depending on the level of information you want/need.

Once done you will get a little tick icon next to the Discord option. Note you can add as many different options as you like and configure only certain notifications to go to each! I hate my inbox getting filled up in my emails so I went back and turned off email notifications.

Enabling print failure AI

Now automatic print failure on paper sounds like a game changer however I used Spaghetti detective years ago and it caused more harm than good!

OctoEverywhere offers a free AI failure detection service and I just wanted to let you know that I will be putting it through it’s paces before I give my feedback because it isn’t something that you can be confident with until you have tested it for a reasonable time period.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: