Skip to main content

Timelapse Photography

Timelapse photography is handled by Moonraker's moonraker-timelapse component, which is responsible for capturing frames and compositing them into a video. Different systems only need to replace the camera snapshot address and video save path; the other shooting methods are the same.

Fluidd Page

When using Fluidd, you can open the "Timelapse" page from the left menu, and the address usually ends with #/timelapse. On this page, you can view captured frames, render videos, download videos, and adjust the parameters provided on the page. When using Mainsail, you can also use its timelapse page.

If the page has no content, check the following items:

  1. Moonraker has loaded the timelapse component.
  2. printer.cfg already includes timelapse.cfg.
  3. The snapshoturl in [timelapse] can retrieve the current camera snapshot.
  4. The sliced file contains TIMELAPSE_TAKE_FRAME.

Configure the Parking Position for Taking Photos

Check the current settings in the Fluidd or Mainsail console:

GET_TIMELAPSE_SETUP

Use _SET_TIMELAPSE_SETUP to set whether to move the printhead before shooting, the parking coordinates, lift height, travel speed, and dwell time. The coordinates below are only assumed values and must be modified according to the actual printer dimensions:

_SET_TIMELAPSE_SETUP PARK_ENABLE=True PARK_POS=custom CUSTOM_POS_X=10 CUSTOM_POS_Y=210 CUSTOM_POS_DZ=2 TRAVEL_SPEED=80 PARK_TIME=1
ParameterFunction
PARK_ENABLE=TrueMove the printhead before taking a photo; use False when you do not want it to move
PARK_POS=customUse a custom parking position
CUSTOM_POS_X/YAbsolute X and Y coordinates of the parking point, in mm
CUSTOM_POS_DZLift distance above the current Z height, in mm
TRAVEL_SPEEDParking and return speed, in mm/s
PARK_TIMEHow long the parking action is held, in seconds

Sending the setup command does not immediately move the printhead; these settings are only used when TIMELAPSE_TAKE_FRAME is executed. After setting them, run GET_TIMELAPSE_SETUP again to verify the result.

Test the parking path first

The example coordinates must not be copied directly. First confirm that the printer is homed, and use a small model to test that the entire movement path will not hit the model, the frame, or the endstops. If you only want to test the camera, first run _SET_TIMELAPSE_SETUP PARK_ENABLE=False.

Slicer Settings

In the slicer's "Layer change G-code" or "Before layer change G-code", add once:

TIMELAPSE_TAKE_FRAME

Do not add it in both before layer change and after layer change at the same time, otherwise each layer may be captured twice.

Console Test

After confirming that the parking position is safe, you can execute the following in the Fluidd console:

GET_TIMELAPSE_SETUP
TIMELAPSE_TAKE_FRAME

If you do not want the printhead to move during the test, first disable parking:

_SET_TIMELAPSE_SETUP PARK_ENABLE=False
TIMELAPSE_TAKE_FRAME

Manually render the video:

TIMELAPSE_RENDER

If the slicer cannot insert layer change commands, you can use time-based shooting:

HYPERLAPSE ACTION=START CYCLE=30

After printing ends, execute:

HYPERLAPSE ACTION=STOP
TIMELAPSE_RENDER

Video Location

Generated videos are saved by default in:

/usr/share/printer_data/timelapse/

The actual save location is determined by output_path in the [timelapse] configuration.

Loading...