Komunkiacja drukarki po Ethernet (LAN)
Re: Komunkiacja drukarki po Ethernet (LAN)
Jak robisz w robo to nic nie potrzebujesz cudować, poza duetem.
Kazdy duet z ethetnetem idzie.
I mie pojdziesz po taniości z konwerterem, chyba ze potrafiez poprawic postprocesor.
Kazdy duet z ethetnetem idzie.
I mie pojdziesz po taniości z konwerterem, chyba ze potrafiez poprawic postprocesor.
Jeżeli przypadkiem podam ceny w GBP to sobie kolego, koleżanko, pomnóż razy pięć.
- majek
- Drukarz
- Postów w temacie: 1
- Posty: 769
- Rejestracja: 28 gru 2020, 18:17
- Drukarka: EZT-3D T1, vn-corexy
- x 441
Re: Komunkiacja drukarki po Ethernet (LAN)
Tanio, to sobie po wifi zrób mostek na ESP. Takie czasy, że teraz taniej zrobić komunikację po wifi niż kablu.
Mati
Re: Komunkiacja drukarki po Ethernet (LAN)
Kolego konradsdev1 idę Twoją drogą. Możesz powiedzieć coś więcej na temat własnej klasy MarlinSerial ?konradsdev1 pisze:Do takiego rozwiązania najprościej będzie użyć gotowego modułu UART Ethernet np. https://kamami.pl/moduly-sieciowe-ether ... ernet.html
Jeśli chodzi o modyfikację Marlina to kiedyś dodałem obsługę modułu WIZnet W5500 po SPI ale na płycie z procesorem STM32F4.
Wymagało to dodania biblioteki z obsługą stosu TCP/IP oraz własnej klasy MarlinSerial.
Lepszym rozwiązaniem jest gotowy moduł UART Ethernet bo nie obciąża dodatkowo procesora i nie zwiększa wymaganej pamięci flash.
Może masz swój projekt i będziesz tak miły i udostępnisz ?
W pliku konfiguracyjnym Configuration.h jest #define SERIAL_PORT 0 Czy tutaj nie definiujemy z jakiego portu chcemy mieć komunikację ?
Re: Komunkiacja drukarki po Ethernet (LAN)
Uzywajac Atmega + jakis ethernet kontroller:
na W5500:
https://github.com/stepansnigirev/Ardui ... ToEthernet
na ENC28J60:
https://github.com/ethersex/ethersex
(szukaj yport)
Ogolnie jak chcesz modyfikowac Marlina to musisz dorzucic (napisac?) jakis net stack i w sumie uzywajac udp to jest stosunkowo proste,
tylko czy skorka warta jest wyprawki?
No i pytanie czy jest jeszcze miejsce we flashu kontrolera (Marlin troche miejsca zajmuje).
na W5500:
https://github.com/stepansnigirev/Ardui ... ToEthernet
na ENC28J60:
https://github.com/ethersex/ethersex
(szukaj yport)
Ogolnie jak chcesz modyfikowac Marlina to musisz dorzucic (napisac?) jakis net stack i w sumie uzywajac udp to jest stosunkowo proste,
tylko czy skorka warta jest wyprawki?
No i pytanie czy jest jeszcze miejsce we flashu kontrolera (Marlin troche miejsca zajmuje).
Re: Komunkiacja drukarki po Ethernet (LAN)
ok Ten net stack to network stack >> stos sieciowy ? Czy to po prostu program obsługujący interfejs LAN ?
Czy ten program piszemy np pod Arduino IDE np w folderze Marlin tworząc nowy program > ?
Czy ten program piszemy np pod Arduino IDE np w folderze Marlin tworząc nowy program > ?
- dziobu
- Zasłużony
- Postów w temacie: 8
- Posty: 8908
- Rejestracja: 28 gru 2016, 16:38
- Drukarka: ZMorph 2.0(S)
- x 5842
- Kontakt:
Re: Komunkiacja drukarki po Ethernet (LAN)
A dlaczego nie kupisz gotowca?
Np takie coś: https://www.gotronik.pl/konwerter-rs232 ... -8770.html
Na Windowsie pojawia Ci się wirtualny port szeregowy. Sprzęt podpinasz do drukarki. Z punktu widzenia komputera to drukarka jest podpięta bezpośrednio do PC, a obsługę portu szeregowego chyba masz opanowaną.
Nie wiem czy płyta którą masz ma RS232 czy samego TTLa musisz gdzieś wyciągnąć - konwertery ETH-TTL są tańsze.
W innym temacie nie jesteś w stanie skompilować Marlina, tu dopytujesz jak w Arduino utworzyć nowy program (???). Będę szczery - nie napiszesz tego. Zwłaszcza robienie tego na AVRa to poroniony pomysł (ale masz jak chcesz: https://code.google.com/archive/p/lwip-avr/).
Wrzuć coś co działa i w czym nie trzeba grzebać i rób dalej swój projekt.
Np takie coś: https://www.gotronik.pl/konwerter-rs232 ... -8770.html
Na Windowsie pojawia Ci się wirtualny port szeregowy. Sprzęt podpinasz do drukarki. Z punktu widzenia komputera to drukarka jest podpięta bezpośrednio do PC, a obsługę portu szeregowego chyba masz opanowaną.
Nie wiem czy płyta którą masz ma RS232 czy samego TTLa musisz gdzieś wyciągnąć - konwertery ETH-TTL są tańsze.
W innym temacie nie jesteś w stanie skompilować Marlina, tu dopytujesz jak w Arduino utworzyć nowy program (???). Będę szczery - nie napiszesz tego. Zwłaszcza robienie tego na AVRa to poroniony pomysł (ale masz jak chcesz: https://code.google.com/archive/p/lwip-avr/).
Wrzuć coś co działa i w czym nie trzeba grzebać i rób dalej swój projekt.
Pozdrawiam
Paweł
Projekty: ELF | AVAT 01 | HotPlate-1
Drukarki: Flsun i3 Plus | Flsun G | Kossel | FF Dreamer | Monoprice MP Mini | Copymaster3D Pro 500 | AIO Robotics ZEUS | Zmorph 2.0 | Climber 7
Też fajne: Wydruki | Moje twory w 3D | Inne
Paweł
Drukarki: Flsun i3 Plus | Flsun G | Kossel | FF Dreamer | Monoprice MP Mini | Copymaster3D Pro 500 | AIO Robotics ZEUS | Zmorph 2.0 | Climber 7
Też fajne: Wydruki | Moje twory w 3D | Inne
Re: Komunkiacja drukarki po Ethernet (LAN)
Nie wiem czy płyta którą masz ma RS232 czy samego TTLa musisz gdzieś wyciągnąć - konwertery ETH-TTL są tańsze.
Każda płyta ma proca a nim masz porty i możesz sobie bez problemu napisać obsługę konwertera LAN Z tym nie ma problemu Działam w c++, python czy Arduino Kwestą jest przekierowanie transmisji do Marlina
PS co do konfiguracji Marlina to już to ogarnąłem - jest dość specyficzny. Zamieszczona wersja na błąd i to wszystko
Każda płyta ma proca a nim masz porty i możesz sobie bez problemu napisać obsługę konwertera LAN Z tym nie ma problemu Działam w c++, python czy Arduino Kwestą jest przekierowanie transmisji do Marlina
PS co do konfiguracji Marlina to już to ogarnąłem - jest dość specyficzny. Zamieszczona wersja na błąd i to wszystko
Re: Komunkiacja drukarki po Ethernet (LAN)
Kup jakiegos gotowca - bedzie prosciej.robo1973 pisze:ok Ten net stack to network stack >> stos sieciowy ? Czy to po prostu program obsługujący interfejs LAN ?
Czy ten program piszemy np pod Arduino IDE np w folderze Marlin tworząc nowy program > ?
- konradsdev1
- Postów w temacie: 5
- Posty: 434
- Rejestracja: 30 wrz 2020, 16:55
- Lokalizacja: Warszawa
- Drukarka: VORON 0
- x 165
Re: Komunkiacja drukarki po Ethernet (LAN)
Najpierw sprawdź ile teraz zajmuje firmware.bin bo ten procek ma tylko 128kB pamięci flash i może nie starczyć miejsca na dodanie kodu.robo1973 pisze:Każda płyta ma proca a nim masz porty i możesz sobie bez problemu napisać obsługę konwertera LAN Z tym nie ma problemu Działam w c++, python czy Arduino Kwestą jest przekierowanie transmisji do Marlina
Mój projekt dużo Ci nie pomoże bo był zrobiony pod CMake i korzysta z funkcji STM32 HAL do obsługi SPI oraz GPIO.
Korzystałem z biblioteki ioLibrary_Driver - https://github.com/Wiznet/ioLibrary_Driver, posiada obsługę TCP, wystarczy zdefiniować funkcje do komunikacji po SPI.
Zobacz też bibliotekę Ethernet2 która także obsługuje W5500 - https://www.arduino.cc/reference/en/libraries/ethernet2.
Jeśli chodzi o transmisję danych do Marlinia to musisz zrobić kopię klasy MarlinSerial z pliku Marlin\src\HAL\AVR\MarlinSerial.cpp.
Zmień nazwę klasy na MarlinSerialEth i napisz od nowa funkcje które obsługują UART czyli begin(), read(), write(), available() tak aby komunikowały się przez socket na danym porcie.
W pliku HAL.h zdefiniuj
Kod: Zaznacz cały
#define MYSERIAL1 SerialEth
"Everybody needs a hobby" (Tony Stark).
VORON V0.2 (BTT SKR Pico + RPi 4B + Phaetus x Voron Dragon Hotend ST)
DIY MK4 + VORON Stealthburner (BTT SKR PRO V1.1 + RPi Zero 2 W)
VORON V0.2 (BTT SKR Pico + RPi 4B + Phaetus x Voron Dragon Hotend ST)
DIY MK4 + VORON Stealthburner (BTT SKR PRO V1.1 + RPi Zero 2 W)