The Portable
Open Source 3D Printer
Coming soon

Tutorials

This section is under development.

Basic calibration

Homing X and Y

  • With the machine unplugged position the carriage in the back right corner of the build area.
  • Plug in the machine and it will be at home until a problem such as a skipped step occurs at which time you will need to repeat step 1.
  • As long as you do not power down the machine it will always know where home is and return to it before the next print starts.
  • To return to home after stopping a print you can press the home button in the "Prepare" menu of the LCD.

Setting Z home

  1. With the bed in the home position as set in the bed levelling section of the build guide we are going to lower the endstop switch until it makes a clicking sound.
  2. Tighten the endstop bolt until the bracket is snug on the smooth rod.
    • Do not over tighten; it can render the switch inoperable.
  3. Using the LCD and encoder, enter the "Prepare" menu and select "Home".
  4. Using a sheet of paper as a feeler gauge again, test the space under the nozzle. We want the nozzle to touch the paper and apply some friction.
  5. If the nozzle did not touch the paper or the paper tore when trying to move it, adjust the endstop position and test again until it is correct.
  6. Download Kisslicer from Kisslicer.com Download the Kisslicer configs and place them in the same folder as the Kisslicer executable. Profiles. Download the calibration object. 20x20x10 cube.
  7. Start Kisslicer and open the config for your current Hotend size (Black = 0.5mm / White = 0.35mm).
  8. The only value you need to change before slicing the 20x20x10.stl file is the filament diameter. For high-end filament this is usually 2.8-2.9mm and for economy filament this can be anywhere from 2.8-3.1mm. Be sure to measure your filament before calibration.
  9. Slice the 20x20x10.stl file.
  10. Put the Gcode file on the SD card.
    • You can simply drop the file on the SD card in the root folder or create folders to organize your files.
    • You can open it in Pronterface and send the file to the SD card while it is in the machine.
      • Note this is known to be slow.
    • You can open the gcode file in Pronterface and print directly over the USB cable.
  11. Be sure the filament is loaded as explained in the setup process of the build guide.
  12. Using the LCD and encoder, enter the "Card menu" and press refresh if necessary.
  13. Select the 20x20x10.gcode file and press the encoder to start the print.
  14. The machine will take just under one minute to heat up before it starts the print.
  15. It will start by trying to print an outline and then a 20mm square. At this point we will be watching to see if the filament is sticking to the bed or if the nozzle is dragging on the tape. What we are looking for is to have it draw a line on the tape in molten plastic.
    • If the hotend is too close to the bed and starts to cut into the tape, you should unplug the machine and proceed to lower the endstop position as in step 5.
  16. Once the print has started it will do one of the following things. After any of the following behaviours has been observed you will need to select "Stop Print" from the LCD menu:
    • It will take a few moves to stop after pressing "Stop print".
    • Prints an outline that is really squished and smeared. We want to increase the "Negative Z-offset" in Kisslicer under the Gcode prefix tab in increments of 0.05mm and re-slice the file and test again.
    • Prints an outline that is not sticking to the bed and looks a little like thread coming out of the nozzle. We want to increase the "Positive Z-offset" in Kisslicer under the Gcode prefix tab in increments of 0.05mm and re-slice the file and test again.
    • Prints a nice outline that is stuck to the bed but not squished. We can proceed to the E axis calibration.

Calibrating the E axis

  1. Using the LCD menu enter the Prepare menu.
  2. Select Preheat PLA from the Prepare menu.
  3. If you already have filament in the loaded in the machine you can skip to step 8.
  4. Wait for it to reach the slected temerature.
  5. Get a piece of filament at least one metre long ready to load into the machine.
  6. Using the LCD menu enter the Prepare menu.
  7. While pressing the filament into the back of the extruder select Load filament from the Prepare menu.
  8. Now that we have the filament loaded we can proceed to calibrate the E axis.
  9. Attach a small piece of tape to the filament coing out of the front of the machine as close the case as possible.
  10. Using the LCD menu enter the Prepare menu.
  11. Select retract 5mm of filament and press the encoder 10 times being careful that each press has been recognized.
  12. Measure the distance between the tapes new location and where it started out. If it is 50mm you can proceed to step 18. If it is anything other than 50mm you need to write it down and continue on to the next step.
  13. Using the LCD menu enter the Prepare menu.
  14. Select purge 5mm of filament and press the encoder 10 times being careful that each press has been recognized. This should have returned the tape to the original location. If it did not that means it did not recognize one of the button presses and you need to go back to step 9.
  15. We then need to take the requested length and divide it by the actual distance it moved.
    • Example 1: 50 / 45 = 1.111111111
    • Example 2: 50 / 55 = 0.909090909
  16. We then need to take the current steps per mm and multiply it by the number we got from the last equation. We can find the current value by entering the "Tune" menu and scrolling down to "Flow".
    • Example 1: 450 * 1.111111111 = 500
    • Example 2: 450 * 0.909090909 = 409.091
  17. Repeat step 11 and 12.
  18. Once you have achieved a 50mm movement, you will enter the new value into Marlin.
  19. Open Marlin in the Arduino IDE and go to the configuration.h tab and search for:
    #define DEFAULT_AXIS_STEPS_PER_UNIT {122.5,122.5,2514.628,350}
  20. Replace the 350 with the value displayed in the "Flow" menu of the LCD during step 16.
  21. Upload Marlin to the Arduino and the flow calibration is complete.
  22. If you had to adjust this value a lot you may want to repeat the "Setting Z home" instructions

Calibrating the Retraction Speed

  • The retraction speed is limited by the firmware and not by Kisslicer.
  • Please leave Kisslicer's retraction speed set to 1000mm/s. This is to allow you to lower the print speed via the menu of the LCD without having retractions slow down.
  1. Download the pyramid calibration object.
  2. Slice the calibration pyramid with the default Tantillus Kisslicer profile for your nozzle size.
  3. Begin printing the pyramid.
  4. While the pyramid is printing enter the LCD menu and go to "Control".
  5. In the "Control" menu select "Motion".
  6. In the "Motion" menu scroll down to "Vmax e:" and press the button.
  7. Reduce "Vmax e:" to 40 and press the button.
  8. Wait for the base of the pyramid to complete and for it to start printing the posts before proceeding.
  9. Watch the top of the hobbed bolt to see the speed of the retractions.
  10. While it is printing the posts go back into the "Control" menu and enter "Motion".
  11. In the "Motion" menu select "Vmax e:" and increase it by 1 and press the button.
  12. Watch the top of the hobbed bolt to see the speed of the retractions.
  13. Keep increasing the "Vmax e:" value until you notice the retraction speed slow instead of increase in speed.
  14. The "Vmax e:" value should be between 40 and 55. No faster should be used.
  15. Once you find the maximum speed we need to make it permanent.
  16. Open Marlin in the Arduino IDE and go to the configuration.h tab and search for:
    #define DEFAULT_MAX_FEEDRATE {150, 150, 15, 47}
  17. Replace the 47 with the value displayed in the "Vmax e:" field of the "Motion" menu.
  18. Upload Marlin to the Arduino and the retract calibration is complete.

High resolution calibration

Fine tuning the flow

  1. Start printing a 20x20x10 box like one used in the Z home calibration step above except sliced with 100% infill selected in Kisslicer.
  2. If the first layer is printing like the Z home calibration step above, let it continue.
  3. Wait for 5 layers to print.
  4. Look at the print to see if it looks like one of the following:
    • Sparse infill where all the paths of plastic do not touch each other and have spaces between the perimeters. Proceed to step 5.
    • Too much infill where the paths are overlapping and the surface is rough. Proceed to step 7.
    • Perfect where all infill is solid, the surface is smooth and the perimeters are solid with no spaces. If you had to adjust the flow, proceed to step 9. If no adjustment was required, you're finished and ready to print.
  5. If the Infill is sparse, we want to increase the flow via the LCD and encoder. While it is still printing enter the "Tune" menu and scroll down to "Flow". Select "Flow" and turn the knob to increase the flow by 5 and press the knob and return to the home screen.
  6. Wait for three layers to print and repeat step 4.
  7. If the Infill is over filled, we want to decrease the flow via the LCD and encoder. While it is still printing enter the "Tune" menu and scroll down to "Flow". Select "Flow" and turn the knob to decrease the flow by 5 and press the knob and return to the home screen.
  8. Wait for three layers to print and repeat step 4.
  9. Once you achieve a smooth solid surface, you will enter the new value into Marlin.
  10. Open Marlin in the Arduino IDE and go to the configuration.h tab and search for:
    #define DEFAULT_AXIS_STEPS_PER_UNIT {122.5,122.5,2514.628,450}
  11. Replace the 450 with the value displayed in the "Flow" menu of the LCD during step 5 or 7.
  12. Upload Marlin to the Arduino and the flow calibration is complete.