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
File upload over wifi to the printer slow #144
Comments
Hi - did you ever try file transfert using the M28/M29 command ? unfortunatly the wifi is not the limitation the transfert protocol (M28/M29) is the limitation, the only solution are:
File transfert on SD is not good unfortunatly |
Yeah, I am painfully aware about the g-code upload speed issues. It could
be quite improved though by modifying the firmware to support protocols
confirming multiple lines or blocks of binary data. Just by sending 5 lines
at once should speed up the communication 5 times.
Did you try to upload to a SD card from the esp8266 directly? What is the
upload speed then? I could imagine putting some kind of switch between the
ESP and Arduino to share the SD card.
…On Jan 13, 2017 10:37 PM, "Luc" ***@***.***> wrote:
Hi - did you ever try file transfert using the M28/M29 command ?
this transfert using serial is slow like hell - and if you use repetier
host / repetier fw it is even slower as every line is interpreted and
converted to binary before being saved
unfortunatly the wifi is not the limitation the transfert protocol
(M28/M29) is the limitation, the only solution are:
- to use another protocol but there is none supported by
Marlin/repetier
- to connected SD card board to ESP but this is hardware rework in
addition of firmware modification
File transfert on SD is not good unfortunatly
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#144 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AFj5I9U7Y5KtRz7DxbaN1bj8rfeHOzqJks5rR-6bgaJpZM4LjUgX>
.
|
there is no really way to improve speed by serial on ESP side - as each command is checked one by one by main board and we need to get ack before going sending next one. |
But you can change Marlin or repetier to act differently. And at least on
the Arduino side you can switch the serial to 1mbit per second.
…On Jan 15, 2017 9:58 AM, "Luc" ***@***.***> wrote:
there is no really way to improve speed by serial - as each command is
checked one by one by main board and we need to get ack before going
sending next one.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#144 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AFj5I-xLWbbPN-HoWnN1B7BADRlDFMaNks5rSd--gaJpZM4LjUgX>
.
|
yes of course if marlin/smoothie/repetier had better upload process would be great - but I do not intend to change them, it is out of my influence ^_^- I just do my best to handle what they do |
We did some changes to the Marlin firmware at Prusa Research to bump up
uploads for our print farm, so it is doable.
I just found out that the duet board uses the ESP8266 board as well and
that someone reused the ESP8266 firmware for a standalone controller,
similar to your project:
https://github.com/toxuin/ESPRINTER
Anyway, thinking about the duet and the ESP8266 and your project, I think
the best way would be to put the ESP8266 between the SD card and the
Arduino, maybe by simply relying the SD card commands by the ESP8266 and by
developing a synchronization protocol between let's say Marlin and the
ESP8266 firmware. That way the upload speed would not be limited.
…On Sun, Jan 15, 2017 at 10:15 AM, Luc ***@***.***> wrote:
yes of course if marlin/smoothie/repetier had better upload process would
be great - but I do not intend to change them it is out of my influence
^_^- I just do my best to handle what they do
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#144 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AFj5IxuxiloRqXxqd9uJxk0F755wNZyxks5rSeOwgaJpZM4LjUgX>
.
|
@bubnikv yes of course is doable ^_^ - as said just out of my firmware scope as I want to be as portable as possible and I am not willing to push printer firmware (they are too many) to have better upload process and not sure everyone will implement it in same way About duet I checked their code already and they use another approach - ESP is not connected by serial but directly by SPI -fimrware and board are designed for it which make things easier of course. Yes agree with you - I worked on it (#93 (comment)) and speed is very good, as good as my wifi sd card transfer |
Thanks for the link. Is the web upload / download to a SD card connected to the ESP8266 supported by the project? I see the SDCARD_FEATURE define, but I am not quite sure what it does. My impression is, it only allows the html/css/javascript files to be stored on a SD card, but it does not support uploading / storing on the SD card. Am I correct? What does DIRECT_SDCARD_FEATURE mean? Thanks for your time. It is confusing to me, I tinkered only a bit with the ESP8266 Arduino before, so this is mostly new to me. |
yes current github code does not support direct SD card access, what you see is for an evolution of current code |
One way to make the SD access by the ESP8266 fast is to do it the octopi way: To ignore the SD card in the printer and to print from the ESP8266 online. This makes only sense though if the ESP8266 is stable enough. I know many who trust the octoprint to print multiple days prints from it. I am going to evaluate the SDWebServer first. Let's see how convincing it will be. |
the issue using esp as host is when streaming SD content it cannot handle well the wifi - esp is not multitasking and easily overloaded, a good example is do SD upload and try to connect to web page also doing some refresh - you will get several package lost and sd upload will failed Also because it is not multitasking send print commands continuously and handle webUI will be a problem, so even it can be ok for cnc, for laser and 3d printer, to loose the printer control command flow during the time it answer/ handle wifi/web request is not good at all. need also to handle pause and communication error which is feasible but I would consider esp32 in this case instead of esp8266 Just my 2 cents |
if no update I close issue |
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
I just installed the ESP3D on a NodeMCU board. It seems to be working. I tried uploading a file into the printer (no printer attached, just a blind test, the printer serial interface set to 250kbits per second) and the upload seems to be very slow, in the ballpark of 230kB / min. What file upload speeds can we expect with the ESP3D?
The text was updated successfully, but these errors were encountered: