Upgrade from 1.3.10 to 1.4.0

I try to upgrade from version 1.3.10 to 1.4.0.

It doesn't work however, since I'm getting this error. See below.

What shall I do? Thanks for any help....

*Updating, please wait.*
*DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.*
*Collecting https://github.com/foosel/OctoPrint/archive/1.4.0.zip*
*Downloading https://github.com/foosel/OctoPrint/archive/1.4.0.zip (5.5MB)*
*ERROR: Complete output from command python setup.py egg_info:*
*ERROR: Traceback (most recent call last):*
*File "<string>", line 1, in <module>*
*File "/tmp/pip-req-build-TdcS7B/setup.py", line 277, in <module>*
*setup(**params())*
*File "/usr/lib/python2.7/distutils/core.py", line 111, in setup*
*_setup_distribution = dist = klass(attrs)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/dist.py", line 262, in __init__*
*self.fetch_build_eggs(attrs['setup_requires'])*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/dist.py", line 287, in fetch_build_eggs*
*replace_conflicting=True,*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/pkg_resources.py", line 631, in resolve*
*dist = best[req.key] = env.best_match(req, ws, installer)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/pkg_resources.py", line 874, in best_match*
*return self.obtain(req, installer)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/pkg_resources.py", line 886, in obtain*
*return installer(requirement)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/dist.py", line 338, in fetch_build_egg*
*return cmd.easy_install(req)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 636, in easy_install*
*return self.install_item(spec, dist.location, tmpdir, deps)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 666, in install_item*
*dists = self.install_eggs(spec, download, tmpdir)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 856, in install_eggs*
*return self.build_and_install(setup_script, setup_base)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1078, in build_and_install*
*self.run_setup(setup_script, setup_base, args)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1063, in run_setup*
*run_setup(setup_script, args)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 68, in run_setup*
*DirectorySandbox(setup_dir).run(runner)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 114, in run*
*return func()*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 67, in runner*
*_execfile(setup_script, ns)*
*File "/home/pi/oprint/local/lib/python2.7/site-packages/setuptools/sandbox.py", line 43, in _execfile*
*exec(code, globals, locals)*
*File "/tmp/easy_install-KVj4cS/Markdown-3.1.1/setup.py", line 46, in <module>*
*"markdown>=3.1,<3.2",*
*File "/tmp/easy_install-KVj4cS/Markdown-3.1.1/setup.py", line 36, in get_version*
*File "markdown/__meta__.py", line 26, in <module>*
*ImportError: No module named extern*
*----------------------------------------*
*ERROR: Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-req-build-TdcS7B/*
*WARNING: You are using pip version 19.1, however version 20.0.2 is available.*
*You should consider upgrading via the 'pip install --upgrade pip' command.*
*The update did not finish successfully. Please consult <code>octoprint.log</code> and <code>plugin_softwareupdate_console.log</code> for details.*

Sounds like an older version of OctoPrint. I could be wrong but I'm thinking that this post might be useful. @foosel?

Well. Thanks. But I don't understand how the mentioned link can help. My version is 1.3.10, whereas the mentioned link discusses 1.3.5....

See here instead: https://github.com/OctoPrint/OctoPrint/issues/3484

1 Like

The solution seems to be:

source OctoPrint/venv/bin/activate
pip install --upgrade --force-reinstall setuptools

Do not use the sudo su line

Thanks a lot. Do you think I should upgrade OctoPi too ? I run version 0.14, which seems rather outdated.....

Eventually, yes. Problems like what you encountered are going to become more likely the more outdated your install becomes.

OctoPi 0.14 is no longer supported, please update.

Thanks Gina. I did that and I successfully upgraded Octoprint to 1.40. & Octopi to 0.17.

But the following problem unexpecteldy turned up: My Prusa MMU1.0 extruder change commands : T0, T1 are not sent to the printer as before with 1.3.12.
Serial log clearly shows this behaviour:

This my G-Code:
M204 S2000 T1500 ; MK2 firmware only supports the old M204 format
; Start G-Code sequence START
T1
M104 S220 ; set extruder temp
M140 S85 ; set bed temp

This was sent:
2020-04-04 23:32:28,109 - Send: N9 M204 S2000 T1500*45
2020-04-04 23:32:28,115 - Recv: ok
2020-04-04 23:32:28,118 - Not queuing T1, that tool doesn't exist according to the printer profile or was reported as invalid by the firmware
2020-04-04 23:32:28,125 - Send: N10 M104 S220*84
2020-04-04 23:32:28,132 - Recv: ok
2020-04-04 23:32:28,135 - Send: N11 M140 S65*102

Numbers of extruder was set to 4 and shared nozzle to "true". In my opinion these are the correct settings for a Prusa MK2 MMU1.0 multi color. (I confirmed that the Gcode is correct by printing it via Flash card - this worked fine.)

Can I change something on the Octoprint settings ?

Thanks a lot for any help - John

Make sure the printer profile is actually selected and double check the settings.

Thanks for your response Gina.
This is exactly what I did as you described. It doesn't work. The code snippets above were with exact these settings...

:thinking:

I finally downgraded from 1.4.0 again to 1.3.12 - since Multicolor printing didn't work anymore.
T commands are not being sent to the printer, although I have set the printer profile as required. Octoprint is too fussy in this respect and blocks commands being sent to the printer it believes are wrong...

Needless to say - now it works again :slight_smile: