Octorint w kontenerze, dwie drukarki na 1rpi

Oprogramowanie sterownika drukarki i do łączenia komputera z drukarką
Awatar użytkownika
morf
Drukarz
Postów w temacie: 3
Posty: 3223
Rejestracja: 17 sty 2017, 12:28
Drukarka: Reprapy, Prusa MK3S
x 1594

Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: morf »

Cześć

Czy ktoś próbował uruchomic octoprinty w kontenerach i sterować np 2 drukarkami z jednego rpi 4 (8gb)?

Postawiłem to i wstępnie nie widzę problemów ale może ktoś już testował?
Done is better than perfect.
mpk
Postów w temacie: 2
Posty: 361
Rejestracja: 27 lis 2019, 00:01
x 101

Re: Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: mpk »

a nie wystarczy sie zbindować na różne porty? :)
Awatar użytkownika
morf
Drukarz
Postów w temacie: 3
Posty: 3223
Rejestracja: 17 sty 2017, 12:28
Drukarka: Reprapy, Prusa MK3S
x 1594

Re: Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: morf »

Oczywiście że tak.
Z mapowaniem nie ma problemu.

Pytam bardziej wydajnościowo

Optymalnie 2x pi + octofarm :)
Done is better than perfect.
1kamil
Postów w temacie: 4
Posty: 311
Rejestracja: 16 cze 2020, 15:56
Lokalizacja: Waw
Drukarka: V0.2
x 42

Re: Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: 1kamil »

Ja miałem, ale zrezygnowałem:
1. Wszystko było OK, ale jak z jakiegoś powodu USB się odłączyło to Octoprint tego nie wykrywał. Wynika to z tego, że zdarzenia udev nie są propagowane do kontenterów, i jeśli `/dev/ttyUSB0` zmieni się na USB1 to wtedy trzeba restartować kontener.
2. Octoprint jako taki nie jest przystosowany dobrze do obsługi pluginów w obrazie dockerowym. Udało mi się to ominąć wymuszają instalację modułów pythonowych w współdzielonym katologu.
3. Wydajnościowo da radę. Bym się tylko martwił o kartę SD oraz czy nie zużyjesz jej cykli :)
4. Ja używam RPI4

Ostatecznie wróciłem do konfiguracji, która wykorzystuje oddzielnego użytkownika i serwis. Działa, zawsze dobrze :)
Ostatnio zmieniony 21 lut 2021, 11:38 przez 1kamil, łącznie zmieniany 1 raz.
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
Cosik
Konto z ograniczeniami
Postów w temacie: 1
Posty: 907
Rejestracja: 09 gru 2017, 10:12
Lokalizacja: Wrocław
Drukarka: HEVO DC, Mikrus
x 281
Kontakt:

Re: Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: Cosik »

1kamil pisze:...Wynika to z tego, że zdarzenia udev nie są propagowane do kontenterów, i jeśli `/dev/ttyUSB0` zmieni się na USB1 to wtedy trzeba restartować kontener....
Może nie do końca w temacie, ale właśnie z takich powodów w manualu do klippera zalecane jest używanie portów po id urządzenia a nie nazwie portu.

A co do samego octoprint na rpi to moim zdaniem kiepsko z wydajnością. Może lepiej kupić taniego laptopa/PC przy takich kombinacjach ilościowy.
Załączniki
by_id.jpg
Wolność wariacie w swoim warsztacie...
HEVO DC - wciąż wiele pomysłów na usprawnienia :D
Mikrus - moje szaleństwo -> viewtopic.php?f=10&t=6880
Moje projekty 3D

https://discord.gg/cBYzhm2 -> RepRapy PL
1kamil
Postów w temacie: 4
Posty: 311
Rejestracja: 16 cze 2020, 15:56
Lokalizacja: Waw
Drukarka: V0.2
x 42

Re: Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: 1kamil »

Cosik pisze:
1kamil pisze:...Wynika to z tego, że zdarzenia udev nie są propagowane do kontenterów, i jeśli `/dev/ttyUSB0` zmieni się na USB1 to wtedy trzeba restartować kontener....
Może nie do końca w temacie, ale właśnie z takich powodów w manualu do klippera zalecane jest używanie portów po id urządzenia a nie nazwie portu.

A co do samego octoprint na rpi to moim zdaniem kiepsko z wydajnością. Może lepiej kupić taniego laptopa/PC przy takich kombinacjach ilościowy.
Co do:

1. To przejdzie, ale tylko na głównym systemie, ale nie w kontenerze. Sprawdziłem np. moje dystrybucje, żadna nie ma stockowo `60-persistent-serial.rules`. Jeśli to uruchomisz to faktycznie jest to mocno pomocne. Natomiast nadal nie ma gwarancji, że te zmiany pojawią się w kontenerze, dlatego, że `/dev` nie jest współdzielony. Sprawdziłem to na przykładzie `/dev/bus`, którego w moich kontenerach nie ma, bo nie ma usługi `udevd`.
2. Moje RPI4 daje sobie radę z Octoprintem z dużym zapasem mocy, ledwo zużywajać 1GB z aktywnym timelapse. Zazwyczaj problemem w SBC jest obsługa USB oraz opóźnienia wprowadzane przez przetwarzanie danych. Ja sam nie używam USB. Mój Octoprint łączy się do SKR MINI 2 po dedykowanym UART5 z złącza 40o pinowego. RPI udostępnia kilka UARTów, które mają zdecydowanie duży mniejszy koszt przetwarzania.

Tutaj jest opis wszystkich dostępnych opcji na GPIO Header: https://www.tomshardware.com/reviews/ra ... ,6122.html
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
morf
Drukarz
Postów w temacie: 3
Posty: 3223
Rejestracja: 17 sty 2017, 12:28
Drukarka: Reprapy, Prusa MK3S
x 1594

Re: Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: morf »

Przecież mapujesz sobie USB po /dev/serial/by-id z hosta i nic się nie zmienia:)

Ale ok dzięki za feedback
Done is better than perfect.
mpk
Postów w temacie: 2
Posty: 361
Rejestracja: 27 lis 2019, 00:01
x 101

Re: Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: mpk »

jeżeli "zniknięcie" USB i jego ponowne połączenie nie propaguje się poprawnie do kontenera, to chyba spróbowałbym to obejść ser2net.
pewnie trzeba by dłubnąć w samym octoprint, albo dołożyć jakiś socat po drodze, ale wtedy cokolwiek jest w kontenerze może mieć wywalone, bo gada sobie po tcp.

To jest, jeśli już zdecydowałbym się na konteneryzację;)
1kamil
Postów w temacie: 4
Posty: 311
Rejestracja: 16 cze 2020, 15:56
Lokalizacja: Waw
Drukarka: V0.2
x 42

Re: Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: 1kamil »

morf pisze:Przecież mapujesz sobie USB po /dev/serial/by-id z hosta i nic się nie zmienia:)

Ale ok dzięki za feedback
Wszystko zależy jak zmapujesz. Jeśli zmapujesz np.: `/dev/serial/by-id/usb-LeafLabs_Maple-if01` to nie, ale jeśli zmapujesz `/dev/serial/by-id` i upewnisz się dodatkowo, ze są odpowiednie `/dev/ttyS*|ACM*|AMA*` dla wszystkich możliwych wartości jakich oczekujesz... wtedy tak :) Inaczej nie będzie działać.

Generalnie, docker z urządzeniami które mogą/są hot-plug nie działa trywialnie/powtarzalnie/w każdym przypadku. Jest długo dyskutowany wątek namespace dla udevd. Ale do chwili obecnej nadal nic takiego nie ma.

Ot, np.: https://lwn.net/Articles/656941/, lub https://github.com/eiz/udevfw.
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
1kamil
Postów w temacie: 4
Posty: 311
Rejestracja: 16 cze 2020, 15:56
Lokalizacja: Waw
Drukarka: V0.2
x 42

Re: Octorint w kontenerze, dwie drukarki na 1rpi

Post autor: 1kamil »

mpk pisze:jeżeli "zniknięcie" USB i jego ponowne połączenie nie propaguje się poprawnie do kontenera, to chyba spróbowałbym to obejść ser2net.
W 95% to działa :) To może nie działać jeśli zmieni się identyfikator w systemie na inny. Wtedy jest już gorzej...
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
ODPOWIEDZ

Wróć do „Firmware'y i hosty”