bigtreetech / BIGTREETECH-TouchScreenFirmware

support TFT35 V1.0/V1.1/V1.2/V2.0/V3.0, TFT28, TFT24 V1.1, TFT43, TFT50, TFT70
GNU General Public License v3.0
1.3k stars 1.65k forks source link

Unable to update the firmware #24

Closed EnnajimiYassine closed 3 years ago

EnnajimiYassine commented 5 years ago

I'm unable to update the firmware of my board tft35 ( hardware : V1.2, firmware : 1.2.6)

when i put the firmware on the SD card and reset nothing happen ( no firmware update), but when i put the bmp and font they get updated ( but still not the firmware)

Can please some one help ?

bwaldrum commented 5 years ago

I have this same problem (the OP issue of not being able to update the firmware by copying the firmware file to the SD card). I have the TFT35 V2.0 board and it has the 2.0.20 firmware Like others, I have tried the copying the firmware from this repository to an SD card, following the official instructions in the readme, but the board refuses to upgrade. I see above that @bigtreetech posted a bootloader, and the only solution I see so far is to use STLink V2 to update the bootloader. After that, the documented upgrade process works.

Questions:

  1. Are all TFT 35 V2.0 boards with the 2.0.20 firmware going to face this problem (essentially un upgradeable)?
  2. Will @bigtreetech post an official set of instructions on how to upgrade the bootloader?
  3. Will @bigtreetech post the new bootloader in a more "official" and searchable manner?

It seems from the comments that this is a common problem and it would be nice to have a clear, approved set of steps to resolve.

bullgun commented 4 years ago

Same issue here the touch screen TFT35 V2.0 doesnt update :-(

bullgun commented 4 years ago

Succes! After uploading the new bootloader it worked!

How do you have uploading the bootloader? Thanks

bullgun commented 4 years ago

@EnnajimiYassine I used the boot loader first and flashed it with stink utility IMG_4384 IMG_4389 IMG_4388 And then I just used the precompiled file: BIQU_TFT35_APP1_V2.0.22.bin Thanks a lot for sharing. My TFT35-V2.0 had the same issue.

I did the same using a this little thing: https://www.aliexpress.com/item/32988024318.html Make sure you have the wiring correctly attached to the SWD port. See https://github.com/bigtreetech/BIGTREETECH-TFT35-V2.0/blob/master/TFT3.5-V2.0%20manual.pdf for the pinout of the port.

Its possible do this with arduino nano?

hutchx86 commented 4 years ago

It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. BIGTREETECH-TFT35_01 I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity.

This worked perfectly for me! Thank you very much for this! Display now updates without a problem :)

bullgun commented 4 years ago

It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. BIGTREETECH-TFT35_01 I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity.

This worked perfectly for me! Thank you very much for this! Display now updates without a problem :)

Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance

fabKalix commented 4 years ago

It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. BIGTREETECH-TFT35_01 I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity.

This worked perfectly for me! Thank you very much for this! Display now updates without a problem :)

Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) Pinout

bullgun commented 4 years ago

It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. BIGTREETECH-TFT35_01 I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity.

This worked perfectly for me! Thank you very much for this! Display now updates without a problem :)

Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) Pinout

One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance

fabKalix commented 4 years ago

It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. BIGTREETECH-TFT35_01 I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity.

This worked perfectly for me! Thank you very much for this! Display now updates without a problem :)

Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) Pinout

One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance

Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0.

bullgun commented 4 years ago

It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. BIGTREETECH-TFT35_01 I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity.

This worked perfectly for me! Thank you very much for this! Display now updates without a problem :)

Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) Pinout

One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance

Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0.

i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this

fabKalix commented 4 years ago

It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. BIGTREETECH-TFT35_01 I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity.

This worked perfectly for me! Thank you very much for this! Display now updates without a problem :)

Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) Pinout

One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance

Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0.

i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this

Connect the marked soldering pad with a 3v3 pin (I said 5v before, but 3v3 is enough). You can use the first pin from SWD for instance, as you can see that should be 3v3. Keep this connected while booting and flashing. If you are doing it right the stm32 flasher tool will see the device and show it's size otherwise nothing happens. No need to change BOOT1, it is already in the correct state for flashing by default.

bullgun commented 4 years ago

I Will use USB to TTL , i need 3v3 from somethimg else and the boot1 dont connect nothing?

A sexta, 27/09/2019, 09:16, Erwin van der Stelt notifications@github.com escreveu:

It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. [image: BIGTREETECH-TFT35_01] https://user-images.githubusercontent.com/4178400/64849589-013d5f00-d614-11e9-8f01-6f5eea7ef5ba.jpg I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity.

This worked perfectly for me! Thank you very much for this! Display now updates without a problem :)

Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) [image: Pinout] https://user-images.githubusercontent.com/4178400/65681939-3907c600-e05a-11e9-9920-e9df2e49ac6c.png

One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance

Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0.

i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this

Connect the marked soldering pad with a 3v3 pin (I said 5v before, but 3v3 is enough). You can use the first pin from SWD for instance, as you can see that should be 3v3. Keep this connected while booting and flashing. If you are doing it right the stm32 flasher tool will see the device and show it's size otherwise nothing happens. No need to change BOOT1, it is already in the correct state for flashing by default.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/issues/24?email_source=notifications&email_token=AIE2KVI254IAIOORDMXIFM3QLW6OTA5CNFSM4IMHXLC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7YEV2Q#issuecomment-535841514, or mute the thread https://github.com/notifications/unsubscribe-auth/AIE2KVLCNCEACMO2NVG7CPTQLW6OTANCNFSM4IMHXLCQ .

fabKalix commented 4 years ago

I Will use USB to TTL , i need 3v3 from somethimg else and the boot1 dont connect nothing? A sexta, 27/09/2019, 09:16, Erwin van der Stelt notifications@github.com escreveu: It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. [image: BIGTREETECH-TFT35_01] https://user-images.githubusercontent.com/4178400/64849589-013d5f00-d614-11e9-8f01-6f5eea7ef5ba.jpg I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity. This worked perfectly for me! Thank you very much for this! Display now updates without a problem :) Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) [image: Pinout] https://user-images.githubusercontent.com/4178400/65681939-3907c600-e05a-11e9-9920-e9df2e49ac6c.png One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0. i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this Connect the marked soldering pad with a 3v3 pin (I said 5v before, but 3v3 is enough). You can use the first pin from SWD for instance, as you can see that should be 3v3. Keep this connected while booting and flashing. If you are doing it right the stm32 flasher tool will see the device and show it's size otherwise nothing happens. No need to change BOOT1, it is already in the correct state for flashing by default. — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#24?email_source=notifications&email_token=AIE2KVI254IAIOORDMXIFM3QLW6OTA5CNFSM4IMHXLC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7YEV2Q#issuecomment-535841514>, or mute the thread https://github.com/notifications/unsubscribe-auth/AIE2KVLCNCEACMO2NVG7CPTQLW6OTANCNFSM4IMHXLCQ .

I am not sure if the usb to ttl is able to supply the display board. Only connect the rx tx gnd from the usb-ttl to the board and us the usb connector to feed the display board.

bullgun commented 4 years ago

I Will use USB to TTL , i need 3v3 from somethimg else and the boot1 dont connect nothing? A sexta, 27/09/2019, 09:16, Erwin van der Stelt notifications@github.com escreveu: It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. [image: BIGTREETECH-TFT35_01] https://user-images.githubusercontent.com/4178400/64849589-013d5f00-d614-11e9-8f01-6f5eea7ef5ba.jpg I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity. This worked perfectly for me! Thank you very much for this! Display now updates without a problem :) Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) [image: Pinout] https://user-images.githubusercontent.com/4178400/65681939-3907c600-e05a-11e9-9920-e9df2e49ac6c.png One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0. i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this Connect the marked soldering pad with a 3v3 pin (I said 5v before, but 3v3 is enough). You can use the first pin from SWD for instance, as you can see that should be 3v3. Keep this connected while booting and flashing. If you are doing it right the stm32 flasher tool will see the device and show it's size otherwise nothing happens. No need to change BOOT1, it is already in the correct state for flashing by default. — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#24?email_source=notifications&email_token=AIE2KVI254IAIOORDMXIFM3QLW6OTA5CNFSM4IMHXLC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7YEV2Q#issuecomment-535841514>, or mute the thread https://github.com/notifications/unsubscribe-auth/AIE2KVLCNCEACMO2NVG7CPTQLW6OTANCNFSM4IMHXLCQ .

I am not sure if the usb to ttl is able to supply the display board. Only connect the rx tx gnd from the usb-ttl to the board and us the usb connector to feed the display board.

I put a wire with 3v3 on BOOT0 and startup de screen and i just having this. imagem

Thanks one more time

fabKalix commented 4 years ago

I Will use USB to TTL , i need 3v3 from somethimg else and the boot1 dont connect nothing? A sexta, 27/09/2019, 09:16, Erwin van der Stelt notifications@github.com escreveu: It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. [image: BIGTREETECH-TFT35_01] https://user-images.githubusercontent.com/4178400/64849589-013d5f00-d614-11e9-8f01-6f5eea7ef5ba.jpg I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity. This worked perfectly for me! Thank you very much for this! Display now updates without a problem :) Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) [image: Pinout] https://user-images.githubusercontent.com/4178400/65681939-3907c600-e05a-11e9-9920-e9df2e49ac6c.png One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0. i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this Connect the marked soldering pad with a 3v3 pin (I said 5v before, but 3v3 is enough). You can use the first pin from SWD for instance, as you can see that should be 3v3. Keep this connected while booting and flashing. If you are doing it right the stm32 flasher tool will see the device and show it's size otherwise nothing happens. No need to change BOOT1, it is already in the correct state for flashing by default. — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#24?email_source=notifications&email_token=AIE2KVI254IAIOORDMXIFM3QLW6OTA5CNFSM4IMHXLC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7YEV2Q#issuecomment-535841514>, or mute the thread https://github.com/notifications/unsubscribe-auth/AIE2KVLCNCEACMO2NVG7CPTQLW6OTANCNFSM4IMHXLCQ .

I am not sure if the usb to ttl is able to supply the display board. Only connect the rx tx gnd from the usb-ttl to the board and us the usb connector to feed the display board.

I put a wire with 3v3 on BOOT0 and startup de screen and i just having this. imagem

Thanks one more time

Did you also supply the board itself with 5V on on of it's 5v pins?

bullgun commented 4 years ago

Yes, i put a Wire on Boot0 with 3v3 then i plug the USB to TTL on port USB and then Open the software and appear that error when teu connect

bwaldrum commented 4 years ago

@bullgun, as an alternative to modifying your $25+ board, you might consider just using an ST-Link V2 programmer that hooks up directly to the SWD port on your TFT board. I got the Amazon's Choice version for $6.29 US (free prime shipping, got here in 2 days), hooked it up according to the SWD wiring diagram for my TFT35 2.0 board (it came with DuPont hookup wires), downloaded the free STM32 utility software, and flashed the new bootloader as described earlier in this thread. No board mods required. The whole process took me less than 30 minutes. I'm normally a DIY guy, but this approach was way less trouble and now I have an ST-Link V2 that can be used for debugging as well.

YMMV

(Thanks to others on this thread who blazed this path before me)

bullgun commented 4 years ago

I Will use USB to TTL , i need 3v3 from somethimg else and the boot1 dont connect nothing? A sexta, 27/09/2019, 09:16, Erwin van der Stelt notifications@github.com escreveu: It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. [image: BIGTREETECH-TFT35_01] https://user-images.githubusercontent.com/4178400/64849589-013d5f00-d614-11e9-8f01-6f5eea7ef5ba.jpg I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity. This worked perfectly for me! Thank you very much for this! Display now updates without a problem :) Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) [image: Pinout] https://user-images.githubusercontent.com/4178400/65681939-3907c600-e05a-11e9-9920-e9df2e49ac6c.png One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0. i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this Connect the marked soldering pad with a 3v3 pin (I said 5v before, but 3v3 is enough). You can use the first pin from SWD for instance, as you can see that should be 3v3. Keep this connected while booting and flashing. If you are doing it right the stm32 flasher tool will see the device and show it's size otherwise nothing happens. No need to change BOOT1, it is already in the correct state for flashing by default. — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#24?email_source=notifications&email_token=AIE2KVI254IAIOORDMXIFM3QLW6OTA5CNFSM4IMHXLC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7YEV2Q#issuecomment-535841514>, or mute the thread https://github.com/notifications/unsubscribe-auth/AIE2KVLCNCEACMO2NVG7CPTQLW6OTANCNFSM4IMHXLCQ .

I am not sure if the usb to ttl is able to supply the display board. Only connect the rx tx gnd from the usb-ttl to the board and us the usb connector to feed the display board.

I put a wire with 3v3 on BOOT0 and startup de screen and i just having this. imagem Thanks one more time

Did you also supply the board itself with 5V on on of it's 5v pins?

Yes. i have to do something else on BOOT1 pin?

bullgun commented 4 years ago

I Will use USB to TTL , i need 3v3 from somethimg else and the boot1 dont connect nothing? A sexta, 27/09/2019, 09:16, Erwin van der Stelt notifications@github.com escreveu: It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. [image: BIGTREETECH-TFT35_01] https://user-images.githubusercontent.com/4178400/64849589-013d5f00-d614-11e9-8f01-6f5eea7ef5ba.jpg I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity. This worked perfectly for me! Thank you very much for this! Display now updates without a problem :) Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) [image: Pinout] https://user-images.githubusercontent.com/4178400/65681939-3907c600-e05a-11e9-9920-e9df2e49ac6c.png One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0. i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this Connect the marked soldering pad with a 3v3 pin (I said 5v before, but 3v3 is enough). You can use the first pin from SWD for instance, as you can see that should be 3v3. Keep this connected while booting and flashing. If you are doing it right the stm32 flasher tool will see the device and show it's size otherwise nothing happens. No need to change BOOT1, it is already in the correct state for flashing by default. — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#24?email_source=notifications&email_token=AIE2KVI254IAIOORDMXIFM3QLW6OTA5CNFSM4IMHXLC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7YEV2Q#issuecomment-535841514>, or mute the thread https://github.com/notifications/unsubscribe-auth/AIE2KVLCNCEACMO2NVG7CPTQLW6OTANCNFSM4IMHXLCQ .

I am not sure if the usb to ttl is able to supply the display board. Only connect the rx tx gnd from the usb-ttl to the board and us the usb connector to feed the display board.

I put a wire with 3v3 on BOOT0 and startup de screen and i just having this. imagem Thanks one more time

Did you also supply the board itself with 5V on on of it's 5v pins?

Yes. i have to do something else on BOOT1 pin?

When a connect the BOOT1 the screen apears like this

bullgun commented 4 years ago

I Will use USB to TTL , i need 3v3 from somethimg else and the boot1 dont connect nothing? A sexta, 27/09/2019, 09:16, Erwin van der Stelt notifications@github.com escreveu: It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. [image: BIGTREETECH-TFT35_01] https://user-images.githubusercontent.com/4178400/64849589-013d5f00-d614-11e9-8f01-6f5eea7ef5ba.jpg I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity. This worked perfectly for me! Thank you very much for this! Display now updates without a problem :) Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) [image: Pinout] https://user-images.githubusercontent.com/4178400/65681939-3907c600-e05a-11e9-9920-e9df2e49ac6c.png One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0. i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this Connect the marked soldering pad with a 3v3 pin (I said 5v before, but 3v3 is enough). You can use the first pin from SWD for instance, as you can see that should be 3v3. Keep this connected while booting and flashing. If you are doing it right the stm32 flasher tool will see the device and show it's size otherwise nothing happens. No need to change BOOT1, it is already in the correct state for flashing by default. — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#24?email_source=notifications&email_token=AIE2KVI254IAIOORDMXIFM3QLW6OTA5CNFSM4IMHXLC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7YEV2Q#issuecomment-535841514>, or mute the thread https://github.com/notifications/unsubscribe-auth/AIE2KVLCNCEACMO2NVG7CPTQLW6OTANCNFSM4IMHXLCQ .

I am not sure if the usb to ttl is able to supply the display board. Only connect the rx tx gnd from the usb-ttl to the board and us the usb connector to feed the display board.

I put a wire with 3v3 on BOOT0 and startup de screen and i just having this. imagem Thanks one more time

Did you also supply the board itself with 5V on on of it's 5v pins?

Yes. i have to do something else on BOOT1 pin?

When a connect the BOOT1 the screen apears like this

IMG_20190927_210752_4

bullgun commented 4 years ago

I Will use USB to TTL , i need 3v3 from somethimg else and the boot1 dont connect nothing? A sexta, 27/09/2019, 09:16, Erwin van der Stelt notifications@github.com escreveu: It is possible to flash over the RS232 port using a USB to Serial TTL adapter if you have one. This does require a wire between BOOT0 and 3v3 which is quite hard to accomplish. [image: BIGTREETECH-TFT35_01] https://user-images.githubusercontent.com/4178400/64849589-013d5f00-d614-11e9-8f01-6f5eea7ef5ba.jpg I reverse engineered the two pads for BOOT0 and BOOT1. Both are currently pulled low using R18 for BOOT0 and R5 for BOOT1. If you pull up BOOT0 during power on you can use https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash the bootloader. Once initialized, the USART1 (RS232 Port) configuration is: 8 bits, even parity. This worked perfectly for me! Thank you very much for this! Display now updates without a problem :) Hi. Thanks for your help, yes i have a usb to ttl Do you have a rs232 pinout of the screen for making the connection? Thanks in advance The picture below is from bigtreetechs website and shows all pinouts including the r232 port. Make sure to connect RX to TX and vice versa. ;) [image: Pinout] https://user-images.githubusercontent.com/4178400/65681939-3907c600-e05a-11e9-9920-e9df2e49ac6c.png One more time Thanks After i made the connection with the ttl, what i should use to upload de firmware? Any software? Thanks in advance Make a connection between BOOT0 (marked in an earlier image) and 5V before powering the tft pcb. This will enter UART bootloader mode. Then use this tool https://www.st.com/en/development-tools/flasher-stm32.html#get-software to flash this image: https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/files/3549545/BIQU_TFT35_V2.0_bootloader.zip Most of this I already posted above in other words. Hope this sums it up so you understand it. Note this bootloader is only for the TFT3.5 V2.0. i dont understand the first conection BOOT0, i have to put a wire with 5v on that resistor? Here is the 5v? its the BOOT1, I have to conect that two resistors? I have to have that conection when i power up the tft? Or just connect and disconect and power up? Or conect leave and power up? What i have to connect on BOOT1? 5V? Thanks for your pacience, i hope i can do this Connect the marked soldering pad with a 3v3 pin (I said 5v before, but 3v3 is enough). You can use the first pin from SWD for instance, as you can see that should be 3v3. Keep this connected while booting and flashing. If you are doing it right the stm32 flasher tool will see the device and show it's size otherwise nothing happens. No need to change BOOT1, it is already in the correct state for flashing by default. — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#24?email_source=notifications&email_token=AIE2KVI254IAIOORDMXIFM3QLW6OTA5CNFSM4IMHXLC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7YEV2Q#issuecomment-535841514>, or mute the thread https://github.com/notifications/unsubscribe-auth/AIE2KVLCNCEACMO2NVG7CPTQLW6OTANCNFSM4IMHXLCQ .

I am not sure if the usb to ttl is able to supply the display board. Only connect the rx tx gnd from the usb-ttl to the board and us the usb connector to feed the display board.

I put a wire with 3v3 on BOOT0 and startup de screen and i just having this. imagem Thanks one more time

Did you also supply the board itself with 5V on on of it's 5v pins?

I have connected to the screen and now, what i should do? How can i uploade the bootload bin file? imagem

bullgun commented 4 years ago

ITS done , thank you all for this help. Now starting the battle for wifi esp01 :-)

dineshvyas commented 4 years ago

BIQU_TFT35_V2.0_bootloader.zip here is the bootloader for TFT35_V2.0, burning it to flash address 0x08000000 is ok. thanks a lot.

worked for me.

evandene commented 4 years ago

Could somebody give me the pin connections between TFT35 V2.0 SWD and the ST-LINK pins please?

evandene commented 4 years ago

BIQU_TFT35_V2.0_bootloader.zip here is the bootloader for TFT35_V2.0, burning it to flash address 0x08000000 is ok. thanks a lot. Could somebody give me the pin connections between TFT35 V2.0 SWD and the ST-LINK pins please?

fabKalix commented 4 years ago

BIQU_TFT35_V2.0_bootloader.zip here is the bootloader for TFT35_V2.0, burning it to flash address 0x08000000 is ok. thanks a lot. Could somebody give me the pin connections between TFT35 V2.0 SWD and the ST-LINK pins please? Alstublieft: SWD Connector The other pins GND, RST (3v3), should also be connected.

evandene commented 4 years ago

Okay, I'm connected and what is the next step for me as a dummy? How do I flash the bootloader?

fabKalix commented 4 years ago

Okay, I'm connected and what is the next step for me as a dummy? How do I flash the bootloader?

Download the ST-Link utility from: https://www.st.com/en/development-tools/stsw-link004.html

evandene commented 4 years ago

All done, thanks

8-Bit-infidel commented 4 years ago

Are all ST links equal? does anyone have a link to one that i can use? (in the UK) great thread really helped.

Edit: https://www.ebay.co.uk/i/173493644171?chn=ps&norover=1&mkevt=1&mkrid=710-134428-41853-0&mkcid=2&itemid=173493644171&targetid=594652102960&device=c&mktype=pla&googleloc=9045311&poi=&campaignid=6619151999&mkgroupid=84510981768&rlsatarget=aud-739442097965:pla-594652102960&abcId=1140496&merchantid=119385881&gclid=CjwKCAjw3c_tBRA4EiwAICs8CtKZH4F3tXhndLuGDV5PtGu7JdKGZePgXDVYdWqhC2hZ03elAe2fGRoCXzwQAvD_BwE

this okay?

bwaldrum commented 4 years ago

It looks like what I ordered from Amazon (US), which worked for me and was less than $7 US. (Note this is not an endorsement. I ordered it and it worked for me, but YMMV)

DAOKI ST-Link V2 Shell Programming Unit mini STM8 STM32 Emulator Downloader M89 New by DAOKI Learn more: https://www.amazon.com/dp/B01EE4WAC8/ref=cm_sw_em_r_mt_dp_U_MmiTDbPTHKDDM

8-Bit-infidel commented 4 years ago

It looks like what I ordered from Amazon (US), which worked for me and was less than $7 US. (Note this is not an endorsement. I ordered it and it worked for me, but YMMV)

DAOKI ST-Link V2 Shell Programming Unit mini STM8 STM32 Emulator Downloader M89 New by DAOKI Learn more: https://www.amazon.com/dp/B01EE4WAC8/ref=cm_sw_em_r_mt_dp_U_MmiTDbPTHKDDM

Thank you, ordered one.

BlomsD commented 4 years ago

@EnnajimiYassine I used the boot loader first and flashed it with stink utility IMG_4384 IMG_4389 IMG_4388 And then I just used the precompiled file: BIQU_TFT35_APP1_V2.0.22.bin Thanks a lot for sharing. My TFT35-V2.0 had the same issue.

I did the same using a this little thing: https://www.aliexpress.com/item/32988024318.html Make sure you have the wiring correctly attached to the SWD port. See https://github.com/bigtreetech/BIGTREETECH-TFT35-V2.0/blob/master/TFT3.5-V2.0%20manual.pdf for the pinout of the port.

Thank you so much. I didn't want to wait for the China one so I used https://amzn.to/2WMo3pg or even the cheaper one from amazon so I went with the cheapest with decent reviews that could arrive in 2 days.

The only "catch" which was simple enough but I post it because it caused me hesitation. DIO=SWDIO and SCK=SWCLK. Then I hooked it up and loaded the image right to it.

I am now able to load Firmware BIQU_TFT35_APP1_V2.0.24.2.bin and it just works. Very very annoying that the bootloader is wrong since I recently got the board.

Pixel-Soup commented 4 years ago

I've found that the original boot loader works only with SD, not SDHC. Any card up to 2G in capacity, worked.

HappyCodingRobot commented 4 years ago

@Pixel-Soup I definitely use SDHC cards to upload my FW. Maybe check how the card is formatted. A FAT32 format should do. update: re-tested with 2 other card 4&8 GB, both work. Could not test ExFAT ..

Pixel-Soup commented 4 years ago

@HappyCodingRobot That's useful to know. Your board likely has a newer bootloader that recognizes SDHC. People who don't have the tools to update the bootloader can try using an old SD card that is 2G or smaller. It might be possible to reformat a SDHC with FAT rather than FAT32, as well.

HappyCodingRobot commented 4 years ago

@Pixel-Soup I use the bootloader linked in the top of this thread by bigtreetech.

rramirez74 commented 4 years ago

I have problems with the update of the TFT35 V2.0 screen. I updated you with the latest version BIQU_TFT35_APP1_V2.0.24.2.bin. And it turns out that now I get the error "No printer attached". Luckily I have not updated the other screen I have, and this can be connected to the board without problems. The board is a SKR V1.3. I attach photos of the problem. IMG_20191121_170817 IMG_20191121_170847 I need help!!!!

Pixel-Soup commented 4 years ago

The problem seems to be related to the serial port. It has to be set to the same speed as the base board. There's only 2 settings, so try both, powering down the system between tries. Powering down or hitting reset is important because the code seems unable to recover if the wrong baud was used.

Pixel-Soup commented 4 years ago

@rramirez74 I forgot to mention, try moving the axis, even if the message is there. Sometimes the screen does not update until you do something

rramirez74 commented 4 years ago

The problem seems to be related to the serial port. It has to be set to the same speed as the base board. There's only 2 settings, so try both, powering down the system between tries. Powering down or hitting reset is important because the code seems unable to recover if the wrong baud was used.

What two port configurations are there? Where can I find this information? I have used the .bin that come with the TFT35 screen. He would have to compile it, right?

Pixel-Soup commented 4 years ago

Just do it from the touch screen menu. Setting--Uart Speed

rramirez74 commented 4 years ago

Just do it from the touch screen menu. Setting--Uart Speed

Thank you very much Pixel-Soup, I already recognized the board perfectly. a greeting

MeSmash commented 4 years ago

Hi just updated the TFT35 and getting an error. M420 S1 unknown command. I am using the skr 1.3 firmware also, just with the max_Z endstop enabled also.

Can anyone help

Pixel-Soup commented 4 years ago

I believe you need to compile the SKR firmware to enable bed leveling.

EsQueue81 commented 4 years ago

Error: "Read out protection is activated" "Could not disable Read Out Protection!"

The following is my fault but I want to see my options. Seems that my tft35 v2.0 is bricked. I got a new board and assumed that the bootloader was broken without checking if the bootloader was updated. I followed BIQU's instruction https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/tree/master/TFT35_V2%20Bootloader%20fix on updating the bootloader using a ttl, btt's instruction and a hex file. It successfully wrote but then I got an illegal error and a white screen ever since. It seems that I can't read from the uart ports anymore but I figured out the ST Link method. It probably was updated but is it possible for them to write protect the new boards? I get a write protection error and I can't disable it thus rendering my screen a brick. Is possible to write protect a board and if it is, why would BIQU do this? If it's write protected how was I able to ruin it via the UART port but can't reprogram? Thanks.

Pixel-Soup commented 4 years ago

It seems like you accidentally enabled the read protection. Fortunately, the stm32 cannot be permanently bricked. You need to "unlock" it, using the ST-link and the appropriate utility. I use the J-link, that does this automatically, so I don't know how its done with the stlink. Do a web search. Also, when programming fails, you should try several times before giving up.

HappyCodingRobot commented 4 years ago

If you have an ST-Link or J-Link device, do a full chip erase. This should bring the MCU to a working state. Then write the boot loader as described and you are good to go. ! Do not power the board via your programming adapter. Unstable power supply may get your MCU in an unwanted condition.

EsQueue81 commented 4 years ago

Oddly enough, I can't get St-Link to work on my Windows 10 PC at all due to MCU is held in reset" errors. It does work on my ancient W7 PC.

Thanks for the response guys. I since sourced a very stable power supply. As for mass erasing, I forgot to include that it did erase the chip as everything is Zero'd out and the flash size is "Unknown" but it gave the readout protection during erase and is still giving the error. Some research on google showed how to disable in in st-Link but when I try to disable it, it gives me the error "Could not set Option bytes! Please reset the target and retry."

Unfortunately, I've tried at least 30 times. I will not give up 😢

carl1961 commented 4 years ago

@bigtreetech I think you should post some firmware names, so those who don't have an stlink can update their firmware. Because from what I understand we're supposed to update it with sd card (that's what your GitHub says) and not via stlink ....

It's not normally needed to flash boot file, but if someone mistakenly flashes the wrong firmware, or renames a wrong firmware, then you risk overwriting to wrong memory spot, then flashing boot loader is needed and that requires a stlink.