Klipper + TMC5160 problem z SPI

Oprogramowanie sterownika drukarki i do łączenia komputera z drukarką
Pock
Postów w temacie: 4
Posty: 10
Rejestracja: 07 mar 2023, 21:16

Klipper + TMC5160 problem z SPI

Post autor: Pock »

Witam wszystkich.
Przygotowuję się z przesiadka na Klippera i nowa elektronikę.
Manta M8P CB1 + FLY TMC5160 PRO
Mam problem z TMC5160 a raczej z Klipperem który nie chce chodzić na sprzętowym SPI.
jeżeli mam ustawione preferowane ustawienia:

Kod: Zaznacz cały

[tmc5160 stepper_x]
cs_pin: PC10
spi_bus: spi1
#diag1_pin: PF3
run_current: 1.270
hold_current: 0.800
sense_resistor: 0.033

to wyskakuje:
Unable to write tmc spi 'stepper_x' register GLOBALSCALER
Once the underlying issue is corrected, use the
"FIRMWARE_RESTART" command to reset the firmware, reload the
config, and restart the host software.
Printer is shutdown

Jak ustawie programowy SPI:

Kod: Zaznacz cały

[tmc5160 stepper_x]
cs_pin: PC10
spi_software_sclk_pin: PA5
spi_software_miso_pin: PA6
spi_software_mosi_pin: PA7
#diag1_pin: PF3
run_current: 1.270
hold_current: 0.800
sense_resistor: 0.033
To działa.
Ma ktoś pomysł co to może być ?
Awatar użytkownika
dziobu
Zasłużony
Postów w temacie: 3
Posty: 8943
Rejestracja: 28 gru 2016, 16:38
Drukarka: ZMorph 2.0(S)
x 5873
Kontakt:

Re: Klipper + TMC5160 problem z SPI

Post autor: dziobu »

A nie powinieneś też ustawić pinów dla sprzętowego SPI? W tym uC jest multiplekser i peryferia mogą być podpięte pod różne wyjścia.

edit.
A dobra, "spi1" to Pa5/6/7. "spi1a" to inny zestaw (choć to nie do końca poprawny układ, ale to nie ważne).

Może zadeklaruj jakąś szybkość tego SPI? OIDP tu max moze być 4MHz ale to trzeba by sprawdzić w dokumentacji 5160.
Pock
Pock
Postów w temacie: 4
Posty: 10
Rejestracja: 07 mar 2023, 21:16

Re: Klipper + TMC5160 problem z SPI

Post autor: Pock »

Znalazłem podobny problem:
https://github.com/Klipper3d/klipper/pull/5250
Może tu jest problem tylko w mojej wersji płyty 1.0 Manta M8P ten układ nie jest nawet wlutowany.
Po za tym ja dopiero zaczynam z Klipperem i nawet nie wiem gdzie on to poprawiał :shock:
Awatar użytkownika
dziobu
Zasłużony
Postów w temacie: 3
Posty: 8943
Rejestracja: 28 gru 2016, 16:38
Drukarka: ZMorph 2.0(S)
x 5873
Kontakt:

Re: Klipper + TMC5160 problem z SPI

Post autor: dziobu »

Ale ten błąd wygląda na już poprawiony. Programowe SPI Ci działa więc to nie problem CSa.
Pock
Postów w temacie: 4
Posty: 10
Rejestracja: 07 mar 2023, 21:16

Re: Klipper + TMC5160 problem z SPI

Post autor: Pock »

No ustawiłem ten spi_speed: i jakie było moje zdziwienie jak zadziałało. :yahoo:
Na tych 4MHz nie poszedł ale na 3,5 już owszem. Ciekawe skąd taki problem.
Nigdzie nie ma w dokumentacji aby ten parametr był jakiś krytyczny.
Mam podejrzenie że może to być spowodowane tym że ten sterownik jest połączony z płytą za pomocą przejściówki i 15cm 10 żyłowego płaskiego przewodu. No i pełna/default'owa prędkość (mi nie znana) już po czymś taki nie idzie bez zakłóceń.
W każdym razie dziękuje za pomoc #dziobu :clap: :piwo:
ps. ciekawe jaka prędkość jest zalecana dla tych 5160
Awatar użytkownika
Jarewa
Drukarz
Postów w temacie: 2
Posty: 1596
Rejestracja: 26 sty 2021, 22:16
Lokalizacja: Głogów
x 365

Re: Klipper + TMC5160 problem z SPI

Post autor: Jarewa »

Pock pisze: 08 mar 2023, 20:13
Nigdzie nie ma w dokumentacji aby ten parametr był jakiś krytyczny.

Jest dokumentacja strona 25
Screenshot_2.jpg
Pock
Postów w temacie: 4
Posty: 10
Rejestracja: 07 mar 2023, 21:16

Re: Klipper + TMC5160 problem z SPI

Post autor: Pock »

Miałem na myśli dokumentację Klippera bo bez naszego konkretnego podania tej wartości on i tak coś tam wstawia i nigdzie nie pisali aby ją zmieniać kalibrować ale tak jak pisałem może to przez tą przejściówkę.
[quote][tmc5160 stepper_x]
cs_pin:
# The pin corresponding to the TMC5160 chip select line. This pin
# will be set to low at the start of SPI messages and raised to high
# after the message completes. This parameter must be provided.
#spi_speed:
#spi_bus:
#spi_software_sclk_pin:
#spi_software_mosi_pin:
#spi_software_miso_pin:
# See the "common SPI settings" section for a description of the
# above parameters.
..............
[/quote]
Awatar użytkownika
Jarewa
Drukarz
Postów w temacie: 2
Posty: 1596
Rejestracja: 26 sty 2021, 22:16
Lokalizacja: Głogów
x 365

Re: Klipper + TMC5160 problem z SPI

Post autor: Jarewa »

No nawet klipper nie wie że użyłeś przejściówki wiec po co ma być dokumentacja na coś co jest poza normalnym podłączeniem? SPI/I2C to komunikacja na małe odległości wiec im większa odległość tym na prędkości trzeba uciąć bo dochodzą szumy.
Awatar użytkownika
dziobu
Zasłużony
Postów w temacie: 3
Posty: 8943
Rejestracja: 28 gru 2016, 16:38
Drukarka: ZMorph 2.0(S)
x 5873
Kontakt:

Re: Klipper + TMC5160 problem z SPI

Post autor: dziobu »

To bardziej problem przepchania pojemności przy wysokich zegarach.
Poza tym 4MHz to i tak jakieś 100x więcej niż tu potrzeba.


edit.
Jeszcze jedno - częstotliwość pracy SPI w STMach jest wartością zależną od zegara magistrali. Ustawia się ją dzielnikami co oznacza że nie może przyjąć dowolnej wartości a jedynie kilka dość grubych będących wynikiem dzielenia zegara przez (przeważnie) potęgę dwójki. Nie wiem jak realizuje to Klipper, ale to że zadana jest "X MHz" to raczej oznacza że ustawiona jest na najbliższą wartość pasującą do dzielników. Sęk w tym że może być zarówno 3.2 jak i 4.4MHz. Dlatego też bezpiecznie jest ustawić wartość grubo niższą od maksymalnej.

Do stepów wysyła się prosty konfig przy starcie; pare bajtów. Nawet zegar 100kHz (2.5% maksymalnego) to dalej transmisja na poziomie 12.5kB/s, a paczki tu wysyła się maksymalnie kilku bajtowe. Przy założeniu że są 4 stepy i do każdego idzie 10 bajtów, cała transmisja zajmie trochę ponad 3ms (przy CLK 100kHz). Nie ma się chyba co być o wysoki zegar.
ODPOWIEDZ

Wróć do „Firmware'y i hosty”