This post is a series of posts in which I detail my journey to bring OctoPrint to the Seeed Studio reTerminal.
In today’s post we’ll be continuing the setup of the VS Code Debug Environment, running through the OctoPrint Setup Wizard, looking at the Virtual Printer Plugin and beginning the Plugin Tutorial.
- Getting Started – 05/09/2022
- My Initial Plans
- Cloning the Repos
- A pointer in the right direction from the folks at OctoPrint3D – Plugins
- OctoPrint Plugin Mixin Development Docs
- Getting the Development Environment setup
- Installing Python
- Checking out the OctoPrint Sources
- Creating and Activating a Virtual Environment
- Build Tools for Visual Studio 2019
- Setting up VirtualEnv
- Adding VirtualEnv to the Windows Path
- Upgrading Pip
- Setting up the Virtual Environment
- OctoEverywhere – 06-09-22
- Continuing with VirtualEnv
- Activating the Virtual Environment
- Setting up the Virtual Environment
- Installing Microsoft Visual C++ 14.0
- Using pip to install packages in the Virtual Environment
- Git Pre-Commit
- Git Changes, Blame and Ignore
- Configuring VS Code
- Running OctoPrint for the first time
- Changing the Python Interpreter
- Running the OctoPrint from VS Code
- Setting up OctoPrint in the Debug Environment – 07-09-22
- Setup Wizard – Access Control
- Setup Wizard – Online Connectivity
- Setup Wizard – Usage Tracking
- Setup Wizard – Plugin Blacklist
- Setup Wizard – Printer Profile
- Setup Wizard – Please Reload
- Setup Wizard – Setup Printer (Again)
- Setup Wizard – Server Commands
- Setup Wizard – Webcam and Timelapse Recordings
- Setup Wizard – Finish
- Virtual 3d Printer Plugin
- Beginning Plugin Development
Setting up OctoPrint in the Debug Environment – 07-09-22
Now that we have OctoPrint running, let’s try running through the Setup Wizard.
Setup Wizard – Access Control
Next button takes us to the Access Control Page, where we can create, I’d imagine, a local account;
Create Account Button creates our account and disables the
Create Account button which is reassuring;
Setup Wizard – Online Connectivity
Next again, takes us to the
Online Connectivity Check page, where we can configure the DNS, Hostname and Connectivity Check Intervals;
Looks like the connectivity check is really to stop the check for updates operation from consuming resources when there’s a loss of network connectivity.
Test Host & Port button confirms that OctoPrint can access the DNS server;
Test name resolution button confirms that OctoPrint can reach the main OctoPrint website;
Finally, we can hit the
Enable Connectivity Check button;
Setup Wizard – Usage Tracking
Once again hitting
Next we’re now on the
Configure Anonymous Usage Tracking page, where I’m happy to hit the
Enable Anonymous Usage Tracking button;
Setup Wizard – Plugin Blacklist
Pressing next takes us to the
Configure plugin blacklist processing page, where we can hit the
Enable Plugin Blacklist Processing button;
Setup Wizard – Printer Profile
The next page we see if the
Set up your printer profile page;
On this page we configure the Printer we’re expecting to control with OctoPrint. Here I know I want to use the Virtual 3D printer… So let’s go an have a look what’s involved in using that.
According to the Virtual Printer Docs Page;
The virtual printer can be enabled through its Settings pane.
So, I don’t think I can enable that during this process… So, what I think I’ll do is configure the Setup Wizard as if it’s connecting to my Ender 3 Pro.
Setup Wizard – Please Reload
Oh… I’ve just switched back to the Setup Wizard, and it seems there’s some sort of update available;
Looks like I’ve got to reload… Will this lose all the settings I’ve put in already? Let’s see…
Reload now button starts the process;
Once the reload completes, I’m returned to the
But, I’ve now got less pages showing on the left hand side;
I wonder if this is because I’d already completed some of the pages already, as looking at the original page list, it appears it’s the ones I’d already completed that are missing;
I also appear to be still logged in, which is reassuring;
I guess if I want to change the settings on those pages, then I’ll have to wait until the process is finished and use the Settings page from the main app?
Setup Wizard – Setup Printer (Again)
Either way, let’s press the
Next button and return to the
Set up your printer profile page again.
I guess I could just hit the
Next button here and leave this all as the defaults, but I’m thinking I’m quite likely to actually connect this to my Ender 3 at some stage, so let’s set it up as if it’s going to be.
Time to go find what those settings are then… Back to Google we go…. Top of the results is a page from howchoo.com which says that’s the settings for the Ender 3 Pro are;
Form factor: Rectangular Origin: Lower Left Heated Bed: Yes (checked) Heated Chamber: No (unchecked) Width: 220mm Depth: 220mm Height: 250mm Axes: Default** Custom Bounding Box: No (unchecked) Nozzle Diameter: 0.4mm Number of Extruders: 1
I’ll first give my Printer a Name and Model on the
We’ll then setup the
Print bed & build volume tab to match the settings above;
Next is the
Axes tab, which we’ll just leave at the defaults;
Finally we have the
Hotend & extruder tab, where it looks like we can leave these settings at their defaults too;
Setup Wizard – Server Commands
With those settings in place, we can hit the
Next button again to move on to the
Server Commands page;
I’ll leave these settings at their defaults, as I have no immediate use for these currently.
Setup Wizard – Webcam and Timelapse Recordings
The next page allows us to configure any webcam we may have connected for monitoring or timelapse recordings;
Again, I’ll leave these all at their defaults for now, but I’ll likely need to look at these when I get a bit further on.
Setup Wizard – Finish
The final page in the Setup Wizard warns us that we shouldn’t leave our printer unattended… Good advice…
It also warns that you should open the OctoPrint service up to the public internet… This is where a service like octoEverywhere will come in.
Finish button closes the Setup Wizard and shows us the familiar OctoPrint interface;
Virtual 3d Printer Plugin
With the Setup Wizard complete, the first thing I’d like to do is get the Virtual 3D Printer plugin configured.
Returning to the OctoPrint interface, I’m yet again show the
Please reload dialog;
The first thing I notice when it reloads of course, is the red box in the top left;
I don’t need to worry about this for now, as of course, I have no actual printer connected and I’ll be using the Virtual Printer instead.
We know that the Virtual Printer is part of a plugin, so let’s go and look for that.
TO access the Settings page, we can click the settings icon in the top right corner;
Once on the Settings page, we can click the
Plugin Manager item from the menu on the left, which will show our plugins;
If we scroll to the bottom of the
Installed Plugins list, we can see our
Virtual Printer plugin is present;
If we scroll the menu on the left to the bottom, we can see the link to the settings page for the plugin;
Clicking on the link, shows us the Virtual Printer plugin settings page, which currently just consists of a tick box allowing us to enable the Virtual Printer;
So, let’s tick the box to enable our Virtual Printer and hit the save button.
We’re then returned to the main OctoPrint interface, where our red warning box about no Serial port being detected has now disappeared, which makes sense if the plugin has now created a virtual com port for us to use;
Dropping down the Serial Port options, we can now see we have a
VIRTUAL option to choose;
Let’s leave the setting at
AUTO for now and see what happens when we click the
It looks now that we’re connected successfully to the virtual printer, where the
Operational and we have some simulated data in the graph view on the right hand side.
Looking at the Terminal Tab, we can see we have some simulated communications too, which is pretty cool;
Beginning Plugin Development
So, with my Environment seemingly set up, it’s time to start looking at Plugin Development!
I’ll be following a tutorial in the official docs, which looks awesome by the way.
Over the course of this little tutorial we’ll build a full fledged, installable OctoPrint plugin that displays “Hello World!” at some locations throughout OctoPrint and also offers some other basic functionality to give you an idea of what you can achieve with OctoPrint’s plugin system.
Which sounds like exactly what I need to get going…
But, for today, that will do… Let’s see what tomorrow brings!