Klipper Firmware

Oprogramowanie sterownika drukarki i do łączenia komputera z drukarką
Awatar użytkownika
cyfron
Postów w temacie: 31
Posty: 1433
Rejestracja: 30 sty 2019, 09:28
Drukarka: U30, SP Pro, UM2+
x 369

Re: Klipper Firmware

Post autor: cyfron »

Nie zagłębiałem się w budowę tej płyty, co nie zmienia faktu, że w chwili obecnej masz połączenie przez konwerter UART.
Awatar użytkownika
dragonn
Zasłużony
Postów w temacie: 70
Posty: 6384
Rejestracja: 12 gru 2016, 21:50
Lokalizacja: Opole
Drukarka: LUME
x 1455

Re: Klipper Firmware

Post autor: dragonn »

To zmienia mocno fakt, bo wcześniej w połączeniu USB nie było żadnego co skutkowało wywalanie "Input / Output Error" jak drukarka próbowała cokolwiek zrobić więcej niż się połączyć. Pewnie jakiś błąd w obsłudze USB po stronie firmware drukarki lub problem z jakimś zakłóceniami elektromagnetycznymi.
A teraz działa.
Awatar użytkownika
cyfron
Postów w temacie: 31
Posty: 1433
Rejestracja: 30 sty 2019, 09:28
Drukarka: U30, SP Pro, UM2+
x 369

Re: Klipper Firmware

Post autor: cyfron »

Zrobiło Tobie różnicę, ponieważ masz indywidualny przypadek ale nie odpowiada na postawione wcześniej pytanie, czy jest różnica w połączeniu:
PC-USB<->Converter-USB-UART<->UART-MCU
PC-UART<->MCU-UART
1kamil
Postów w temacie: 12
Posty: 311
Rejestracja: 16 cze 2020, 15:56
Lokalizacja: Waw
Drukarka: V0.2
x 42

Re: Klipper Firmware

Post autor: 1kamil »

Nie ma.
Obecnie:
- Voron v0.2
- Voron v2.4r2 250^3 z KissMMU

Sprzedane:
- Voron v2.4r2 (Formbot 300^3)
- Prusa MK3S+ (BMG) z MMU2S
- Ender 5
Awatar użytkownika
dziobu
Zasłużony
Postów w temacie: 2
Posty: 8943
Rejestracja: 28 gru 2016, 16:38
Drukarka: ZMorph 2.0(S)
x 5873
Kontakt:

Re: Klipper Firmware

Post autor: dziobu »

1kamil pisze:Nie ma.
Nie do końca.
Różnica JEST i polega na tym, że:
  • jeśli port szeregowy jest sprzętowy (wychodzi z mostka) a nie emulowany (*1) to masz do dyspozycji znacznie krótsze czasy dostępu (*2),
  • w przypadku gdy po drodze jest USB nie masz konkretnej władzy nad faktycznymi opóźnieniami wysyłanych paczek.
Wątpię żeby to miało tu znaczenie, ale warto wiedzieć bo czasem jednak ma.

(*1)
Wiele nowszych komputerów ma port szeregowy ale jest on po prostu przejściówką wbudowaną w MB czy jakieś peryferia.

(*2)
USB jest fajne jak masz przesłać dużą ilość danych, ale raster obsługi to max 1ms. Czyli wysłanie 1 bajtu jak i 1kB zajmuje 1ms, nigdy mniej. Przy sprzętowym porcie da się to znacząco skrócić i to w Windowsie.
Adinfo
Awatar użytkownika
S3b
Postów w temacie: 3
Posty: 360
Rejestracja: 22 kwie 2016, 11:44
Lokalizacja: Warszawa
Drukarka: P3Steel 2.01/UM2 AE
x 103

Re: Klipper Firmware

Post autor: S3b »

Panowie, czy ma ktoś doświadczenie w konfiguracji RpiZeroW z czymś typu RAMPS/MKS Gen po UART?
Już sobie w zasadzie ustawiłem konfigurację drukarki w kliperze po USB, ale za cholerę nie jestem w stanie spiąć malinki przez GPIO z moim MKS'em.
W MKS wpinam się pod AUX1 (Piny D2 i D1) i nie wiem który UART mam wybrać z make menuconfig dla mojej płytki.
Generalnie po stronie malinki mam zdaje się wszystko ustawione co trzeba w plikach /boot/config.txt oraz /boot/cmdline.txt (czyli odpięcie BT i wyłączenie konsoli szeregowej), ale ustawienie w pliku konfiguracyjnym drukarki [mcu]serial: /dev/ttyACM0 nie daje połączenia z MCU a moja (nie)znajomość linuxa nie pozwala mi zlokalizować właściwego portu po którym by to w końcu zagadało.
Poległem na maxa :cry:
Ultimaker 2 Clone @1.75mm Bowden :: P3Steel @3mm direct :: Mostly Printed CNC ::
Awatar użytkownika
dragonn
Zasłużony
Postów w temacie: 70
Posty: 6384
Rejestracja: 12 gru 2016, 21:50
Lokalizacja: Opole
Drukarka: LUME
x 1455

Re: Klipper Firmware

Post autor: dragonn »

ttyACM0 to jest typowo urządzenie USB w trybie portu CDC.
Port wbudowany w PI nazywa się ttyAMA0
Podpowiedź, w linuksie wszystko jest plikiem/folderem.
Czyli możemy po prostu wpisać np:

Kod: Zaznacz cały

ls /dev/
I zobaczyć co mamy dostępne :)
S3b
Awatar użytkownika
Berg
Zasłużony
Postów w temacie: 53
Posty: 7569
Rejestracja: 05 lis 2016, 11:57
Lokalizacja: Kraków
Drukarka: Lume, K8400, HC Evo
x 2675

Re: Klipper Firmware

Post autor: Berg »

nie specjalnie śledziłem wątek powyżej, tak że sorry jeśli odpowiedź jest od czapy ale poza tym, że w configu trzeba ustawić odpowiedni port, to jeszcze firmware musi być skompilowane z tym portem co podłączony.
dragonn, S3b
1kamil
Postów w temacie: 12
Posty: 311
Rejestracja: 16 cze 2020, 15:56
Lokalizacja: Waw
Drukarka: V0.2
x 42

Re: Klipper Firmware

Post autor: 1kamil »

dziobu pisze:
1kamil pisze:Nie ma.
Nie do końca.
Różnica JEST i polega na tym, że:
Praktycznie to nie ma różnicy :) Klipper nie potrzebuje komunikacji czasu rzeczywistego, tylko ma bufor poleceń, który pełni rolę kolejki. Polecenia są wysyłane do kolejki, a każde polecenie ma swój znacznik czasowy, który jest konwertowany na cykle procesora urządzenia docelowego. Dlatego Klipper wysyła zawsze polecenia z zapasem, i stara się utrzymywać bufor ruchów ~2s w pamięci hosta, a do mcu wysłać max tego co pozwala druga strona.

Jest jedna zasadnicza różnica między własnym UARTem a USB. UARTa zazwyczaj używa się bez bitów parzystości. Skutkuje to przy cieńszych/nieekranowanych kablach które dość zakłóceń, szczególnie jeśli kabel idzie gdzieś w okolicy silnika lub kabli silnika krokowego. USB (najlepiej bezpośrednio) ale nawet przez mostek ma generalnie dużo lepszą skuteczność transmisji (kable są jednak ekranowane) ale też dlatego że mostek ma lepsze połączenie elektryczne. W moim przypadku to był główny powód przejścia z UARTa na EinsyRambo (MK3S+) na rzecz UART po USB. Moje problemy z błędami transmisji się rozwiązały. Oczywiście klipper ma zaimplementowany mechanizm retransmisji, ale przy małym buforze docelowym 8bitowej płytki czasem to powodowało błędy.

Tak więc wybór UART a USB w przypadku Klippera to jest raczej kwestia preferencji, a nie wydajności. Z perspektywy wydajności nie ma to wielkiego znaczenia.
Obecnie:
- Voron v0.2
- Voron v2.4r2 250^3 z KissMMU

Sprzedane:
- Voron v2.4r2 (Formbot 300^3)
- Prusa MK3S+ (BMG) z MMU2S
- Ender 5
Awatar użytkownika
dragonn
Zasłużony
Postów w temacie: 70
Posty: 6384
Rejestracja: 12 gru 2016, 21:50
Lokalizacja: Opole
Drukarka: LUME
x 1455

Re: Klipper Firmware

Post autor: dragonn »

Jeśli chodzi o UART i zakłócenia to można użyć dwóch MAX488 i zrobić transmisję różnicowa na 4 żyłach, jestem przekonany że to byłby zdecydowanie bardziej odporne na zakłócenia niż USB (z względu na -15/+15V poziomy napięć i dużo niższą częstotliwość transmisji).
Tak że jak by ktoś potrzebował pociągnąć 100m kabel miedzy MCU na Pi/czy na czym tam klipper stoi to w ten sposób mogłoby się udać xD.
ODPOWIEDZ

Wróć do „Firmware'y i hosty”