Upload directly to Server

I use Simplify 3D to slice my STL files.  It does not integrate with Repetier Server like Repetier host does.  I have to save the gcode, then upload it using the web site.  I can map a drive letter on my Windows machine to a folder on my Raspberry PI (Repetier Server).  I can directly upload the files to the server.  

I would like to have a way for Repetier Server to automatically detect the newly uploaded file, and start printing.

I was able to it with Octoprint, before I switched to Repetier Server.  That's one feature I really miss.  

Comments

  • It will be contained it 0.75 and is called folders. Can also be used toupload from usb drive.
  • Just in case someone else is trying to do this...

    Turns out you can connect the two apps using a CURL script.

    Basically you will need to install CURL.  Then add this command to your "Starting Script" tab of your S3D Settings.  (The same place where you specify Infill% , supports, materials, etc)

    Replace the x-api-key value with the API value from your Repetier Server.
    Replace the IP Address with the correct IP.
    Replace the printer name with your printer name.  (Mine is StuffMaker.)

    To use, simply prepare your project as usual in S3D.  Then select the save to SD card option.  Save the gcode to any location, doesn't matter what folder.  After it saves, you should see it uploaded directly to Repetier server.  

    It doesn't start automatically.  (I wish it did).  You will have to either click print on the touch screen, or on your computer via the web browser.  


    "curl.exe" -i -X POST -H "Content-Type: multipart/form-data" -H "x-api-key: f063f12a-198c-42fa-99af-529a5a745c339" -F "a=upload" -F "filename=@[output_filepath]" "http://192.168.1.107:3344/printer/model/StuffMaker"
  • Nice trick.

    If you replace in your /model/ with /jobs/ or maybe /job/ it will upload to printjobs directly and if none is stored will start print directly.
  • This seems to work only with the default printer. When running a second printer connected over USB to the server PC than second printer does not receive the files when changing the name.
  • Then you did something wrong with the name. It is not the shown name, but what you see in the browser url. This can differ. Also make sure simplify3d uses the process for second printer with that name.
  • it turned out that the script is case sensitive. After changing the second script from "FELIX_TEC_4" to "Felix_TEC_4" it started working. Thank you. 
  • Nice trick, thanks for this info!  :)
    Is there a way to store the gcode into a specified group, not only the standard group?
  • Yes, you need an additional parameter naming the group. I think group=encodedname will make it move in that group that must already exist. Let me know if it is a different parameter then I check the name. You also see it if you upload in server frontend if you have the browser debug tools open in network section.
  • Cool  B) it works!
    Add the parameter  -F "group=<groupname>" at the end of the line and everything is fine.
    Thanks for your help!
  • Is it possible to upload to multiple printers at once? Do I simply add another "http://192.168.1.107:3344/printer/model/MySecondPrinter" to the end of the script?



  • From server side that would be ok. You know in case all printers are identical you can also share gcodes in server. In printer config just uncheck "Printer uses own G-Code Model Directory" and select the printer where to take gcodes from.

    So only question is if Simplify 3D supports multiple upload commands, so try or share gcodes if that is also an option.
  • edited July 2019
    I decided to ditch the multiple upload commands since my printers are identical. Sharing gcodes between them, as you have suggested, solved my problem. Thank you for your great support.
  • Did something change in the latest raspi server update? As this function does not work anymore after the update.
  • No it should work as before. In upload to models you now add "overwrite=true" (from 0.92.3 on). That will replace old gcode with same name. But the rest should be the same as before and is the same as used from our gui.

    Apart from the Repetier-Server Monitor now offers also an upload by safe to disk function. It is more flexible as you can decide in which group to store and you can even create new groups by creating a directory.
  • For anyone who are using a seperate slicer and just want to be enabled to upload the files after slicing to the project directory then here is a solution that I am using:

    https://forum.repetier.com/discussion/7895/access-through-samba-and-use-project-folder-and-uploader-folder-throught-network-drive#latest
  • FindusD said:
    Cool  B) it works!
    Add the parameter  -F "group=<groupname>" at the end of the line and everything is fine.
    Thanks for your help!

    hey is it posible to set the groupname automatic to storaged folder?
    now i have to manualy changge that value for each print with a different group.
  • I'm no Simplify3D expert. You would need to have a popup querying for name and insert it there. But that must be done on simplify3d side.

    Alternatively use our Repetier-Server Monitor. There you save the sliced gcode in a special folder and it gets uploaded. If you add a new folder it creates a group with the name and then you can even upload to a new group.
  • Repetier said:
    I'm no Simplify3D expert. You would need to have a popup querying for name and insert it there. But that must be done on simplify3d side.

    Alternatively use our Repetier-Server Monitor. There you save the sliced gcode in a special folder and it gets uploaded. If you add a new folder it creates a group with the name and then you can even upload to a new group.

    Thank you.
    With repetier server monitor it is very simple and i dont need the script in simplify anymore.
Sign In or Register to comment.