Print not starting

I need some help; hopefully somebody recognises my problem and knows how to solve it.

I'm running a M3D Micro using the M33 Fio plugin. When I start a print, the printer doesn't move and doesn't heat up. It already worked fine until some days ago, so I somehow managed to screw it up, possibly by permitting some update. I can manually control all stages of the printer and the extruder temperature; it also works flawlessly under the original M3D software, so the printer is OK. I also tried different firmwares, so I would guess that's not a factor.

Here's a log from octoprint:

2020-03-08 20:49:17,727 - octoprint.util.comm - INFO - Changing monitoring state from "Operational" to "Starting"
2020-03-08 20:49:17,750 - octoprint.printer.standard.job - INFO - Print job started - origin: local, path: Kappe.gco, owner: Thomas Heuer, user: Thomas Heuer
2020-03-08 20:49:17,776 - octoprint.util.comm - INFO - M110 detected, setting current line number to 0
2020-03-08 20:49:17,816 - octoprint.plugin - ERROR - Error while calling plugin m33fio
Traceback (most recent call last):
  File "c:\octoprint\venv\lib\site-packages\octoprint\plugin\__init__.py", line 224, in call_plugin
    result = getattr(plugin, method)(*args, **kwargs)
  File "c:\octoprint\venv\lib\site-packages\octoprint_m33fio\__init__.py", line 6903, in on_event
    if payload["filename"] == os.path.basename(self._file_manager.path_on_disk(octoprint.filemanager.destinations.FileDestinations.LOCAL, "test border.gcode").replace("\\", "/")) :
KeyError: 'filename'
2020-03-08 20:49:18,006 - octoprint.plugins.tracking - INFO - Sent tracking event print_started, payload: {'origin': u'local', 'file': 'd72586cf622fae1ae9bb65a28b39e2ca5e518e6c'}
2020-03-08 21:00:21,131 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2020-03-08 21:00:30,111 - octoprint.plugins.tracking - INFO - Sent tracking event ping, payload: {'octoprint_uptime': 909}

And here's what's happening in the M33 Fio plugin:

2020-03-08 20:49:17,477 Processed Response: 
2020-03-08 20:49:17,809 Original Sent: N0 M110 N0*125

2020-03-08 20:49:18,479 Original Response: wait

2020-03-08 20:49:18,480 Processed Response: 
2020-03-08 20:49:18,482 Original Response: ok  PT:98 DT:1

2020-03-08 20:49:18,483 Processed Response: ok  PT:98 DT:1

2020-03-08 20:49:20,477 Original Response: wait

2020-03-08 20:49:20,477 Processed Response: wait

2020-03-08 20:49:22,476 Original Response: wait

2020-03-08 20:49:22,476 Processed Response: 
2020-03-08 20:49:22,487 Original Response: ok  PT:98 DT:1

2020-03-08 20:49:22,487 Processed Response: ok  PT:98 DT:1

2020-03-08 20:49:23,473 Original Response: wait

2020-03-08 20:49:23,474 Processed Response: wait

That continues until I abort Octoprint with Strg+C. Does anybody have an idea?

Yeah there is a problem with the Fio plugin.
Maybe a programmer like @OutsourcedGuru got an idea

Delete your gcode file from OctoPrint. Rename it so that it has no spaces in its name and try again.

1 Like

The fio plugin uses a keyword from the event payload that has been deprecated for years now and which was finally removed in 1.4.0. It needs to be updated to work with current OctoPrint versions. Raise an issue with the author of the plugin.

1 Like

Thank you for your reply. However, I'm a bit unsure whether I understand you correctly. Am I supposed to rename 'test border.gcode' to e.g. 'test_border.gcode'?

And do I also have to change the path to it somewhere?

Thank you, I will do that. In case that takes longer, would rolling back to a version before 1.4.0. be a feasible solution? If so, are there working procedures for that?

Deleting it in OctoPrint, renaming it on your workstation and then re-uploading it should be fine.

It's just one of those things that you would think would work everywhere, all of the time... and it really throws errors more than you think it should. So be on the safe side and avoid spaces in filenames when you deal with browsers and browser apps.

The problem is, 'test border.gcode' is not one of my files. It's part of the fio plugin. So can it really be a problem? After all, it seems to be some sort of standard setup.

:man_shrugging:

Why not instead go to the plugin author's repository and have a dialog with them about what's not happening?

I'm trying exactly that. Unfortunately they are not as responsive as the community here. So I hoped somebody could help out.

In case I hear something from them, I will provide an update here.

1 Like

I got a reply from the developer of the plugin. The last version of OctoPrint he tested for compatibility was 1.3.5, and he doubts that it will fully work in anything later.
Given the fact that the last release of Fio was 3 years ago, I would guess that no update to fix that compatibility issue will come anytime soon.

So the obvious solution would be to roll back to 1.3.5. Is there a guide to that? Or would I just have to delete the folder and to re-install the older version?

Is it?

I sure wouldn't.

Well, if the only other solution would be not to use Octoprint at all, or buying a different printer, I'm actually not aware of any other option. Or is there one?

I thought this was a decision of dropping an optional plugin or not.

Yes, OK, I could try to set up the M3D on the latest version of Octoprint without using Fio. Is there anybody who has done this and can relate what to watch for?
But then the old version worked satisfactorily - much better than the proprietary M3D software, anyhow - and Fio was quite comfortable to use. Maybe I just shouldn't have changed a running system.

Was it running with 1.3.12? At least the event payload problem is an easy fix to do if someone was inclined to adopt the bloody thing.

If certainly not recommend downgrading to 1.3.5, a severe security vulnerability was fixed in 1.3.6.

I have to admit that I have no idea what version it initially was. I just installed Octoprint using "pip install octoprint" (on a Windows machine), installed M33 Fio and tried it without any changes. I then tried some optimimisations, including all available updates.

Given the fact that 1.4.0 was released 12 days ago, it should have been 1.3.12.

Neigh, sir. It's almost a requirement to keep changing your system in order to make it ever-better. Just make backups along the way, investing in extra microSD cards or similar.

I'm back to version 1.3.12 now and it works perfectly. Thanks to everybody for the great support!

I'm just curious which fix in 1.4.0 exactly did cause the incompatibility with Fio. Can somebody say that exactly? Maybe I'll try to have a look at Fio, but I actually don't think I can fix it as I'm more a hardware guy.