Skip to content

Latest commit

 

History

History
292 lines (229 loc) · 14.6 KB

intro_to_octoprint.asciidoc

File metadata and controls

292 lines (229 loc) · 14.6 KB

Intro to Octoprint

License

The materials for this class are licensed under the Apache license. See the file LICENSE for details.

Copyright 2016 F Douthit

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Document History

Notes

Date

Initial Revision

2016-01-30

Add login, upload, slice and print.

Add tabs outline.

2016-02-01

What do we hope to accomplish?

  • Learn a little about what octoprint is and what you can do with it.

  • Learn how to upload a file

  • Learn what slicing is and how to slice a file

  • Temperature and pre-heating the bed and nozzle

  • Manual control of the printer

  • Video monitor your print and video capture your prints

  • Visualize your G-code

  • System

  • Tips and tricks

  • Settings

  • Resources

What is Octoprint?

Octoprint is a web interface for a 3D printer. Octoprint makes it easy to use a 3D printer. It is FOSSware or free open source software.

Authenticated v. Unauthenticated

If you have not authenticated (logged in), your abilities with Octoprint will be limited. You can:

  • Observe but not set bed and nozzle temperatures from the temperature tab.

  • Observe the printer but not control the x,y,z access of the printhead from the control tab.

  • The ‘GCode’ tab functionality is the same since it is effectively read only.

  • The terminal tab will still reflect the exchange of G-Code and response, but you will not be able to send adhoc G-Code to the printer unless authenticated.

  • The timelapse tab will allow you to download data, but you will not be able to upload, slice or print a file.

Screen shot of the tabs referenced above

All tabs

The process

The process for printing a file can be quite easy. The directions are found in the next 5 sections. If you are already logged in and connected to the printer, it becomes a 3 step process: upload, slice and print.

  • Login

  • Connect to the printer

  • Upload a File

  • Slice a File

  • Print a File

Login

Login

You must login/be authenticated to print. Click the login button at the top right of the screen. Fill out the username and password, then press the Login button. If you don’t know the username or password, see a Marshal.

Connect to the Printer

Connect to printer

Connection is controlled by the connection popdown, at the top left of the screen. Values:

  • Serial Port: /dev/ttyACM0

  • Baud Rate: 250000. That’s 250,000 but with no comma.

  • Printer Profile: Fill in and correct image

  • Save and Auto-connect: you can check these if so desired.

  • Connect button: when these are set appropriately, press connect.

For troubleshooting, see Octoprint’s documentation as well.

Upload a File

Upload a file

To perform operations related to printing you must be authenticated (logged in). You can only upload STL or G-Code files. Typically STL files have the extension .stl and G-code files have either the .gco or .gcode extension. Click one of the upload buttons found on the left of the screen - see image below. Upload transfers the file to the Pi, while Upload to SD transfers the file to the printer’s SD card.

Alternately you can drag and drop a file to the browser screen.

  • Dropping on the left transfers the file to the Pi

  • Dropping on the right transfers the file to the printer’s SD card.

You can also download files from the list of files if you’d like.

Slice a File

Slice a file

Slicing turns STL files into G-Code files.
If you have a previously sliced G-Code file and have already uploaded the file you can skip this step.

To slice a file in Octoprint, click the magic wand tool to bring up the slicing dialog.

Picking a slice profile
  • Select the Slicer. Currently we ONLY have the CuraEngine installed to slice the model.

  • Select the profile. Profiles are a collection of settings for the given slicer. We’ve named them for filament material, quality and whether they provide lattice support.

    • Filament material is the actual type of material used to print the part. Among other considerations, this controls head and bed temperature and it is important to pick the correct one.

    • The quality will control how much infill or how dense the print is. Most parts will do fine with fast (low in fill) or medium (~50% infill).

    • Lattice Support is used to allow hollow spaces or overhangs greater than a 60 degree angle to be printed successfully.

  • Printer profile should default correctly as we are connecting to a single printer.

  • GCode Filename is the name of the file once slicing is complete. It is a good idea to include some indication of filament material, quality and lattice support in the name so that in the future you will know what that is.

  • After Slicing…​ Options include: can do nothing, load the file for printing and even start the print. This example will assume we picked Do nothing.

Print a File

Print a file

Once you have a G-Code file you are ready to print. Click the folder icon to load the file or the printer icon to load AND print the file immediately.

Print State

If you click load you will have to click the print button in the state dialog in order to start the print.

  • Start the print by pressing the print button

Resume Cancel
  • Pause a print by pressing the pause button. The buttons change to Restart, Resume or Cancel. Note that when you pause, sometimes GCode is already in flight and it may take a moment to pause.

  • Cancel a print by pressing the cancel button. Note that when you cancel, sometimes GCode is already in flight and it may take a moment to pause.

The Tabs

All Tabs

The tab section of the screen gives you fast access to basic printer control, monitoring and video recording. In addition, some plugins add to this list and are reached using the widget on the right side of the tab rack.

Also, no matter which tab you navigate to, you will have access to the left panel where you can upload, slice and print files as well as control whether the machine is connected.

Temperature control

Set Temperature

From this tab you can monitor bed and hot end temperature. As indicated on the screen, hot end is T and Bed is Bed. There are both the actual value as well as the target - target is the pale version of the color. It’s often a good idea to heat the bed prior to sending a print since the bed takes much longer than the hot end to heat up.

To do so, simply enter target values in celsius and press the set button. Typical settings for PLA are 185 for the hot end and 60 for the bed.

You can also set Offset values for the temperatures - this is very uncommon, but would be used in cases where your printer has a temperature offset value or where you might be using an exotic material such as laywood and are looking for temperature variability to mimic the appearance of wood variations.

Printer Control

Printer Control Tab

This tab serves two main purposes:

  • Controlling the printer: Here you can home the towers, move the hot end x, y and z a set distance, turn motors and fans on or off, extrude or withdraw filament (be sure the hot end is heated for this), or even control flow and feed rates. This tab is helpful when levelling the bed or replacing filament especially.

  • Watching the print: We have a small webcam on the printer pointed at the bed for you - from this tab you can watch that camera real time whether or not you’re printing.

GCode Viewer

GCode Viewer Tab

The GCode Viewer page gives you realtime visual representation of the gcode as it’s executing on the printer but it can also be used to “walk” the GCode. To see an individual layer progress, drag the scroll bar on the bottom towards the right - to see a progression of layers, drag the scroll bar on the right side up.

You can also control the behavior of the visualization from this tab and see information about how much code and filament is used by any layer.

Terminal

Terminal Tab

The terminal tab is a useful place to review GCode being sent to the printer, but it can also be a good place to send individual GCode commands. For example, what if after homing the towers you want to go to X100 Y100 and Z0 on your printer explicitly for levelling purposes. This is where you could issue the GCode command directly.

In addition there are a few options to suppress certain “noisy” commands and enable or disable autoscroll

Fake ACK

There is one additional unique option here under the Advanced options twist at the bottom - The Fake Acknowledgement. This is something you won’t likely need, but if for some reason communication to the printer appears to have been lost, issuing a Fake Acknowledgement may restore the connection.

Timelapse

This tab allows you to record to video the printing process. Timelapse Mode must be set to one of the settings other than Off before starting the print if you wish to record a video.

System

System Screen

Sometimes it is necessary to restart or shutdown if things are not working as expected.  Restarting and shutting down Octoprint is done through the System menu.  There are 3 options:

  • Restart OctoPrint: This does not restart the entire system, instead it just restarts the services that Octoprint uses to host the application.

  • Reboot: This will restart the entire Raspberry Pi and reset the operating system as well as Octoprint

  • Shutdown: This will turn the Raspberry Pi off completely

Tips and tricks

Temperature Tip
  • The Rostock bed heats up slowly. It is a good idea to set the temperature from the temperature tab. Select the temperature appropriate for the material.

  • Octoprint is quite capable. It’s worth spending some time to understand and experiment with the settings.

  • Octoprint’s interface is sometimes a little slow and bad at refreshing content.  Refresh your browser page if you appear to randomly lose access.

  • When two or more people try to manage the printer simultaneously, Octoprint does not do a good job of knowing which person has the control.  Ensure you are not attempting to simultaneously control the printer when someone else is using it.

  • If you want to capture timelapse pictures of your print for review later, you must set the timelapse before you start your print.

  • The Terminal tab can be very useful if you need to level the print bed as you can issue commands to move the nozzle and check level at various points across the bed.

Settings

Settings Screen

Warning: Settings is for more advanced users. The average person can skip this section.

For those who wish to add profiles, control the printer settings, or add advanced GCode processing, Settings is where these are handled.  There are several configuration elements on the left side, they are as follows:

  • Printer Section: All things related to the printer itself

    • Serial Connection: This is where you can configure the serial port, baud rate, how often to update the interface for Temperatures and even set timeout values

    • Printer Profiles: This is where a new printer can be created or any existing ones can get modified. For instance, bed size is configured here.

    • Temperatures: This is where you can configure preferred temperatures for ABS and PLA for the printer

    • Terminal Filters: Sometimes the output in the terminal screen is too verbose, you can add filters here to keep it cleaner.

    • GCode scripts: If you have some custom GCode actions, this is where you can add your scripts. A common example would be if you wanted to change color when pausing your print - you might want to after pause, raise the nozzle 20mm Z so that you can pull out the previous filament and insert the new, and then before resume, home the towers in case you knocked the head out of alignment.

  • Features: Control special features such as the webcam or connection options

    • Features: Various options that can be turned on and off such as whether you want to see the temperature graph

    • Webcam: Options around the webcam such as where you can view timelapse output

    • Access Control: Where administration of users can be configured

    • API: For those wishing to programmatically interface with Octoprint, this is where the session specific key is to allow you to make API calls.

  • Octoprint: Configurations for the Octoprint application itself

    • Server: Commands for shutdown and restart are configurable here

    • Folders: You can configure where to store logs and timelapse photos here.

    • Appearance: You can set custom colors, titles and language sets here

    • Logs: Review and delete log files

    • Plugin Manager: There are plugins for Octoprint - here is where you manage/install them.

    • Software Update: Download and install Octoprint updates

  • Plugins: Additional management of plugins

    • Cura Engine: You can manage Cura profiles for slicing here.

Resources