Hello Sovol Zero experts!
I’m new here. I want to add a 2nd fan to the heat break, possibly not by cutting the wires of the existing fan but by exploiting the existing fan2 connector (that currently doesn’t give any sign of life):
The question is, how do I control the extruder mcu’s fan2 output pin? I can clearly see a MOSFET is there, so the hardware fully supports fan2, but I don’t know which MPU controls it.
Probably I can then enable it in printer.cfg but I don’t know what is the right pin, nor if I can specify two of them here (e.g. adding a comma after PA6 and then another pin name):
It worked, thank you very much. I installed the fan to continue the direction of air flow, i.e. from the right to the left.
Surprisingly, this fan is considerably more noisy than the already installed one, although both come from Sovol (one was in the printer, the one was purchased from their site) and both are running at 17k RPM. However, although considerably more noisy, in the end the other printer’s fans, motors, etc… are so noisy that this additional little but noisy fan doesn’t make much of a practical difference, when printing.
There was no thread on that side of the heat break block, but the fan gets positioned, firmly enough, by the hot end heater wires and other wires. Those have to be positioned in a certain way, though, to let also the head’s plastic cover mount correctly.
I will report temperature differences, that is the most important thing, after some tests I’m doing.
PS: by the way, I believe there’s an error in the image above from Sovol documentation on Git, i.e. “model fan” should be PB0, without FG / tachometer pin available.
If you have a M2.5 tap it would be simple to tap the holes the rest of the way through. I’d work from the side that already had threads to ensure the tap starts square.
Part of your noise may be the fan body vibrating against the heat sink.
Here we go, every effort has been made to make the two tests identical, with the only difference being the 2nd fan mounted or not. However, although my efforts and a previous print in both cases to “warm up consistently” everything, I still got 1C of difference in chamber temperature, and this has to be factored in.
Anyhow, temperatures taken at the end of the print:
With the 2nd toolhead fan installed:
Chamber temp = 41.0C
Host Temp = 61.0C
MCU Temp = 54.0C
ToolHead Temp = 51.5 (max 57.0C)
So, we have 2.1C less temperature but, if we take into account also chamber temperature (that is the temperature of the air used to cool down the toolhead) then the difference is 3.1C. Max temperature difference was 3.2C, quite consistent.
All tests were made with the lid removed and the door completely open. I believe that in case of closed chamber, i.e. with temperatures much higher, the difference will be higher.
So, it’s probably worth it. More tests will make it clearer.
The atsam, atsamd, stm32 and rp2040 micro-controllers contain an internal temperature sensor. One can use the "temperature_mcu" sensor to monitor these temperatures.
sensor_type: temperature_mcu
#sensor_mcu: mcu
# The micro-controller to read from. The default is "mcu".
#sensor_temperature1:
#sensor_adc1:
# Specify the above two parameters (a temperature in Celsius and an
# ADC value as a float between 0.0 and 1.0) to calibrate the
# micro-controller temperature. This may improve the reported
# temperature accuracy on some chips. A typical way to obtain this
# calibration information is to completely remove power from the
# printer for a few hours (to ensure it is at the ambient
# temperature), then power it up and use the QUERY_ADC command to
# obtain an ADC measurement. Use some other temperature sensor on
# the printer to find the corresponding ambient temperature. The
# default is to use the factory calibration data on the
# micro-controller (if applicable) or the nominal values from the
# micro-controller specification.
#sensor_temperature2:
#sensor_adc2:
# If sensor_temperature1/sensor_adc1 is specified then one may also
# specify sensor_temperature2/sensor_adc2 calibration data. Doing so
# may provide calibrated "temperature slope" information. The
# default is to use the factory calibration data on the
# micro-controller (if applicable) or the nominal values from the
# micro-controller specification.
Host temperature sensor¶
Temperature from the machine (eg Raspberry Pi) running the host software.
sensor_type: temperature_host
#sensor_path:
# The path to temperature system file. The default is
# "/sys/class/thermal/thermal_zone0/temp" which is the temperature
# system file on a Raspberry Pi computer.
Tell me all 3 are temperatures INSIDE the chips which with the processors running will be higher than the “ambient” temperature nearby.
Ok, I should have remembered that last night I woke up all sweated with the idea of using my thermal camera pointed directly to the heat break. But I forgot, probably because the following dream was more interesting indeed, but of a completely different kind. Anyhow, I will test more in the following days and I will definitely use my thermal camera.