MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.35k stars 19.25k forks source link

[FR] Tronxy V10 controller #23761

Closed michalsok closed 2 years ago

michalsok commented 2 years ago

Is your feature request related to a problem? Please describe.

I received my new TronXY X5SA-PRO with PRO-2E upgrade (dual extruder to one nozzle) I tried to compile Marlin for it but realized that my controller is new and not supported. The controller uses STM32F446ZET6 MCU unlike the older V5,V6,V9 I have spent hours probing and mapping the pins of the MCU. I believe I have them all right. I copied the configuration files from Tronxy_V6 Chitu3D_V6-2E and modified as needed. I created a pins_custom.h and added my pinout to it. I tried to compile using custom board but could not setup a correct platformio environment to compile. I then hijacked the octopus_1.1 board and edited its pins file to match the new chitu3d_V10 as it uses the same MCU but still get compile errors. I am out of my league and will leave this to you the pros. My hours of probing/mapping pins and will to test a build if someone is able to compile will be my contribution. Board has an EEPROM that is not defined in my configs/pins files. it is 24c16 I2C 16Kbit (2KB) part It has SPI 32Mbit (4KB) Flash 25Q32 It uses 480x320, 3.5", FSMC Stock Display from TronxXY (#define TFT_TRONXY_X5SA) Uses TMC2225 drivers (2208_standalone option) All my settings are based on dual extruder version but single extruder is same minus E2 motor driver. If someone can help define new board and pins and proper build environment for the new MCU i will test the functionality.

Are you looking for hardware support?

TRONXY-X5SA-PRO, TRONXY-X5SA-PRO-2E with new "V10" board that uses STM32F446ZET6 MCU and 480x320, 3.5", FSMC Stock Display from TronxXY (#define TFT_TRONXY_X5SA)

Describe the feature you want

New controller support

Additional context

TronXY seem to have compiled a version of Marlin for their new boards but update to it did not work and corrupted my board. Their bootloader still works and displays a version but no firmware starts. I followed their included inst. video and files get copied from SD but then error message pops up "No firmware to start!" I verified I have the "446 version of their board. Peeled the sticker from MCU to verify ST Part Number. The board is labeled as V6 but the date code behind it is new. I believe the silkscreen was not updated. There is no boot jumper. Boot pin is hardwired. Only way to update is their bootloader from SD or ST-Link. There is a 4pin ST-Link programming header. https://www.tronxy.com/marlin-firmware-for-tronxy-3d-printer/

My pins and config files:

config and pins.zip Mainboard-446 after update 20220215_152729 20220212_132001

ellensp commented 2 years ago

To use the y_lib code you would need to make the 246 changes to 63 different marlin files.

They added blocks like the following, everywhere

if TRONXY_UI

tronxyUpdate();

else

search for TRONXY_UI in provided code....

remote110 commented 2 years ago

Seems like quite a bit of work just to get the screen working. I'll probably change the board in it before that happens. Thanks again for all the help.

Darth-Kuni commented 2 years ago

could we not tag the lib file like they have done or would it be better to get the lcd added to marlin like the board ?

Darth-Kuni commented 2 years ago

@kliberty " I've uploaded to my changes to https://github.com/kliberty/Marlin-2.0.9.2-Tronxy-X5SA " The link don't work and is this a working copy

remote110 commented 2 years ago

Tronxy support has agreed to send me the source files for this board. Hopefully I'll have it tonight.

remote110 commented 2 years ago

I think this is what we already had.. =/ https://dashi.163.com/html/cloud-attachment-download/?key=djAyT3E4QVpMV1FhVWdLS3lISEhQN1FWZz09

Darth-Kuni commented 2 years ago

different name but same thing

remote110 commented 2 years ago

I guess I'll end up putting an skr 1,4 in it. Hopefully that can be configured easier. =)

remote110 commented 2 years ago

I've uploaded to my changes to https://github.com/kliberty/Marlin-2.0.9.2-Tronxy-X5SA

  1. I needed to include libTronxy.a and liby_lib.a that I found in another zip from Tronxy.
  2. The changes mentioned in this comment are also required. EXTI1_IRQHandler is provided by one of the .a archives.
  3. Tronxy builds on Windows (case insensitive), but I am building in a Linux Docker container. This required a fix to an include path. I don't remember if my updated .vscode files are required, or were only to provide code-completion.
  4. The other changes I made are personal customizations, but you should be able to start with the commit link from bullet 3 and then add the binary archives from this commit.
  5. The .bin file can be loaded using the SD card upgrade process.

@kliberty I get 404 error on your repo.

Aishor commented 2 years ago

@kliberty I get 404 error on your repo.

Darth-Kuni commented 2 years ago

Even though this is Marlin I thought I should mention this as an option as I could not get marlin to run on the VEHO 600 with V10 bored I decided to install klipper and mainsail os which is running flawlessly if anybody else wants the config file for it let me know I will happily share it if it gets the tronxy crap wear off the machine

Aishor commented 2 years ago

Thanks i can give me a copy?

Darth-Kuni commented 2 years ago

here is my klipper config files for the VEHO 600 https://drive.google.com/file/d/1zHQkoiMD9eM44dKhIETOc_H9xthdunI6/view?usp=sharing

eastwoodnet commented 2 years ago

I have the same v10 broad .but it is installed tronxy crux1. so marlin firmware support it? i just found this ’https://tronxy.fandom.com/wiki/Flashing_Marlin_on_2021_Tronxy_Boards#Connecting_a_USB_cable

remote110 commented 2 years ago

V10 is the 2022 board and isn't supported yet.

ellensp commented 2 years ago

Basic support is in this pr https://github.com/MarlinFirmware/Marlin/pull/24787 Confiirmed Compile - good. End stops - good. Hot end and bed temps - good. Hot end and part cooling fans - good. Movement on all axes - good.

This FR is for filled. lcd support is a different matter

pessimism commented 2 years ago

I dont want to post that link here cause its personalized but would upload the stuff to some anonymous webspace - anyone interested and can provide some space?

What do you mean by "personalized"? If it's too big to post here as a .zip, then you can use something like https://www.file.io/ , https://easyupload.io/ , https://mega.io/ , etc.

They sent me a link to a private file, uploaded to a cloud space only for me and identifyable by a key. Its about 270MB in size, about the same as the link from their chinese site that i posted. I will upload it to one of your suggested services in a few hours.

Do you still have a copy of this? I would like to take a look to see how the screen works (I have the same X5SA PRO)

Darth-Kuni commented 2 years ago

I believe this is the same firmware they just change a few things to set the printer it's going on https://drive.google.com/file/d/1nsQXs2d6fvkILCa064XXZ7pKlgU7IdhZ/view?usp=sharing

remote110 commented 2 years ago

I don't know if any of you are still interested in this but.. Tronxy just released the source code. I can't seem to get it to run, but I'm sure it's something I'm not doing. https://github.com/tronxy3d/F4xx-SIM480x320

pessimism commented 2 years ago

I've been able to get a copy built and working and also backported the TMC2208 linear advance fixes from Marlin 2.1.1 to it. It would be awesome to get the Tronxy LCD support mainlined but the way it is implemented is nonstandard and would require quite a bit of code cleanup and refactoring, which is beyond my skill level with C unfortunately.

remote110 commented 2 years ago

I've been able to get a copy built and working and also backported the TMC2208 linear advance fixes from Marlin 2.1.1 to it. It would be awesome to get the Tronxy LCD support mainlined but the way it is implemented is nonstandard and would require quite a bit of code cleanup and refactoring, which is beyond my skill level with C unfortunately.

What did you have to do to get it to compile? Also. the stock screen should still work. I found all this in this video. https://www.youtube.com/watch?v=90DVn0TB-cg&t=226s

remote110 commented 2 years ago

It was tedious but I got it to work. I had to apply both of the error fixes listed on the hub instructions and I had to create a second folder in the extracted folder just named "D". Then I issued this command in terminal and viola.. it spit out current Marlin files ready for install. platformio run --silent -e tronxy_stm32f446 ; echo "done" >|"/tmp/ipc" Maybe this will help someone else at some point. I still can't seem to get rid of the Tronxy UI.. but that's minor now that all the G and M code commands work properly.

github-actions[bot] commented 1 year ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.