diff --git a/English Documents/main document.md b/English Documents/main document.md new file mode 100644 index 0000000..058b3eb --- /dev/null +++ b/English Documents/main document.md @@ -0,0 +1,184 @@ +### Notice +Using this module requires a certain level of knowledge and experience with Klipper. Ensure that you have the ability to configure and modify it before installation. + +To maintain accuracy, install the sensor coil board with its top surface as low as possible below the bottom surface of the heater block. + +## Important Instructions +- Follow the tutorial strictly, especially regarding commands like G28. Only perform the mentioned steps. +- Execute the following git command in the user directory to download the accompanying script: + ```bash + git clone https://gitee.com/NBTP/IDM.git + ``` +- Run `chmod +x IDM/install.sh` after downloading. +- If unsure about your pip source or unaware of what pip is, set pip to Tsinghua source using: + ```bash + ~/klippy-env/bin/pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple + ``` + Then install with: + ```bash + IDM/install.sh + ``` + +### Configuration Example for printer.cfg +```ini +[idm] +serial: +#canbus_uuid: +# Path to the serial port for the idm device. Typically has the form +# /dev/serial/by-id/usb-idm_idm_... +speed: 40. +# Z probing dive speed. +lift_speed: 5. +# Z probing lift speed. +backlash_comp: 0.5 +# Backlash compensation distance for removing Z backlash before measuring +# the sensor response. +x_offset: 0. +# X offset of idm from the nozzle. +y_offset: 21.1 +# Y offset of idm from the nozzle. +trigger_distance: 2. +# idm trigger distance for homing. +trigger_dive_threshold: 1.5 +# Threshold for range vs dive mode probing. Beyond `trigger_distance + +# trigger_dive_threshold` a dive will be used. +trigger_hysteresis: 0.006 +# Hysteresis on trigger threshold for untriggering, as a percentage of the +# trigger threshold. +cal_nozzle_z: 0.1 +# Expected nozzle offset after completing manual Z offset calibration. +cal_floor: 0.1 +# Minimum z bound on sensor response measurement. +cal_ceil:5. +# Maximum z bound on sensor response measurement. +cal_speed: 1.0 +# Speed while measuring response curve. +cal_move_speed: 10. +# Speed while moving to position for response curve measurement. +default_model_name: default +# Name of the default idm model to load. +mesh_main_direction: x +# Primary travel direction during mesh measurement. +#mesh_overscan: -1 +# Distance to use for direction changes at mesh line ends. Omit this setting +# and a default will be calculated from line spacing and available travel. +mesh_cluster_size: 1 +# Radius of mesh grid point clusters. +mesh_runs: 1 +# Number of passes to make during mesh scan. +``` + +Adjust the x and y direction offsets in the configuration. Ensure that during calibration, the nozzle moves the coils to the original xy position of the nozzle. + +Add this configuration to printer.cfg and modify serial to your IDM's serial number. To find the IDM serial, use the command: +```bash +ls /dev/serial/by-id/* +``` + +### For CAN Version +Replace serial with canbus_uuid. + +Use the following command to search for the CAN UUID and fill it in: +```bash +~/klippy-env/bin/python ~/klipper/lib/canboot/flash_can.py -q +``` + +Note: After adding the UUID, remove serial. + +------------------------------------------------- + +Include the following in the configuration (optional but recommended): +```ini +[force_move] +enable_force_move: true +``` + +### Remove the [probe] Module +Remove the [probe] module from your configuration. + +If you've used Klicky, remove references to its scripts. Modify z limit (after stepper_z's endstop_pin:) to probe:z_virtual_endstop. + +Also, set: +```ini +[safe_z_home] +home_xy_position: , +z_hop: 10 +``` +If you've configured safe_z_home or homing_override, you can skip this step. + +#### Don't forget to set up [bed_mesh] to avoid errors. +Omit the zero_reference_position in bed_mesh. + +After restarting, home x and y (g28 x y, don't home z), and move the nozzle to the center of the bed. Then enter SET_KINEMATIC_POSITION z=80. + +Now, you can control the z-axis movement and bring the nozzle close to the bed (or place an A4 paper for the right gap). Enter SET_KINEMATIC_POSITION z=0 (note that it's different from the previous command). + +Execute idm_calibrate. In the offset control box, click -0.1 for offset and confirm. It will automatically calibrate. + +If, after calibration, you encounter + + issues like not zeroing after a restart or reporting "no model," there might be a format error in your configuration file's auto-generated configuration. Correct the format. + +For 4Z machines like VORON2.4, add the following configuration to the file: +```ini +[gcode_macro QUAD_GANTRY_LEVEL] +rename_existing: _QUAD_GANTRY_LEVEL +gcode: +    SAVE_GCODE_STATE NAME=STATE_QGL +    BED_MESH_CLEAR +    {% if not printer.quad_gantry_level.applied %} +      _QUAD_GANTRY_LEVEL horizontal_move_z=10 retry_tolerance=1 +    {% endif %} +    _QUAD_GANTRY_LEVEL horizontal_move_z=2 +    G28 Z +    RESTORE_GCODE_STATE NAME=STATE_QGL +``` + +For 3Z machines like VORON Trident, add the following configuration: +```ini +[gcode_macro Z_TILT_ADJUST] +rename_existing: _Z_TILT_ADJUST +gcode: +    SAVE_GCODE_STATE NAME=STATE_Z_TILT +    BED_MESH_CLEAR +    {% if not printer.z_tilt.applied %} +      _Z_TILT_ADJUST horizontal_move_z=10 retry_tolerance=1 +    {% endif %} +    _Z_TILT_ADJUST horizontal_move_z=2 +    G28 Z +    RESTORE_GCODE_STATE NAME=STATE_Z_TILT +``` + +It's recommended to add the following configuration to the moonraker.conf file for easy script updates: +```ini +[update_manager idm] +type: git_repo +channel: dev +path: ~/IDM +origin: https://gitee.com/NBTP/IDM.git +env: ~/klippy-env/bin/python +requirements: requirements.txt +install_script: install.sh +is_system_service: False +managed_services: klipper +info_tags: +  desc=idm +``` + +For versions with an accelerometer (lis2dw), add the following to enable it: +```ini +[lis2dw] +cs_pin: idm:PA3 +spi_bus: spi1 + +[resonance_tester] +accel_chip: lis2dw +probe_points: +    125, 125, 20  #set your prefered calibrating position +``` +Configure and use shaper_calibrate for resonance testing. + +Adjust the z offset before printing. The z offset is saved in the model_offset variable. + +### Note +Before adjusting the z offset, ensure to disable the bed mesh, complete mechanical leveling, and zero once again. diff --git a/中文教程/教程.md b/中文教程/教程.md index 5da009f..d3084de 100644 --- a/中文教程/教程.md +++ b/中文教程/教程.md @@ -60,7 +60,7 @@ mesh_main_direction: x #   and a default will be calculated from line spacing and available travel. mesh_cluster_size: 1 #   Radius of mesh grid point clusters. -mesh_runs: 2 +mesh_runs: 1 #   Number of passes to make during mesh scan. ``` 请注意调整配置中的x y方向偏移。确保校准过程中喷头会将线圈移动到原先喷嘴所在xy位置。