All Projects → technik-gegg → OctoPrint-Smuff

technik-gegg / OctoPrint-Smuff

Licence: other
OctoPrint Plugin for SMuFF

Programming Languages

python
139335 projects - #7 most used programming language
Jinja
831 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects
Less
1899 projects

Projects that are alternatives of or similar to OctoPrint-Smuff

SMuFF-1.1
Latest version of the SMuFF firmware to be compiled in PlatformIO
Stars: ✭ 117 (+588.24%)
Mutual labels:  mmu, 3d-printing, multi-material, smuff
OctoPrint-AstroPrint
Connect your OctoPrint device to the AstroPrint 3D Printing Cloud
Stars: ✭ 26 (+52.94%)
Mutual labels:  octoprint, 3d-printing, octoprint-plugin
OctoPrint-GitFiles
With this plugin, you can use a github/gitlab repository for keeping your OctoPrint Files collection up-to-date.
Stars: ✭ 28 (+64.71%)
Mutual labels:  octoprint, 3d-printing, octoprint-plugin
OctoPrint-TasmotaMQTT
No description or website provided.
Stars: ✭ 17 (+0%)
Mutual labels:  octoprint, octoprint-plugin
OctoPrint-CameraSettings
An OctoPrint plugin that allows a user to interactively change camera settings.
Stars: ✭ 31 (+82.35%)
Mutual labels:  octoprint, octoprint-plugin
Octoprint-Cancelobject
No description or website provided.
Stars: ✭ 90 (+429.41%)
Mutual labels:  octoprint, octoprint-plugin
OctoPrint-Webhooks
Make OctoPrint events call your custom webhooks!
Stars: ✭ 27 (+58.82%)
Mutual labels:  octoprint, 3d-printing
OctoPrint-SimpleEmergencyStop
A simple plugin that add an emergency stop buton on NavBar of OctoPrint
Stars: ✭ 17 (+0%)
Mutual labels:  octoprint, octoprint-plugin
OctoPrint-MultiColors
Inject GCODE at specified layers to allow multi color printing via filament change
Stars: ✭ 20 (+17.65%)
Mutual labels:  octoprint, 3d-printing
OctoPrint-Marlin-Flasher
Arduino/Marlin firmware flasher for OctoPrint
Stars: ✭ 36 (+111.76%)
Mutual labels:  octoprint, octoprint-plugin
octo4a
Use your old Android device as an OctoPrint server.
Stars: ✭ 1,000 (+5782.35%)
Mutual labels:  octoprint, 3d-printing
octoscreen
A touchscreen client for Octoprint
Stars: ✭ 26 (+52.94%)
Mutual labels:  octoprint, 3d-printing
octoprint-cli
Command line tool for controlling your OctoPrint 3D printer server
Stars: ✭ 25 (+47.06%)
Mutual labels:  octoprint, 3d-printing
OctoPrint-DisplayProgress
Displays the job progress on the printer's display
Stars: ✭ 19 (+11.76%)
Mutual labels:  octoprint, octoprint-plugin
threedy
Home Assistant card for 3D printer status and management.
Stars: ✭ 159 (+835.29%)
Mutual labels:  octoprint, 3d-printing
OctoPrint-GcodeEditor
Edit gcode on OctoPrint
Stars: ✭ 20 (+17.65%)
Mutual labels:  octoprint, octoprint-plugin
MK404
A functional Simulator for Prusa (Mini/Einsy) Rambo based printers
Stars: ✭ 52 (+205.88%)
Mutual labels:  mmu, 3d-printing
OctoPrint-AutomaticShutdown
Plugin for automatically shutting down the system after print is finished
Stars: ✭ 18 (+5.88%)
Mutual labels:  octoprint, octoprint-plugin
OctoPrint-Tasmota
No description or website provided.
Stars: ✭ 52 (+205.88%)
Mutual labels:  octoprint, octoprint-plugin
OctoPrint-CuraEngineLegacy
Plugin for slicing via Cura Legacy from within OctoPrint
Stars: ✭ 16 (-5.88%)
Mutual labels:  octoprint, octoprint-plugin

OctoPrint-Smuff

This is a plugin for OctoPrint which handles tool changes on the SMuFF.

In a nutshell: This plugin runs in the background and tracks tool change GCodes (Tx) via the octoprint.comm.protocol.gcode.queuing and octoprint.comm.protocol.gcode.send hooks of OctoPrint. When triggered, the plugin will take care of sending the according commands to the SMuFF via the serial interface.

Setup

Install the plugin via the bundled Plugin Manager directly from the OctoPrint Repository or manually by using this URL:

https://github.com/technik-gegg/OctoPrint-Smuff/archive/master.zip

From SMuFF firmware V2.06 on, you're able to connect with the SMuFF directly via the onboard USB connector to your Raspberry Pi. This is not only the most convenient way but also seems the most reliable. For further information on this topic, please have a look at the Configuration section.

In order to allow this plugin communicate correctly with the SMuFF, as a first step, you have to do the following:

  • Connect the SMuFF via USB to the Raspberry Pi OR
  • Setup the UART mode on your Raspberry Pi and connect your SMuFF controller board via a 3-Wire serial interface (UART)

Setting up your Raspberry Pi for UART connection

Open the /boot/config.txt file on your Raspberry Pi and add the following lines to it:

Raspi-Config

Save the configuration and reboot. After rebooting, make sure you'll see the ttyS0 device (RPI-3) or the ttyAMA1 device (RPI-4) in your /dev folder.

Notice: If you're having problems connecting the SMuFF to the Raspi 3, try removing the dt-overlay=disable-bt from the config.txt, reboot and try again

For the physical serial connection get a 3-Wire cable and connect the pins 6 or 9 (GND), 8 (TX, aka GPIO14 aka UART0_TXD) and 10 (RX aka GPIO15 aka UART0_RXD) of the Raspi-3 expansion header to the serial interface of your SMuFF. On SKR (E3) controller boards that's usually the header named TFT.

Raspi-Connector Image: Raspberry Pi expansion header

For the Raspberry Pi 4 I'd recommend using the 2nd UART from the PL011, since it's a "real" UART. The TX and RX signals for this UART can be found at the pins 27 (TX, aka GPIO0 aka UART2_TXD) and 28 (RX,aka GPIO1 aka UART2_RXD). Those pins are not being used on the Pi 3. The GND is available on pin 30.

Make sure that you have a cross-over connection for the TX and RX lines:

  • GND goes to GND
  • TX goes to RX
  • and RX goes to TX

Notice: You don't have to wire any of the power pins (+5V or +3.3V), since both, the Raspberry and the SMuFF, are supposed to be powered on their own.

Also, make sure that you have your SMuFF configured at the same baudrate you'll be using in the plugin (115200 baud is recommended).

Configuration

For the configuration of this plugin, please head over to the SMuFFs main website How to section, where you'll find a comprehensive write-up with step-by-step instruction.

Marlin Setup

Important In order to make SMuFF and plugin play well together with Marlin, you have to modify some settings in your printers firmware, recompile and flash it to your printer.

This section on the SMuFF website will explain in detail what you've got to do step-by-step.

Slicing Multi Material Models

To set up a test print, you need to slice a multi material model first and then upload it to OctoPrint.

Please notice: This plugin won't work, if you copy the sliced model directly onto your printers SD-Card. You have to use the OctoPrints internal storage for this and print it from there.

To be able to slice multi material models you need to set up you slicer accordingly. There's a fantastic video on YouTube covering this topic from Michael (a.k.a.Teaching Tech) which covers all the known slicers here.

Allthough Michael is referring to dual extrusion, the process is still the same for more than two materials. One important point is that you need to have configured all tools (i.e. feedrate, temperatures, etc.) according to your printer, before you move on setting up the different processes for each individual material (or color).

Looking for multi material models?

If you're looking for high quality models to print, have a look at Roman Tyr's (a.k.a. Cipis) Printables collection. He has a really nice collection of models for multi material 3D printing. If you download one (or more) of his models, please make sure to leave him a like.


Recent Changes

V1.2.0 - Updated plugin for the latest SMuFF firmware, version (V3.13)

Please be aware: You must update your SMuFF firmware to the latest version before you move on using this version of the plugin
  • extracted core functions of the SMuFF into smuff_core.py in order to be able to share the same code base between OctoPrint and Klipper.
  • integrated all new features of V3.13 of the SMuFF firmware.
  • added a SMuFF specific tab to the OctoPrint interface, which makes debugging a lot easier - in case you have to.
  • assigned the most common functions to buttons in the new SMuFF-Tab for controlling the SMuFF directly, so you don't need an extra plugin for that.
  • extended the status indicator in the navbar. It now displays the status of both feeders and also reports if a jam was detected (in which case it'll turn red).
  • the communication with the SMuFF has improved and is now more stable than in the previous versions. It will also recover automatically if the connection gets interrupted.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].