Application Version
Cura master
Platform
Linux Mint - likely any
Steps to Reproduce
Actual Results
Nozzle switches on each layer!!!

Expected results
No nozzle switches at all
Additional Information
Be careful that you never introduce nozzle switches without printing a prime tower when the prime tower is enabled.
Be careful not to print the prime tower and not to switch nozzle after the last layer which uses multiple materials, i.e. the nozzle shouldn't be switched any more if all next layers are with the same extruder.
Be careful that if you would only print the prime tower with a given extruder on a layer then that printing shouldn't count as a reason that we need a nozzle switch.
I can reproduce this problem with your project file. I also notice that it outputs a bunch of these to the log:
2018-08-01 09:43:13,295 - DEBUG - [Thread-18] UM.Backend.Backend._backendLog [94]: [Backend] [WARNING] Unnecessary extruder switch detected! SliceDataStorage::getExtrudersUsed should probably be updated.
But when I try to reproduce the problem myself it doesn't occur: DualExtrusionAdhesion.curaproject.3mf.removeextension.zip
Or at least not initially. It did occur when I switched to TPU like BagelOrb's project file.
Something in the TPU profile is triggering this bug. I tried to look at a couple of the differences of TPU vs. PLA (e.g. Wipe Inactive Nozzle On Prime Tower) but couldn't reproduce it yet in the PLA profile. Maybe it's a combination of some settings that's causing this?
I would just look at the code and/or do a debug run with breakpoints,
rather than looking at which setting combinations trigger it.
This might very well be related to 204da21f5d9d2a710f29a667ba0f847f702749b2
On Wed, Aug 1, 2018 at 9:56 AM, Ghostkeeper notifications@github.com
wrote:
I can reproduce this problem with your project file. I also notice that it
outputs a bunch of these to the log:2018-08-01 09:43:13,295 - DEBUG - [Thread-18] UM.Backend.Backend._backendLog [94]: [Backend] [WARNING] Unnecessary extruder switch detected! SliceDataStorage::getExtrudersUsed should probably be updated.
But when I try to reproduce the problem myself it doesn't occur:
DualExtrusionAdhesion.curaproject.3mf.removeextension.zip
https://github.com/Ultimaker/CuraEngine/files/2248477/DualExtrusionAdhesion.curaproject.3mf.removeextension.zipOr at least not initially. It did occur when I switched to TPU like
BagelOrb's project file.Something in the TPU profile is triggering this bug. I tried to look at a
couple of the differences of TPU vs. PLA (e.g. Wipe Inactive Nozzle On
Prime Tower) but couldn't reproduce it yet in the PLA profile. Maybe it's a
combination of some settings that's causing this?—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Ultimaker/CuraEngine/issues/815#issuecomment-409485217,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIe9Eb3qenLZ2lZAAYDMmxMrbuMnA57Hks5uMV8rgaJpZM4VmbH5
.
--
Kind regards,
Tim Kuipers
Ultimaker BV

This happens when you set the object to the second extruder in your project file.
This is specifically an issue when only the second extruder is used after some layer.
Ah no, it's definitely b3a0645c751e1a8589ae8611b53ae5a51d53d4bb
The comment //The outermost prime tower extruder is always used if there is a prime tower. is a dead giveaway ;)
Yes, also system testing found this. It's in our sticky board. Very easy to reproduce by selecting TPU material in UM3 or UMS5.
TPU is irrelevant. It's just the combination of having Prime Tower enabled
and setting the model to the second extruder.
On Thu, 2 Aug 2018, 09:31 Diego Prado Gesto, notifications@github.com
wrote:
Yes, also system testing found this. It's in our sticky board. Very easy
to reproduce by selecting TPU material in UM3 or UMS5.—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Ultimaker/CuraEngine/issues/815#issuecomment-409833996,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIe9ES7n7RkwykvOS5uhBP1kRKzmC1cYks5uMqrogaJpZM4VmbH5
.
Yes, I know, but it was the way to trigger the bug. I also thought that was related with the prime tower and testing the version before merging the feature removes the problem. But you were quicker and found the problem.
Haha ok. :+1:
On Thu, 2 Aug 2018, 09:51 Diego Prado Gesto, notifications@github.com
wrote:
Yes, I know, but it was the way to trigger the bug. I also thought that
was related with the prime tower and testing the version before merging the
feature removes the problem. But you were quicker and found the problem.—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Ultimaker/CuraEngine/issues/815#issuecomment-409838990,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIe9EQdPQLsrndXTcrd_sl6lO6IwPgZkks5uMq-cgaJpZM4VmbH5
.
Indeed that "Mark outermost prime tower extruder as used" commit is definitely the problem. Thanks for tracing that down. We must only mark it as used in layers lower than the height of the prime tower.
Most helpful comment
Ah no, it's definitely b3a0645c751e1a8589ae8611b53ae5a51d53d4bb