GithubHelp home page GithubHelp logo

cobrapi / klipper-firmware-flsun-qq-s-pro-delta-printer Goto Github PK

View Code? Open in Web Editor NEW
58.0 11.0 12.0 430 KB

Firmware configuration files and instructions on how to get the Klipper ecosystem running on the FLSUN QQ-S Pro delta 3D printer

qq-s flsun klipper guide installation firmware delta-printer qqs 3d-printing 3d-printers filament bltouch

klipper-firmware-flsun-qq-s-pro-delta-printer's Introduction

Instructions on how to set up the Klipper firmware

What is Klipper?

Klipper is a 3D printer firmware that runs on a general purpose Linux computer (a Raspberry Pi in this case) as opposed to the microcontroller of the printer. The advantage of this is that the complex inverse kinematic calculations of delta printers can be processed on the Raspberry Pi, which has way more computational horsepower compared to the 32-bit microcontroller in the printer. This way, all the microcontroller has to handle are the movement commands (ex. move stepper_a 10 steps) as well as heating commands (ex. heat extruder to 200 degrees). This results in a much smoother operation of the printer.

Another advantage of Klipper is that you don't have to recompile and flash the printer firmware every time you change something in the configuration file like you do in the Marlin firmware. You can even edit the configuration file on the web interface and hit a button to reset the printer and instantly load the new configuration. This makes the tuning process much more efficient.

It's also highly configurable. Here are some of the cool things you can do with it:

  • You can set it up to run multiple boards on a single printer (if you have a ton of steppers and/or extruders)
  • You can run multiple printers from one Raspberry Pi and control them all from a single web interface
  • You can set up a printer farm by running a ton of printers on a powerful Linux PC

Use this online README as a reference since the troubleshooting section is constantly updated, or git pull frequently.

Klipper Firmware for the FLSUN QQ-S Pro Delta Printer

Due to the lack of information about how to configure Klipper for this particular printer, I have decided to create this repository that contains everything you need to get Klipper up and running on the FLSUN QQ-S Pro delta 3D printer as well as an in-depth tutorial. I've also added a short guide on how to install a filament sensor and/or a BL Touch on the printer.

The QQ-S Pro uses a board very similar to the MKS Robin Mini, but shares the same pinout as the MKS Robin Nano V1.

Open this link and connect the filament sensor to 'MT_DET1' and use the printer_qqs(Filament Sensor).cfg file.

Note that this is a highly recommended upgrade because the stock FLSUN Highspeed board has an empty slot available for it. You also don't have the problem where you have to connect it to the Raspberry Pi when running the printer from a web interface, like you do in Marlin. It's a simple upgrade, just plug it in and you're good to go. No soldering or removing of components required.

How to Connect a BL Touch

Note that it is usually not recommended to use an offset probe like the BL Touch on a delta printer due to effector tilt. However, this can be compensated for by running Klipper's enhanced delta calibration routine. It's a very involved process, but if you're installing a BL Touch, I'm sure that's not a problem for you.

I've only included this here because I was able to get it to work just as well as the stock probe, but the only advantage that it has is that you don't have to remove the probe everytime you either auto-level the bed or run a calibration routine.

Open this link for the pin reference on the board.

  1. Print this hotend mount with the BL Touch attachment and install it in the printer.
  2. Remove the WiFi Module
  3. Switch the jumper pin from 3.3V to 5V (located near the top right of the WiFi module - from perspective of picture)
  4. Connect:
    • Orange wire -> IO0-PA8
    • Brown wire -> GND
    • Red wire -> 3.3V
    • White wire -> Z- (PA11)
    • Black wire -> Z- (GND)
  5. Use the corresponding printer_qqs(BL_touch).cfg file

How to Install the Klipper Ecosystem

There are 4 different types of configurations for the QQ-S Pro in the configurations folder:

  1. QQ-S Pro Stock
  2. QQ-S Pro with Filament Sensor
  3. QQ-S Pro with BL Touch
  4. QQ-S Pro with BL Touch and Filament Sensor

They are all the same, with some sections commented out according to your desired configuration. I've inlcuded four of them so that you can just simply copy and paste it without having to comment sections out, which can lead to errors if done incorrectly.

Hardware you will need:

  1. Raspberry Pi w/ SD Card
  2. (optional) Webcam
  3. QQ-S Pro Delta Printer
  4. Computer (PC, Mac, Linux)

Software you will need:

  1. MainsailOS Operating System for Raspberry Pi (This OS already comes with all of the software pre-configured below)
  2. Klipper firmware for printer (.bin file)
  3. Klipper client for Raspberry Pi
  4. Web interface (OctoPrint, Mainsail, fluidd)
  5. Klipper API - Moonraker (if using Mainsail or fluidd)
  6. Kiauh (Klipper Insallation and Update Helper) - will be used to install all the required software on the Raspberry Pi

Step 1 - Setting up the Raspberry Pi

The heart of Klipper is the Raspberry Pi, which will be running both the firmware and the web interface through which we control the printer. These are the steps to set up the Pi. This guide is going to go over how to configure the Mainsail or fluidd web interface as OctoPrint isn't as optimized for Klipper. Although it works just fine with the OctoKlipper plugin, both Mainsail and fluidd were developed for Klipper (fluidd is a fork of Mainsail so they're pretty similar). They both have a better interface in my opinion.

However, if you are hellbent on using OctoPrint or need to use its massive plugin library, you need to download OctoPi and install the OctoKlipper plugin to get it working but I'm not going to cover the OctoPrint setup since it's already covered in the original Klipper installation page. Step 2 and Step 4 are still relevant though.

  1. Download the latest release of the MainsailOS
    • unzip the .img file from your download
    • insert an 8GB or larger SD card into your computer and do not format it, if you do, the flashing process might fail
    • use BalenaEtcher to write the .img to an 8GB or larger SD card. This will overwrite all the data on your card (eject and remove the SD card when done)
    • if you are not going to be using WiFi, insert the SD card into the Pi, hook it up to an ethernet cable, turn it on, and continue to step 2
    • if you are going to be using WiFi, plug the SD card back into your computer, open the 'boot' folder, and find the file named mainsailos-wpa-supplicant.txt
    • open the file with a plain text editor like SublimeText, other text editors such as TextEdit(Mac) or Notepad(Windows) have been known to mess the configuration up.
    • Find this block of code:
    ## WPA/WPA2 secured
    #network={
    #  ssid="put SSID here"
    #  psk="put password here"
    #}
    
    • Uncomment the last 4 lines by deleting the # in front of them
      • replace put SSID here with the name of your WiFi network (don't delete the double quotes)
      • replace put password here with the password of your WiFi network (also don't delete the double quotes)
  • Save the file to the SD card, eject it, and insert it into the Pi

  • Default username: pi

  • Default password: password (or raspberry)

  1. Boot up the Pi and wait a few seconds and open up https://mainsailos.local.
    • You should see the Mainsail interface on your browser
    • If you don't, your Pi is probably not connected to the Wifi Network. You either:
      • entered your network information wrong
      • Have a RaspberryPi 3+ and above and are using the onboard WiFi, in which case you need to open up mainsailos-wpa-supplicant.txt and uncomment your country for it to work
  2. ssh into it from your computer: ssh [email protected]
  3. Navigate into the klipper_config folder cd klipper_config
  4. Create a printer configuration file: touch printer.cfg
  5. (optional) If you want to use fluidd instead of Mainsail you will need to install kiauh. git clone https://github.com/th33xitus/kiauh.git
  6. (optional) Then navigate to the kiauh directory: cd ../kiauh
  7. (optional) Run kiauh: ./kiauh.sh
  8. (optional) Remove Mainsail, it is possible to run both fluidd and Mainsail.
  9. (optional) Install fluidd - make sure to install the macros when it prompts you
  10. (optional) Quit Kiauh
  11. Exit your ssh session: exit

Refresh the web-page if you installed fluidd and you should see the new interface

Step 2 - Installing the firmware on the printer

This firmware is the same for all QQ-S Pro printers. The configuration is done on the Raspberry Pi.

Precompiled Version

I've included a pre-compiled version of the printer firmware in the precompiled_firmware folder that should work for all QQ-S Pro printers.

  1. Drag this file into the root directory of the SD card of your printer, insert it, and power it on. It is the same process as flashing Marlin or any other firmware on the QQ-S Pro.

Uncompiled Version

If you'd rather compile it yourself or my precompiled version is not working for some reason, this is what you need to do:

  1. ssh into your Raspberry Pi: ssh [email protected]
  2. Navigate to the klipper directory: cd klipper
  3. Type: make menuconfig and select these settings:
  • Enable extra low-level configuration options
    • Micro-controller Architecture (STMicroelectronics STM32)
    • Processor model (STM32F103)
    • Bootloader offset (28KiB bootloader)
    • Clock Reference (8 MHz crystal)
    • Communication interface (Serial (on USART3 PB11/PB10))
  • (250000) Baud rate for serial port
  1. Press q to quit and y to save your settings
  2. Type make to compile the firmware
  3. Next, navigate to the scripts folder: cd scripts
  4. Run: ./update_mks_robin.py ../out/klipper.bin ../out/robin_mini.bin
  • this will rename the firmware file from 'klipper.bin' to 'robin_mini.bin' and save it to the out directory
  1. Navigate to the out directory and verify that the file 'robin_mini.bin' exists: cd ../out then ls
  2. Disconnect from your Pi: exit
  3. Download the 'robin_mini.bin' file from the Raspberry Pi to your computer using sftp: sftp [email protected] then cd klipper/out then get robin_mini.bin
  • this will download 'robin_mini.bin' to whichever directory you've issued the sftp command from
  1. Drag this file into the root directory of the SD card of your printer, insert it, and power it on. It is the same process as flashing Marlin or any other firmware on the QQ-S Pro.

Step 3 - Connecting the Printer to the Raspberry Pi

  1. Open the web interface http://mainsailos.local in your browser

  2. Plug in the printer to one of your Raspberry Pi's USB ports

  3. ssh into your Raspberry Pi: ssh [email protected]

  4. Find out which serial port your printer is connected to: ls /dev/serial/by-id/* and copy the output

  5. Open up the printer.cfg file on your browser:

  • Mainsail: in the Settings/Machine tab on the bottom left
  • fluidd: in the Configure tab on the top right
  1. Once in the printer.cfg file, delete everything and copy the contents of the desired config file from the configuration folder of this repository

  2. Set your printers serial port:

  • find the [mcu] section
  • delete the path after serial: and paste your output from step 4
  1. Press the 'Save & Restart' button, if successful you should hear the printer beep and take a couple seconds to connect
  • if your printer is not connecting, try pressing the 'firmware restart' button or typing FIRMWARE_RESTART in the console
  1. Test the connection by homing your printer or typing G28 in the console.

Step 4 - Calibrating the printer

  1. The first thing we need to do is connect the z-probe to the effector (the autolevel switch), attach any print surface material (masking tape, etc.), then heat the bed up to 50 degrees since materials expand with heat.
  • If using a BL Touch, follow this guide to calculate the X and Y offset of the probe before continuing.
  1. First you need to calculate the 'z_offset' by opening up the web-interface console and typing: PROBE_CALIBRATE
  • After the probe stops, remove it then do the paper test (place a piece of paper under the nozzle)

  • Type: TESTZ Z=-<value> to decrease Z-height and TESTZ Z=+<value> to increase it, where <value> is the amount in mm by which to decrease or increase the Z-height (usually 0.05 or 0.01 if close to the bed) so that there is just a little friction between the nozzle and paper.

  • when you are satisfied with the Z-height, type ACCEPT and then SAVE_CONFIG

  • edit your printer.cfg, any existing 'z_offset' will have been commented out in the [probe] section, and a line with the correct value will have been inserted at the bottom of the file

  • add the correct 'z_offset' value into your [probe] section

  • make sure that horizontal_move_z in the [delta_calibrate] section, is set to a value 5-10mm higher than the z_offset we just calculated

  • save the file and restart

  • home the printer and re-attach the probe

  1. Then type DELTA_CALIBRATE. Once this is done type: SAVE_CONFIG to save the settings.
  • This will get a decent calibration for your printer, good enough to print well. However if you really want to optimize the calibration for your specific printer, run the Enhanced Delta Calibration which requires you to print an object, measure it with digital calipers, and input the values in the console.
  1. Bed mesh leveling is enabled in all the config files, so after setting the Z-offset, type BED_MESH_CALIBRATE in the console then SAVE_CONFIG when finished.

    • If using an offset probe (like a BL Touch) you might get an error 'move out of range' because the probe offset causes the print head to move outside the range of the print bed. If this happens, try decreasing the 'mesh_radius' or offsetting the 'mesh_origin' in the config file.
  2. Remove the probe

  3. Copy START_PRINT and paste it in the start g-code of your slicer.

  4. Copy END_PRINT and paste it in the end g-code of your slicer.

  • Both these macros can be found in the config file, so paste any start and end g-code originally found in the slicer underneath the gcode: line in both [gcode_macro START_PRINT] and [gcode_macro END_PRINT], so the only thing that should be in your slicer is START_PRINT and END_PRINT. This way, if you need to add or delete any gcode commands, they can all be done in the config file without having to reslice the model.

Step 5 - Printing

  1. Load some gcode and start a print

  2. Both Mainsail and fluidd allow you to adjust the z-offset while printing if the calibration didn't get it quite right. If you do this, this z-offset value (which is shown on screen) is reset after every print. In order to make that value permanent you have to:

  • go back to [gcode_macro START_PRINT] and uncomment the line: SET_GCODE_OFFSET Z_ADJUST=-0.1 MOVE=1 by removing the # in front of it.

  • Then replace -0.1 with the z-offset value you got during printing. This way, it will load your specific offset every time you start a print.

  • The END_PRINT macro is equally important, because it resets the offset value after every print. If you don't add it to your slicer, Klipper will add your offset values after every print. Ex. print1 offset=0.1, print2, offset=0.2,... until you restart the printer.

Documentation and Further Tuning

Here is the Klipper documentation where you can find more info about configuring Klipper. These config files are a great starting point and will get you up and printing. However, everyones printer is slightly different and will need to be calibrated and tuned further. Klipper has a lot of really cool features like pressure advance and input shaping. Take the time to read through the documentation and understand Klippers features; there's so many. The config reference section is probably the most useful reference while tuning.

Troubleshooting

  1. Why does my bed mesh look really weird?

    • Either your printer is not calibrated properly or your probe is not accurate enough

    • Try running PROBE_ACCURACY with your Z-probe attached and if you get a range value greater than 0.025 mm, your probe is not accurate enough to use mesh leveling and you have to delete your mesh profile in the web interface.

    • If You get a range value less than 0.025 mm, then you need to run the Enhanced Delta Calibration

    • You can look at these examples of bed errors to see if they look like your bed mesh. If so then running the Delta Calibration should help.

  2. Why is my extruder temperature reading way off?

    • The wrong temperature sensor is probably set in the [extruder] section of the config file. The stock thermistor of the QQ-S Pro is sensor_type: EPCOS 100K B57560G104. Check out the documentation for all supported temperature sensors.
  3. Why is my probe not working?

    • This was my mistake! I forgot to invert the logic of the probe pin. I've updtaed the configuration files fix this issue. To fix:

      • Navigate to the [probe] section of the config file and change pin: PA11 to pin: !PA11.
  4. Why is my printer timing out when I home it?

    • It's probably caused by the [idle_timeout] and timeout: 360 lines in the config. Try commenting them out. I've made this change in the config files as well
    • Try switching the USB port the printer is connected to on the Pi
  5. Why is my printer going backwards when I home it?

    • This is probably due to the use of different stepper drivers, it can be fixed by adding a ! in front of each dir_pin in the [stepper] section.

    • For example:

    [stepper_a]
    dir_pin: !PE2
    
    • Do this for all 3 steppers.

klipper-firmware-flsun-qq-s-pro-delta-printer's People

Contributors

blackfyre avatar cobrapi avatar conlank avatar joey-orduna avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

klipper-firmware-flsun-qq-s-pro-delta-printer's Issues

QQSP Touchscreen Functionality post Klipper FW?

Is it normal for the QQSP touchscreen to only display "complete" after updating firmware to Klipper?
Is this also the general outcome with all screens connected to the machine's micro-controller?
Just wandering if I have something configured incorrectly, and if I update my other machines, will the integrated screens on the other machine's also be non-functional?

It would be nice if the mcu screens could be utilized to al least show some stats or print progress or anything useful!

Thanks

Running stock tft screen

Just open the issue to start a discussion on it.

I would like to use the stock even if it only to display some information about temperatures, printing percentage etc. Since the board (mks nano mini) doesnt have the LCD ports there is no way to use klipperscreen on it.

Is there any option to use stock tft screen on this board using klipper?

Firmware for QQ-S Pro with GD32 chip?

Hi. I have the newer QQ-S Pro with the GD32F303VET6 chip. I've been using your guide plus this one:
https://github.com/gaifeng8864/klipper-on-android/blob/main/README_en.md

To use an old Google Nexus 7 I have lying around as a touchscreen Klipper controller. I have the tablet all set up and working but waiting on the printer because no matter what options I choose in the menuconfig and building the firmware, I put the bin on my SD and it just goes to "TFT Updating 100%" and then sits, forever. If I turn the printer off and back on, it just sits at "boot...." forever. I don't appear to get a full flash. I read some guides on options in menuconfig for the GD32 chip, but it still does not work.
Any ideas? Wonder if the update_mks_robin.py script is specific to the older board? Thanks.

Q5 robin nano

Hi !
Can I follow this instruction for a Q5 ?
Thanks a lot great work !

QQs vs QQs pro

What modifications do I have to make to work in Klipper between qqs pro and qqs? both are the same and sometimes even bring the same board. However I'm not getting Klipper on qqs with the boatd robin nano mini v2.0.

Step 4 - Calibrating the printer (Stock Example)

Hi,
In the Section "Step 4 - Calibrating the printer" is the Text:
"Bed mesh leveling is enabled in all the config files, so after setting the Z-offset, type BED_MESH_CALIBRATE in the console then SAVE_CONFIG when finished."

In the Example Config Files: printer_qqs(Stock).cfg and printer_qqs(tmc2209).cfg the section [bed_mesh] is commented out. And you must change the horizontal_move_z Value to get the mesh bed leveling to work.

README.md: kiauh not installed

Hello,
maybe it will be nice, if you make a more explicit hint that kiauh is not installed on a default MainsailOS.

In "Step 1 - Setting up the Raspberry Pi" is the Text:
"(optional) If you want to use fluidd instead of Mainsail navigate to the kiauh directory: cd ../kiauh"
Maybe you can insert a line before with sometink linke that: (optional) Install kiauth Documentation at: https://github.com/th33xitus/kiauh

Move out of range

Hello,

Unfortunately I can't find a solution to the problem mentioned. The printer works so far (leveling etc.) but when I try to print I get this error: Move out of range: 0.000 -0.000 388.236 [0.000]

My printer.cfg

....
[printer]
kinematics: delta
max_velocity: 500
max_accel: 2000
max_z_velocity: 200
minimum_z_position: -20
delta_radius: 120

[stepper_a]
step_pin: PE3
dir_pin: !PE2
enable_pin: !PE4
rotation_distance: 32
endstop_pin: PA15
microsteps: 16
homing_speed: 80
position_endstop: 370
arm_length: 280.0

[stepper_b]
step_pin: PE0
dir_pin: !PB9
enable_pin: !PE1
rotation_distance: 32
endstop_pin: PA12
microsteps: 16

[stepper_c]
step_pin: PB5
dir_pin: !PB4
enable_pin: !PB8
rotation_distance: 32
endstop_pin: PC4
microsteps: 16

[probe]
pin: !PA11
x_offset: 0
y_offset: 0
z_offset: 18.237
samples: 3
samples_result: average
sample_retract_dist: 5
speed: 20
#helps with consistency of probing.

[delta_calibrate]
radius: 120
horizontal_move_z: -25
speed: 100
#ensure accurate probing

.....

[bed_mesh]
speed: 80
horizontal_move_z: 25
mesh_radius: 120
mesh_origin: 0,0
round_probe_count: 15
algorithm: bicubic #was lagrange
fade_start: 1
fade_end: 10

.....

[tmc2209 stepper_a]
uart_pin: PA10
#These pins are commented so you have to check which pins are connected to which steppers.
run_current: .850
hold_current: .500
interpolate: True
stealthchop_threshold: 0

[tmc2209 stepper_b]
uart_pin: PA9
run_current: .850
hold_current: .500
interpolate: True
stealthchop_threshold: 0

[tmc2209 stepper_c]
uart_pin: PC7
run_current: .850
hold_current: .500
interpolate: True
stealthchop_threshold: 0

[tmc2209 extruder]
uart_pin: PA8
interpolate: True
run_current: .850
hold_current: .500
stealthchop_threshold: 0

......

[gcode_macro START_PRINT]
gcode:
SET_GCODE_OFFSET Z_ADJUST=18.236 MOVE=1 # sets the z-offset

[gcode_macro END_PRINT]
gcode:
SET_GCODE_OFFSET Z_ADJUST=0 # resets the z-offset (otherwise, )

.....

Can anyone give me a tip on how I can get this under control?

Thanks

Option 'uart_pin' in section 'tmc2209 stepper_a' must be specified

Hello, thank you in advance.
I'm stuck on this error message :/ I have 2208 drivers, dunno if is that the main problem on my QQS-Pro. If i apply your printer config Stock, everything works, less the HOME ALL but maybe is backwards. When applying your config with 2209 got that error... I do not know what do more.. Already spend a lot of hours truing to figure out, i know from the message i need to set a number or something for UART connection, but dunno what set there. Can you help? Got also one video, because my english is not that great. Thanks https://youtu.be/vzhqECSI52o
11
12

mainsailos on Raspberry Pi 4 does not have confiug files

Using Pi Imager and the KlipperPi latest installation, the Pi does not respond to a browser request.
I can SSH into it, but the klipper_config folder described in the instructions here does not ecist.
In klipper->config there are many example files but nothing for FLSun and once again there is a list of a range of robin boards - the reason I was trying this klipper version was because I expected not to have to try to identify exactly which board to use.
It seems that is not possible.

Am I missing sometjhing? Do I have to go through the long-winded Balena process and all that config and will that install with the folders mentioned here?

Slightly confusing stock probe calibration

I had some issues with your calibration instructions for the stock probe. I did not do a bed mesh, but here are my revised instructions:


Attach any print surface material you use (masking tape, etc.) and heat the bed to around 50C. A material expands with heat, and this is important in order to obtain correct measures.

Attach the FLSun QQ-S Pro stock probe. Ensure the wire is routed correctly so the probe will not be ripped off, causing an ugly crash of the print head.

Home the printer with the command "G28", and then do an initial calculation of the z_offset with the command "PROBE_CALIBRATE".

Detach the QQ-S Pro stock probe, and manually lower the Z height until the paper slides with a tiny bit of friction with "TESTZ Z=-<value>" and "TESTZ Z=+<value>".

When you are happy with the results, give the command "ACCEPT", followed by "SAVE_CONFIG".

Now edit your printer.cfg, any existing "z_offset" will have been commented out in the "[probe]" section, and a line with the correct "z_offset" will have been inserted at the bottom of the file. Add the correct z_offset value into your "[probe]" section.

Then save the file and restart.



Next we will calibrate the bed of the printer:

Once again home (command "G28"), pre-heat the bed to 50C.

Re-attach the probe.

Edit your printer.cfg, and make sure that "horizontal_move_z" in the "[delta_calibrate]" section, is set to a value 5-10mm higher than the "z_offset" we calculated in the previous step. Also ensure your radius is set correctly, to avoid collisions. A radius of 120 seems safe on the FLSun QQ-S Pro.

Save the printer.cfg file and restart the firmware and printer.

Then run the "DELTA_CALIBRATE" command.

When finished, run the "SAVE_CONFIG" command, home the printer with "G28", and restart the firmware and printer.

Detach the probe, and you should now be ready to print.```

No com port and errors in the .cfg

I have a QQS Pro.
I am using your .cfg for my printer.

1̶)̶ n̶o̶ m̶a̶t̶t̶e̶r̶ w̶h̶a̶t̶ I̶ d̶o̶ I̶ c̶a̶n̶ n̶o̶t̶ g̶e̶t̶ O̶c̶t̶o̶K̶l̶i̶p̶p̶e̶r̶ t̶o̶ c̶o̶n̶n̶e̶c̶t̶. - it worked once for a little while when I switched USBs on the RPi
2) When I do try I get the errors about:
// Option 'default_parameter_x' is not valid in section 'gcode_macro pause' // // Once the underlying issue is corrected, use the "RESTART" // command to reload the config and restart the host software. N0 M110 N0*125 // Printer is halted !! Option 'default_parameter_x' is not valid in section 'gcode_macro pause'

I am admittedly over my head. I was hoping to some easy to follow directions for octo and klipper on the FLSUN QQ-S Pro. Everything seemed to be working until I got to this point.

ANY help would be greatly appreciated.

PROBE_CALIBRATE

Hello I have used your stock bin file and printer config. I have everything working but when I try to do the probe calibrate it gives me a out of range error after 0.0 for Z. I am sure I am missing something simple. But I am trying to get my Z offset.
klippy.log

Vref pin configuration missing from the qq-s stock configuration file

This is the configs I had to add,

[output_pin vref_xy]
pin: PA6
pwm: True
shutdown_value: 0
scale: 3.3
cycle_time: .0001
value: 1.6

[output_pin vref_z]
pin: PA7
pwm: True
shutdown_value: 0
scale: 3.3
cycle_time: .0001
value: 1.6

[output_pin vref_e]
pin: PB0
pwm: True
shutdown_value: 0
scale: 3.3
cycle_time: .0001
value: 1.6

Issues running your configuration on FLSun QQ-S Pro

I followed your guide, and so far I'm having issues with the steppers A, B, C.

I'm getting a ton of vibration from the stock motors.
Only 2 of the 3 arms are homing correctly, only 2/3 are hitting the end stops.
When I try to test extrude Klipper looks like it's crashing, or the firmware is crashing.
Klipper is also not allowing me to move the gantry around using the controls. It sends the command but returns
Move out of range: 0.000 10.000 370.010 [0.000]

I had to update the printer.cfg so all the stepper blocks had:
position_endstop: 370 arm_length: 280.0

Did you run into any of these issues? I've attached my config.
printer.txt

TMC2208 a la place de TMC2209 problème de déconnection lorsque du home, en config stock les moteur sont inverser

Bonjour,

Je voudrais utiliser cette configuration mais pour des TMC2208 car quand je lance le auto home alors que j'ai bien brancher les pin et tout les manipulation a faire et j'ai mon qq-s pro qui ce déconnecter ( j'ai essayer avec le stock mais les moteur sont inverser lorsque du home)
Aider moi je suis perdu je n'arrive pas a comprendre.
lien TMC2208: https://www.amazon.fr/gp/product/B07R48YHY3/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

Merci.

Klipper config file for a moddified QQ-S Pro with TMC2209s:

Mesh bed leveling is also added, but commented out. Only enable it if

running the PROBE_ACCURACY command outputs a range value < 0.025 mm

Note that an offset probe is not recommended on delta printers due to

effector tilt. In order to use it successfully to create a useable bed mesh

you need to run the enhanced delta calibration:

https://www.klipper3d.org/Delta_Calibrate.html

See docs/Config_Reference.md for a description of parameters.

[mcu]
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
restart_method: command
baud: 250000

[printer]
kinematics: delta
max_velocity: 500
max_accel: 2000
max_z_velocity: 200
minimum_z_position: -5
delta_radius: 130

[stepper_a]
step_pin: PE3
dir_pin: PE2
enable_pin: !PE4
rotation_distance: 32
endstop_pin: PA15
microsteps: 16
homing_speed: 60
position_endstop: 370
arm_length: 280.0

[stepper_b]
step_pin: PE0
dir_pin: PB9
enable_pin: !PE1
rotation_distance: 32
endstop_pin: PA12
microsteps: 16

[stepper_c]
step_pin: PB5
dir_pin: PB4
enable_pin: !PB8
rotation_distance: 32
endstop_pin: PC4
microsteps: 16

[probe]
pin: !PA11
x_offset: 0
y_offset: 0
z_offset: 10
samples: 3
samples_result: average
sample_retract_dist: 5
speed: 20
#helps with consistency of probing.

[delta_calibrate]
radius: 120
horizontal_move_z: 10
speed: 20
#ensure accurate probing

[extruder]
step_pin: PD6
dir_pin: !PD3
enable_pin: !PB3
rotation_distance: 9
microsteps: 16
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: PC3
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PC1
control: pid
pid_Kp: 14.529
pid_Ki: 0.557
pid_Kd: 94.802
min_extrude_temp: 180
min_temp: 0
max_temp: 260
#max_extrude_only_accel: 250 setting this can help with the whine of the extruder. Play around with this number.

[heater_bed]
heater_pin: PA0
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PC0
control: pid
pid_Kp: 325.10
pid_Ki: 63.35
pid_Kd: 417.10
min_temp: 0
max_temp: 150

[fan]
pin: PB1
kick_start_time: 0.200

#Allows you to see your MCU temps on the graph
#[temperature_sensor mcu_temp]
#sensor_type: temperature_mcu
#min_temp: 0
#max_temp: 100

#Allows you to see your Raspberry Pi CPU temps on the graph
#[temperature_sensor raspberry_pi]
#sensor_type: temperature_host
#min_temp: 10
#max_temp: 100

#######################################################################

Optional: Bed mesh leveling - only use if the PROBE_ACCURACY

command outputs a range value < 0.025 mm

#######################################################################

[bed_mesh]
speed: 50
horizontal_move_z: 30
mesh_radius: 100
mesh_origin: 0,0
round_probe_count: 5
algorithm: lagrange

#######################################################################

Optional: End-stop style filament sensor

#######################################################################

#[filament_switch_sensor Filament]
#pause_on_runout: True
#switch_pin: PA4

#######################################################################

Optional: BL Touch Probe - comment out [probe] section if using this

#######################################################################

#[bltouch]
#sensor_pin: PA11
#control_pin: PA8
#stow_on_each_sample: True
#set_output_mode: 5V
#x_offset: 3
#y_offset: -36
#z_offset: -2.3
#samples: 3
#sample_retract_dist: 5
#samples_result: average

#######################################################################

Clears the LCD screen after powering up the printer.

#######################################################################

#[static_digital_output display_reset]
#pins: !PC6, !PD13

#######################################################################

Fairly quiet settings without running stealthchop if you have TMC2209 Drivers. Likely works with 2208 but has not been tested.

#######################################################################

[tmc2209 stepper_a]
#uart_pin: PA10
#These pins are commented so you have to check which pins are connected to which steppers.
run_current: .850
hold_current: .500
interpolate: True
stealthchop_threshold: 0

[tmc2209 stepper_b]
#uart_pin: PA9
run_current: .850
hold_current: .500
interpolate: True
stealthchop_threshold: 0

[tmc2209 stepper_c]
#uart_pin: PC7
run_current: .850
hold_current: .500
interpolate: True
stealthchop_threshold: 0

[tmc2209 extruder]
#uart_pin: PA8
interpolate: True
run_current: .850
hold_current: .500
stealthchop_threshold: 0

#[endstop_phase]

Please read (the Endstop Phase Documentation)[https://www.klipper3d.org/Endstop_Phase.html]. This will improve the accuracy of your printer by improving the accuracy of your endstops.

This is the path where your g-code files will be uploaded to in the

rasbperry pi

[virtual_sdcard]
path: ~/gcode_files

[display_status]

[pause_resume]

This macro should be called at the 'start g-code' part

of your slicer and you would put all the start g-code here

instead so that you don't have to re-slice everytime you

have to edit the commands

[gcode_macro START_PRINT]
gcode:
#SET_GCODE_OFFSET Z_ADJUST=-0.1 MOVE=1 # sets the z-offset

This macro should be called at the 'end g-code' part

of your slicer and like the macro above, you would

also put all of your end g-code here for the same reason as above

[gcode_macro END_PRINT]
gcode:
SET_GCODE_OFFSET Z_ADJUST=0 # resets the z-offset (otherwise, )

Pause print macro

[gcode_macro PAUSE]
rename_existing: BASE_PAUSE
gcode:
SAVE_GCODE_STATE NAME=PAUSE_state
BASE_PAUSE
G91
G1 E-{params.E|default(1)} F2100 ; change 1 to your default retraction distance
G1 Z{params.Z|default(10)} ; change 10 to your Z parking position
G90
G1 X{params.X|default(230)} Y{params.Y|default(230)} F6000 ; change 230 to your X and Y parking postion

Resume print macro

[gcode_macro RESUME]
rename_existing: BASE_RESUME
gcode:
G91
G1 E{params.E|default(1)} F2100 ; change 1 to your default retraction distance
G90
RESTORE_GCODE_STATE NAME=PAUSE_state MOVE=1
BASE_RESUME

Cancel print macro

[gcode_macro CANCEL_PRINT]
rename_existing: BASE_CANCEL_PRINT
gcode:
TURN_OFF_HEATERS
CLEAR_PAUSE
SDCARD_RESET_FILE
BASE_CANCEL_PRINT

QQ-S Pro Movement Distance is Off

Hi! I'm having issues with my QQ-S Pro install of Klipper. I had this install working just fine last week, but an unfortunate micro-sd corruption incident required me to fresh install it again. However, this new time around, I'm finding that the printer seems to think it's moving far less than it is (e.g. the bed is registered as 190-ish mm). A cursory measurement seems to suggest the printer is moving roughly double what it thinks it's moving. This is wreaking havoc with the printer as I can't properly calibrate or level the printer.

I'm running the TMC2209 config with standalone (turned off the UART sections, which worked for me last time), and I've checked VRefs and such. Not sure what's causing this issue or how to fix it, but I'd like to keep using this excellent Klipper config. Thanks for the help!

Edit: Setting the rotation_distance parameter in the config file to 64 (double of the previous value) seems to have corrected the printer's overshoot, but I don't remember this being an issue with my previous install. If this is an expected change/something that makes sense, please close the issue.

Baud unstable

I find the default baud unstable with Flsun highspeed 1.0 board.
Looks like you are having the same problem "Timeout during homing"
115200 works for me fine.

If you could confirm it is worth changing.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.