Code: Alles auswählen
/** \brief Allows to use the extruder fan controlled by temperature.
Extruder fan output pin defined by #define EXT0_EXTRUDER_COOLER_PIN in pins.h */
#define FEATURE_EXTRUDER_FAN 1 // 0 = off, 1 = on
Code: Alles auswählen
#if FEATURE_EXTRUDER_FAN == 1
// Change #define EXT0_EXTRUDER_COOLER_SPEED in RF1000.h
// to adjust the default speed of fan (possible in EEProm too)
// Change #define EXTRUDER_FAN_COOL_TEMP in configuration.h to adjust start and stop temperature
// !!! Attention fastio.h pin mapping not always in accordance of the circuit drawing,
// check before use !!!
// X8 --> 9 (HZ2, 18, PH6, fastio:DIO9)
// X10 --> 8 (HZ3, 17, PH5, fastio:DIO8)
// X19 --> 25 (OUT1, 75, PA3, fastio:DIO25)
#define EXT0_EXTRUDER_COOLER_PIN 9 // should not be used by other function for the RF1000 yet
#if NUM_EXTRUDER == 2
#define EXT1_EXTRUDER_COOLER_PIN 9 // For 2 extruders if equal, they share this cooler
#else
#define EXT1_EXTRUDER_COOLER_PIN -1
#endif
// Check for possible conflicts
#if (EXT0_EXTRUDER_COOLER_PIN == HEATER_1_PIN)
#error Oops! Extruder fan pin is equal to heater 1 pin.
#endif
#if (EXT0_EXTRUDER_COOLER_PIN == HEATER_2_PIN)
#error Oops! Extruder fan pin is equal to heater 2 pin.
#endif
#if (FEATURE_CASE_LIGHT == 1) && (EXT0_EXTRUDER_COOLER_PIN == CASE_LIGHT_PIN)
#error Oops! Extruder fan pin is equal to case light pin.
#endif
#else // No extruder fan used
#define EXT0_EXTRUDER_COOLER_PIN -1
#define EXT1_EXTRUDER_COOLER_PIN -1
#endif
An X10 funktioniert er nicht, da kommt es sich mit "HEATER_2_PIN" in Gehege. Siehe auch viewtopic.php?f=23&t=2905&p=29990&hilit=hz3#p29990 Ich folgere daraus, X10 ist nur nutzbar, wenn man keine Druckbettheizung hat, oder?
An X19 funktioniert es bei mir auch, kommt sich aber mit dem Licht ins Gehege, wenn man das aktiviert hat.
Der Code oben meldet diese Probleme beim Kompilieren.
Für die Ausgabe der ADC-Temperatur-Rohwerte nochmal alle Änderungen. Der Grund, dass man die RAW0 Werte nie sieht, liegt an Repetier Host. Das Programm filtert dass heraus. Ich habe es jetzt so gelöst, dass aus "RAW" immer "RAW " wird, so dass es auch bei 2 Extrudern funktionieren sollte:
Code: Alles auswählen
#if NUM_EXTRUDER == 1
Com::printF(Com::tTColon, Extruder::current->tempControl.currentTemperatureC, 1);
Com::printF(Com::tSpaceSlash, Extruder::current->tempControl.targetTemperatureC, 0);
// Show output of autotune when tuning!
Com::printF(Com::tSpaceAtColon, (pwm_pos[Extruder::current->id]));
if (showRaw) {
// RAW values were only given out for 2 or more extruder, see
// [https://reprap.org/forum/read.php?267,574648,574843#msg-574843]
// RAW0 is filtered by Reptier Host, but "RAW 0" will not.
// RAW0: is filtered out by repetier host, see
// [https://github.com/luc-github/Repetier-Firmware-4-Davinci/discussions/209#discussioncomment-202609]
// you can find the values in the written log of repetier host (if enabled)
// Therefore changed tSpaceRaw defintion from " RAW" to " RAW "
Com::printF(Com::tSpaceRaw, (int)0);
Com::printF(Com::tColon, (1023 << (2 - ANALOG_REDUCE_BITS)) - Extruder::current->tempControl.currentTemperature);
}
#endif