True wifi printing
-
Tomasf… I would love to use that app. I have 3 factory files saved that each represent a printer. The post processing script in each one uploads to the correct queue on Repetier Server and automatically starts the print. I have been looking for a way to duplicate that functionality with the Duet.
I uploaded it to GitHub: https://github.com/tomasf/DuetUploader
It's very much unfinished, but it should work. You can use it like this in your post-processing script in Simplify3D:
[c]open -a "/Applications/Duet Uploader.app" "[output_filepath]"[/c] -
Super cool. Is there a way via parameters I can tell it which printer to upload to? Maybe I should just open the project
-
thanks for sharing
-
Super cool. Is there a way via parameters I can tell it which printer to upload to? Maybe I should just open the project
Yeah, you set the hostname in Preferences
-
That looks very useful!
-
Once we start using firmware 1.19 and get FTP support again, perhaps scripting Transmit or something similar will be a better idea than using a dedicated app for uploading.
-
Bear in mind that direct wifi printing comes with security implications. What facilities does S3D provide for authenticating access to the printer over WiFi?
-
I like the idea of some sort of file transfer script to the duet as a S3D post process, mainly to reduce the steps required…
I've come from smoothieboard, which at the time had problems with S3D.. so I'm used to annoying steps in the process, the smoothie/s3d issues is now comipletely fixed by the way, but what I used to have to do was:
-
Slice in S3D, save to temp folder
-
alt-tab to web site for S3D move cleanup process
-
upload gcode file from temp folder
-
Save processed file back to temp folder
-
alt-tab to octoprint page
-
upload gcode file from temp folder
-
Hit print & watch
So I'm pretty used to multiple steps. but its better now, with my DUET my process is:
-
Slice in S3D, save to temp folder
-
alt-tab to DWC page
-
upload gcode file from temp folder
-
Hit print & watch
If I could have a S3D post process script that saved the file directly to the DUET, probably via FTP I assume would be easiest.. then it would save having to have a temp folder and the upload step.. it would end up:..
-
Slice in S3D, (Post process script saves directly to DUET.. with option on what folder it saves to? )
-
alt-tab to DWC page
-
Hit print & watch
-
-
DC42… I have in mind more like the Octo/Repetier method. HTTP upload and control. There is an API key generated to keep it secure
-
I like the idea of some sort of file transfer script to the duet as a S3D post process, mainly to reduce the steps required…
I've come from smoothieboard, which at the time had problems with S3D.. so I'm used to annoying steps in the process, the smoothie/s3d issues is now comipletely fixed by the way, but what I used to have to do was:
-
Slice in S3D, save to temp folder
-
alt-tab to web site for S3D move cleanup process
-
upload gcode file from temp folder
-
Save processed file back to temp folder
-
alt-tab to octoprint page
-
upload gcode file from temp folder
-
Hit print & watch
So I'm pretty used to multiple steps. but its better now, with my DUET my process is:
-
Slice in S3D, save to temp folder
-
alt-tab to DWC page
-
upload gcode file from temp folder
-
Hit print & watch
If I could have a S3D post process script that saved the file directly to the DUET, probably via FTP I assume would be easiest.. then it would save having to have a temp folder and the upload step.. it would end up:..
-
Slice in S3D, (Post process script saves directly to DUET.. with option on what folder it saves to? )
-
alt-tab to DWC page
-
Hit print & watch
In S3D scripts > Post processing
curl -d "@[output_filepath]" -X POST [http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes](http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes)[output_filename].gcodeIt will upload the file upon saving gcode
-
-
In S3D scripts > Post processing
curl -d "@[output_filepath]" -X POST [http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes](http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes)[output_filename].gcodeIt will upload the file upon saving gcode
Is there a way to start it automatically?
-
In S3D scripts > Post processing
curl -d "@[output_filepath]" -X POST [http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes](http://xxx.xxx.xxx.xxx/rr_upload?name=gcodes)[output_filename].gcodeIt will upload the file upon saving gcode
Is there a way to start it automatically?
You mean start printing?
I believe it can be done with the same manner. Will try when I get home. -
DC42… I have in mind more like the Octo/Repetier method. HTTP upload and control. There is an API key generated to keep it secure
Upvote. I put a feature request on the Slic3r Github to have a more generic 'send to printer' option like a command line, but emulating OctoPrint to receive gcode for printing might be a faster way to fitting in with more existing systems.
-
You mean start printing?
I believe it can be done with the same manner. Will try when I get home.Looking forward to this!
-
You mean start printing?
I believe it can be done with the same manner. Will try when I get home.Looking forward to this!
I am using windows, so not sure if this works for Mac or not.
You will need to download curl and have it in your system path
then put these in Post Processing > Additional terminal commands for post processing (Replace the IP with your Duet IP)[c]curl –data-binary "@[output_filepath]" -X POST http://192.168.1.###/rr_upload?name=gcodes[output_filename].gcode
curl -G http://192.168.1.###/rr_gcode –data-urlencode "gcode=M32 [output_filename].gcode"[/c]The file will be uploaded and printed upon saving the g-code
If you want to disable it, add 'rem' before each of the line to skip themedit: use M32 instead of M23 M24
-
It's probably easier to use [c]M32[/c] instead of [c]M23[/c] + [c]M24[/c].
-
It's probably easier to use [c]M32[/c] instead of [c]M23[/c] + [c]M24[/c].
Thanks for the heads up, I just put in the first one I found on the wiki
-
You are my hero! Works perfectly. I need to work on my upload speed or at least get it to do the upload in the background. a 30MB files takes a couple minutes to upload.
-
[c]curl –data-binary "@[output_filepath]" -X POST http://192.168.1.###/rr_upload?name=gcodes[output_filename].gcode
curl -G http://192.168.1.###/rr_gcode –data-urlencode "gcode=M32 [output_filename].gcode"[/c]The file will be uploaded and printed upon saving the g-code
Note that this will only work if you have previously connected to DWC via your browser first. If you didn't connect to DWC since the last reset of your Duet, the first call to curl will silently fail with HTTP error 500, and the second one will start printing the old version of your gcode file if one was already there. If not, then nothing will happen.
So there is no perfect solution yet… I wish we had an API key like octoprint so uploads would be secure and accepted with a single curl command.
Cheers,
Ben.EDIT: You can mitigate this somewhat by issuing an M30 beforehand to delete the existing file on the Duet, so if the upload fails then it won't try to print an outdated file. So the full block becomes:
[c]curl -G http://192.168.1.###/rr_gcode –data-urlencode "gcode=M30 [output_filename].gcode"
curl –data-binary "@[output_filepath]" -X POST http://192.168.1.###/rr_upload?name=gcodes[output_filename].gcode
curl -G http://192.168.1.###/rr_gcode –data-urlencode "gcode=M32 [output_filename].gcode"
[/c] -
Is there a way for it to work on files with spaces in them? I know the easy answer is to save without spaces, but sometimes I forget
Good call on the delete statement first!