-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Y & Z TMC2209s not being properly init'ed on BTT SKR Mini E3 V2.0 #49
Comments
Odd, I have a F411 based machine here that uses 2209s and that works so the Trinamic code should be ok. |
Well, yeah, you COULD say that...
This is a fresh build from the web builder, downloaded today 2024-04-7 18:11 UTC |
Not bad code at all, but it seems to be a "feature" in the 'F103. The minimal web searching I have done does not support this, but on the 'F103, and at least on USART4, (and at least on this board) the USART_SR_RXNEIE bit is reset with each interrupt. Re-enabling it after each RX interrupt resolves the problem. I have not seen in example code for the 'F103 the need to do this. Is it just the 'F103RCT6, or limited to USART4? The "fix" is pretty innocuous, so it should not pose a problem if it is included in a case where it is not needed. The failure caused tmc_uart_read() to fail on the first call. NONE of the steppers were initialized. Why X seemed normal, and Y and Z were odd, I do not know. At the end of the RX section in UART1_IRQHandler() in serial.c:
The steppers are running at equal rates, and M122 returns better-looking data:
However, the steppers are quite noisy, even at idle. |
Odd, there is nothing in the errata about this. Prehaps the MCU is a clone/fake? |
Sorry, no. It appears to be the same problem, head in rxbuf1 never advances beyond 1. Same in both cases. Curiously, the definitions for SERIAL_PORT and SERIAL1_PORT in the map .h don't seem to propagate throughout the project. I had to set the definitions in project properties. I tried, very quickly, setting SERIAL1_PORT to 1, and as you might expect, it does not work. No data appears in the buffer. I'm running a fever, so this is it for today. |
The X stepper runs as expected.
Y & Z, however run at about 1/4 of the proper speed, and distance.
If I flash the stock firmware, and run it, and then flash grblHAL, without removing power, the steppers will all work as expected. After removing power, Y and Z revert to moving slowly.
I have verified that the step pulses and enable signals are getting to the '2209s, they're just moving slower.
I find myself wondering if that X '2209 is getting written three times, and the others not at all?
The text was updated successfully, but these errors were encountered: