Project

General

Profile

Actions

Feature #67

closed

Move away from TFTP

Added by t-oster over 11 years ago. Updated over 9 years ago.

Status:
Closed
Priority:
High
Assignee:
-
Category:
firmware
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:

Description

I do not like the TFTP approach:
- TFTP uses UDP, thus its not easy to separate connection from transmission errors. (I need a high timeout for transmitting large files and it takes the same timeout to find out, that the connection failed)
- TFTP does not support file listing. The only advantage over the old approach would be, that one could just drop LGC files on the lasercutter with a filebrowser.

I suggest either going back the previous TCP based approach or something like real FTP which allows accessing the Lasercutter with a usual filebrowser.


Related issues 1 (0 open1 closed)

Related to Bug #80: Use other transport instead of TFTPClosed2013-03-18

Actions
Actions #1

Updated by peter over 11 years ago

What would be a good protocol?
  • IPP (standard in CUPS, but may be considerable effort to implement)
  • HTTP/POST (the web sever can also host pages to control the laser, examples available)
  • Plain socket (like the original implementation), possibly with additional commands: like file name/list/delete (simple to implement, simple client)
Actions #2

Updated by t-oster over 11 years ago

IPP does not make sense in my opinion, as long as the laser-cutter doesn't understand post-script. And since a laser-cutter is not a plotter/printer, it does not make sense to understand post-script. Or is there any workflow making use of IPP together with laos-simple-code?

HTTP/POST would be a good replacement for the current TFTP, because receiving the file does not make sense right now, so it is really just an upload.

Plain socket would make sense, as soon as the thing gets interactive. E.g. for allowing the interactive display-control also from the pc or for live-status-updates.

Actions #3

Updated by t-oster over 10 years ago

I think the best idea is to implmenent a simple http POST. This means just listening to port 80, reading some additional HTTP headers before the file and then just the file (multipart/formdata-encoded) and send an HTTP response header with the according status code.
This would have the following advantages:
1. Not too hard to implement. I'm not talking about a full webserver, just parsing each request if it's a valid HTTP POST request and responding accordingly
2. We get status-codes for free, so we can wrap errors on the laos (memory full, bad job etc.) into the response.
3. It's using TCP, so no transmission errors
4. You can upload jobs with every browser by just having a plain HTML-File with an upload form (could be even serverd by the LAOS)
5. Can be extended later to a full web-based frontend for the LAOS without loosing compatiblity

Actions #4

Updated by peteruithoven over 10 years ago

I really like this idea.
For Doodle3D we also build a Rest api, this works great. It feels really extendable. This was on a simple router, running OpenWRT using uhttpd.

Actions #5

Updated by peteruithoven over 9 years ago

  • Status changed from New to Closed
Actions

Also available in: Atom PDF