Source of "Error: no tool selected"
-
Problem:
- A print is started
- The bed heater warms and reaches its setpoint
- The above warning is displayed
- The bed is homed and leveled
- The print continues normally
If the error/warning is ignored, everything completes fine, but I really want to understand why it's happening.
PrusaSlider Start Gcode:
Relevant portion of print_begin:
; select tool and configure based on filament selected T0 ; select tool 0 so extruder commands work M703 ; loads selected filament configuration (bed/extruder temps, extrusion ; multiplier, etc). See config.g in filament folder. G32 ; home and level bed, then move to bed center and set Z datum
G32 calls bed.g:
; bed.g ; called to perform automatic bed compensation via G32 ; M561 ; clear any bed transform G28 ; home all G30 P0 X-139 Y-119 Z-99999 ; probe near left front leadscrew G30 P1 X0 Y150 Z-99999 ; probe near rear center leadscrew G30 P2 X145 Y-119 Z-99999 S3 ; probe near right front leadscrew, then perform 3-pt calibration G1 X0 Y0 G30 G30 s-1 M291 P"Leveling finished" S1 T2
So anyone see the problem? It's almost as if "T0" takes time to take effect, but that seems highly unlikely.
I added some diagnostic code to print_begin:
; select tool and configure based on filament selected T T0 ; select tool 0 so extruder commands work T M703 ; loads selected filament configuration (bed/extruder temps, extrusion ; multiplier, etc). See config.g in filament folder. T
When the print was run:
So what's going on? Given where the diagnostic T commands are, another mystery is that all three T commands report claim that Tool 0 is already selected, yet the first T state command is before the tool being assigned on line 3. If the error is being reported earlier, the PrusaSlicer only has M106 S0 ahead of the call the print_begin, and I don't believe that it can report this error.
Confused. -
Hey Kurt,
You have a knack for finding obscure errors.
You may be setting T0 active in your main config.g file.
For example in mine I have this where I create the tool:
; tool 0 M563 P0 S"T0" D0 H1 F0 ; define tool 0 to use extruder drive 0, heater 1, fan 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active/standby temperatures
Do you have any of the tool handling files: t0pre, t0post, t0free in your System folder?
Frederick
-
@fcwilt No, none of those files, just config.g. The fancy stuff will get added later
Here's the only tool-related code in config.g:
================ Tools ========================== M563 P0 D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temps to 0C;
-
Well there in config.g is why tool 0 is already selected before the T0 in print_begin.g.
It doesn't hurt to select it more than once so just leave that code in config.g as it is..
What version of firmware are you running?
Frederick
-
@fcwilt Right, but that just deepens the mystery about the system error saying that no tool is selected.
Code is in my signature, and is the latest stable releases for both the 6HC and tool board.
-
@kb58 said in Source of "Error: no tool selected":
@fcwilt Right, but that just deepens the mystery about the system error saying that no tool is selected.
Code is in my signature, and is the latest stable releases for both the 6HC and tool board.
Well we are using the same firmware.
I've got all the same hardware you do but it is on my workbench so it is free for testing.
Zip up all your files and I will load them on my hardware and see if I get the same error.
Post the ZIP file here (and to change the .ZIP to .TXT) or email it to me.
Tomorrow should be a quiet day for me so I will be able to do some testing.
Frederick
-
@fcwilt zipped files have been emailed.
-
@kb58 said in Source of "Error: no tool selected":
@fcwilt zipped files have been emailed.
Haven't seen the ZIP file yet.
Frederick
-
@fcwilt Sent again -
-
@kb58 said in Source of "Error: no tool selected":
A print is started
Can you share the sliced gcode file?
@kb58 said in Source of "Error: no tool selected":
G30 s-1
Why do you have G30 S-1 in your bed.g?
G30 S-1 ; Probe the bed at the current XY position. When the probe is triggered, do not adjust the Z coordinate, just report the machine height at which the probe was triggered.
-
@kb58 it's probably some command in your print files that the slicer generates before it adds your start script. Post the start of the GCode file excluding any large comment blocks.
-
@kb58 said in Source of "Error: no tool selected":
@fcwilt Sent again -
They are not coming through for some reason.
Frederick
-
@fcwilt it's probably simpler to extract the first 50 or so lines using an editor and post them here.
Some email systems don't allow .zip attachments.
-
@dc42 Good morning!
Okay, here's the first chunk of the PrusaSlicer-generated Gcode:
-
@phaedrux said in Source of "Error: no tool selected":
@kb58 said in Source of "Error: no tool selected":
G30 s-1
Why do you have G30 S-1 in your bed.g?
G30 S-1 ; Probe the bed at the current XY position. When the probe is triggered, do not adjust the Z coordinate, just report the machine height at which the probe was triggered.
A popular question, hah. Since it's a custom built printer, it's there just to offer reassurance that the probe trigger height remains consistent (bad experience with previous inductive probe). Once it's proven so, that line of code will be removed.
-
@kb58 It's the G10 S200 line at the top. It should be inserted after your print_begin.g macro.
-
@chrishamm Nicely done, sir!
If that line of code is slicer-generated, how would I move it, other than manually?
(I realize that this has moved outside the scope of Duet products, so I won't keep going on and on about it.)
Thank you very much for catching this. It wasn't a big problem, but a very nagging one!
-
@kb58 In my case it is sufficient to put T0 at the beginning of my Start G-code in PrusaSlicer v2.3.0, then the G10 code is generated below.
PS: I just noticed I still have Marlin compatibility set in PrusaSlicer and not RepRapFirmware. If I change to RepRapFirmware I get the same message.
-
@kb58 said in Source of "Error: no tool selected":
If that line of code is slicer-generated, how would I move it, other than manually?
Did you specify temps in the slicer?
Recall the conditions I specified for using Prusa:
When you do that this is Prusa generated code - no temp commands and thus no problems with the tool not being activated.
; PrusaSlicer (RepRapflavor - no temps) inserts the following around the call to this file ;M107 ; fan off (should be M106 S0) ;M98 P"print_begin.g" ; invokes this file ;G21 ; set units to millimeters ;G90 ; absolute XYZ moves ;M83 ; relative E moves
Frederick
-
@fcwilt Okay, thank you, now I understand more clearly. So (in your setup at least), you have the printer set most parameters before starting a job, and reduced your slicer's "contribution" to the job to just be the object shape.