-
-
Notifications
You must be signed in to change notification settings - Fork 19.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] Mightyboard Rev E pin definitions incorrect #23956
Comments
Issue confirmed. The assignments are in error as of commit #23728. This commit erroneously swapped these two MOSFET output pins in code as compared to the MakerBot schematic and physical board screen included in said commit. |
As per issue MarlinFirmware#23956, the two MOSFET pins for the EX2-HEAT and EX2-FAN were erroneously swapped thereby causing a safety issue by enabling heat on EX2 when instead the fan should have turned on. This can happen because both extruders in a Replicator 2, FFCP, or clone share a heat break and therefore there will be some heating of EX2 when EX1 is in use.
Since found that MOSFET_6 is also wrong, should be defined as 44 `#define MOSFET_1_PIN 6 // Plug EX1 Pin 1-2 -> PH3 #15 -> Logical 06 // #define HEATER_0_PIN MOSFET_1_PIN // EX1 #ifdef NUM_M106_FANS Since this section has attention, may I also suggest adding the last 3 lines shown above to the heater/fan definitions, as MOSFET 6 is the typical route for adding a cooling fan on this board? |
Good catch. Again, you're correct on the pin. I should have seen that; it was right there with the wrong assignment even though the description beside it was correct. As for setting the FAN_PIN, this may or may not be desirable. As you surmised, the MOSFET assignments came from the RAMPS-style auto-assignment. This was intentional so the different boards used in a generic fashion more or less behave the same way. However, it's not the correct assignment for the Replicator, the FFCP, or any of the clones. In that, the Mightyboard is a bit of an odd duck because it was built for specific machines and not for general usage. Directly setting the pin's function outside of the unified generic logic may be better handled in the configuration as was done in the example config for the FlashForge Creator Pro. @thinkyhead, do you want to weigh in on this one? |
Closing since a PR was opened: #23976 |
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Did you test the latest
bugfix-2.0.x
code?Yes, and the problem still exists.
Bug Description
The pins for extruder 2 heater and fan are swapped. This causes the heater to behave as the fan, switching on once the heating from extruder 1 causes extruder 2 to reach 50C - heating until the printer is switched off. (Significant fire risk if unattended)
Addendum
MOSFET_6_PIN is also incorrect, defined as 13 in place of 44. Also propose the addition of an ifdef statement to define MOSFET 6 as the cooling fan in the event that it is defined in configuration.h.
The MOSFET pin definitions are currently (from line 150 in pins_MIGHTYBOARD_REV_E.h):
#define MOSFET_1_PIN 6 // Plug EX1 Pin 1-2 -> PH3 #15 -> Logical 06
#define MOSFET_2_PIN 7 // Plug EX1 Pin 3-4 -> PH4 #16 -> Logical 07
#define MOSFET_3_PIN 12 // Plug EX2 1-2 -> PB5 #25 -> Logical 12
#define MOSFET_4_PIN 11 // Plug EX2 3-4 -> PB6 #24 -> Logical 11
#define MOSFET_5_PIN 45 // Plug HBD 1-2 -> PL4 #39 -> Logical 45
#define MOSFET_6_PIN 13 // Plug Extra 1-2 -> PL5 #40 -> Logical 44 (FET not soldered in all boards)
//
// Heaters / Fans (24V)
//
#define HEATER_0_PIN MOSFET_1_PIN // EX1
#define HEATER_1_PIN MOSFET_3_PIN // EX2
#define HEATER_BED_PIN MOSFET_5_PIN // HBP
They should be (with the added fan definition):
#define MOSFET_1_PIN 6 // Plug EX1 Pin 1-2 -> PH3 #15 -> Logical 06
#define MOSFET_2_PIN 7 // Plug EX1 Pin 3-4 -> PH4 #16 -> Logical 07
#define MOSFET_3_PIN 11 // Plug EX2 1-2 -> PB5 #25 -> Logical 12
#define MOSFET_4_PIN 12 // Plug EX2 3-4 -> PB6 #24 -> Logical 11
#define MOSFET_5_PIN 45 // Plug HBD 1-2 -> PL4 #39 -> Logical 45
#define MOSFET_6_PIN 44 // Plug Extra 1-2 -> PL5 #40 -> Logical 44 (FET not soldered in all boards)
//
// Heaters / Fans (24V)
//
#define HEATER_0_PIN MOSFET_1_PIN // EX1
#define HEATER_1_PIN MOSFET_3_PIN // EX2
#define HEATER_BED_PIN MOSFET_5_PIN // HBP
#ifdef NUM_M106_FANS
#define FAN_PIN MOSFET_6_PIN //Print cooling fan
#endif
Bug Timeline
Unknown, new user
Expected behavior
Fan switches on when extruder 2 reaches 50C.
Heater switches on as required to heat extruder 2.
Actual behavior
Heater switches on when extruder 2 reaches 50C - Continues to heat until the machine is switched off.
Fan switches on when heater is supposed to start heating - warning alarm triggers after a few seconds.
Steps to Reproduce
Version of Marlin Firmware
bugfix-2.0.x
Printer model
CTC Bizer
Electronics
Stock electronics + Bltouch
Add-ons
No response
Bed Leveling
UBL Bilinear mesh
Your Slicer
Cura
Host Software
SD Card (headless)
Additional information & file uploads
No response
The text was updated successfully, but these errors were encountered: