klack / marlin

GNU General Public License v3.0
18 stars 6 forks source link

[BUG] partcooling fan for Extruder 2 won't work on Octopus Board #169

Open gfacek opened 1 year ago

gfacek commented 1 year ago

Bug Description

Partcooler on Extruder 2 won't work (Fan3 / PD13).

Bug Timeline

No response

Expected behavior

No response

Actual behavior

No response

Steps to Reproduce

No response

Version of Marlin Firmware

2.0.9.2

Printer model

Tenlog Hands 2

Electronics

BTT Octopus Board and BTT TFT35

Add-ons

No response

Bed Leveling

None

Your Slicer

None

Host Software

None

Additional information & file uploads

No response

gfacek commented 1 year ago

It looks like someone messed the pin-layout up to change the sequence of the fan outputs.

After I changed in Marlin/src/pins/stm32f4/pins_BTT_OCTOPUS_V1_common.h from:

#define FAN2_PIN                            PA8   // Fan0
#define FAN1_PIN                            PE5   // Fan1
#define FAN_PIN                             PD12  // Fan2
#define FAN3_PIN                            PD13  // Fan3
#define FAN4_PIN                            PD14  // Fan4
#define FAN5_PIN                            PD15  // Fan5

to the original:

#define FAN_PIN                             PA8   // Fan0
#define FAN1_PIN                            PE5   // Fan1
#define FAN2_PIN                            PD12  // Fan2
#define FAN3_PIN                            PD13  // Fan3
#define FAN4_PIN                            PD14  // Fan4
#define FAN5_PIN                            PD15  // Fan5

and in Marlin/Configuration_adv.h:

#if ENABLED(OCTOPUS)
  #define E0_AUTO_FAN_PIN PA8
  #define E1_AUTO_FAN_PIN PE5
#elif ENABLED(SPIDER11)
  #define E0_AUTO_FAN_PIN PB2
  #define E1_AUTO_FAN_PIN PB2
#else 
  #define E0_AUTO_FAN_PIN FAN2_PIN
  #define E1_AUTO_FAN_PIN FAN2_PIN
#endif 

to this:

#if ENABLED(OCTOPUS)
  #define E0_AUTO_FAN_PIN FAN2_PIN
  #define E1_AUTO_FAN_PIN FAN3_PIN
#elif ENABLED(SPIDER11)
  #define E0_AUTO_FAN_PIN PB2
  #define E1_AUTO_FAN_PIN PB2
#else 
  #define E0_AUTO_FAN_PIN FAN2_PIN
  #define E1_AUTO_FAN_PIN FAN2_PIN
#endif 

the fan worked like it shoud.