Mirror/Copy mode and cancel print not working
Hello,
I recently opened a topic, but due to the late night it got a bit messy.
The main issue is, that neither mirror and copy mode are working, nor cancel print while trying to use copy/mirror mode.
system: Orca Slicer 2.2.0 with the preset RatRig V-Core 4 500 Profile.
I tried the following:
- adding a benchy in the middle of the buildplate
- slicing the modle with the standard profile and send it to the printer (picture attached.
- homing all axis
- selecting mirror mode (both printheads are as expected)
- selecting the file to print and start the print
outcome:
- only one printhead is printing.
- cancel print does weird things. (video attached)
- print stops because of extrude below min temp.
attachments:
- slicer preview
- video of the behaviour of the printer
- ratos-debug
- console history
- sliced gcode and post processed gcode
all slicer settings according to the guide: https://os.ratrig.com/docs/slicers#orca-slicer
Slicer Configuration | RatOS
- Prusa Slicer
Solution:Jump to solution
Solution for the IDEX 500 Copy/mirror mode issue for RatOS 2.1.0 RC3:
- include this file into printer.cfg
- set variable_nozzle_priming to False
--> the printer will print without a primeblob.
--> set the variable to "Primeblob" and it will do the primeblob...
200 Replies
When you say both printheads are expected, do you mean that when clicking mirror mode they do the little dance?
Hitting cancel the first time results in a strange "move out of range" error. Have you done the DC Endstop calibrations?
Yes, they are dancing in the middle to concern the mode is activated. I can also switch back to single and print normally. But trying to print in mirror mode or copy mode, it’s not working at all.
I am not exactly shure what you mean with DC Endstop calibration, but I did the verification of endstop and z-Probe like it is said in the documentation of RatOS endstops are working as normal.
DC endstop calibration is part of the VAOC calibration steps
Lemme find the link
Calculate_dc_endstop was done if you mean this.
Ah ok
Yes
Everything up to date in ratos?

however, i will perform the complete calibration again. cant be wrong...🤷♂️
My only other suggestion is reinstalling ratos but that feels a bit nuclear so 😂
Looks normal
I used the 3D Benchy file from yesterday (unchanged) select IDEX Single and hit print.
console history with debug mode attached. Cancel print works perfect. all as it should.
now, the same benchy file:
- homing the printer incl. z-tilt
- switching to IDEX Mirror (both printheads over the printhead)
- selecting the file to print
- T0 moved into the middle and doing the mesh
- T0 and T1 are heating up
- only T0 is printing, T1 stays at Park and is not extruding.

- cancel print button activated.
- T0 is still printing, T1 is moving over the build plate and starts to extrude. Z offset was done before.
- message: moving out of range, T0 and T1 are cooling down while printing
- extrude below min temp
- print stops.
Debug mode console file attached.
by the way, IDEX Park macro is also not working afterwards. Also switching back to IDEX single doesnt work. I have to restart the firmware instead.
has anyone told you to totally blow our your ratos install and start over?
not yet, just a small remark if it is worth to try. however, i am on it with a 2nd SD card now. Using a RPi 4B with 2GB Ram
That sd card is small. I opted for a 4b 8gb and 128gb super fast card. Is the sd card you are using in the machine now really old?
I just want you to be able to use the modes. I know how frustrating what you are going through can be
The RPi as 2Gb RAM its not the SD Card. The Card is 64Gb Sandisk Extreme. min 30mb/s writing. Speed class V30. so its a bit older, but good enough i guess. it was running a Voron printer without any issues before.
yeah that is good enough
I think it's the install to be honest
were belt tensions good to start with?
you can home and z tilt with no skipping?
yes, i can use T1 and T0 as normal. no matter which one i select, its working with the gcode. but not mirror and not copy mode. however, i probably have used RC2 as the install. Do i have to use 2.0.2 instead?
I'm on latest with no issues
let me see what I'm on
@Helge Keck said something about Orca Slicer, that a Release Candidate (RC) may have issues. that would also indicate, that the RatOS RC version is not recommended to use.
Oh I use the recommended orca slicer
I have not upgraded
the question is when the new RatOS is finally released. because the latest is from 2023. nearly 2 years old. and the RatOS RC2 is also about 9 months old. thats why i downgraded myself from OrcaSlicer 2.3 to 2.2 without any print profiles taking over. If a release candidate is not recommended, then the IDEX could not be used, because the RatOS do not support the boards i have in my system. so its the question if I should use the latest RatOS or the RC2 version.
well... thats not how it should be.... I used the xz file 2.1.0 RC2 https://github.com/Rat-OS/RatOS/releases/download/v2.1.0-RC2/2024-07-27-RatOS-2.1.0-RC2-raspberry-rpi32.img.xz

it works With the Raspberry Pi imager

i can send you the image i used
you can just upgrade after install
this is what I used @Chris

if you look above, its the same. i am currently updating the system. goiung through all the necessary steps right now
Another person had the same issue with the images
i assume there is no difference between the RPi imager and etcher. however, the one works the other doesnt.
There should be no difference
was the new sd 2gb?
or larger
question... is it superPinda probe or beacon?
for the vcore4? should be beacon
toolhead one should be beacon, toolhead 2 should be none
yes, i was not sure. its the kit from ratrig and superpinda was preselected.
oh yeah, you don't want superpinda selected
and rapido 2.0 is rapido plus?
@Helge Keck I just found a small issue with the guide:
by doing so, i run into the max hotend temperature:
i changed it in the config so the max temp is now 300.
if you dont have a PT1000 you should not raise your max temp
this guide assumes you have a PT1000, these values are examples of course bc there are tons of different setus out there
jsut use the max hotend temp your personal setup can handle
I do have a PT1000 and the rapido2 so normally it should handle up to 350°C. by the way, i have checked the RatOS.cfg and it is set to 350. I have no idea why the error occurs.
thats the original RatOS.cfg
oh i think i got it. the guide seems to be wrong. If i do not heat up the nozzle to 280°C, the beacon calibration is working. but if i heat up the nozzle firstly, the macro throws the error.
why is the guide wrong
seems correct to me
it assumes, the flex plate is not installed yet. if so, you can skip step no2. because it is already installed. so you run the macro with a hot nozzle which makes the macro angry. the guide should rather say that the nozzle must be cooled down before performing the calibration.
no
you are getting it wrong
if you get an error that your hotend dowsnt allow this temo this has nothing to do with any macro
its your config
anyway, im not the docu guy. this is @Cruz
maybe it can simplified for you
please check with your printer. heat up the nozzle to 280 or 300 if your system allows it and then do the macro. BEACON_RATOS_CALIBRATE
the macro doesnt allow a nozzle which is hotter than 275. i checked it twice now. hot nozzle=error. cold nozzle= all good.
you can configure this temp value
its a ratos variable
this is not the max hotend temperature
however, after tightening your nozzle yous should let cool it down of course before you do anything else
yes and i thought (because everything was installed and already tightened) that i just skip the tighten step and the install of the flex plate and run the macro directly. and this doesnt work. so your docu guy should add step 2.2 with "let the nozzle cool down again" to make it clear that the macro doesnt require a hot nozzle
do something for your money
I need to read this chat carefully 💪😅
its mainly about getting the mirror/copy mode to work, and now i did a clean new install on a new 64Gb SD card, which forced me to start from scratch with a fully build and working printer (except the copy/mirror mode)
next unclear advice from the guide:
--> Initial vaoc calibration
at the bottom... before or after the section:
at the bottom means for me, i have to go to the very last line of the file and post it there.
and then. save or save and restart? its not specified. I assume save and restart. but this is unclear.
Balena gave me severe issues as well
Also, you should paste above that section
Yes, I know. But it’s not how it is written in the guide. It could lead to errors if users post it on the very end of the file. However, I did all the necessary calibrations for now. And I can continue with checking the mirror/copy mode in Wednesday. I hope the clean installation with following the guide step by step leads to a working environment. If not, Helge has to check everything. However, @Helge Keck if you can check the provided information from the initial post if you can see something strange, then it would be great. I will post all the steps and debug files on Wednesday evening after performing the checks. I hope that it works then. And maybe you can identify why the issue happened and how it interferes with the candle macro.
@Helge Keck I am now trying to print in mirror mode. (not in performance mode)
1. powering up the printer
2. home/z-tilt
3. calibrate VAOC as well as z offset after the VAOC calibration
4. slicing the benchy in the middle of the buildplate
5. sending it to the printer.
6. selecting mirror mode
7. print
8. it doesnt work.
9. cancle is doing weird things.

how cancel print behaves
@NULL is your issue the same like i have shown it here?
all helpfull files are attached here
Yes issue is the same
@Helge Keck i guess I found the issue and its not solvable by us. It seems to be a bug with the printer size. i downloaded my gcode from the printer and have sent it to another user with a 400 IDEX printer. this gcode was printed well. as you can see here: https://discord.com/channels/@me/1354488738155331665/1354497744080863295
Its shifted to the right and to the back because its made for a IDEX 500, so from the coordinates it fits. can you please take a look into RatOS and check if there might be any kind of error for the 500 printers? would be nice
mirror print on the IDEX 400 with my gcode is also working
@Chris do you also use primeblob purge on your 500?
The guy that prebuild my system has tested IDEX modes before shipping and it worked apparently
I only have made one modification to the config really and that was disable primeblob
So I’m going to test this tomorrow
Also what I don’t understand is apparently I have version RC3 but on github RC2 is the latest
has he printed with the mirror mode or has he checked only if the printer makes the dance? with my printer neither the primeblob nor false is working. so this change doesnt effekt my printer. the mirror mode dance is as it should. does your cancel print does also nothing except cutting off the heater and moving out of range while continuing the print until the hotend is below the min temp?
I just checked how the difference of size makes difference in the ratos variables. I am wondering why we have so many digits after the comma with the IDEX500 and clean numbers for the IDEX400. If I compare the wizzard changes with my current ratos-variables.cfg it would not do any changes here.

He said that he printed in copy and mirror
@Dor_Amboss has a IDEX400 and he was printing my gcode. so we know that the gcode is not the issue at all. it does not effect the outcome. even downloaded from my printer and upload to his printer makes it print as it should. slightly shifted to the side which is normal because of the different sizes. he can send me the a gcode which works on his printer, and its not working on mine. so there is something faulty in general.
I have received a gcode that works for idex 500 from the seller
can you pass it over to me please?
This should work, use the macro to place the printer in copy or mirror
I am going to try it tomorrow
indeed it works. now we have to find out why.
I'm going to test it now
And then disect the gcode and see how the hell this works
because this is sliced with orca 2.3 beta

i think there is something different with the starting code. we have to investigate it. and the cancel print is also working correctly. I really have no idea how the gcode effects the cancel print macro. usually it should be independend to the gcode itself. cancel should always go for fixed positions no matter what the gcode file says. thats for security reasons from my point of view.
if you run a gcode that was sliced for a bigger machine on a smaller idex in copy or mirror mode, than you will get obviously issues when the cancel print macro wants to switch back to single idex mode
the out of move range error comes form the fact the the bigger gcode messes with the copy and mirror mode coordinate system
this is actually a expected behaviour
I got the same problem on a file sliced for 500
you jsut shouldnot run gcode that was sliced for a bgiger machine
in general it is a very bad idea to run gcode that has been sliced from a nother machine, especially gcode form printables can be dangerous
For me it is not working sadly
@Chris did you set the printer manually in copy mode
please enable the debug mode, clean the console output, reproduzce the error, then shyare the console output
the initial post is the reproduced error. https://discord.com/channels/582187371529764864/1352979658462859394/1352979658462859394 its sliced for the bigger mashine.
and exactly this gcode was used to proceed on the smaller mashine and it worked. so... the failed gcode for the mashine for what it was made for worked on the small one. and thats strange!
yes
can anyone slice a file on their slicer and test if the error persists,
i dont know if this error comes from anyone elses slicer config or fro yours
running gcode from bigger machines on smaller machines isnt really a usecase
This is the log
this is sliced on your computer for your printer?
from what i see is that the toolhad is put in IDEX_SINGLE and never recovers to IDEX_COPY by the looks of it
this is sliced on your computer for your printer?
Not by me, it is from another idex 500 user
This person sold me the IDEX 500 as prebuild
can you please slice a file on your computer for your printer and see if the error persists. i need that logfile, and not from a alien gcode file
I have some files but non of them worked and apparently this one does but it is from orca 2.3 beta
can you please slice a file on yur computer, reproduce the errr and send me that logfile with debug enabled
I found the problem
I have had primeblob disabled
From what I see in the logs when you disable the purge method the toolhead is never put back into IDEX_MIRROR, when I enable primeblob you can see in the console that the toolhead is put back into MIRROR mode
@Helge Keck I'm now going to test it with my own file
It is working
So the problem is with the variable_nozzle_priming
@Helge Keck

then enable it
Is there also a primeline or something else then the blob
nope
only primeblob
my nozzle is allways dirty after the blob
i suggest to file a issue on the ratos github
confirmed. thats the issue.
I have created a macro to restore the idex state, now going to test it and see if it works for no primeblob priming
@Helge Keck quick question do you know how I can use the "params.IDEX_MODE " in a macro?
what do you want to do exactly
I found that the purge blob recovers the idex state, and i want to seperate this in a seperate macro
its not the pruge macro that does that
this is routed through multiple macros
safest way is to override the pruge macro and remove the actual purge gcode
i assume something else, one second
inlcude this file into your printer.cfg and then try again
I looks that I'm not awake, params are the params that are given to a macro, stupid of me.
And i will try that
what is so special about this file?
i made a small change that could fix your situation
okay going to try it in a sec
Still not working if i disable primeblob
console outpuot
and please show me how you have included the file

file is just placed in the /config folder

try again with this file
but enable debug mode and share then the console output
Oke so previous log is not needed?
no
Still the same problem but here is the log
wait, there is no print cancel in that log
You are trying to fix the cancel print problem
yes
I will redo it
this is with cancel
try again
still not working i will upload the log, forgot to record it
yes, i jsut added some additionbal outputs
to locate the issue
okay i'm going to grab something to eat and will upload the log after it
I just read the thread. @Helge Keck you are currently working on fixing the cancle print macro, right? are you doing the fix also for the variable_nozzle_priming False? or is this already solved and only the cancle macro not working?
first the cancel print issue
@Helge Keck here is the console log
please try agin with this file, also share your current debug.zip
debug.zip before the test?
of after
after
actually, you can send it now
and please confirm you tried this with a file that you have sliced on your computer for your printer
yes i'm just slicing a voron cube

so it prints in copy or mirror mode normaly, then you hit cancel print and the error apears, correct?
how do you enable copy or mirror mode exactly?
no coppy and mirror doesn't work
when i enable primeblob copy and mirror works and then cancel print also works
please lets focus on the cancel print issue
so you print a file in single toolhead mode, and after cancleing the print the issue apears, correct?
please try agin with the new file and send me the console output
I'm focusing on the cancel print problem, the thing is like @Chris mentioned, this only occurs when the IDEX is enabled in copy or mirror but primeblob disabled. This brings the toolhead in a unknow state by te looks of it and then cancel print doesn't work.
When primeblob is enabled copy and mirror works and then cancel print also works.
And in single toolhead it also works to cancel a print.
I can still try the _park config file if you want with primeblob disabled
guys you are confusing me
i want to fix the cancel print issue
doesnt matter if you print copy mirror or single mode
please provide the new console output with the latest _park file
also, how have you provided the cancel print issue console output if the idex mdoes do not work. if you can hit cancel print then the idex modes do work
you need to be mroe precise please
also, this is nto a primeblob issue, its something else. so please do not focus on that
with the new park file the output will spit out some more info i need
i will make a video on what the printer does when you cancel the print
please dont make a video
jsut provide the console output
after that we see what to do
i need the data it spits out
this cube doesnt look centered on the build plate
it is
thats either not done with the new _park file or in a different printing mode than before
ok , i have to go
Maybe i forgot to do the klipper restart will do again and then you need to see when you have the time.
@Helge Keck this is the log with the latest file
short summary before I step in testing your _park.cfg:
cancel print working?
- IDEX single? Yes
- IDEX copy? no
- IDEX mirror? no
Copy/mirror mode working?
- variable_nozzle_priming: False ? no
- variable_nozzle_priming: "primeblob" ? yes
how the heck do you know if cancel in copy and mirror mode doesnt work if copy and mirror doesnt work in the first palce
what does it eman when you say copy and mirror mode doesnt work
because you said you are focusing on fixing the cancel macro first
you said cancel in copy and mirror mdoe doesnt work
but you said also copy and mirror mode doesnt work in the firs place
then how is it possible that you can reach cancel print if copy and mirror mdoe didnt worked in thef first palce
the topic said "mirror/copy mode AND canel print is not working"
can you please explain me how this is meant. both cant be coirrect at the same time
ok, give me 5 min to explain it before there is too much missunderstanding
bc this can not be real

if this is true
then you cant even reach cancel print
you need to explain this better
I have the problem that I can't get the copy/mirror mode to work, as mentioned in the first post.
i have already written there what i have done. the one print head remains on the right side and does nothing. it remains in the park position with the heater heated up.
if i now cancel the print, it does not work. the abort does not take place. only the heating element is switched off and the printer continues to run with a z-offset until the temp reaches the min temp for extrusion.
as far as i know, this only happens if the variable “variable_nozzle_priming” is set to false. if this is set to “primeblob”, then exactly this problem occurs.
so we have 2 problems at the same time. on the one hand the copy/mirror mode does not work, but at the same time the macro “cancel print” also does not do what it should. I think that the not working of variable_nozzle_priming: False leads to the whole problem.
@NULL figured out today morning, that the variable_nozzle_priming: False is causing the problem as he mentioned in the chat.
somehow the printer stucks in a macro which somehow switched to a single mode while beeing set to mirror mode. i havent understood it to the fullest what is actually going on there. he was then forcing the printer to be in mirror mode which probably worked but not the macro cancel print. but thats only a dirty fix. and he was trying to tell you that he has done this dirty fix.
so for my understanding, we have to fix the mirror/copy mode in the first place and then check if the cancel print is working
so there was never a situation where a normal print happend and cancel print didnt worked, there was always an issue already before
correect?
yes, normal IDEX single mode worked as expected. including pause and cancel
so cancel print was never an issue at all
also with variable_nozzle_priming set to False
it ways always an error that happend before
sorry, but the title confused me
so its purely a copy mirrir mode issue when there is no blob active
and no cancel print issue
yeah i saw that. i am not a programmer, just an mechanical engineer. so maybe that lead to a little missunderstanding
that it only happened with nouzzle primeblob set to false was also not known until today morning.
so what we know is that the variable_nozzle_priming: false is the real issue that the copy/mirror mode is not working and this leads also to an issue with cancel print
please set nozzle_priming again to
primeblob
and include this file to your printer.cfgthis wwont do the primeblob, even if you have activated it, but it will do the improtant idex stuff
ok, do you need any debug files or information to see the outcome?
should work
ok, i will clean up the nozzle and do the test
oh wait, i forgot something
@Chris so you are going to take over now 😏 I'm tuning filament now so lets pray we can find the problem
not working:
one sec
is a firmware restart required? just asking, I will do it anyway.
klipepr restart is needed
same issue:
one sec
we are getting closer
i guess this is something you have to investigate and intigrate into the RatOS for a RC4 version 😉
i dont have amn idex here, thats why you need to do that with me
its an easy fix
first i want to make this printer useable for you, i think now it works with the last file
this is only a workarround, but i already found a real fix, but first lets try this
well..... that does not work..... same issue as the initial one. the T0 is printing without the primeblob, but the T1 is in park. cancel print is also not working. T0 stays heated and printer is printing.
only emergency stop stopps the printer from continuing
ok, remove all the files i shared earlier and put this to your printer.cfg
ok.
- included and save and restart
- home printer
- switching to mirror
- file selected
- both printheads are printing
- cancel print leads to a park position, motors off, heaters off
seems to work now
ok
However…. Not really….
It’s a primeblob!
bc you still have it activated from before
ahhh so i have to set it to false?
yes
you haven't told me^^
ok, set the variable to false and try again
it works without the primeblob
i would say: bug fixed
Solution
Solution for the IDEX 500 Copy/mirror mode issue for RatOS 2.1.0 RC3:
- include this file into printer.cfg
- set variable_nozzle_priming to False
--> the printer will print without a primeblob.
--> set the variable to "Primeblob" and it will do the primeblob
bug fixed.
So I need to place this in my config and then I can use the normal purge method in IDEX?
is there a primeline option?
everything works now how it should. so the variable is now fixed and you can use it with a primeblob and without. everything is now how it should be according to the guide: https://os.ratrig.com/docs/configuration/adaptive-meshing/#adaptive-prime-blob-configuration
Nice,
no, only a blob or nothing
could maybe considered as a feature for a future updated RatOS. but i guess the priority is very low for this kind of feature. firstly we have to eliminate all bugs 😉 and i probably found another one which will be discussed in another post.
we removed that feature actually
Nice job finding the fix :)