OctoPrint Python3

What is the problem?

This morning upgraded python via the curl script, all went ok
Rebooted
No errors

Sent a file to be printed over wifi to PI storage
That went ok

Every time now, I try to print the file, it says it is printing, only briefly turns on the heaters, then continues saying it is printing, but it is not.
In the terminal and logs attached, it reports "Error:error writing to file"

What did you already try to solve it?

Disabled many plugins that I rarely use, which could have caused the issue due to python compatibility.
Issue still remains.

Using the same settings for another print done yes

Complete Logs

octoprint py3 log.zip

Additional information about your setup

Generic Marlin 2.0.5.3
SKR 1.4
OctoPI 0.17
OctoPrint 1.4.2

One thing I see in your logs is a lot of errors...for the bed level visualizer error you just need to run the command listed in the known issues for python 3.

1 Like

I'd look into the SpoolManager error more, because I think that effects print jobs doesn't it?

1 Like

Interesting, when I looked at the log I couldn't see any errors relating to the bed visualizer.
Spool Manager had been disabled, it's something that I will never need, but tried out. And was one of the plugins I had disabled.

Bed Visualizer is must have plugin
Have run the ssh command as specified in the known issues for the visualizer. Prior to upgrading to Py3 the visualizer worked.
With the dependencies updated, it took several reboots, but otherwise appears to be working. At least it heats up as expected when running normal gcode.
Will find out tomorrow when I do a full print.

Cheers

sadly, the problem still continues

Looking at the serial log it has unexpected results...

Recv: Error:error writing to file

Sorry I don't know what would cause that. Will probably have to wait for additional help from the community. Curious if @b-morgan has seen anything similar with the multiple people he has helped in the past?

Problem appears to be how the serial interface is controlled.
When I upload a file to the onboard SD, the serial port by OctoPrint closes, and stays stuck.

Only a complete power off of OctoPrint seems to fix this, ie not even a reboot fixes it

I've never seen that error before. What is curious is the temperature reports.

2020-09-11 00:41:26,684 - Recv:  T:19.25 /0.00 B:17.97 /0.00 @:0 B@:0

At those temperatures, the gcode commands being sent aren't being printed so I can only assume the commands being sent are directed at the printer's SD card. If the printer's SD card is write protected or full, that would explain the error writing to file.

Since I've never done an Upload to SD, I decided to try it on my TAZ 6. It failed spectacularly and now I have to open an OctoPrint bug report. Thanks @jneilliii, for dangling the bait :innocent:

2 Likes

Reported in:
https://github.com/OctoPrint/OctoPrint/issues/3726#issue-699970393
and:
https://github.com/eyal0/OctoPrint-PrintTimeGenius/issues/210#issue-699977451

1 Like

https://github.com/eyal0/OctoPrint-PrintTimeGenius/issues/210

Bug in Print Time Genius plugin, after running OctoPrint in Safe mode, and throwing a gcode file to the SD card shows no error.
And disabling one by one other plugins found that Print Time Genius is what is causing the issue.

However,the root cause which causes print time genius to fail is unknown, OctoPrint doesn't seem to provide enough detail in it's logging.

From a look at that ticket, it's actually pretty clear what's failing. OctoPrint is starting a print and thus aborting all ongoing analysis. _do_abort gets called on PrintTimeGenius, while processing that at one point PrintTimeGenius compares an internal variable thermostat['target'] with an integer value of 30 but thermostat['target'] is actually unset/None. Sounds like PrintTimeGenius making a wrong assumption somewhere or maybe just missing a None check.