#How to change where Moonraker uploads files?

51 messages · Page 1 of 1 (latest)

crimson solar
#

I have 4 printers connected to single RPI. Previously gcode files were saved to /pi/home/gcode_files and all 4 printers were able to see same gcode file. Therefore I only have to do single upload of a file for all printers to be able to see it and print it. Now each printer has its own gcodes directory, and I have to do 4 separate uploads, and I can't do them in parallel. I tried changing path in [virtual_sdcard] section.

RPI has a local IP of 192.168.4.132, and printers are on different ports 7125, 7126, 7127 and 7128. If I upload a gcode file to 192.168.4.132 it ends up in gcodes directory of a printer connected to 7125 port. I tried changing [virtual_sdcard] path on 7126, 7127 and 7128 printers to point to the 7125 gcodes directory, but without any success.

#

Once I changed path in [virtual_sdcard] section I restarted both klipper and moonraker services.

static cloak
#

Only way use a location outside of the 4 printer_data folders und generate symbolic links to it

crimson solar
#

I tried creating gcode_files directory in /pi/home, but I can't make moonraker to upload files there

#

If I somehow accomplish that, and edit path in [virtual_sdcard] section for each printer, will they see gcode files uploaded to gcode_files directory?

static cloak
#

Hmm need to try it out than, the problem is that moonraker official dos not support multiple printers on a single PI

crimson solar
#

But it is somehow instructed to upload files in 4 printer_data folders

#

Was this like a change in mainsail or in klipper?

#

To have N printer_data folders

static cloak
#

That is a change in moonraker

#

Moonraker changed its data structure to a singe folder containing a defined structure below that

#

If I find time I will setup a multi printer over the weekend and see what we can do here

crimson solar
#

Maybe an easiest option would be to install older version of moonraker

#

But frigging kiauh doesnt offer that option

steel pagoda
crimson solar
#

ok but even though i specified this:

#

the printer is not looking into that particular directory

crimson solar
#

@steel pagoda how does mainsail know where to look for gcode files? i thought it uses virtual_sdcard section

steel pagoda
#

Mainsail have no access to the filesystem on the pi. It only runs in your browser. Moonraker is providing this data and since the last Moonraker update, the gcode directory is fixed. Check your notifications!

crimson solar
#

Then there is no use of [virtual_sdcard] section

#

I didnt get any notification because it was a clean install

steel pagoda
#

Virtual_sdcard is used by Klipper. Just Moonraker don't grab it any more. Is Moonraker up-to-date on your system?

crimson solar
#

Everything is newest

#

Moonraker, mainsail, klipper

#

I mean thats bullshit what moonraker did

#

If you have multiple printers installed on same host, you have to upload multiple times, thats just nonsense

steel pagoda
#

Just use sym links...

#

And I would always use different gcode stores....

crimson solar
#

Thats just quick workaround

#

What do you mean you would use different gcode stores

#

Because you cant, gcode directory path is obviously locked in moonraker

#

And if mainsail gets this filepath from moonraker, you cant change it

steel pagoda
#

Ok... The last time... Just use sym links for you gcode directory to have a single one!

crimson solar
#

Oh I could link some other directory to printer gcode directories

steel pagoda
#

We told you that many times...

crimson solar
#

Yes I know but I didnt want to do that, because then I have to modify my print farm control framework and implement workarounds all according to selected printer IPs

#

Until now I had solution that worked for whichever printer is selected

#

but ok, whatever, i'll implement workaround

steel pagoda
#

What you are talking about? This have nothing to do with that! It's just to use the same directory for gcodes!

crimson solar
#

It does have

#

moonraker API dictates how the request should look like

#

so you cant choose where the file ends up, in which directory

#

but ok, ill figure something out

steel pagoda
#

If you use sym links, Moonraker doesn't care about it and just use the same directory! Same as before this update!

#

You can search another solution or just use sym links!

steel pagoda
#
rm -rf /home/<user>/<printername1>_data/gcodes
ln -s /home/<user>/gcode_files /home/<user>/<printername1>_data/gcodes
rm -rf /home/<user>/<printername2>_data/gcodes
ln -s /home/<user>/gcode_files /home/<user>/<printername2>_data/gcodes
rm -rf /home/<user>/<printername3>_data/gcodes
ln -s /home/<user>/gcode_files /home/<user>/<printername3>_data/gcodes
#

maybe you should stop moonraker before you do this and start it after it again.