BIGTREETECH-SKR-mini-E3 icon indicating copy to clipboard operation
BIGTREETECH-SKR-mini-E3 copied to clipboard

Will SKR mini E3 support Ender 3 V2?

Open HYC23 opened this issue 4 years ago • 156 comments

I recently got an Ender 3 V2, but one of the stepper motor drivers on the motherboard is broken. I have an old ender 3 running SKR mini E3 board and works pretty well, so is the new SKR mini E3 V2 board support the new Ender 3 V2 printer, eg. the screen?

HYC23 avatar Oct 11 '20 08:10 HYC23

I have just configured Marlin for Ender 3 V2. You also have to do some pin changes on ribbon cable for display, because pinout is different. I will update this post next week.

jernejp21 avatar Oct 11 '20 10:10 jernejp21

I was actually looking to do the opposite. Add the ender3 v2 screen to an ender 3 pro with skr mini e3 v2. Curious on the pin changes needed to get this to work.

mustang5269 avatar Oct 11 '20 12:10 mustang5269

I have just configured Marlin for Ender 3 V2. You also have to do some pin changes on ribbon cable for display, because pinout is different. I will update this post next week.

Currently I have some problems with USB connection to PC. Windows don't show anything in device manager. But printing and display works fine.

Would you mind showing us the pinout of the Ender 3 V2 screen and how to change the pinout? I cannot find any info for that. Thank you so much.

HYC23 avatar Oct 12 '20 12:10 HYC23

Edited on Mar 28 2021

This is tested on Marlin version 2.0.7. New Marlin version has changed SERIAL_PORT definition and a lot of other stuff. You can use my fork for speeding the process. This version works without a bootloader! If you you are using a bootloader, uncomment lines 752 and 753 in platformio.ini https://github.com/jernejp21/Marlin

Use Marlin's Ender 3 V2 Configuration.h and Configuration_adv.h files.

You need to import this code into pins_BTT_SKR_MINI_E3_common.h file. I pasted this part of code below USB connect control. This code can be found in pins_CREALITY_V4.h.

/**
 *        Ender 3 V2 display                         SKR Mini E3 V2.0
 *                _____                                     _____
 *            5V | 1 2 | GND                            5V | 1 2 | GND
 *   (BTN_E1) A  | 3 4 | B (BTN_E2)         (BTN_EN1) PB15 | 3 4 | PB8 (BTN_E2)
 *          BEEP | 5 6   ENT (BTN_ENC)                PB9  | 5 6   RX1
 *  (SKR_RX1) TX | 7 8 | RX (SKR_TX1)                RESET | 7 8 | TX1
 *            NC | 9 10| NC                  (BEEPER) PA15 | 9 10| PB5  (BTN_ENC)
 *                -----                                     -----
 *                EXP1                                      EXP1
 */
#if ENABLED(DWIN_CREALITY_LCD)

  // RET6 DWIN ENCODER LCD
  #define BTN_ENC                           PB5
  #define BTN_EN1                           PB15
  #define BTN_EN2                           PB8

  #ifndef BEEPER_PIN
    #define BEEPER_PIN                      PA15
    #undef SPEAKER
  #endif
#endif

Commented picture shows pinout for display and SKR board.

CAUTION!!! You have to create new ribbon cable. Connect SKR RX to display TX pin and SKR TX to display RX pin! This is the most important part (and setting the correct serial port in Marlin).

You can connect other pins as you like, just make sure you define correct pins in Marlin (you can connect display A to SKR's PB9 etc.).

Pinout for Ender 3 V2 display is printed on display's PCB. If you remove the back cover, you will see the connector marked.

After you have copied this code, adjusted pins on display and adjusted pins in Marlin for button and beeper, change also Configuration.h file.

  • set #define SERIAL_PORT -1, #define SERIAL_PORT_2 1.
  • set #define MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V2_0
  • set #define X_DRIVER_TYPE TMC2209. Do this also fro X, Y and E0.
  • set #define INVERT_X_DIR true
  • set #define INVERT_Y_DIR true
  • set #define INVERT_Z_DIR false -set #define INVERT_E0_DIR true
  • set #define DWIN_CREALITY_LCD and comment out current display you are using.

Configuration_adv.h file.

  • set #define SDCARD_CONNECTION ONBOARD
  • under #if HAS_TRINAMIC_CONFIG, change motor current. I found out that 580 mA for X, Y and Z is ok. And 700 for E. You can play with this settings.
  • a little bit lower, change slave addresses for serial TX, RX.
    • #define X_SLAVE_ADDRESS 0
    • #define Y_SLAVE_ADDRESS 2
    • #define Z_SLAVE_ADDRESS 1
    • #define E0_SLAVE_ADDRESS 3
  • set #define CHOPPER_TIMING CHOPPER_DEFAULT_24V if you are using 24V power supply

Make sure you also change platformio.ini . Change default_envs = STM32F103RC_btt_512K. You are now using SKR board, not Ender.

From here on you can change Marlin to use BL Touch, sensorless homing etc.

jernejp21 avatar Oct 12 '20 12:10 jernejp21

Hi all.The day before yesterday I received this board, killed two days on the configuration, was already going to sell it, when I suddenly came across this post. Thank you very much, you have given me hope. Please tell me in file platformio.ini you indicate default_envs = STM32F103RC_btt_512K and in configuration.h MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V2_0 right?

Stalkeros000 avatar Oct 19 '20 20:10 Stalkeros000

Please tell me in file platformio.ini you indicate default_envs = STM32F103RC_btt_512K and in configuration.h MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V2_0 right?

Yes, that is correct.

Hope you get it to work. Please comment on the results.

jernejp21 avatar Oct 19 '20 22:10 jernejp21

Please tell me in file platformio.ini you indicate default_envs = STM32F103RC_btt_512K and in configuration.h MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V2_0 right?

Yes, that is correct.

Hope you get it to work. Please comment on the results.

Thx, but i cant' compile FW file, few days ago i was create new issue (before I was see that post): https://github.com/MarlinFirmware/Configurations/issues/274

Maybe need in configuration.h indicate CREALITY_V4?

Stalkeros000 avatar Oct 20 '20 15:10 Stalkeros000

@Stalkeros000 did you look at a post above where you have to add some code to pins_BTT_SKR_MINI_E3_common.h?

jernejp21 avatar Oct 20 '20 23:10 jernejp21

@jernejp21 just to confirm, you would need to place that code in the correct file and build a custom cable to wire it as defined? So basically you can't just use a regular flat ribbon cable for this to work?

dani190 avatar Nov 01 '20 01:11 dani190

@dani190 yes. You have to make new cable or adapter to use with default cable, because pinout of CR10 display differs from Ender 3 V2 display.

jernejp21 avatar Nov 01 '20 02:11 jernejp21

Ok fair enough - and this will use the stock Creality menus I guess? Since the marlin UI has not been re-written yet?

dani190 avatar Nov 01 '20 02:11 dani190

I have will contact Marlin developers if they want to include this fix or not. You will need to fix HW by yourself (or if BTT or someone else starts to sell adapters). This configuration isn't plug and play like it's for BLTouch and Neopixle and sensorless homing.

jernejp21 avatar Nov 01 '20 03:11 jernejp21

Hi all. Im not test new board yet, bcs I dont want lose PC connection. Sometimes need use some G-code commands in real-time. Only that stops me to trying made some adapter and change board. If you know how fix that problem, please tell.

Stalkeros000 avatar Nov 01 '20 09:11 Stalkeros000

I have will contact Marlin developers if they want to include this fix or not. You will need to fix HW by yourself (or if BTT or someone else starts to sell adapters). This configuration isn't plug and play like it's for BLTouch and Neopixle and sensorless homing.

Weird that this worked for you... I tried it and got a ton of errors about the encoder wheel or something. I ensured I put the above code into the file you mentioned. Were there any other changes you made?

dani190 avatar Nov 02 '20 02:11 dani190

Check if everything is defined. Also check for #define DWIN_CREALITY_LCD in Configuration.h.

jernejp21 avatar Nov 02 '20 04:11 jernejp21

@jernejp21 Ok so it seems like the stock Marlin config files are missing some stuff that must be turned on... Fixed it by comparing to the Ender 3 V2 example, enabling a few things for the encoder wheel and didn't have classic jerk enabled causing other issues. Basically had to merge my SKR mini E3 config with the Ender 3 V2 stock board config to have it compile.

Going to try building a cable now and see how it works.

dani190 avatar Nov 02 '20 15:11 dani190

after flashing my printer keeps booting. It shows progress bar and after it's full it starts again from the beginning.

MrSalzi avatar Nov 03 '20 21:11 MrSalzi

Ya I had the same behaviour... gave up for now as I know Marlin's dev's are working on fixing this soon.

dani190 avatar Nov 03 '20 22:11 dani190

@MrSalzi @dani190 I have updated my comment on how to setup config file. Did you #define MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V2_0 in Configuration.h? From @MrSalzi comment I think that wiring is wrong. I think that display pulls down REST pin so the main MCU resets. To check my theory, please use jumper cables and connect only +5V, GND, TX and RX pins. If printer boots up correctly (you can see main screen), than you have wiring problems. Check actual wiring and check how pins are set in FW.

jernejp21 avatar Nov 03 '20 23:11 jernejp21

Update regrading Marlin support for this configuration. As you can read here, Marlin is not in favour of this, because it needs HW fiddling. It's not plug and play solution. In my opinion a lot of things Marlin supports are not plug and play, but this is their response.

It's like the time you needed adapter for Ender 3 (8-bit board) for using BLTouch.

jernejp21 avatar Nov 03 '20 23:11 jernejp21

@MrSalzi @dani190 I have updated my comment on how to setup config file. Did you #define MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V2_0 in Configuration.h? From @MrSalzi comment I think that wiring is wrong. I think that display pulls down REST pin so the main MCU resets. To check my theory, please use jumper cables and connect only +5V, GND, TX and RX pins. If printer boots up correctly (you can see main screen), than you have wiring problems. Check actual wiring and check how pins are set in FW.

yes I had it defined from before. Took a working copy of my config and just added your suggested changes image

dani190 avatar Nov 04 '20 01:11 dani190

Update regrading Marlin support for this configuration. As you can read here, Marlin is not in favour of this, because it needs HW fiddling. It's not plug and play solution. In my opinion a lot of things Marlin supports are not plug and play, but this is their response.

It's like the time you needed adapter for Ender 3 (8-bit board) for using BLTouch.

Well I don't know if that means they aren't going to support it but like you said... it needs a custom cable.

dani190 avatar Nov 04 '20 01:11 dani190

Thanks for your fast response. I've done all that and tried to disconnect all the other pins but these didn't fix it :(

MrSalzi avatar Nov 04 '20 11:11 MrSalzi

Is this correct?

637AA8A4-DEEB-4D4E-AC26-EB760C956113

D9BE362F-65F6-4C01-92A0-33E011450AE2

MrSalzi avatar Nov 04 '20 17:11 MrSalzi

If I comment out #define EEPROM_SETTINGS then it boots to main menu. Button works but rotation doesn't, but anyway my board is alive. I guess this isn't the final solutions?

MrSalzi avatar Nov 06 '20 20:11 MrSalzi

If I comment out #define EEPROM_SETTINGS then it boots to main menu. Button works but rotation doesn't, but anyway my board is alive. I guess this isn't the final solutions?

I am at the same step. I can get it to post by commenting out EEPROM_SETTINGS. With it enabled it just boot loops.

Westward12 avatar Nov 18 '20 08:11 Westward12

Ok, so I got it to work with eeprom, and with almost everything working including z offset and a bltouch. There is a flaw in the code for saving the language setting to the eeprom that makes it only work with the eeprom on the creality v4 board. With these lines commented out marlin starts properly however as a default it will always start in English. I'll do a full write up on how to make it work later when I get home.

Madtom2925 avatar Dec 14 '20 07:12 Madtom2925

@bigtreetech do you plan to officially support the Ender3v2?

jottr avatar Dec 14 '20 14:12 jottr

I am getting the following error when compiling. image

Attached is also my configurations. Configuration.zip

thomasparlette avatar Dec 16 '20 02:12 thomasparlette

I am getting the following error when compiling. image

Attached is also my configurations. Configuration.zip

Figured out the issue in Configuration_adv.h calling out the serial connections to each 2209 driver. It compiled now the new board should be in tomorrow and I can install and try out.

thomasparlette avatar Dec 16 '20 02:12 thomasparlette

Hi all, Sorry for the delay in my writeup. the reason for the endless loading bar loop in the start-up cycle of the ender 3 v2 screen is due to two lines of code that are specific to the BL24CXX EEPROM and its library. I'm not sure on how to fix this so it works with all EEPROMS however I found disabling the lines of code causes the LCD to default to English.

The Lines of code are in Marlin\src\lcd\dwin\e3v2\dwin.cpp

You will need to // line 218 and Line 227 like so:


 void HMI_SetLanguage() {
   #if ENABLED(EEPROM_SETTINGS)
     //BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language));
   #endif
   HMI_SetLanguageCache();
 }
 
 void HMI_ToggleLanguage() {
   HMI_flag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE;
   HMI_SetLanguageCache();
   #if ENABLED(EEPROM_SETTINGS)
     //BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language));
   #endif
 }

Also if you are getting a definition error for ENCODER_5X_STEPS_PER_SEC you will need to add a line in Marlin\Configuration_adv.h.

By default it only appears to have 10x and 100x defined , I added a line like this to resolve the error.

#if ENABLED(ENCODER_RATE_MULTIPLIER)
  #define ENCODER_5X_STEPS_PER_SEC    15  // (steps/s) Encoder rate for 5x speed
  #define ENCODER_10X_STEPS_PER_SEC   30  // (steps/s) Encoder rate for 10x speed
  #define ENCODER_100X_STEPS_PER_SEC  80  // (steps/s) Encoder rate for 100x speed
#endif

I also got an error when trying to save to the dedicated eeprom on my skr e3 2.0. I had to activate the flash eeprom for it to work, if someone else can try this and see if it is the same for them that would be great.

Edit : Fixed bad formatting

Madtom2925 avatar Dec 19 '20 03:12 Madtom2925

Here is an edit to the code so that it will only activate this code if the BOARD_CREALITY_V4 is defined

void HMI_SetLanguage() {
  #if ENABLED(EEPROM_SETTINGS)
	  #if (MOTHERBOARD == BOARD_CREALITY_V4)
		  BL24CXX::read(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language));
	  #endif
  #endif
  HMI_SetLanguageCache();
}

void HMI_ToggleLanguage() {
  HMI_flag.language = HMI_IsChinese() ? DWIN_ENGLISH : DWIN_CHINESE;
  HMI_SetLanguageCache();
  #if ENABLED(EEPROM_SETTINGS)
    #if (MOTHERBOARD == BOARD_CREALITY_V4)
      BL24CXX::write(DWIN_LANGUAGE_EEPROM_ADDRESS, (uint8_t*)&HMI_flag.language, sizeof(HMI_flag.language));
    #endif
  #endif
} 

thomasparlette avatar Dec 20 '20 02:12 thomasparlette

That works for automatically disabling the code if its not the right motherboard, I was more thinking of a way to allow it to save using marlins eeprom definitions so it would work with any board rather then just being disabled. That way people who want the other languages on boot can use it.

Madtom2925 avatar Dec 20 '20 02:12 Madtom2925

Update regrading Marlin support for this configuration. As you can read here, Marlin is not in favour of this, because it needs HW fiddling. It's not plug and play solution. In my opinion a lot of things Marlin supports are not plug and play, but this is their response.

It's like the time you needed adapter for Ender 3 (8-bit board) for using BLTouch.

jernejp21 ,

You haven't commented lately. It sounded like you were successful in getting the BT mini E3 V2 to work in an Ender 3 V2. Wiring between the display and the board needed changes, but with the required firmware changes you documented, everything worked fine for you? But, I see issues others have had since you posted. Did you not have these issues?

My Ender 3 V2 board died after less than a week of use, so I ordered the mine E3 V2 as a replacement. Maybe I'll just leave the display unplugged and use an RPI for octoprint. Any reason that won't work? Must a display be plugged into the E3 V2 board for things to work properly using Octoprint?

I'm quite comfortable with doing a custom cable, but I figure I should do the upgrade in smaller steps, if there are numerous issues to resolve.

davthomaspilot avatar Dec 27 '20 16:12 davthomaspilot

I didn't have any issues. I just changed ribbon cable from board to display and edited Marlin as described in post above. BL touch is working, sensorless homing is working, display is working.

jernejp21 avatar Dec 28 '20 02:12 jernejp21

Thanks! Your posts seem to make it straight forward. I'll follow them tomorrow when my BT E3 V2 arrives.

davthomaspilot avatar Dec 28 '20 03:12 davthomaspilot

Thanks for the reply! Got my BTT board for my E3 V2 and ready to and  went back and read your post.  I noticed you had issues with USB.  Did you resolve that? Dave Thomas On Sunday, December 27, 2020, 09:37:05 PM EST, Jernej Pangerc [email protected] wrote:

I didn't have any issues. I just changed ribbon cable from board to display and edited Marlin as described in post above. BL touch is working, sensorless homing is working, display is working.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

davthomaspilot avatar Dec 30 '20 16:12 davthomaspilot

USB issues will remain, because of faulty SKR design. SCLK pin is connected to USB D+ pin via MOSFET. This means that you cannot use USB when you are debugging the board.

jernejp21 avatar Jan 01 '21 23:01 jernejp21

So, it just impacts debugging? No issues with printing from a PC like Octoprint?

davthomaspilot avatar Jan 01 '21 23:01 davthomaspilot

jernejp21

Your instructions said:

set #define SERIAL_PORT_2 1.

But that means SERIAL_PORT must be changed to something other than 1. Else, I get these errors:

#error "SERIAL_PORT_2 cannot be the same as SERIAL_PORT

Did you mean

set #define SERIAL_PORT_2 -1

If I do this, everything builds ok.

Or, should I #define SERIAL_PORT to something besides 1

davthomaspilot avatar Jan 02 '21 00:01 davthomaspilot

SERIAL_PORT -1 SERIAL_PORT_2 1

jernejp21 avatar Jan 02 '21 00:01 jernejp21

Thanks again!

I found a set up guide here:

https://www.makenprint.uk/3d-printing/3d-printing-guides/skr-mini-e3-v2-configuration-h-marlin-2-setup-part-2/

It says to use

SERIAL_PORT 2 SERAIL_PORT_2 -1

The comments in the code say:

`/** SERIAL_PORT

  • Select the serial port on the board to use for communication with the host.
  • This allows the connection of wireless adapters (for instance) to non-default port pins.
  • Serial port -1 is the USB emulated serial port, if available.
  • Note: The first serial port (-1 or 0) will always be used by the Arduino bootloader.
  • :[-1, 0, 1, 2, 3, 4, 5, 6, 7] */

SERIAL_PORT 2 /**

  • Select a secondary serial port on the board to use for communication with the host.
  • Currently Ethernet (-2) is only supported on Teensy 4.1 boards.
  • :[-2, -1, 0, 1, 2, 3, 4, 5, 6, 7] */

' The comments suggest both SERIAL_PORT and SERIAL_PORT_2 define what to use "for communication with the host"I don't know what "secondary" serial port means. Maybe there are two serial ports on the SKR card, one is used for the USB connection and there's a header for debugging over a serial interface? Sorry for my ignorance.

It also says it's "critical" to change the driver types to TMC2209 (versus TMC2208_STANDALONE).

#define X_DRIVER_TYPE  TMC2209
#define Y_DRIVER_TYPE  TMC2209
#define Z_DRIVER_TYPE  TMC2209
//#define X2_DRIVER_TYPE TMC2209
//#define Y2_DRIVER_TYPE A4988
//#define Z2_DRIVER_TYPE A4988
//#define Z3_DRIVER_TYPE A4988
//#define Z4_DRIVER_TYPE A4988
#define E0_DRIVER_TYPE TMC2209
//#define E1_DRIVER_TYPE A4988
//#define E2_DRIVER_TYPE A4988
//#define E3_DRIVER_TYPE A4988
//#define E4_DRIVER_TYPE A4988
//#define E5_DRIVER_TYPE A4988
//#define E6_DRIVER_TYPE A4988
//#define E7_DRIVER_TYPE A4988

Let me know if this is the wrong place to ask these questions.

davthomaspilot avatar Jan 02 '21 01:01 davthomaspilot

I'm fairly certain that guide is for an ender 3 v1, not a v2. You need serial_port_2 defined as 1 so that it uses the correct pins in the exp header for the display as it uses serial_port_2 for the display. The rest with the tmc drivers is correct, you also need to use classic jerk and make the changes to the code as listed above.

Madtom2925 avatar Jan 02 '21 02:01 Madtom2925

Thanks!

It would be nice if there were symbolic constants or an enumeration for the values of SERIAL_PORT and SERIAL_PORT_2. Like #define USB_EMULATED -1 and, based on Madtom2925's reply #define DISPLAY_SERIAL 1

or maybe there are different valid values for SERIAL_PORT versus SERIAL_PORT_2? What would "2" indicate if used for SERIAL_PORT_2? Are the valid values for each constant documented somewhere in the code (or elsewhere)?

I'll give

SERIAL_PORT -1
SERIAL_PORT_2 

a try with the rewired display.

CLASSIC_JERK is defined in the sample configuration file jerniejp suggested to use as the starting point, but the DRIVER_TYPES are defined as TMC2208_STANDALONE and apparently need to be changed.

I think I want to understand the Marlin code better. Are there any resources besides just start reading the code?

Thanks again!

davthomaspilot avatar Jan 02 '21 12:01 davthomaspilot

STM32F103 has 4 available USART pin pairs (TX, RX pin pairs). -1 means to use USB UART (D+, D- pins). 1 means TX1, RX1, 2 is TX2, RX2 and so on. See reference manual which pin is which USART.

There is no documentation about how Marlin is structured or any program flow. You just have to start reading the code.

jernejp21 avatar Jan 02 '21 13:01 jernejp21

Thank you jernejp21! That helps a lot.

davthomaspilot avatar Jan 02 '21 15:01 davthomaspilot

Hello, I have been following along with this thread. I recently installed an SKR mini E3 v2.0 on my Ender 3 V2. With your help and Youtube I have gotten to the point where everything is working except, when I try to print something, the printer will auto home, the progress bar for the print will go to %100 very quickly but the printer never moves after that. Also when try to bed level with the BL Touch, it probes once and then stops moving.

Any suggestions are greatly appreciated.

Jd1Ent avatar Jan 15 '21 19:01 Jd1Ent

hi everyone, I'm new to this 3d world and unfortunately by making some mistakes I broke the motherboard of my ender 3 v2, today I tried to replace it with the skr mini e3 v2.0 with the stock lcd, I state that I am not practical of code, so I was looking for someone who could help me with the first configuration. one more thing, is it normal for me to beep continuously? thank you so much

Ogrenero avatar Jan 15 '21 21:01 Ogrenero

I have been following along with this thread. I recently >installed an SKR mini E3 v2.0 on my Ender 3 V2. With >your help and Youtube I have gotten to the point where >everything is working except, when I try to print >something, the printer will auto home, the progress bar >for the print will go to %100 very quickly but the printer >never moves after that. Also when try to bed level with >the BL Touch, it probes once and then stops

We would need to see your config and advconfig files to see what's going on.

Madtom2925 avatar Jan 15 '21 22:01 Madtom2925

I have been following along with this thread. I recently >installed an SKR mini E3 v2.0 on my Ender 3 V2. With >your help and Youtube I have gotten to the point where >everything is working except, when I try to print >something, the printer will auto home, the progress bar >for the print will go to %100 very quickly but the printer >never moves after that. Also when try to bed level with >the BL Touch, it probes once and then stops

We would need to see your config and advconfig files to see what's going on.

no the problem is that I haven't loaded any firmware yet because I don't know which one to put, but something else "do I have to follow the lcd display output configuration described above?" sorry for my English

Ogrenero avatar Jan 15 '21 23:01 Ogrenero

That was in reply to the problem quoted, not you. For this to work you have to modify the cable as listed above. Otherwise it will just beep. You will also need modified firmware, do you have a bltouch?

Madtom2925 avatar Jan 15 '21 23:01 Madtom2925

Sorry to everyone it took some time. I have updated my original post with all the settings I have modified from Ender 3 V2 config file.

I see a lot of people are asking same questions over and over:

  • you have to create new ribbon cable, because pinout if different. DWIN display has different layout than CR10 display.
  • if your display is beeping, pinout is incorrect.
  • if you can't see image on display, pinout or FW is incorrect
  • if FW doesn't compile read all error messages. You might have multiple displays defined or you don't have the correct board selected in platformio.ini file.

jernejp21 avatar Jan 15 '21 23:01 jernejp21

Jernejp21 do you have eeprom enabled?

Madtom2925 avatar Jan 15 '21 23:01 Madtom2925

You need EEPROM to store settings and to use M500 command.

jernejp21 avatar Jan 15 '21 23:01 jernejp21

Era in risposta al problema citato, non tu. Affinché questo funzioni è necessario modificare il cavo come elencato sopra. Altrimenti emetterà solo un segnale acustico. Avrai anche bisogno di un firmware modificato, hai un bltouch?

yep i have bltouch

Ogrenero avatar Jan 15 '21 23:01 Ogrenero

Jernejp21 did you have to make mods to the dwin file or did it work straight away for you?, some people seem to get a boot loop and others don't so maybe its version related

Madtom2925 avatar Jan 15 '21 23:01 Madtom2925

I have been following along with this thread. I recently >installed an SKR mini E3 v2.0 on my Ender 3 V2. With >your help and Youtube I have gotten to the point where >everything is working except, when I try to print >something, the printer will auto home, the progress bar >for the print will go to %100 very quickly but the printer >never moves after that. Also when try to bed level with >the BL Touch, it probes once and then stops

We would need to see your config and advconfig files to see what's going on.

I uploaded the config files to my profile in "skr-e3-v2.0-on-ender-3-v2"

Jd1Ent avatar Jan 16 '21 01:01 Jd1Ent

I don't see anything obvious in the config, how is your bltouch wired?, is it plugged in to the z min header or the bltouch header?

Madtom2925 avatar Jan 16 '21 01:01 Madtom2925

I have it on the one labeled z probe.

Jd1Ent avatar Jan 16 '21 02:01 Jd1Ent

I don't see anything obvious in the config, how is your bltouch wired?, is it plugged in to the z min header or the bltouch header?

I ended up disabling bl touch in firmware and now it will print, so I will have to dig into the bl touch settings to see what is going on.

Jd1Ent avatar Jan 16 '21 19:01 Jd1Ent

hi everyone, again, XD, after finding the cables needed to rewire the flat cable of the LCD and after modifying the firmware following the descriptions, everything went well except the self-leveling which insists on not working correctly. the probe after making the initial test when turning on the printer is as if it does not feel contact with the print plan, does anyone work correctly?

Ogrenero avatar Jan 17 '21 20:01 Ogrenero

I have been following along with this thread. I recently >installed an SKR mini E3 v2.0 on my Ender 3 V2. With >your help and Youtube I have gotten to the point where >everything is working except, when I try to print >something, the printer will auto home, the progress bar >for the print will go to %100 very quickly but the printer >never moves after that. Also when try to bed level with >the BL Touch, it probes once and then stops

We would need to see your config and advconfig files to see what's going on.

I uploaded the config files to my profile in "skr-e3-v2.0-on-ender-3-v2"

did u have plugged ur bltouch at z min on ur board?

Ogrenero avatar Jan 18 '21 20:01 Ogrenero

I have been following along with this thread. I recently >installed an SKR mini E3 v2.0 on my Ender 3 V2. With >your help and Youtube I have gotten to the point where >everything is working except, when I try to print >something, the printer will auto home, the progress bar >for the print will go to %100 very quickly but the printer >never moves after that. Also when try to bed level with >the BL Touch, it probes once and then stops

We would need to see your config and advconfig files to see what's going on.

I uploaded the config files to my profile in "skr-e3-v2.0-on-ender-3-v2"

did u have plugged ur bltouch at z min on ur board?

It is plugged in to the one labeled "z probe" next to the display plug.

Jd1Ent avatar Jan 19 '21 16:01 Jd1Ent

the printer will auto home, the progress bar >for the print will go to %100 very quickly but the printer >never moves after that

I see this behavior after completing a print, then starting a new one without power cycling the machine. But, it's with the stock ender V2 board.

If I can figure out where I should log or check that as an issue, I'll do it. Maybe related to the end G-code I'm using. The start G-code does the home and ABL. It might also be related to temperatures already being at or above their targets.

Anyway, you might just try having the home and ABL G-code in your slicer settings, then make sure you power cycle before printing. Works everytime for me, trying another print after the first always behaves as you describe.

davthomaspilot avatar Jan 19 '21 17:01 davthomaspilot

Hello, I would like to use the SKR mini E3 v2 board in the Ender 3 v2 but not with the pure Marlin firmware only with the TH3D Unfield 2- Creality Ender 3 Pro and SKR E3 Mini Board version. In their code I found only one difference from your post - pin programming in the file pins_BTT_SKR_MINI_E3_common.h. How should the pins be assigned in the TH3D version?

Your example:

                _____
            5V | 1 2 | GND
          PB15 | 3 4 | PB8
          PB9  | 5 6   RX1
         RESET | 7 8 | TX1
          PA15 | 9 10| PB5  
               -----
                EXP1

TH3D version:

                -----
            5V | · · | GND
 (LCD_D7)  PG7 | · · | PG6  (LCD_D6)
 (LCD_D5)  PG3 | · · | PG2  (LCD_D4)
 (LCD_RS) PD10 | · · | PD11 (LCD_EN)
(BTN_ENC)  PA8 | · · | PG4  (BEEPER)
                -----
                 EXP1

kubiakoo avatar Jan 31 '21 18:01 kubiakoo

Hello, I followed this instruction but if I set ports like

SERIAL_PORT -1 SERIAL_PORT_2 1

compiling firmware fails.

image

With //SERIAL_PORT_2 1 firmware build access

nospmMe avatar Feb 12 '21 19:02 nospmMe

I seem to have firmware that is working (am able to print from my OctoPrint). Just working on fixing the LCD now, but am confused by the new pinning requirements. Are we just swapping pins 7 and 8, so the cable would be: 1 --> 1 2 --> 2 3 --> 3 4 --> 4 5 --> 5 6 --> 6 7 --> 8 8 --> 7 9 --> 9 10 --> 10

OR, is it? 1 —> 1 2 —> 2 3 —> 3 4 —> 4 5 —> 9 6 —> 10 7 —> 8 8 —> 6 9 —> 5 (NC) 10 —> 7 (NC)

or... ?????

Please anyone who has it working, can you confirm what the pinning is? I don't understand the diagram. Thank you!

timzor avatar Feb 14 '21 07:02 timzor

Here are my notes on the display wiring. Pin 9 and 10 on the display end and pin 5 and 7 on the controller board end, do not get connected to anything. I hope this makes sense.

On Sun, Feb 14, 2021, 12:26 AM timzor [email protected] wrote:

I seem to have firmware that is working (am able to print from my OctoPrint). Just working on fixing the LCD now, but am confused by the new pinning requirements. Are we just swapping pins 7 and 8, so the cable would be: 1 --> 1 2 --> 2 3 --> 3 4 --> 4 5 --> 5 6 --> 6 7 --> 8 8 --> 7 9 --> 9 10 --> 10

Please anyone who has it working, can you confirm what the pinning is? I don't understand the diagram. Thank you!

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bigtreetech/BIGTREETECH-SKR-mini-E3/issues/424#issuecomment-778739841, or unsubscribe https://github.com/notifications/unsubscribe-auth/ASPLI2ASDJUCGCWVG5YHODTS653KXANCNFSM4SLUCEGQ .

Jd1Ent avatar Feb 15 '21 01:02 Jd1Ent

20210214_181515.jpg

Jd1Ent avatar Feb 15 '21 01:02 Jd1Ent

Fixed it for you. Use this one. Your pin 7 and 8 were backward.

1 —> 1 2 —> 2 3 —> 3 4 —> 4 5 —> 9 6 —> 10 7 —> 6 8 —> 8 9 —> 5 (NC) 10 —> 7 (NC)

Jd1Ent avatar Feb 15 '21 01:02 Jd1Ent

It seems that the stock Ender 3 V2 display isn't fully supported by Marlin (yet?). So, I'm using a plug-in in Octoprint to display messages from the G-code (M117).

Another example is that the z offset wizard isn't supported by Marlin on the Ender 3 V2 display. Not sure why, maybe just a todo. I may look at hacking the code, if the main issue is no support for messages on the V2 display--use the octoprint plugin instead.

davthomaspilot avatar Feb 15 '21 16:02 davthomaspilot

You may wish to try https://github.com/Jyers/Marlin/tree/Ender_3_V2_Rewrite if you want more functionality on your V2 DWIN screen

t3chguy avatar Feb 15 '21 17:02 t3chguy

Thanks for the tip. The readme makes it sound just like the bugfix branch. Are the changes relative to bugfix documented?

davthomaspilot avatar Feb 15 '21 17:02 davthomaspilot

The whole DWIN implementation was rewritten in a more maintainable way and a lot of features were added like host controls, M75/M77, M600, M701/M702, lots more, there was a reddit thread about it but it was a few weeks back and a lot has moved since then

t3chguy avatar Feb 15 '21 17:02 t3chguy

Do you think it will eventually be merged back to the official Marlin (and supported)? (I'll look for the thread)

davthomaspilot avatar Feb 15 '21 17:02 davthomaspilot

Possibly, Jyers has already had one small chunk PR land in upstream to put more metrics on the print screen.

t3chguy avatar Feb 15 '21 17:02 t3chguy

I´ve found a way to get Ender 3 V2 display working.

https://github.com/yohannaftali/Marlin-Firmware-BTT-SKR-Mini-Hemera I downloaded and changed firmware found at link above and now the display works very well.

Now I have a new issue, because the printer isn´t able to print any gcode, if there are following commands included

M109 wait for extruder temp M190 wait for bed temp

With Pronterface I get this

image

I can set any temperatur manually for hotend and bed without issues by Pronterface and also with Ender 3 V2 display. If I uncomment M109 and M190 in gcode the printer works like a charm.

Wo can help me please?

nospmMe avatar Feb 15 '21 19:02 nospmMe

@nospmMe link returns "no results". Do you have a valid link?

With M09 & M190 executed, how long is it taking before the ERROR shows?

DarkSnart avatar Feb 16 '21 23:02 DarkSnart

@DarkSnart The printer is connected bye usb and to me it seems the link is stable.

The error came up immediately when gcode pass the commands M109 or M190.

Same happens if I start the gcode directly over sdcard. The printer stops immediately and goes in freeze.

I've realised that printing over sdcard isn't possible. No matter which gcode

nospmMe avatar Feb 17 '21 10:02 nospmMe

@nospmMe have you visited this thread? [(https://github.com/bigtreetech/BIGTREETECH-SKR-mini-E3/issues/465)] (https://github.com/bigtreetech/BIGTREETECH-SKR-mini-E3/issues/465)

DarkSnart avatar Feb 23 '21 20:02 DarkSnart

Just wanted to mentioned make sure you are using the right default_envs = STM32F103RC_btt_512K or STM32F103RC_btt as appropriate depending on the chip on your board. I believe I'd been using the _512K which was flashing fine but causing random crashing and motor overheating.

edit - My printer still random crashes/freezes. Will open a new issue.

pbinsted avatar Mar 02 '21 20:03 pbinsted

@DarkSnart please find new link: https://github.com/yohannaftali/Marlin-Firmware-BTT-SKR-Mini-Hemera Of course I visited your mentioned thread, thank you therefore. Unfortunately I didn´t find any solution there.

Instead of M109 and M190 currently I use G4 S90 for start gcode and that works for me.

@pbinsted this is my default_envs

[platformio] src_dir = Marlin boards_dir = buildroot/share/PlatformIO/boards default_envs = STM32F103RC_btt_512K include_dir = Marlin

nospmMe avatar Mar 04 '21 20:03 nospmMe

I was having a hard time with the wiring, I created this for myself, but maybe someone will find it useful. (The wire numbers are different on the software and hardware level :)) wiring

damquis avatar Mar 05 '21 00:03 damquis

I am having the same problem @nospmMe was having. If I try to compile the current state of the bugfix2.0 branch with the serial config suggested here, I get an error related to some serial code:

In file included from d:\marlin2bugfix\marlin\src\inc\marlinconfig.h:55:0,
                 from Marlin\src\HAL\STM32F1\HAL.cpp:30:
d:\marlin2bugfix\marlin\src\core\serial.h:71:34: error: 'MYSERIAL' was not declared in this scope
     typedef MultiSerial<decltype(MYSERIAL), decltype(SERIAL_CATCHALL), 0> SerialOutputT;
                                  ^~~~~~~~
d:\marlin2bugfix\marlin\src\core\serial.h:71:34: note: suggested alternative: 'MYSERIAL1'
     typedef MultiSerial<decltype(MYSERIAL), decltype(SERIAL_CATCHALL), 0> SerialOutputT;
                                  ^~~~~~~~
                                  MYSERIAL1
d:\marlin2bugfix\marlin\src\core\serial.h:71:34: error: 'MYSERIAL' was not declared in this scope
d:\marlin2bugfix\marlin\src\core\serial.h:71:34: note: suggested alternative: 'MYSERIAL1'
     typedef MultiSerial<decltype(MYSERIAL), decltype(SERIAL_CATCHALL), 0> SerialOutputT;
                                  ^~~~~~~~
                                  MYSERIAL1
d:\marlin2bugfix\marlin\src\core\serial.h:71:73: error: template argument 1 is invalid
     typedef MultiSerial<decltype(MYSERIAL), decltype(SERIAL_CATCHALL), 0> SerialOutputT;
                                                                         ^
In file included from d:\marlin2bugfix\marlin\src\inc\marlinconfig.h:55:0,
                 from Marlin\src\HAL\STM32F1\HAL.cpp:30:
d:\marlin2bugfix\marlin\src\core\serial.h: In function 'void SERIAL_CHAR(char)':
d:\marlin2bugfix\marlin\src\core\serial.h:100:47: error: request for member 'write' in 'multiSerial', which is of non-class type 'SerialOutputT {aka int}'
 inline void SERIAL_CHAR(char a) { SERIAL_IMPL.write(a); }
                                               ^~~~~

Trying to dig in a little deeper to see what's happening.

bholzer avatar Mar 09 '21 01:03 bholzer

@bholzer I used this (https://github.com/yohannaftali/Marlin-Firmware-BTT-SKR-Mini-Hemera) as a starting point, get rid of the Hemera related settings, added my probe settings, checked the modifications mentioned in the 5th comment and I was able to compile the firmware.

damquis avatar Mar 09 '21 02:03 damquis

@bholzer You are using new version. Please try with Marlin 2.0.7. A lot has changed since then, that's why my instructions arn't compatible with your version of Marlin.

jernejp21 avatar Mar 09 '21 02:03 jernejp21

Thanks, can confirm I was able to get a build using 2.0.7. Now at the boot loop step, so making progress!

On Mar 8, 2021, at 8:22 PM, Jernej Pangerc [email protected] wrote:

 @bholzer You are using new version. Please try with Marlin 2.0.7. A lot has changed since then, that's why my instructions arn't compatible with your version of Marlin.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

bholzer avatar Mar 09 '21 06:03 bholzer

After almost a week of head breaking I finally managed to compile everything correctly A BIG THANKS TO ALL OF YOU for your head breakage, and your research on the subject my ender3 v1 now works with a SKR mini E3 and an ender3 v2 screen and octoprint I am French zero in coding and in English thank you again to you 2021-03-13 (1)

Daniel38160 avatar Mar 13 '21 08:03 Daniel38160

After almost a week of head breaking I finally managed to compile everything correctly A BIG THANKS TO ALL OF YOU for your head breakage, and your research on the subject my ender3 v1 now works with a SKR mini E3 and an ender3 v2 screen and octoprint I am French zero in coding and in English thank you again to you 2021-03-13 (1)

Great to hear, could you share your config files? Is it only the pinouts, which can easily be changed or are there many changes in the config needed?

seppelicous avatar Mar 15 '21 12:03 seppelicous

@seppelicous For the pinout I followed the tutorial on the other hand without touching the original power supply. I did not connect the beeper because I do not find it useful nor the reset. I will try to redistribute my wiring and I will immediately send you my compilation of Marlin which passes for an Ender 3 v1 (for v2 you have to deactivate the fan and change the PIDs). There must still be communication issues because it does not show me the Zs on the screen. That said basic it suits me well.And in order not to have the reboot problems of the motherboard I deleted some files and replaced by others because of the language.

void HMI_SetLanguage () {

si ACTIVÉ (EEPROM_SETTINGS)

  # if (MOTHERBOARD == BOARD_CREALITY_V4)
	   BL24CXX :: read (DWIN_LANGUAGE_EEPROM_ADDRESS, ( uint8_t *) & HMI_flag. language , sizeof (HMI_flag. language ));
  # endif 

endif

HMI_SetLanguageCache (); }

void HMI_ToggleLanguage () { HMI_flag. langue = HMI_IsChinese ()? DWIN_ENGLISH: DWIN_CHINESE; HMI_SetLanguageCache ();

si ACTIVÉ (EEPROM_SETTINGS)

# if (MOTHERBOARD == BOARD_CREALITY_V4)
   BL24CXX :: write (DWIN_LANGUAGE_EEPROM_ADDRESS, ( uint8_t *) & HMI_flag. language , sizeof (HMI_flag. language ));
# endif 

endif

}

This part of code prevents the motherboard from rebooting. Sorry but the zip file is too big but you can ask me by e-mail [email protected]

Daniel38160 avatar Mar 15 '21 14:03 Daniel38160

I understand what changes need to be made to the ribbon cable. What I don't understand is how to go about making those changes. Can anyone offer links or guidance that might get me started?

Thanks, Andy

maddawgmax avatar Mar 23 '21 22:03 maddawgmax

@maddawgmax you take a new ribbon cable and 2 10-pin IDC connectors, and rearrange wires according to the guide above. For installing flat cable to IDC connector - you just press cable into the connector. Recommend you use a vise. With hands can be difficult.

jernejp21 avatar Mar 24 '21 01:03 jernejp21

@maddawgmax I did not cut the black and white wire (these are the power wires), it is not useful to cut the purple, orange and gray. So yellow (screen side) goes with red, green (screen side) goes with brown. At the end I find myself on the motherboard side with the yellow, green and blue which are not connected. And on the screen side, blue, red and brown

163959775_780007962944327_4211284550420655427_n 162227559_758320124870470_8473635928897311953_n 163239525_197500788445739_2131351642661449031_n

Daniel38160 avatar Mar 24 '21 07:03 Daniel38160

@maddawgmax you take a new ribbon cable and 2 10-pin IDC connectors, and rearrange wires according to the guide above. For installing flat cable to IDC connector - you just press cable into the connector. Recommend you use a vise. With hands can be difficult.

@jernejp21 Thank you. That’s exactly what I needed.

maddawgmax avatar Mar 24 '21 11:03 maddawgmax

@maddawgmax I did not cut the black and white wire (these are the power wires), it is not useful to cut the purple, orange and gray. So yellow (screen side) goes with red, green (screen side) goes with brown. At the end I find myself on the motherboard side with the yellow, green and blue which are not connected. And on the screen side, blue, red and brown 163959775_780007962944327_4211284550420655427_n 162227559_758320124870470_8473635928897311953_n 163239525_197500788445739_2131351642661449031_n

@Daniel38160 Thanks for the pics.

maddawgmax avatar Mar 24 '21 11:03 maddawgmax

Hey, I thought I'll describe my "journey" so far. I'm trying to get a working firmware for about 1 week now and my current firmware (an edited Hemera firmware for the Ender 3 V2) lets me successfully do a bed level with my BLTouch but I can't get a print to work (neither via the sdcard or Octoprint). I always get the same error "Changing monitoring state from "Error: Printer halted. kill() called!" to "Offline (Error: Printer halted. kill() called!)"", checked it via Octoprint terminal. I already tried to start from scratch but that didn't work out. Then I saw that jernejp21 posted a link to their fork, I successfully compiled it but I got stuck in a boot loop. I already checked and compared all the configuration.h and configuration_adv.h files with each other and I didn't see any differences (I'm fairly new to 3d printing so I for sure might be missing something). The edited Hemera firmware seems to work the best so far but I honestly don't know why I get that error. As for the display: everything seems to work, I was able to get the connections correct. So I'd assume there is no problem with the display. I for sure would appreciate any kind of help!

Jexkin avatar Mar 27 '21 14:03 Jexkin

@Jexkin

Have you seen this link? https://github.com/yohannaftali/Marlin-Firmware-BTT-SKR-Mini-Hemera

maddawgmax avatar Mar 27 '21 15:03 maddawgmax

@maddawgmax

yes, that's the Hemera firmware I wrote about. Downloaded it, removed the Hemera settings and I got the printer to "work" (bed leveling works via display and Octoprint but starting a prints gives me the error code (see above)). I basically only need to edit some lines in the configuration.h and configuration_adv.h file, right? Or is there any other file I need to edit some lines?

Jexkin avatar Mar 27 '21 17:03 Jexkin

I can't read the thread very easily right now, but I think I recall there is a reset line in the wiring to/from the display.  That line should not be left floating--continuous or spurious reboots can occur. Later tonight, I'll refresh my memory and comment again, if it seems appropriate.  On Saturday, March 27, 2021, 01:08:15 PM EDT, Jexkin @.***> wrote:

@maddawgmax

yes, that's the Hemera firmware I wrote about. Downloaded it, removed the Hemera settings and I got the printer to "work" (bed leveling works via display and Octoprint but starting a prints gives me the error code (see above)). I basically only need to edit some lines in the configuration.h and configuration_adv.h file, right? Or is there any other file I need to edit some lines?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

davthomaspilot avatar Mar 27 '21 18:03 davthomaspilot

Edited on Mar 28 2021

This is tested on Marlin version 2.0.7. New Marlin version has changed SERIAL_PORT definition and a lot of other stuff. You can use my fork for speeding the process. This version works without a bootloader! If you you are using a bootloader, uncomment lines 752 and 753 in platformio.ini https://github.com/jernejp21/Marlin

Use Marlin's Ender 3 V2 Configuration.h and Configuration_adv.h files.

You need to import this code into pins_BTT_SKR_MINI_E3_common.h file. I pasted this part of code below USB connect control. This code can be found in pins_CREALITY_V4.h.

/**
 *        Ender 3 V2 display                         SKR Mini E3 V2.0
 *                _____                                     _____
 *            5V | 1 2 | GND                            5V | 1 2 | GND
 *   (BTN_E1) A  | 3 4 | B (BTN_E2)         (BTN_EN1) PB15 | 3 4 | PB8 (BTN_E2)
 *          BEEP | 5 6   ENT (BTN_ENC)                PB9  | 5 6   RX1
 *  (SKR_RX1) TX | 7 8 | RX (SKR_TX1)                RESET | 7 8 | TX1
 *            NC | 9 10| NC                  (BEEPER) PA15 | 9 10| PB5  (BTN_ENC)
 *                -----                                     -----
 *                EXP1                                      EXP1
 */
#if ENABLED(DWIN_CREALITY_LCD)

  // RET6 DWIN ENCODER LCD
  #define BTN_ENC                           PB5
  #define BTN_EN1                           PB15
  #define BTN_EN2                           PB8

  #ifndef BEEPER_PIN
    #define BEEPER_PIN                      PA15
    #undef SPEAKER
  #endif
#endif

Commented picture shows pinout for display and SKR board.

CAUTION!!! You have to create new ribbon cable. Connect SKR RX to display TX pin and SKR TX to display RX pin! This is the most important part (and setting the correct serial port in Marlin).

You can connect other pins as you like, just make sure you define correct pins in Marlin (you can connect display A to SKR's PB9 etc.).

Pinout for Ender 3 V2 display is printed on display's PCB. If you remove the back cover, you will see the connector marked.

After you have copied this code, adjusted pins on display and adjusted pins in Marlin for button and beeper, change also Configuration.h file.

  • set #define SERIAL_PORT -1, #define SERIAL_PORT_2 1.
  • set #define MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V2_0
  • set #define X_DRIVER_TYPE TMC2209. Do this also fro X, Y and E0.
  • set #define INVERT_X_DIR true
  • set #define INVERT_Y_DIR true
  • set #define INVERT_Z_DIR false -set #define INVERT_E0_DIR true
  • set #define DWIN_CREALITY_LCD and comment out current display you are using.

Configuration_adv.h file.

  • set #define SDCARD_CONNECTION ONBOARD

  • under #if HAS_TRINAMIC_CONFIG, change motor current. I found out that 580 mA for X, Y and Z is ok. And 700 for E. You can play with this settings.

  • a little bit lower, change slave addresses for serial TX, RX.

    • #define X_SLAVE_ADDRESS 0
    • #define Y_SLAVE_ADDRESS 2
    • #define Z_SLAVE_ADDRESS 1
    • #define E0_SLAVE_ADDRESS 3
  • set #define CHOPPER_TIMING CHOPPER_DEFAULT_24V if you are using 24V power supply

Make sure you also change platformio.ini . Change default_envs = STM32F103RC_btt_512K. You are now using SKR board, not Ender.

From here on you can change Marlin to use BL Touch, sensorless homing etc.

jernejp21 ,

I just noticed you updated your earlier post. I figure I'll download the latest bugfix and work with it.

I went ahead and ordered at BigTreeTech TFT display. Any advice about using it versus doing the rewire for the Ender 3 V2 display?

davthomaspilot avatar Mar 28 '21 16:03 davthomaspilot