I'm trying to get the SKR v.13 controller up and running with the TMC2208 stepper drivers. There are plenty of tutorials online on how to do this so it looks pretty easy. However, I cannot get communication with the driver to work. I am attaching my configuration files and the pins file I'm using.
I have removed the 4 jumpers under the driver and I have inserted a jumper on the XUART position to connect the UART to the LPC1768 GPIOs. The TMC2208 stepper driver I'm using is the v3 version from BigtreeTech. It has the J2 pads bridged so that PDN_UART is connected as needed. When I use the M122 command, I get:
If I probe the UART pin on the stepper driver with an oscilloscope, I see what looks to be reads that never return data. Looking at the TMC2208 datasheet, I see the sync byte (0xA0) followed by a byte of zeroes, and a register value of 0x6F (0xF6 flipped MSB to LSB since the bits are transmitted LSB first) which is the DRV_STATUS register. The sequence is two reads about 11 mS apart and those are repeated every 500 mS.
[attachment 112432 DS1Z_QuickPrint2.png]
Can anyone see what's wrong here?
I have removed the 4 jumpers under the driver and I have inserted a jumper on the XUART position to connect the UART to the LPC1768 GPIOs. The TMC2208 stepper driver I'm using is the v3 version from BigtreeTech. It has the J2 pads bridged so that PDN_UART is connected as needed. When I use the M122 command, I get:
Send: M122 Recv: X Y Recv: Enabled false false Recv: Set current 600 800 Recv: RMS current 1049 1436 Recv: MAX current 1479 2025 Recv: Run current 18/31 25/31 Recv: Hold current 9/31 12/31 Recv: CS actual 0/31 0/31 Recv: PWM scale 0 0 Recv: vsense 0=.325 0=.325 Recv: stealthChop false false Recv: msteps 256 256 Recv: tstep 0 0 Recv: pwm Recv: threshold Recv: [mm/s] Recv: OT prewarn false false Recv: OT prewarn has Recv: been triggered false false Recv: off time 0 0 Recv: blank time 16 16 Recv: hysteresis Recv: -end -3 -3 Recv: -start 1 1 Recv: Stallguard thrs Recv: DRVSTATUS X Y Recv: stst Recv: olb Recv: ola Recv: s2gb Recv: s2ga Recv: otpw Recv: ot Recv: 157C Recv: 150C Recv: 143C Recv: 120C Recv: s2vsa Recv: s2vsb Recv: Driver registers: Recv: X 0x00:00:00:00 Bad response! Recv: Y 0x00:00:00:00 Bad response! Recv: Recv: Recv: Testing X connection... Error: All LOW Recv: Testing Y connection... Error: All LOW Recv: ok
If I probe the UART pin on the stepper driver with an oscilloscope, I see what looks to be reads that never return data. Looking at the TMC2208 datasheet, I see the sync byte (0xA0) followed by a byte of zeroes, and a register value of 0x6F (0xF6 flipped MSB to LSB since the bits are transmitted LSB first) which is the DRV_STATUS register. The sequence is two reads about 11 mS apart and those are repeated every 500 mS.
[attachment 112432 DS1Z_QuickPrint2.png]
Can anyone see what's wrong here?