bigtreetech / SKR-3

158 stars 63 forks source link

SKR3 (MCU723) can flash fw. but USB no communication #44

Open sacy80 opened 1 year ago

sacy80 commented 1 year ago

i got a SKR3 with a diff MCU (STM32H723VGT6). look like Marlin Firmware can load, as firmware.bin has change to firmware.CUR. But USB communication with PC are not alive, no COM Port detected. Any one has this issue.

Platform.ini- platformio] src_dir = Marlin boards_dir = buildroot/share/PlatformIO/boards default_envs = STM32H743Vx_btt include_dir = Marlin extra_configs = Marlin/config.ini ini/avr.ini ini/due.ini ini/esp32.ini ini/features.ini ini/lpc176x.ini ini/native.ini ini/samd21.ini ini/samd51.ini ini/stm32-common.ini ini/stm32f0.ini ini/stm32f1-maple.ini ini/stm32f1.ini ini/stm32f4.ini ini/stm32f7.ini ini/stm32h7.ini ini/stm32g0.ini ini/teensy.ini ini/renamed.ini

Config.h- // Choose the name from boards.h that matches your setup

ifndef MOTHERBOARD

define MOTHERBOARD BOARD_BTT_SKR_V3_0

endif

define SERIAL_PORT -1

/**

//#define BAUD_RATE_GCODE // Enable G-code M575 to set the baud rate

/**

GonzoG commented 1 year ago

Marlin does not support H723 SKR3, as you can see in your platformio.ini, you compiled firmware for STM32H743

ericc0922 commented 1 year ago

I got the same issue. Do you solved?

sacy80 commented 1 year ago

nope, still waiting for the pull request to review and merged to bugfix main.

https://github.com/MarlinFirmware/Marlin/pull/25387

CristianoGorla commented 1 year ago

nope, still waiting for the pull request to review and merged to bugfix main.

MarlinFirmware/Marlin#25387

You haven't to wait, you can apply the PR and compile it. I did it and it's working. The only problem are the TMC2209, you have to use a specific STM32 version, I modified the stm32h7.ini, env:STM32H723Vx_btt: platform_packages = framework-arduinoststm32@>4.20000.210603 ; TO AVOID TMC CONNECTION ERROR board_build.f_cpu = 550000000L ; H723 MCU 550Mhz

Processing STM32H723Vx_btt (platform: ststm32@~14.1.0; board: marlin_STM32H723Vx; framework: arduino)

Verbose mode can be enabled via -v, --verbose option CONFIGURATION: https://docs.platformio.org/page/boards/ststm32/marlin_STM32H723Vx.html PLATFORM: ST STM32 (14.1.0) > STM32H723VE (564k RAM. 512k Flash) HARDWARE: STM32H723VET6 550MHz, 564KB RAM, 512KB Flash DEBUG: Current (cmsis-dap) External (cmsis-dap, jlink, stlink) PACKAGES:

thisiskeithb commented 1 year ago

The only problem are the TMC2209, you have to use a specific STM32 version, I modified the stm32h7.ini, env:STM32H723Vx_btt: platform_packages = framework-arduinoststm32@>4.20000.210603 ; TO AVOID TMC CONNECTION ERROR

I've updated ststm32 platform & framework to match the original SKR 3 environment.

board_build.f_cpu = 550000000L ; H723 MCU 550Mhz

The cpu speed is already set in PIO's STM32H723Vx board json file, so you don't need to add this:

  "build": {
    "core": "stm32",
    "cpu": "cortex-m7",
    "extra_flags": "-DSTM32H7xx -DSTM32H723xx",
    "f_cpu": "550000000L",
    "mcu": "stm32h723vet6",
    "product_line": "STM32H723xx",
    "variant": "MARLIN_H723vx"
  }
sacy80 commented 1 year ago

Nice. Will try later. Thanks alot

ericc0922 commented 1 year ago

Follow it but got Error: Error: Build environment 'STM32H723Vx_btt' is incompatible with BOARD_BTT_SKR_3. Use one of these: STM32H743Vx_btt Any comments? Thanks alot

thisiskeithb commented 1 year ago

Error: Build environment 'STM32H723Vx_btt' is incompatible with BOARD_BTT_SKR_3. Use one of these: STM32H743Vx_btt

You're not using all the updated files from my PR since the env:STM32H723Vx_btt was added as a compatible environment to the SKR 3 board/pins.

Ensure you're using https://github.com/thisiskeithb/Marlin/tree/pr/octopus_max_ez (.ZIP link) until it is merged into bugfix-2.1.x.

ericc0922 commented 1 year ago

I tried. The same problem. 'Error: Build environment 'STM32H723Vx_btt' is incompatible with BOARD_RAMPS_14_EFB. Use one of these: mega2560, mega1280'

If I change board name to 'BTT_SKR_V3_0'. It comes: 'error: #error "Unknown MOTHERBOARD value set in Configuration.h."'

thisiskeithb commented 1 year ago

I tried. The same problem. 'Error: Build environment 'STM32H723Vx_btt' is incompatible with BOARD_RAMPS_14_EFB. Use one of these: mega2560, mega1280'

That is expected because you have the incorrect motherboard defined.

If I change board name to 'BTT_SKR_V3_0'. It comes: 'error: #error "Unknown MOTHERBOARD value set in Configuration.h."'

You should be using BOARD_BTT_SKR_V3_0, not BTT_SKR_V3_0.

ericc0922 commented 1 year ago

Working now. Thanks bro. You are my angel!

rzboril commented 1 year ago

And now how to edit for Marlin ver. 2.1.2 ? Pleas Pleas.

ericc0922 commented 1 year ago

With BTT TMC2209 V1.3 driver, X Y Z E all works fine. But it has 'All LOW' error message.

M122 return: Driver registers: X 0x00:00:00:00 Bad response! Y 0x00:00:00:00 Bad response! Z 0x00:00:00:00 Bad response! E 0x00:00:00:00 Bad response! Testing X connection... Error: All LOW Testing Y connection... Error: All LOW Testing Z connection... Error: All LOW Testing E connection... Error: All LOW

How to solve it?? >_<

rzboril commented 1 year ago

Try physicaly repinned ABCD to ACBD on motor. If only stress motor. And 550Mhz board konfig Octopus Max EZ.

ericc0922 commented 1 year ago

Try physicaly repinned ABCD to ACBD on motor. If only stress motor. And 550Mhz board konfig Octopus Max EZ.

But the motor works fine, just an error message appears. It's wired.

CristianoGorla commented 1 year ago

With BTT TMC2209 V1.3 driver, X Y Z E all works fine. But it has 'All LOW' error message.

M122 return: Driver registers: X 0x00:00:00:00 Bad response! Y 0x00:00:00:00 Bad response! Z 0x00:00:00:00 Bad response! E 0x00:00:00:00 Bad response! Testing X connection... Error: All LOW Testing Y connection... Error: All LOW Testing Z connection... Error: All LOW Testing E connection... Error: All LOW

How to solve it?? >_<

I modified the stm32h7.ini, env:STM32H723Vx_btt: platform_packages = framework-arduinoststm32@>4.20000.210603 ; TO AVOID TMC CONNECTION ERROR

rzboril commented 1 year ago

Bad drivers ? Try any DRV8825 ?

sacy80 commented 1 year ago

did you power the board with 12v or 24v. the tmc will not run if you only power the board over 5v usb.

ericc0922 commented 1 year ago

did you power the board with 12v or 24v. the tmc will not run if you only power the board over 5v usb.

Yes. I power the board 24V and motor are working fine. But still have All LOW error.

ericc0922 commented 1 year ago

Bad drivers ? Try any DRV8825 ?

Motor working fine. I think drivers are ok.

bz835 commented 1 year ago

Hi there, I managed to get the firmware on the board and the LCD is showing the printer. My last problem is the bl touch. I selected the correct pin for the Probe (PC_13) and it still does not work. I changed the config file according to the setup of a bl touch. The cables are connected in the right order. I have no idea what to do next :S Please help.

thisiskeithb commented 1 year ago

I modified the stm32h7.ini, env:STM32H723Vx_btt: platform_packages = framework-arduinoststm32@>4.20000.210603 ; TO AVOID TMC CONNECTION ERROR

@CristianoGorla: So framework-arduinoststm32@~4.20200.220530 doesn't work for the new SKR 3 with STM32H723VGT6? I don't have this new SKR 3 variant, so I can't test here.

The Octopus Max EZ (STM32H723VET6) with 10 (EZ) TMC2209s & original SKR 3 EZ (STM32H743IIT6) with 5 (EZ) TMC2209s have no TMC connection errors with framework-arduinoststm32@~4.20200.220530.

sacy80 commented 1 year ago

Notice after awhile tmc has error. Not sure where goes wrong.

thisiskeithb commented 1 year ago

https://github.com/MarlinFirmware/Marlin/pull/25387 has been merged upstream in the main Marlin repository, so pull down the latest bugfix-2.1.x for Octopus Max EZ & SKR V3/EZ support.

2.1.3 is expected very Soon:tm:, so you can also wait for that if you're shy about using bugfix.

rzboril commented 1 year ago

Thank you girls. I now tested.

rzboril commented 1 year ago

Bad drivers ? Try any DRV8825 ?

Motor working fine. I think drivers are ok.

And: /**

Enabled ?

dutchronnie commented 1 year ago

Can somebody write down exactly what i have to do to get this board working? I don't understand all this comments.

I do have an SKR 3 EZ, firmware flashing is ok, but no connection to printer, Marlin, klipper and TFT screen al the same problem. On the board there is an STM32H723Vx chip, instead of an STM32H743Vx

Edit: I am a little bit futher: I found the file stm32h7.ini and i see in the file a section for the STM32H723Vx_btt chip, so i edit the platformio.ini and changed

default_envs = STM32H743Vx_btt into default_envs = STM32H723Vx_btt

build the firmware again, and now the board does something, it tries to connect to the computer from usb, but it goes on, off, off ,on off the whole time. Also when i attach a power unit, the screen is also flashing on, off, on off

Do i have to change something else?

sacy80 commented 1 year ago

You may want to try marlin bigfix 2.1x. change the env to the correct mcu env:STM32H723Vx_btt.

What your configuration on your serial interface?

dutchronnie commented 1 year ago

I have changed the env to the correct mcu, that works a little bit better.

The serial connection is now flashing on, off all the time.

My settings in configuration.h are:

define MOTHERBOARD BOARD_BTT_SKR_V3_0_EZ

define SERIAL_PORT -1

define BAUDRATE 250000

define SERIAL_PORT_2 1

define SERIAL_PORT_3 3

dutchronnie commented 1 year ago

The problem is solved, it turns out that the screen was nor correct connected to the motherboard what causes the on, off flickering of the serial port.

Everything works fine now for marlin.