Marlin 2.0.9.3 for A20M with GT2560_V4.0 TMC2209 3DTouch

Post Reply
emka
Posts: 1
Joined: Sat Jan 08, 2022 1:34 am

Marlin 2.0.9.3 for A20M with GT2560_V4.0 TMC2209 3DTouch

Post by emka » Sat Jan 08, 2022 1:53 am

Hi

I just bought an secondhand A20M and wanted to have the latest Marlin on it.
My printer has a GT2560_V4.0 motherboard, TMC2209 stepper drivers and 3DTouch sensor.
This is how I cooked the firmware:
-Downloaded source from Marlin Github
-Downloaded configuration.h / adv.h for this printer from Marlin Github
-Downloaded configuration /adv.h from mc0110/M207_Geeetech_A20M Github
Used Winmerge to identify differences
Changed parameters: board type, stepper drivers, UBL, Probe Offset Wizard mostly
Compiled with Arduino IDE. Had a few errors (Z_MIN_ENDSTOP_INVERTING, Z_MIN_PROBE_ENDSTOP_INVERTING and LEVEL_CORNERS_INSET_LFRB) that I corrected.
Compiled successfully and exported results. Arduino IDE produces 2 hex files: one with bootloader, one without. Kept the one without bootloader.
Flashed the firmware from Cura.
Seems to be working :)

Sharing the source as well as the HEX file. this one didn't work so well THIS ONE DOES well maybe not
Marlin_bilinear.zip
(5.69 MiB) Downloaded 133 times
2.0.9.3 BLTOUCH TMC2209 Bilinear leveling

Use it at your own risk.

How I set up printer after flashing:
-Autotune PID for hotend and bed
-Probe offsets and Z wizard
-Manual bed level adjustment in order to start from a horizontal bed
-UBL to take into account the bed defects

Enjoy !

EDIT: I had a crash during printing (with 2.0.9.3). I'll try to sort it out. Don't use it now.
EDIT2: random crashes disappeared by using 2.0.9.2 (that I had previously for another printer) instead of 2.0.9.3
EDIT3: oh well, had a freeze (that didn't happen when I printed from pronterface) wierd... I'll do some debug.

EDIT4 (12/01/2021) I have deactivated UBL in the firmware and the thing seems to be printing without freeze or crash. I'll upload the source and the hex file once stability is confirmed. Quite weird since UBL worked on another printer, but I can't figure out what's causing the freeze.

EDIT5 (04/04/2022) Came back to this project after receiving a new BLtouch from Ali, as the first one was faulty. I tried again with the latest Marlin 2.0.9.3 from github and it seems to work without any crash. Winmerge shows that there are a lot of code changes between the current code and the first 2.0.9.3 that I tried back in december. Anyway, it works. Enjoy !
EDIT6 (05/04/2022) Had a new crash today. Found out why: the SD Card. I connected the printer to pronterface, and typed a M111 S15 (debug with dry run). The program crashed twice around the same place. Used another SD card: stopped crashing.

EDIT7 (15/04/2022) I had a crash on a complex part. I noticed that compilation left 745 bytes of RAM. I replaced UBL with bilinear leveling, and free ram went up to 1937. Then I tried compiling it with VisualStudioCode + PlatformIO + MarlinBuilder. Guess what ? I get more RAM at the end, either way. As bilinear leveling is perfecly enough for my glass bed, I'll stick to that.
Last edited by emka on Fri Apr 15, 2022 11:14 pm, edited 6 times in total.

Post Reply