Giter Site home page Giter Site logo

fieldofview / cura-octoprintplugin Goto Github PK

View Code? Open in Web Editor NEW
481.0 21.0 74.0 598 KB

Cura plugin which enables printing directly to OctoPrint and monitoring the process

License: GNU Affero General Public License v3.0

CMake 0.38% Python 58.54% QML 41.08%
cura octoprint cura-plugin 3d-printing

cura-octoprintplugin's Introduction

OctoPrintPlugin

Cura plugin which enables printing directly to OctoPrint and monitoring the progress.

OctoPrint is a registered trademark. For more information about OctoPrint, see octoprint.org.

This plugin started out as a fork of the UM3NetworkPrinting plugin

This plugin is made possible in part by a contribution of @ErikDeBruijn and my other github sponsors. The development of this plugin can be sponsored via Github Sponsors or Paypal.

Installation

Marketplace (recommended):

The plugin is available through the Cura Marketplace as the OctoPrint Connection plugin

Manually:

Download or clone the repository into [Cura configuration folder]/plugins/OctoPrintPlugin. When cloning the repository, make sure to use the --recursive flag to include the submodules.

The configuration folder can be found via Help -> Show Configuration Folder inside Cura. This opens the following folder:

  • Windows: %APPDATA%\cura\<Cura version>\, (usually C:\Users\<your username>\AppData\Roaming\cura\<Cura version>\)
  • Mac OS: $HOME/Library/Application Support/cura/<Cura version>/
  • Linux: $HOME/.local/share/cura/<Cura version>/

How to use

  • Make sure OctoPrint is up and running, and the discovery plugin is not disabled
  • In Cura, add a local printer matching the 3d printer you have connected to OctoPrint
  • Select "Connect to OctoPrint" on the Printers pane of the preferences.
  • Select your OctoPrint instance from the list and enter the API key which is available in the OctoPrint settings, or push the "Request..." button to request an application key from the OctoPrint instance.
  • Press the "Connect" button to connect the printer in Cura with the OctoPrint instance.
  • From this point on, the print monitor should be functional and you should be able to switch to "Print to Octoprint" in the lower right of the Cura window.

Plugins

The OctoPrint Connection plugin has special support for the following OctoPrint plugins:

Support for including a thubmnail of the model along with the gcode.

Support turning on the printer before sending a print job to OctoPrint.

Support for multiple cameras in the monitor view.

Delay starting the print until after gcode analysis is done.

Notes on UltiGCode (Ultimaker 2/Ultimaker 2+)

The Ultimaker 2(+) family uses a flavor of GCode named UltiGCode. Unfortunately printing using UltiGCode flavor does not work when printing over the USB connection. That is why using OctoPrint does not work with UltiGCode flavor.

Included dependencies

This plugin contains a submodule/copy of the following dependecies:

zeroconf as maintained by jstasiak.

Python-zeroconf is licensed under the LGPL-2.1

The module is included in the OctoPrintPlugin to replace the version that ships with older versions of Cura because that version has bugs.

ifaddr as maintained by pydron.

ifaddr is licensed under the MIT license.

async-timeout as maintained by aio-libs

async-timeout is licensed under the Apache License, Version 2.0.

ifaddr and async-timeout are included in the OctoPrintPlugin because it is a dependency of python-zeroconf and they are not included with older versions of Cura.

cura-octoprintplugin's People

Contributors

ad1217 avatar artemy avatar ayufan avatar baod-rate avatar chriswal avatar computergeek125 avatar elkin-vasily avatar fieldofview avatar gebner avatar gferon avatar martinh2011 avatar mgsb avatar misak0007 avatar nallath avatar ngraziano avatar nicolas-ivering avatar theoneogre avatar thopiekar avatar wizhippo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cura-octoprintplugin's Issues

Warn user about incompatibility with UltiGCode

Printer in the Ultimaker2 family use UltiGCode flavored gcode. Due to a bug in the firmware, UltiGCode and USB printing don't go well together, so neither does UltiGCode and OctoPrint. The plugin should warn the user about this when it detects the gcode if UltiGCode flavored.

Pre-heat button fails on M80 printers

My printer requires the power to be turned on with M80 before heating the bed. The fix could be as easy as just sending that command first, but I don't know if that might be something you don't want to do on printers that don't require it or if there are any other caveats.

Allow queueing a printjob while OctoPrint is connected but printer is turned off

Currently, OctoPrintPlugin issues an error when OctoPrint is online, but the printer is not connected: "OctoPrint is offline. Unable to start a new job."

The plugin should instead send the print job to OctoPrint even when the printer is turned off.

This will allow use of OctoPrint plugins like PSU Control to turn on the printer automatically when a new print job is received and begun.

Note: OctoPrintPlugin should allow print jobs to be sent even if the setting "start print job automatically after uploading" is enabled. This goal is to allow the user to begin printing with one click on the "Print with OctoPrint" button. After receiving the print job, OctoPrint will turn on the printer and begin printing.

When using first layer bed temp, plugin displays "normal" bed target temp

When preheating and printing first layer, plugin displays regular build plate temp as target rather than first layer temp target printer is actually using at that time.

Version tested: Cura daily PPA, master (2.6.99-master~201708250033~rev2169~pkg163~ubuntu17.04.1)
cura-plugin-octoprint (2.6.99~201708161146~159~ubuntu17.04.1)

No video in octoprint preview

As reported by @maukcc here: Ultimaker/Cura#1947

OS ubuntu 16.04
Cura 2.5.99 master

Since a couple of days the video feed from Octoprint is gone in Cura.
Also when setting Octoprint up, sometimes you can see the xxxx_octoprint._tcp.local but most of the times it is not there and you manually have to enter the IP address.

sent data

so it said sending data but none thing happened on the octroprint side i am useing cura 2.4 on the branch of 2.4

Plugin fails to print from Cura 2.5

I'm using the 2.5 branch of the plugin with the Cura 2.5 beta, and while Cura will communicate with the printer and retrieve status just fine, it won't print. The progress bar appears momentarily, but OctoPrint never receives the file.

Stuck "Sending data to OctoPrint" message box

Clicking on "Print with OctoPrint" when the printing server is offline opens a "Sending data to OctoPrint" message box that never disappears.

When the server is powered off, there is a loading bar for some seconds first. When it's powered on, but octoprint isn't running, the loading bar disappears quickly, but the message box stays.

image

Unable to install python3-zeroconf

I am using Mac OS and have switched the global python version with pyenv. But when I try to install the python3-zeroconf module, I get this:

Could not find a version that satisfies the requirement python3-zeroconf (from versions: ) No matching distribution found for python3-zeroconf

Since the new Cura brings its own python version, do I have install the module through other means?

Printing does not start

Windows 10 64-Bit
Cura 2.5
Octoprint 1.3.2 on Raspian Jessie
Printer Monoprice Select v2.1 (Prusa i3 selected)
Printer connects and I'm able to see temps. Pre-heat button works.
"Print with Octoprint" says it transfers but heaters do not turn on and job does not start.
Cura can see a job started on Octoprint. Camera feed shows in Cura.
I did not see anything in grep -r octoprint in /var/log. Where else should I look?
In cura.log all I see are

2017-05-04 18:44:21,996 - DEBUG - UM.View.GL.ShaderProgram.load [55]: Loading shader file [C:\Program Files\Cura 2.5\resources\shaders\transparent_object.shader]...
2017-05-04 18:44:23,715 - DEBUG - CuraEngineBackend.CuraEngineBackend._onSlicingFinishedMessage [447]: Slicing took 2.537142276763916 seconds
2017-05-04 18:44:23,720 - DEBUG - UM.Backend.Backend._logSocketState [176]: Socket state changed to Closing
2017-05-04 18:44:23,723 - DEBUG - UM.Backend.Backend._onSocketError [198]: Socket debug: Arcus Error (13): Closing socket because other side requested close.
2017-05-04 18:44:23,727 - DEBUG - UM.Backend.Backend._logSocketState [178]: Socket state changed to Closed
2017-05-04 18:44:23,729 - DEBUG - CuraEngineBackend.CuraEngineBackend._onBackendQuit [545]: Backend quit with return code 0. Resetting process and socket.
2017-05-04 18:44:23,909 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:25,919 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:27,894 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:28,800 - DEBUG - LocalFileOutputDevice.LocalFileOutputDevicePlugin.requestWrite [126]: Writing to [C:/Users/Paul/Desktop/3D Printing/pi base.gcode]...
2017-05-04 18:44:29,914 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:30,468 - DEBUG - LocalFileOutputDevice.LocalFileOutputDevicePlugin.requestWrite [152]: Writing to Local File C:/Users/Paul/Desktop/3D Printing/pi base.gcode in text mode
2017-05-04 18:44:30,468 - DEBUG - SliceInfoPlugin.SliceInfo.run [51]: Sending anonymous slice info to [https://stats.youmagine.com/curastats/slice]...
2017-05-04 18:44:30,708 - DEBUG - UM.FileHandler.WriteFileJob.run [41]: Writing file took 0.2130270004272461 seconds
2017-05-04 18:44:31,889 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:32,546 - INFO - SliceInfoPlugin.SliceInfo.run [55]: Sent anonymous slice info.
2017-05-04 18:44:33,900 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:35,895 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:37,886 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:38,802 - DEBUG - AutoSave.AutoSave._onTimeout [48]: Autosaving preferences, instances and profiles
2017-05-04 18:44:39,912 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:41,925 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:43,902 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:45,926 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:46,553 - DEBUG - LocalFileOutputDevice.LocalFileOutputDevicePlugin.requestWrite [126]: Writing to [C:/Users/Paul/Desktop/3D Printing/pi base.gcode]...
2017-05-04 18:44:47,912 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:48,697 - DEBUG - LocalFileOutputDevice.LocalFileOutputDevicePlugin.requestWrite [155]: Writing to Local File C:/Users/Paul/Desktop/3D Printing/pi base.gcode in binary mode
2017-05-04 18:44:48,698 - DEBUG - SliceInfoPlugin.SliceInfo.run [51]: Sending anonymous slice info to [https://stats.youmagine.com/curastats/slice]...
2017-05-04 18:44:49,098 - DEBUG - UM.FileHandler.WriteFileJob.run [41]: Writing file took 0.375058650970459 seconds
2017-05-04 18:44:49,920 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:50,832 - INFO - SliceInfoPlugin.SliceInfo.run [55]: Sent anonymous slice info.
2017-05-04 18:44:51,892 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:53,947 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502
2017-05-04 18:44:55,937 - WARNING - OctoPrintPlugin.OctoPrintOutputDevice._onRequestFinished [553]: Received an unexpected returncode: 502

What else should I look at?

Getting lot of KeyError: "temperature"

2017-06-07 01:29:04,221 - CRITICAL - cura.CrashHandler.show [36]: An uncaught exception has occurred!
2017-06-07 01:29:04,222 - CRITICAL - cura.CrashHandler.show [39]: Traceback (most recent call last):
2017-06-07 01:29:04,223 - CRITICAL - cura.CrashHandler.show [39]:   File "/home/rafaelrs/AddProgs/Cura/Cura-2.5.0/usr/bin/plugins/plugins/OctoPrintPlugin/OctoPrintOutputDevice.py", line 527, in _onRequestFinished
2017-06-07 01:29:04,224 - CRITICAL - cura.CrashHandler.show [39]:     temperature = json_data["temperature"]["tool%d" % index]["actual"] if ("tool%d" % index) in json_data["temperature"] else 0
2017-06-07 01:29:04,226 - CRITICAL - cura.CrashHandler.show [39]: KeyError: 'temperature'
2017-06-07 01:29:06,376 - CRITICAL - cura.CrashHandler.show [36]: An uncaught exception has occurred!
2017-06-07 01:29:06,377 - CRITICAL - cura.CrashHandler.show [39]: Traceback (most recent call last):
2017-06-07 01:29:06,379 - CRITICAL - cura.CrashHandler.show [39]:   File "/home/rafaelrs/AddProgs/Cura/Cura-2.5.0/usr/bin/plugins/plugins/OctoPrintPlugin/OctoPrintOutputDevice.py", line 527, in _onRequestFinished
2017-06-07 01:29:06,380 - CRITICAL - cura.CrashHandler.show [39]:     temperature = json_data["temperature"]["tool%d" % index]["actual"] if ("tool%d" % index) in json_data["temperature"] else 0
2017-06-07 01:29:06,382 - CRITICAL - cura.CrashHandler.show [39]: KeyError: 'temperature'
2017-06-07 01:29:08,165 - CRITICAL - cura.CrashHandler.show [36]: An uncaught exception has occurred!
2017-06-07 01:29:08,166 - CRITICAL - cura.CrashHandler.show [39]: Traceback (most recent call last):
2017-06-07 01:29:08,167 - CRITICAL - cura.CrashHandler.show [39]:   File "/home/rafaelrs/AddProgs/Cura/Cura-2.5.0/usr/bin/plugins/plugins/OctoPrintPlugin/OctoPrintOutputDevice.py", line 527, in _onRequestFinished
2017-06-07 01:29:08,168 - CRITICAL - cura.CrashHandler.show [39]:     temperature = json_data["temperature"]["tool%d" % index]["actual"] if ("tool%d" % index) in json_data["temperature"] else 0
2017-06-07 01:29:08,169 - CRITICAL - cura.CrashHandler.show [39]: KeyError: 'temperature'
2017-06-07 01:29:10,184 - CRITICAL - cura.CrashHandler.show [36]: An uncaught exception has occurred!
2017-06-07 01:29:10,186 - CRITICAL - cura.CrashHandler.show [39]: Traceback (most recent call last):
2017-06-07 01:29:10,187 - CRITICAL - cura.CrashHandler.show [39]:   File "/home/rafaelrs/AddProgs/Cura/Cura-2.5.0/usr/bin/plugins/plugins/OctoPrintPlugin/OctoPrintOutputDevice.py", line 527, in _onRequestFinished
2017-06-07 01:29:10,188 - CRITICAL - cura.CrashHandler.show [39]:     temperature = json_data["temperature"]["tool%d" % index]["actual"] if ("tool%d" % index) in json_data["temperature"] else 0
2017-06-07 01:29:10,189 - CRITICAL - cura.CrashHandler.show [39]: KeyError: 'temperature'
2017-06-07 01:29:12,167 - CRITICAL - cura.CrashHandler.show [36]: An uncaught exception has occurred!
2017-06-07 01:29:12,168 - CRITICAL - cura.CrashHandler.show [39]: Traceback (most recent call last):
2017-06-07 01:29:12,170 - CRITICAL - cura.CrashHandler.show [39]:   File "/home/rafaelrs/AddProgs/Cura/Cura-2.5.0/usr/bin/plugins/plugins/OctoPrintPlugin/OctoPrintOutputDevice.py", line 527, in _onRequestFinished
2017-06-07 01:29:12,171 - CRITICAL - cura.CrashHandler.show [39]:     temperature = json_data["temperature"]["tool%d" % index]["actual"] if ("tool%d" % index) in json_data["temperature"] else 0
2017-06-07 01:29:12,173 - CRITICAL - cura.CrashHandler.show [39]: KeyError: 'temperature'

Linux - Fedora 25
OctoPrint 1.3.4
Cura 2.5.0 (here i didn't understood how to put plugin to app when i start it from appImage, i just unpacked this appImage, putted plugin to ./Cura-2.5.0/usr/bin/plugins/plugins/OctoPrintPlugin and started ./Cura-2.5.0/AppRun )

Plugin does not work with 2.4 version

The plugin works fine with 2.3.1 but not with the new version 2.4. Connection with octoprint is made (I can see the webcam, temperatures, etc) but nothing happens when click "print with Octoprint"

Error loading the plugin in Cura 2.7

I am suddenly unable to load the plugin in cura. Here's a dump of the log:

2017-10-06 13:52:10,949 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin ConsoleLogger
2017-10-06 13:52:10,966 - INFO - CuraEngineBackend.CuraEngineBackend.__init__ [64]: Found CuraEngine at: C:\Program Files\Cura 2.7\CuraEngine.exe
2017-10-06 13:52:10,967 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin CuraEngineBackend
2017-10-06 13:52:10,974 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin CuraProfileReader
2017-10-06 13:52:10,980 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin CuraProfileWriter
2017-10-06 13:52:10,986 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin OBJReader
2017-10-06 13:52:10,992 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin OBJWriter
2017-10-06 13:52:11,003 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin STLReader
2017-10-06 13:52:11,010 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin STLWriter
2017-10-06 13:52:11,016 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin FileLogger
2017-10-06 13:52:11,023 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin GCodeProfileReader
2017-10-06 13:52:11,033 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin GCodeReader
2017-10-06 13:52:11,040 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin GCodeWriter
2017-10-06 13:52:11,049 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin ImageReader
2017-10-06 13:52:11,062 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin LayerView
2017-10-06 13:52:11,071 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin LegacyProfileReader
2017-10-06 13:52:11,081 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin LocalFileOutputDevice
2017-10-06 13:52:11,090 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin MachineSettingsAction
2017-10-06 13:52:11,135 - ERROR - UM.Logger.logException [76]: Exception: Error loading plugin OctoPrintPlugin:
2017-10-06 13:52:11,137 - ERROR - UM.Logger.logException [80]: Traceback (most recent call last):
2017-10-06 13:52:11,138 - ERROR - UM.Logger.logException [80]:   File "D:\2.7\build\inst\lib\python3.5\site-packages\UM\PluginRegistry.py", line 218, in loadPlugin
2017-10-06 13:52:11,139 - ERROR - UM.Logger.logException [80]:   File "C:\Program Files\Cura 2.7\plugins\OctoPrintPlugin\__init__.py", line 13, in register
2017-10-06 13:52:11,140 - ERROR - UM.Logger.logException [80]:     "output_device": OctoPrintOutputDevicePlugin.OctoPrintOutputDevicePlugin(),
2017-10-06 13:52:11,141 - ERROR - UM.Logger.logException [80]:   File "C:\Program Files\Cura 2.7\plugins\OctoPrintPlugin\OctoPrintOutputDevicePlugin.py", line 21, in __init__
2017-10-06 13:52:11,142 - ERROR - UM.Logger.logException [80]:     self._zero_conf = Zeroconf()
2017-10-06 13:52:11,143 - ERROR - UM.Logger.logException [80]:   File "zeroconf.py", line 1523, in __init__
2017-10-06 13:52:11,144 - ERROR - UM.Logger.logException [80]: OSError: [WinError 10022] An invalid argument was supplied
2017-10-06 13:52:11,154 - WARNING - UM.Preferences.getValue [81]: Tried to get the value of non-existing setting cura/active_mode.
2017-10-06 13:52:11,156 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin PerObjectSettingsTool
2017-10-06 13:52:11,163 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin PluginBrowser
2017-10-06 13:52:11,172 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin PostProcessingPlugin
2017-10-06 13:52:11,186 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin RemovableDriveOutputDevice
2017-10-06 13:52:11,232 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin SliceInfoPlugin
2017-10-06 13:52:11,241 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin SolidView
2017-10-06 13:52:11,250 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin CameraTool
2017-10-06 13:52:11,260 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin MirrorTool
2017-10-06 13:52:11,271 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin RotateTool
2017-10-06 13:52:11,284 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin ScaleTool
2017-10-06 13:52:11,292 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin SelectionTool
2017-10-06 13:52:11,303 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin TranslateTool
2017-10-06 13:52:11,319 - DEBUG - UM.PluginRegistry.loadPlugin [199]: Plugin UltimakerMachineActions was disabled
2017-10-06 13:52:11,337 - DEBUG - UM.PluginRegistry.loadPlugin [199]: Plugin UM3NetworkPrinting was disabled
2017-10-06 13:52:11,349 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin UpdateChecker
2017-10-06 13:52:11,351 - INFO - UpdateChecker.UpdateCheckerJob.run [44]: Checking for new version of cura
2017-10-06 13:52:11,380 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin USBPrinting
2017-10-06 13:52:11,392 - DEBUG - UM.PluginRegistry.loadPlugin [199]: Plugin VersionUpgrade21to22 was disabled
2017-10-06 13:52:11,399 - DEBUG - UM.PluginRegistry.loadPlugin [199]: Plugin VersionUpgrade22to24 was disabled
2017-10-06 13:52:11,409 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin VersionUpgrade25to26
2017-10-06 13:52:11,419 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin VersionUpgrade26to27
2017-10-06 13:52:11,428 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin SimpleView
2017-10-06 13:52:11,442 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin X3DReader
2017-10-06 13:52:11,456 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin XmlMaterialProfile
2017-10-06 13:52:11,466 - INFO - UM.PluginRegistry.loadPlugin [231]: Loaded plugin XRayView
2017-10-06 13:52:11,468 - INFO - UM.Qt.QtApplication.__init__ [112]: Command line arguments: {'qmljsdebugger': None, 'disable-textures': False, 'single_instance': False, 'external-backend': False, 'file': []}
2017-10-06 13:52:11,477 - INFO - UM.VersionUpgradeManager.upgrade [112]: Looking for old configuration files to upgrade.
2017-10-06 13:52:11,498 - DEBUG - UM.Backend.Backend._logSocketState [174]: Socket state changed to Listening
2017-10-06 13:52:11,541 - INFO - UM.Backend.Backend.startEngine [75]: Started engine process: C:\Program Files\Cura 2.7\CuraEngine.exe
2017-10-06 13:52:11,543 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] Calling engine with: ['C:\\Program Files\\Cura 2.7\\CuraEngine.exe', 'connect', '127.0.0.1:49674', '-j', 'C:\\Program Files\\Cura 2.7\\resources\\definitions\\fdmprinter.def.json', '']
2017-10-06 13:52:11,620 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] 
2017-10-06 13:52:11,622 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] Cura_SteamEngine version DEV
2017-10-06 13:52:11,625 - DEBUG - UM.Backend.Backend._logSocketState [178]: Socket state changed to Connected
2017-10-06 13:52:11,626 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] Copyright (C) 2014 David Braam
2017-10-06 13:52:11,627 - DEBUG - UM.Backend.Backend._onSocketStateChanged [168]: Backend connected on port 49674
2017-10-06 13:52:11,628 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] 
2017-10-06 13:52:11,630 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] This program is free software: you can redistribute it and/or modify
2017-10-06 13:52:11,632 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] it under the terms of the GNU Affero General Public License as published by
2017-10-06 13:52:11,633 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] the Free Software Foundation, either version 3 of the License, or
2017-10-06 13:52:11,634 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] (at your option) any later version.
2017-10-06 13:52:11,636 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] 
2017-10-06 13:52:11,637 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] This program is distributed in the hope that it will be useful,
2017-10-06 13:52:11,638 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] but WITHOUT ANY WARRANTY; without even the implied warranty of
2017-10-06 13:52:11,640 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2017-10-06 13:52:11,641 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] GNU Affero General Public License for more details.
2017-10-06 13:52:11,642 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] 
2017-10-06 13:52:11,643 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] You should have received a copy of the GNU Affero General Public License
2017-10-06 13:52:11,645 - DEBUG - UM.Backend.Backend._backendLog [93]: [Backend] along with this program.  If not, see <http://www.gnu.org/licenses/>.
2017-10-06 13:52:11,767 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UMOUpgradeSelection to ultimaker_original_dual, as the action is not recognised
2017-10-06 13:52:11,768 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UMOCheckup to ultimaker_original_dual, as the action is not recognised
2017-10-06 13:52:11,769 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add BedLevel to ultimaker_original_dual, as the action is not recognised
2017-10-06 13:52:11,771 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to ultimaker_original_dual, as the action is not recognised
2017-10-06 13:52:11,772 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add UMOUpgradeSelection to ultimaker_original_dual, as the action is not recognised
2017-10-06 13:52:11,773 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add UMOCheckup to ultimaker_original_dual, as the action is not recognised
2017-10-06 13:52:11,774 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add BedLevel to ultimaker_original_dual, as the action is not recognised
2017-10-06 13:52:12,315 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UMOCheckup to ultimaker_original_plus, as the action is not recognised
2017-10-06 13:52:12,317 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add BedLevel to ultimaker_original_plus, as the action is not recognised
2017-10-06 13:52:12,318 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to ultimaker_original_plus, as the action is not recognised
2017-10-06 13:52:12,319 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add UMOCheckup to ultimaker_original_plus, as the action is not recognised
2017-10-06 13:52:12,320 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add BedLevel to ultimaker_original_plus, as the action is not recognised
2017-10-06 13:52:12,354 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to ultimaker2_plus, as the action is not recognised
2017-10-06 13:52:12,587 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add DiscoverUM3Action to ultimaker3, as the action is not recognised
2017-10-06 13:52:12,588 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add DiscoverUM3Action to ultimaker3, as the action is not recognised
2017-10-06 13:52:13,137 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to makeit_pro_l, as the action is not recognised
2017-10-06 13:52:13,394 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UM2UpgradeSelection to ultimaker2, as the action is not recognised
2017-10-06 13:52:13,396 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to ultimaker2, as the action is not recognised
2017-10-06 13:52:13,397 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add UM2UpgradeSelection to ultimaker2, as the action is not recognised
2017-10-06 13:52:13,496 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UMOUpgradeSelection to ultimaker_original, as the action is not recognised
2017-10-06 13:52:13,497 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UMOCheckup to ultimaker_original, as the action is not recognised
2017-10-06 13:52:13,498 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add BedLevel to ultimaker_original, as the action is not recognised
2017-10-06 13:52:13,499 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to ultimaker_original, as the action is not recognised
2017-10-06 13:52:13,501 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add UMOUpgradeSelection to ultimaker_original, as the action is not recognised
2017-10-06 13:52:13,502 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add UMOCheckup to ultimaker_original, as the action is not recognised
2017-10-06 13:52:13,503 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add BedLevel to ultimaker_original, as the action is not recognised
2017-10-06 13:52:13,748 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to ultimaker2_go, as the action is not recognised
2017-10-06 13:52:13,812 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to ultimaker2_extended_plus, as the action is not recognised
2017-10-06 13:52:14,248 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UM2UpgradeSelection to ultimaker2_extended, as the action is not recognised
2017-10-06 13:52:14,249 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to ultimaker2_extended, as the action is not recognised
2017-10-06 13:52:14,250 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add UM2UpgradeSelection to ultimaker2_extended, as the action is not recognised
2017-10-06 13:52:14,346 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to makeit_pro_m, as the action is not recognised
2017-10-06 13:52:14,741 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add DiscoverUM3Action to ultimaker3_extended, as the action is not recognised
2017-10-06 13:52:14,742 - WARNING - cura.MachineActionManager.addFirstStartAction [90]: Unable to add DiscoverUM3Action to ultimaker3_extended, as the action is not recognised
2017-10-06 13:52:14,839 - WARNING - cura.MachineActionManager.addSupportedAction [77]: Unable to add UpgradeFirmware to tam, as the action is not recognised

Cancel Print won't work

Hey there,
if i try to cancel a print, the yes/no question comes but if i hit yes, nothing happens.

Send user agent string

Please send a more informative user agent string than the current User-Agent: Mozilla/5.0 when calling the APIs.

POST /api/files/local HTTP/1.1
(...)
User-Agent: Mozilla/5.0
(...)

Cura settings not included in Gcode file when printing to OctoPrint

Ubuntu 16.04 LTS, Cura 2.7.0

If I print from Cura to OctoPrint, the file does not include the Cura settings strings after the "Ending Gcode", but if I save the file, then send it to OctoPrint, the settings ARE included.

I think they should ALWAYS be included.

For example: the last lines below, which start with ";SETTING_3" are NOT sent directly to OctoPrint, but were included when I saved to file.

G0 F7200 X106.419 Y62.948
G0 X106.461 Y62.943
G0 X106.525 Y62.959
;TIME_ELAPSED:5158.739727
G1 F1800 E2961.34532
M107
;End Gcode ALR 27-SEP-2017
M104 S0 ;extruder heater off
M140 S0 ;heated bed heater off (if you have it)
G91 ;relative positioning
G1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure
G1 Z+15 E-2 X-20 Y-20 F9000 ;move Z up a bit and retract filament even more
M107 ; fan off
G90 ;absolute positioning
G1 Y190 ;present the finished print job
M84 ;steppers off
M104 S0
;End of Gcode
;SETTING_3 {"global_quality": "[general]\nversion = 2\nname = Shark\ndefiniti
;SETTING_3 on = prusa_i3\n\n[metadata]\nsetting_version = 2\nquality_type =
;SETTING_3 normal\ntype = quality_changes\n\n[values]\nadhesion_type = brim
;SETTING_3 \nbrim_width = 3.0\ncool_fan_full_at_height = 0.5\ncool_fan_speed_m
;SETTING_3 in = 75.0\ngradual_infill_steps = 3\nlayer_height = 0.15\nlayer_he
;SETTING_3 ight_0 = 0.2\nmaterial_bed_temperature = 45\nmaterial_flow = 102\n
;SETTING_3 material_print_temperature = 213\nretraction_amount = 5\nretraction
;SETTING_3 _speed = 30\nskirt_line_count = 2\nspeed_print = 50\nsupport_enabl
;SETTING_3 e = True\nsupport_type = buildplate\n\n"}

How to install on OSX?

I go to:
Applications --> Control+Click on Cura --> Show Package Contents --> Resources --> Plugins

This is where it's confusing
That Plugins folder is empty
But there is a Plugins folder within it that has all the standard Cura Plugins
I put the OctoPrintPlugin in that folder and start Cura
It doesn't find it

I even tried putting it in the empty Plugins folder and nothing
Any ideas?

Webcam view overlap application buttons

When i switch to print panel, webcam view shows up, but it is stretched to whole aplication window. It covers top menu and prepare button.
Menu and buttons are still clickable, but you must fail&try right spot :-)

I have octoprint 1.3.4 (master branch) on raspberry pi 3, with raspberry pi camera module and resolution is set to half of full ccd coverage x 1296 y 972 - 4:3 picture format.

screenshot from 2017-08-15 15-20-38

Works out of the box.

Thanks for this great plugin @fieldOfView !
(I know, not an issue, but I couldn't resist.)

(Cura 2.4, JellyBOX (fdm reprap, cartesian), all working great. )

Switching off the printer in an emergency crashes Cura

Switching off the printer in an emergency crashes Cura. It would be good if all functions accessing the OctoPrint API would be wrapped in try: statements.

Version: 2.7.0-BETA
Platform: Linux-4.4.0-31-generic-x86_64-with-debian-stretch-sid
Qt: 5.8.0
PyQt: 5.8.2

Exception:
Traceback (most recent call last):
  File "/tmp/.mount_Cura_fpsEW8j/usr/bin/plugins/plugins/OctoPrintPlugin/OctoPrintOutputDevice.py", line 569, in _onRequestFinished
    json_data = json.loads(bytes(reply.readAll()).decode("utf-8"))
  File "/build/env/2.7/inst/lib/python3.5/json/__init__.py", line 319, in loads
  File "/build/env/2.7/inst/lib/python3.5/json/decoder.py", line 339, in decode
  File "/build/env/2.7/inst/lib/python3.5/json/decoder.py", line 355, in raw_decode
json.decoder.JSONDecodeError: Expecting ',' delimiter: line 4 column 19 (char 57)

Does not get loaded from configuration folder

Download or clone the repository into (...) the plugins folder inside the configuration folder. The configuration folder can be found via Help -> Show Configuration Folder inside Cura.

It is not loading from there.

me@host:~$ find /home/me/.config/cura/
/home/me/.config/cura/
/home/me/.config/cura/cura.cfg
/home/me/.config/cura/plugins
/home/me/.config/cura/plugins/OctoPrintPlugin
/home/me/.config/cura/plugins/OctoPrintPlugin/__init__.py
/home/me/.config/cura/plugins/OctoPrintPlugin/README.md
(...)

enable user access control printing

i have just downloaded 2.6 of cura .
however the new octoprint does not seem to work .
seems that this new feature does not work on octoprint installs with access control enabled .
i get this error in cura : octoprint on octopi._octoprint._tcp.local does not allow access to print.

Upload to OctoPrint without starting to print

Hi!

I'm missing a function to send my gcode to OctoPrint without starting to print immediately.

I've just hacked that for me by changing the line:

## self._post_part.setBody(b"true")
self._post_part.setBody(b"false")

But this way, it never starts printing! ;-)

Bye

Check API-code before allowing a connection

Currently the plugin allows making the connection regardless of the API key being valid or not. It would be better to check the API key to make sure it is correct. Before the API key has been confirmed the Connect button should be disabled.

This has the additional benefit that data like the webcam url and the availability of sd-card support can be gotten from the OctoPrint configuration.

Make camera view optional

Making the camera view optional saves some cpu cycles and network traffic in case there is no webcam stream to show, or if the user has no interest in the image.

Currently the plugin uses the default mjpeg streamer path for OctoPi. I think this works for 90% of the instances, but it would be nice if the url to use for the webcam view were configurable. Optional support for the streaming video instead of a "slideshow" of snapshots would be nice as well.

Missing 2.6 branch

We're making the first beta 2.6 builds. Could you also make a 2.6 branch?

HTTPS (SSL/TLS) support

Currently, we have an OctoPrint device sitting behind a firewall accessible via an Nginx reverse proxy with TLS enabled and HTTP forwarding to HTTPS for security. The URL is in the format https://octoprint.example.com/01/, and the camera is available on the same URL

I would like to help update this plugin to support HTTPS, but I can't seem to find any documentation about Cura 2 plugins. Where did you find your documentation?

Wrong times displayed?

I believe something to be wrong here... is the GUI not using printTime (in seconds) and printTimeLeft (in seconds) from /api/job?

wrong

Full disclosure, the API is not from OctoPrint but from my own subset of the API, so the issue may well be on my side. Any hints appreciated.

Invalid JSON crashes Cura

Invalid JSON, e.g., in /api/printer crashes Cura. It would be nicer if it would show "n/a" values instead (but not crash).

{
  "temperature": {
    "tool0": {
      "actual": 60.16 E:0 B:38.7,
      "target": :60.16,
      "offset": 0
    },
    "bed": {
      "actual": 38.7,
      "target": :60.16,
      "offset": 0
    }
  },
  "sd": {
    "ready": 1
  },
  "state": {
    "text": "Operational",
    "flags": {
      "operational": true,
      "paused": false,
      "printing": 1,
      "sdReady": 1,
      "error": false,
      "ready": true,
      "closedOrError": false
    }
  }
}

Support configured camera orientation

If the camera is installed upside down, the orientation can be changed in OctoPrint settings (Flip webcam) so it displays correctly in the OctoPrint web interface.
The camera view in the plugin (Show webcam image) shows the camera upside down (the actual physical orientation).

bed_temperature exception

Using version 2.3, the cura log is mostly full of this:

2017-01-08 04:03:37,912 - CRITICAL - cura.CrashHandler.show [35]: KeyError: 'bed'
2017-01-08 04:03:39,927 - CRITICAL - cura.CrashHandler.show [32]: An uncaught exception has occurred!
2017-01-08 04:03:39,929 - CRITICAL - cura.CrashHandler.show [35]: Traceback (most recent call last):
2017-01-08 04:03:39,931 - CRITICAL - cura.CrashHandler.show [35]:   File "C:\Program Files\Cura 2.4\plugins\OctoPrintPlugin\OctoPrintOutputDevice.py", line 489, in _onRequestFinished

OctoPrintPlugin appears in list of plugins, but nowhere else

As the title suggests, it's recognized by Cura 2.3.1, but its presence is nowhere to be found otherwise. It's not where managing printers are and, consequently, not an option to save to.
Running Windows 10 x64 and I've made sure its placement and name are correct as well as having pulled the latest revision. I did at one point have an older version show up but it was not functional and that was a good several months ago.
Any help is appreciated!

webcam is not shown in Cura if the ip address is different to octaprint

As per the title. I'm not 100% sure the issue is with the plugin, but I did see the webcam picture when the webcam server was the same as the octaprint server. Now that the the camera has a different ip, I don't see the webcam.
(my setup has an old raspberry pi, which has the camera and forwards the serial port to TCP port, and octaprint runs on my home server, connecting to both the camera and the TCP server on the raspi)

Not printing in Cura 2.4

It seems that the Qt for 2.4 calls requestWrite with 5 instead of 4 parameters . i don't know what the 5th parameter is but changing line 257 in OctoPrintOutputDevice.py from
def requestWrite(self, node, file_name = None, filter_by_machine = False):
to
def requestWrite(self, node, file_name = None, filter_by_machine = False, Dummy=False):
it works

Head tries to move too far right

When I click on "Print with OctoPrint" the print head instantly moves to the back right and tries to go as far as possible producing a horrid rattling noise.
If I start the print (of the .gcode file that has been produced by Cura Desktop with the OctoPrint plugin), the prints starts normally but the nozzle is not heated up...

Tested with Cura Desktop 2.3.0-BETA on the Mac and OctoPrint 1.2.15.

Add Printer without autodiscovery

Hi!

For some unknown reason, the autodiscovery does not work for me! No great thing...

But is there a way to connect to a printer without autodiscovery?

Bye

Request: Permissions to distribute it on my PPA

Just want to ask whether you allow me to package your plugin as DEB into my PPA.
Already began to work on it, but missed to ask first 😉

If so, I can add instructions to your README.md how to install it with the PPA , too.

Stop camera updates when not viewing monitor

Cura now has the hooks to stop camera updates when the printmonitor is not showing. This saves bandwidth, and processing power at both ends of the stream.

Implement _startCamera and _stopCamera

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.