Der Einstieg in den 3D-Druck - Teil 4

In the first three parts of this blog series you have already learned a lot about the 3D printer and technical terms in this area. At the same time you have learned how to modify a printer and optimize using terminal commands. The optimizations were necessary because hardware modification is always associated with software modification. In the last part we replaced the printer drivers by TMC2208 V1.2 and restart the steps in the software.

In this part we will once again perform a tuning measure at the Heatbed that so-called Mesh Bed Leveling. This we have already made in the first part with the set screws from the Heatbed, but through the firmware Knutwurst you have the opportunity to carry out a Mesh Bed Leveling also software side. This should be part of this blog part, at the same time I would like to introduce you to Octoprint.

Why this whole tuning and optimize?

The first question, which is probably now in this blog post is now, why I'm now starting in the fourth part of this blog series with an optimizer. For this I want to describe them less in words, why that is so important, but Figure 1 is to show you what tuning and optimization brings.

Figure 1: Calibration cube in comparison

Figure 1: Calibration cube in comparison

If you now think that I only printed these three cubes, then I'll show you the collection I found in the brevity in the office, see Figure 2.

Figure 2: All calibration cubes found

Figure 2: All calibration cubes found

You can see the quality of the individual dice that I have traversed many steps in tuning and optimization. Everything that the print image is that I am really satisfied. Overall, it has taken together over 40 hours, just thus to receive a temporal idea. The compilation of the necessary information and fault diagnosis is not yet included.

The software-side Mesh Bed Leveling

The software-side Mesh Bed Leveling is the finetuning for normal leveling. At this point an excerpt from the first blog post of this series, on the topic of Leveling, see quote 1.

So is the speech from the levels, so it is simply meant that the distance between nozzle is to be adjusted to the heatbed. To do this, the hotend is positioned on the home position, ie the point {0.0.0} in the coordinate system of the printer via the corresponding menu item. Before you put a thin sheet of paper between Nozzle and Heatbed and deactivates the motors for all axes after reaching the "home" position. Depending on the manufacturer, it is recommended to control certain points on the Heatbed and to adjust the distance via the set screws under the heat bed. You will find many answers on the internet when correctly delegated. It was enough for me when the leaf between the Heatbed and Nozzle, slightly scratches, while Iighing the heatbed at 60 ° C. "

Quote 1: Abstract on Leveling

Thus, however, the normal leveling is done. If the Heatbed has a curvature, the normal leveling helps only conditionally. Here comes the Mesh Bed Leveling into the game, which balances the curvature of software side. You can imagine this as a kind of correction offset on the actual position value. These correction offices are stored in an internal matrix in the EEPROM and must be loaded before the first print job. So that you can use the Mesh Bed Leveling, we must first reset the matrix stored in the firmware and then leave it again. First, navigate to the print menu and opens the Special Menu, see Figure 3.

Figure 3: Open from the Special Menu

Figure 3: Open from the Special Menu

The Reload button is in this case confirmation to help. Next, you should select and load the item "Load FW Defaults", see Figure 4.

Figure 4: Load firmware standard values

Figure 4: Load firmware standard values

Next, navigate to the menu item "PREHEAT ULTRABASE" with which our heated is meant, see Figure 5.

Figure 5: Bring heated to operating temperature

Figure 5: Bring heated to operating temperature

Wait for a moment as the Heatbed needs a while to be heated. Then switch to the menu item "Mesh Leveling" and directly then "Start Mesh Leveling", see Figure 6.

Figure 6: Start Mesh Leveling

Figure 6: Start Mesh Leveling

Now comes the part, which is now crucial for Mesh Bed Leveling. The hotend now drives a total of 25 positions on the Heatbed one after the other. At this point, you must correctly align the nozzle at each individual position. But do not use the rotary screws on the heatbed, but the menu items usable in the menu, see Figure 7.

Figure 7: Align hotend correctly

Figure 7: Align hotend correctly

Due to the five positions in the X-axis on five rows of the Y-axis, the curvature can be determined accurately. If you have all 25 positions solved, select "Save Eeprom" and directly then "End Mesh Leveling", see Figure 8.

Figure 8: End and save the Mesh Bed Leveling

Figure 8: End and save the Mesh Bed Leveling

In the main menu of the Special menu, then select "Save Eeprom" so that all corrections are stored, see Figure 9.

Figure 9: Save all changes in the EEPROM

Figure 9: Save all changes in the EEPROM

The best at this point is, for 30 seconds after saving the data in the EEPROM, the 3D printer should be restarted.

At this point a little objection on my part. Unfortunately, I had problems at the beginning to save the Mesh Bed Leveling, why can not I explain directly today. In my case, I had to plug an SD card into the printer, choose all other connections caps, "Load FW Default" and "Save Eeprom". Then restart the 3D printer and start again from the front with the Mesh Bed Leveling. In a second attempt I had to remove the USB cable from the printer.

In the last step, the Mesh Bed Leveling must now be activated in the gcode of each print. In order to be accurate, that really only once per printer start must be made, but for security, however, the Mesh Bed Leveling should be activated in each GCODE pressure.

Octoprint as a printer server

In the last part of my blog series I mentioned Octoprint. This is a printer server that provides a 3D printer timely GCODE and other features, e.g. Time-lapse recordings and statistics provoked. Octoprint runs in my case on a Raspberry Pi 4, with the Octopi image. Octoprint is also available for all common operating systems. Before the question now comes up, Octoprint is not the only printer server software. Here too, the popular Repetier server mentioned, which I have not tested so far. In the coarse sense, both printer servers make the same, but differentiate themselves through some features and that the Repetier server can control several 3D printers in parallel. The Repetier Server should also be able to slip down STL files in a later version, but this is not yet possible.

Since now has been roughly explained what Octoprint is, I would like to show you the installation, as well as some useful plugins and give an overview of the surface. But before it continues, it was still said that a print server like the Octopi is not essential for a 3D printing operation, printing over the SD card or direct connection to a PC or laptop. The disadvantage is that you can not switch off your PC then and a PI consumes less power than a laptop or PC. If I have aroused your interest, you should not immediately get the existing Raspberry Pi from the craft box! In my tests, I quickly realized that I have produced unclean print images and error cases with a Raspberry Pi 2 and 3. Last but not least, some prints have not succeeded because the software-side connection between 3D printers and Raspberry Pi has been interrupted, so you should grab to a Raspberry Pi 4, with the version with 4GB RAM completely sufficient.

Thus, we also come directly to the first big question: "Where do I get Octopi?". There are various websites where you can download Octopi, but I recommend the official site of Octoprint. Shortly before the end of the article I also experienced on the download page, that over the offered by the Raspeberry Pi Foundation Raspberry Pi Imager Also, an Octopi image can be copied to an SD card. So you have two trusted sources now.

No matter which variant you have decided, the OCTOPI image must be copied to a MicroSD card suitable for the Raspberry PI and be plugged into the Raspberry Pi successfully. Then close, if not already done, LAN cable and USB cable for connection to the printer and power cable. If you do not want to operate the Raspberry Pi via SSH, at least one keyboard and a screen must be additionally connected. In the first step, it is best to change both the password for the user "PI" and, if necessary, perform the settings for localization and last update of the programs. The two first points can be converted by means of the terminal command of code 1, the latter via code 2.

sudo raspi-config
Code 1: Raspberry Pi Open configuration in the terminal
Sudo Apt Update && sudo Apt Dist-Upgrade -y && sudo apt autoremove
Code 2: Update programs on the PI

Another small tip on the edge: If you do not need a graphical interface, in this case that would be the case, then you can use the 0.44GB Raspbian Lite. Here you actually get only the most necessary software packages and the current operating system Raspbian.

If you want to operate several Octopi's, you should still change the host name, which can also be done via code 1. After that you should restart the Raspberry Pi once so that all adjustments are taken over.

Thus, the basic software and the operating system has ever been configured on the latest state and reasonably secure, a restart is good at this point.

After the restart, it's time to set up Octoprint. To do this, open a browser of your choice and enter one of the web addresses specified in code 3.

http: //Octopi.local
or
http: //
Code 3: Web addresses for opening Octoprint

If you have changed the hostname from the Raspberry Pi, so must take place Octopi The newly registered host name can be used. With the entry of the correct IP or the name, you will be welcomed after a short load time, see Figure 10.

Figure 10: Start Setup Wizard Octoprint

Figure 10: Start Setup Wizard Octoprint

At this point you will be routed with simple questions and settings by the basic configuration. IMPORTANT First of all, creating a new account, see Figure 11.

Figure 11: Create a new account

Figure 11: Create a new account

In my case, I always generate an admin account, quasi a masteraccount and later further accounts. The MasterAccount will only use me if all other accounts do not help anymore. How to manage your access is left to you.

The next three points, "Anonymous Usage Tracking", "Online Check" and Plugin Blacklist "you can configure according to your request. Personally, I have activated everything and see no problems there.

But the penultimate point is interesting Default printer profile with his subpieces. Here you basically configure your printer.

To return to a point at the beginning of Octoprint, Octoprint can only always manage a printer, so the default printer is usually the 3D printer that is firmly connected to the Raspberry Pi. Therefore, I name the name around in i3 mega s and the model in AnyCubic I3 Mega S, See Figure 12.

Figure 12: Customize general printer settings

Figure 12: Customize general printer settings

In the pressure bed & volume tab, the dimensions must now be set by the print bed and the coordinate system, see Figure 13.

Figure 13: Configuring pressure bed & volume

Figure 13: Configuring pressure bed & volume

In my case, since I use the firmware Knutwurst, the dimensions are not as the original information of the manufacturer, but a little bigger! You have to check that yourself at this point.

The riders axes, which defines the definitions for the speeds and Hotend & Extruder, which defines the definition of the nozzle diameter and the extruder number, can remain untouched for an AnyCubic i3 mega s.

Before you're done with the facility, the team around Octoprint gives a few warnings and hints that you should read, see Figure 14.

Figure 14: Warning and notes of Octoprint on the topic 3D printing

Figure 14: Warning and notes of Octoprint on the topic 3D printing

With terminate confirm these instructions and stop the Setup Wizard and see the dashboard of Octoprint, see Figure 15.

Figure 15: Dashboard from Octoprint

Figure 15: Dashboard from Octoprint

Before the printer is now connected and printed wild, I would like to explain the standard web interface of Octoprint briefly. Roughly, the dashboard can be divided into three segments, see Figure 16.

Figure 16: Division of Dashboard Octoprint

Figure 16: Division of Dashboard Octoprint

First, there would be the menu bar, in Figure 16 with the red 1, which can be switched to the settings, the system settings, announcements and user settings. Especially with the settings, if you update or modify Octoprint, you will once again see or modify or modify.

Then, since the sidebar is marked in Figure 16 with the red 2, which takes over the connection to the printer, reproduces the status and includes a file browser, as well as printer notification. Especially when you start a print or problems, you will find important information.

Lastly, the main view comes, marked in Figure 16 with the red 3. In this overview, the temperature of the printer components can be viewed, the printer controlled, the current printing process considers in the GCODE Viewer, entered and read in Terminal commands and controlled and timepieces. Especially the temperature monitoring and the terminal are essential tabs when printing and modding the printer.

If the printer is connected to your Raspberry Pi, press on the button associate tab associate In the sidebar. Octoprint is now trying to find a serial port to which a device is connected, usually to determine TTYUSB0 and the correct baud rate. Most 3D printers provide acoustic signals when connecting to the user to inform the user. At the same time, the settings and current data are updated on the entire dashboard, see Figure 17.

Figure 17: Upstream dashboard with connected printer

Figure 17: Upstream dashboard with connected printer

You see the current status, here Ready And the current temperature of the bed and the nozzle. From the principle, the first pressure can now be done via Octoprint, but must first in the tab Files In the Sidebar, a corresponding GCODE file is uploaded. To do this, use the blue Upload Button and load your files conveniently. These appear sorted alphabetically, see Figure 18.

Figure 18: Uploaded gcode files in the files

Figure 18: Uploaded gcode files in the files

Interesting is that Octoprint analyzes these gcode files and if the properties of the file are extended, also interesting information such as the printing time and model size will receive, see Figure 19.

Figure 19: Information about the printing part

Figure 19: Information about the printing part

Most recently, the question should be clarified whether a printer server, such as Octoprint with a Raspberry Pi, makes sense. This question can and I do not want to answer for you! For me, however, it was an important topic that my big tower PC is not 24/7 and so immense electricity consumes. A Raspberry Pi is, let's take the printer out of the equation, much more efficient than my tower PC with its 750 watt power supply! However, I quickly found that only the Raspberry Pi 4 has sufficient power to communicate cleanly with the printer. With a Raspberry Pi 2 and 3b, too, I had severe fluctuations in the print image, which I did not get solved with modifications. In a 3D printer forum, this problem is always addressed again and again and the simplest solution is actually a rapeberry Pi 4 with at least 4GB RAM. At the same time, through further hardware modifications, I could assemble my Octopi directly to the 3D printer, so I have everything in one place in a move or location change directly. One last point, which is still addressed in a later part, is the use of the GPIOS of the PI's for e.g. a lighting or an external fan.

What will she expect next? Now we have the standard image of Octoprint on our Raspberry Pi, which should be extended by some useful features. These features or plugins should be a topic. I participate in some interesting analysis plugins, but also plugins for print optimization. Until the next blog, you can continue to familiarize yourself with the basic functions and realize your first prints with Octoprint.

This and other projects can be found on GitHub https://github.com/M3taKn1ght/Blog-Repo.

Basics software

4 comments

Andreas Wolter

Andreas Wolter

Die Links zu den vorangegangenen Teilen dieser Blogreihe wurden ergänzt.

Kobold

Kobold

Ich habe den Artikel “Getting started with 3D printing Part 3” nicht finden können. Ich konnte ihn bei meiner Suche hier im Blog auch nicht finden. Ein Link auf diesen Teil wäre schön. – Danke!

Dieter Behm

Dieter Behm

Danke für den Artikel. Ich habe seid 2 Monaten einen Ender 3 Pro und auch octoprint installiert. Leider auf dem Raspi 3 B . Werde jetzt den Raspi 4 installieren und hoffen das der Druck dann ordentlich läuft.
Freue mich auf weitere Blog´s von Ihnen.
Gruß und einen schönen Sonntag aus Dortmund
Dieter

Lars Sternkopf

Lars Sternkopf

Hallo, es wäre doch schön, wenn die vorangegangenen Teile (1 bis 3) im Beitrag verlinkt wären.
Viele Grüße

Leave a comment

All comments are moderated before being published

Recommended blog posts

  1. Install ESP32 now from the board manager
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. OTA - Over the Air - ESP programming via WLAN