GithubHelp home page GithubHelp logo

dwc2-for-klipper-socket's People

Contributors

buzztiaan avatar dw-0 avatar sealj553 avatar stephan3 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  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

dwc2-for-klipper-socket's Issues

Failed to get file list: Target drive is unmounted, Can't detect virtual sdcard

Hi,
I just installed this with th33xitus's installer, and it looks like everything is working as intended, but when I try to upload files, I get the following errors on the bottom right:

Failed to get file list: Target drive is unmounted
Can't detect virtual sdcard

I tried with and without virtual_sd enabled.
I did get it to print once by hitting Upload & Start, but it no longer works and I don't know what changed. I've never been able to upload files through the Jobs tab, though.

Relevant section of my printer.cfg:

[virtual_sdcard]
path: /home/pi/sdcard

This used to be an Octoprint install, but I gutted it. I don't think I left anything enabled that should interfere. I also went through the installation instructions after using the script and made sure everything is set up correct.
Let me know if there are any relevant logs I can include.
Thanks for all the hard work on this project!

few questions

As far as I remember, the duet had 3 calculation times. Based on the use of filament, only one of them. Are the rest unfulfilled?
Why does not it show the number of the layer that is printing?
If you manually set the fan speed, and in the slicer on the next layer a speed will be set that differs from the one set in the interface, then the fan speed will change as indicated by the slicer. For this case, the original interface of the duo provided fixing buttons that returned the speed as in the interface. This is also not the case.
And finally, RRF G32 teams and others. Is it possible to replace with clipper commands?

Printer stopping mid print, temps resetting

Hi all, I keep getting prints just stopping, this issue has arisen the last 2 days after working fine daily for months.

The print appears to be paused, if I hit resume it says "resume aborted, print not paused" the temps also turn off when the print stops.

klippy(2).log

g28 http request timed out

hello. trying out klipper and dwc. i get this error when homing. "g28 http request timed out" everything works but it shows that error. i used kiauh to install for gtr v1.0 board. what can i change to fix the error?
Screenshot 2021-05-16 135801

Implement IceSL slicer

Hi,
is it possible to implement IceSL slicer?
I have these at my custom header:

;===================
;TOTAL INFORMATION
;Printer: wscubexy-06tryska
;Slicer: IceSL version: 2.3.5
;Object height: 7.2
;Number of layers: 30
;Total filament lenght: 18399.701 mm
;Print time:   143.433 minutes
;Print dimension: X:89.498 mm Y:30.226 mm X1:242.503 mm Y1:149.774 mm Z:7.200 mm
;===================

and standard by Icesl:


` <IceSL Oct  6 2020 17:57:53>
; SET_PRESSURE_ADVANCE : 	0.096
; accel : 	850
; add_brim : 	True
; add_raft : 	False
; auto_spiralize : 	True
; bed_part_offset_x_mm : 	0
; bed_part_offset_y_mm : 	0
; bed_size_x_mm : 	180
; bed_size_y_mm : 	180
; bed_temp_degree_c : 	55
; brim_distance_to_print_mm : 	2
; brim_num_contours : 	2
; button_cover_density_field_0 :
; button_distance_density_field_0 :
; button_optimize_z_layer_height_mm :
; button_overhangs :
; button_spiralize :
; cavity_brush : 	0
; cavity_num_iterations : 	5
; cavity_tearing_method : 	Cross
; chamber_temp_degree_c : 	0
; cover_density_crust_mm_0 : 	1
; cover_density_max_density_0 : 	90
; cover_filter_diameter_mm_0 : 	0
; cover_flow_multiplier_0 : 	1
; cover_thickness_bottom_mm_0 : 	1.2
; cover_thickness_mm_0 : 	1.2
; cover_thickness_top_mm_0 : 	1.2
; cycle_gap_mm : 	-1
; decel : 	850
; distance_density_crust_mm_0 : 	10
; distance_density_max_density_0 : 	90
; enable_active_temperature_control : 	False
; enable_curved_covers_0 : 	False
; enable_different_top_bottom_covers_0 : 	False
; enable_fan : 	True
; enable_fan_first_layer : 	False
; enable_fit_single_path : 	False
; enable_fw_retract : 	True
; enable_ironing_0 : 	False
; enable_min_layer_time : 	False
; enable_z_lift : 	False
; extra_extruder_e_restart : 	0
; extra_extruder_e_swap_restart : 	0
; extruder_0 : 	0
; extruder_count : 	1
; extruder_degrees_per_sec_0 : 	2
; extruder_mix_count_0 : 	1
; extruder_mix_ratios_0 : 	(1)
; extruder_purge_volume_mm3 : 	24
; extruder_swap_retract_length_mm : 	6
; extruder_swap_retract_speed_mm_per_sec : 	20
; extruder_swap_zlift_mm : 	1
; extruder_temp_degree_c_0 : 	212
; fan_speed_percent : 	45
; fan_speed_percent_on_bridges : 	100
; filament_diameter_mm_0 : 	1.75
; filament_priming_mm_0 : 	6.5
; fill_tiny_gaps_0 : 	True
; first_layer_print_speed_mm_per_sec : 	25
; first_layer_saved : 	0
; flow_dampener_e_length_mm : 	3
; flow_dampener_path_length_end_mm : 	1
; flow_dampener_path_length_start_mm : 	1
; flow_multiplier_0 : 	0.97
; force_auto_spiralize : 	False
; force_backtrack_0 : 	True
; gen_cavity : 	False
; gen_shield : 	False
; gen_supports : 	False
; gen_tower : 	False
; idle_extruder_temp_degree_c_0 : 	100
; infill_angle_0 : 	0
; infill_extruder_0 : 	0
; infill_percentage_0 : 	20
; infill_type_0 : 	Default
; ironing_flow_0 : 	0.1
; ironing_line_spacing_mm_0 : 	0.1
; ironing_nb_passes_0 : 	2
; ironing_only_top_0 : 	True
; ironing_speed_mm_per_sec_0 : 	20
; ironing_thickness_mm_0 : 	0.2
; ironing_type_0 : 	Zigzag
; ironing_z_offset_mm_0 : 	0
; kgon_min_angle_0 : 	45
; kgon_norm_alpha_0 : 	0.5
; kgon_x_shrink_0 : 	1
; labeling_mm_per_pixels_0 : 	0.01
; labeling_x_offset_mm_0 : 	0
; labeling_y_offset_mm_0 : 	0
; material_mixing_enable_optimizer : 	True
; max_backtrack_len_mm_0 : 	10
; micro_mixing_field :
; min_layer_time_method : 	Tower
; min_layer_time_sec : 	3
; mixing_ratio_min_threshold : 	0.07
; mixing_shield_speed_multiplier : 	1.5
; mixing_wipe_length_mm : 	0
; nozzle_diameter_mm_0 : 	0.35
; num_shells_0 : 	2
; number_layers_saved : 	0
; overhang_points :
; path_priority_bridge : 	1
; path_priority_infill : 	2
; path_priority_perimeter : 	3
; path_priority_shell : 	4
; path_priority_use_default : 	True
; path_width_speed_adjustment_exponent : 	0
; perimeter_print_speed_mm_per_sec : 	30
; pfoam_min_percentage_0 : 	20
; preserve_contour_orientations : 	True
; priming_mm_per_sec_0 : 	30
; print_perimeter_0 : 	True
; print_speed_microlayers_mm_per_sec : 	200
; print_speed_mm_per_sec : 	50
; printer : 	wscubexy-06tryska
; process_thin_features : 	True
; raft_layer_height_mm : 	0.3
; raft_layers : 	3
; raft_lines_spacing_mm : 	1
; raft_offset_mm : 	0.2
; raft_speed_multiplier : 	1
; raft_top_layer_height_mm : 	0.1
; raft_top_layers : 	2
; raft_top_lines_spacing_mm : 	0.8
; raft_xy_margin_mm : 	5
; retract_after_z : 	0
; retract_inwards_perimeter_end : 	True
; retract_perimeter_safety_distance_mm : 	1.2
; save_layer_subset : 	False
; seam_location_field :
; shell_flow_multiplier_0 : 	1
; shield_brim_num_contours : 	3
; shield_distance_to_part_mm : 	2
; shield_num_contours : 	1
; slicing_algorithm : 	Auto select
; speed_multiplier_0 : 	1
; support_algorithm : 	Wings
; support_anchor_diameter : 	7.2
; support_extruder : 	0
; support_flow_multiplier : 	1
; support_infills : 	False
; support_interdiction_field :
; support_max_bridge_len_mm : 	5
; support_max_connector_height : 	8
; support_min_connector_height : 	2
; support_overhang_overlap_fraction : 	0.5
; support_pillar_cross_length : 	2.5
; support_print_speed_mm_per_sec : 	20
; support_spacing_min_mm : 	2
; support_wing_angle : 	25
; support_wing_min_width : 	4
; support_wing_rib_width : 	2
; thickening_ratio : 	1.25
; tile_size_mm : 	60
; top_frate : 	25
; tower_at_location : 	False
; tower_brim_num_contours : 	12
; tower_location_x_mm : 	0
; tower_location_y_mm : 	0
; tower_side_x_mm : 	10
; tower_side_y_mm : 	15
; travel_avoid_top_covers : 	False
; travel_max_length_without_retract : 	20
; travel_speed_mm_per_sec : 	90
; travel_straight : 	False
; unretract_speed : 	25
; use_different_thickness_first_layer : 	False
; xy_max_deviation_mm : 	0.005
; xy_mm_per_pixels : 	0.05
; z_extra_height : 	0
; z_layer_height_first_layer_mm : 	0.3
; z_layer_height_mm : 	0.2
; z_lift_mm : 	1
; z_offset : 	-0.2`

Using older version of dwc2 I've had working regex but now I am not possble to make it working.
Or can you check my setup at rr.handler.py?

'IceSL':
			{
				'name': ';Slicer: (IceSL?) .*',
				'version': '\sversion\s(.*?)\n',
				'object_h' : '*\sZ\\d+.\\d*',
				'first_h': '; z_layer_height_first_layer_mm\s:\s*\d+.\d+',
				'layer_h': '; z_layer_height_mm\s:\s*\d+.\d+',
				'duration': '\s\s\d+\.\d*\sminutes',
				'filament': [ 'Total filament lenght:.*mm', 1 ]
			}

I am still getting slicer not recognized.

Thank you very much

DWC Plugins cannot be installed

Trying to install a DWC plugin I get an error:

Failed to decompress files
Cannot read property 'find' of null

Log:
========== Started ==========
Tornado:.1845398 - ##.##.##.## - GET - /rr_connect?password=reprap&time=2021-5-17T13%3A18%3A9
Tornado:.2179363 - ##.##.##.## - GET - /rr_filelist?dir=0%3A%2Fmacros&first=0
Tornado:9.229812 - ##.##.##.## - GET - /rr_filelist?dir=0%3A%2Fsys&first=0
Tornado:.4704661 - ##.##.##.## - GET - /BtnCmd
Tornado:.4810545 - ##.##.##.## - GET - /rr_disconnect
Tornado:.5994647 - ##.##.##.## - GET - /js/app.56671d18.js
Tornado:8.921883 - ##.##.##.## - GET - /rr_connect?password=reprap&time=2021-5-17T13%3A18%3A28
Tornado:.9850492 - ##.##.##.## - GET - /rr_download?name=0%3A%2Fsys%2Fdwc-plugins.json
Tornado:.0389519 - ##.##.##.## - GET - /rr_download?name=0%3A%2Fsys%2Fdwc-settings.json
Tornado:.0448318 - ##.##.##.## - GET - /img/icons/favicon-32x32.png
Tornado:9.064854 - ##.##.##.## - GET - /css/HeightMap.389e8521.css
Tornado:.0786698 - ##.##.##.## - GET - /js/HeightMap.7361cf24.js
Tornado:.1083689 - ##.##.##.## - GET - /rr_filelist?dir=0%3A%2Fsys&first=0

I understand this may be a niche use case, and you may not wish to support it.

plugin here : https://github.com/MintyTrebor/BtnCmd/releases/download/Alpha_0.8.18/BtnCmd_DWC3.2_Alpha.0.8.18.zip

For background I am the author of the plugin, and I am in the process of building a new printer which will be using Klipper. I was excited to see I could use DWC as it meant I can continue to use my plugin once I have completed the build. The plugin does work if I install a custom build of the whole of DWC site with the plugin already embedded, so I know that the plugin will function with your solution once installed.

EDIT:
Forgot to add that I also did a test with DWC 3.3rc2, and had similar results. DWC 3.3rc2 operated normally with your socket, but the plugin installation failed (as before - a build with the plugin already included ran fine).

G28 and G29 are executing 3 times

Just as the title says, G28 and G29 are running twice whenever I run them. This happens after a HTTP request timed out notification for both.

Cura gcode parsing not working quite right

Using Cura 4.6.2, it appears the parse_gcode is not working 100%. The filament variable is reading in meters, but storing (or at least, the display in web interface) is in millimeters. I think multiplying by 10 in the parse code should work.

I am also having trouble with layer calculations with many of my jobs, but I can't quite put my finger on why yet. I think the estimated time is also not parsing correctly. Perhaps it will be apparent comparing the code to the actual file output below.

Here is the problem portion of code:

def parse_gcode(path, self):
slicers = {
'Cura':
{
'name': 'Cura_SteamEngine.*', # somewhere in the first lines
'object_h': '\sZ\\d+.\\d*', # get the highest knowing z
'first_h': '\sZ\\d+.\\d\s', # get the lowest knowing z
'layer_h': ';Layer height: \d.\d+', # its there
'duration': ';TIME:\\d+', # its there
'filament': ';Filament used: \d*.\d+m' # its there
},

Here is what is in the header output in a CURA file:

;FLAVOR:Marlin
;TIME:1341
;Filament used: 0.564835m
;Layer height: 0.2
;MINX:107.7
;MINY:107.7
;MINZ:0.2
;MAXX:127.3
;MAXY:127.3
;MAXZ:20

My list of jobs, you can see the data is either not there or incorrect:
image

Here is a screenshot of one of my jobs that is not showing layers correctly (there are 12 layers in this one):

image

Also including the gcode from the screenshot above:

Greek_Meander_Lamp_part22.gcode.txt

async def init_(self):

Clear install, all latest, raspberry 4, Octopi.

Unhandled exception during connect
Traceback (most recent call last):
 File "/home/pi/klipper/klippy/klippy.py", line 146, in _connect
   self._read_config()
 File "/home/pi/klipper/klippy/klippy.py", line 139, in _read_config
   self.load_object(config, section_config.get_name(), None)
 File "/home/pi/klipper/klippy/klippy.py", line 119, in load_object
   mod = importlib.import_module('extras.' + module_name)
 File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
   __import__(name)
 File "/home/pi/klipper/klippy/extras/web_dwc2.py", line 72
   async def init_(self):

Tool fan state does not update during print

If Tool fan power changes during print with gcode, I can't see update in DWC2.
Refresh page does not help.
But I still can change fan power from dwc2 ui.

There is no such problem with extrusion rate.

http request timout after print start

Hi,

When i start a new print it's impossible to do anything after:
changing temperature
pause/cancel job
the only way is to press emergency button.
is it normal ?

I use last version of Klipper (host and firmware) and dwc2 freshly install on a new raspbian lite OS?

thx

Is this git still a valid option for Klipper

I followed the instructions on this github to try and install DWC2 for Klipper, but I can't seem to get it working. I updated the dwc2.cfg file with the IP address and a port that isn't being used for Mainsail, but when I try to connect to the printer's IP on the specified port, the page doesn't open up. Any help would be appreciated.

PS: The klipper.service file was not updated since the -a argument was already updated to point to the klipper unix socket

Klipper.Service

[Unit]
Description=Klipper 3D Printer Firmware SV1
Documentation=https://www.klipper3d.org/
After=network-online.target
Before=moonraker.service
Wants=udev.target

[Install]
Alias=klippy
WantedBy=multi-user.target

[Service]
Type=simple
User=pi
RemainAfterExit=yes
WorkingDirectory=/home/pi/klipper
EnvironmentFile=/home/pi/printer_data/systemd/klipper.env
ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS
Restart=always
RestartSec=10

Klipper.env

KLIPPER_ARGS="/home/pi/klipper/klippy/klippy.py /home/pi/printer_data/config/printer.cfg -l /home/pi/printer_data/logs/klippy.log -I /home/pi/printer_data/comms/klippy.serial -a /home/pi/printer_data/comms/klippy.sock"

dwc2.cfg

will make the webif reachable at http://192.168.10.130:4750

adress can 0.0.0.0 too which make it listen on all interfaces.

[webserver]
listen_adress: 192.168.1.81
web_root: ~/sdcard/web
port: 82

one can filter gcode replys.

That is usefull if you set acceleraions midprint.

on longer prints it prevents you log from that spam.

[reply_filters]
regex:
max_accel: \d+.\d+
max_accel_to_decel: \d+.\d+
square_corner_velocity: \d+.\d+
max_velocity: \d+.\d+

DWC show only extruder0 on multiextruder setup

dwc2

On multiple extruder setup temperature chart and tool box show only extruder0. T1(extruder1) is totaly functional i could print with it and M105 report temperature of both tools. On previous branch of DWC2 it shows both tools.

Main GUI keeps refreshing 500 error.

I have just installed dwc2-for-klipper-socket via the KIAUH install script. When I go to the main page, it keeps refreshing showing Operation failed (Reason: 500 error). Basically 2-5 times per second.

I have also installed Mainsail, and it is functioning fine. I have also noticed that in dwc2, it does pull the device's data each time it refreshes.

I also see nothing in the Klippy.log file that indicates an error. The Klippy and dwc2 services are both running without error in systemd. I have tried restarting my printer and raspberry pi in various different orders. I have installed this from a fresh copy of raspberry pi OS lite on a pi 3b+.

klippy.log
printer.cfg.txt

reconnect

I used the kiauh script. It downloads the socket version as I understand it. The reconnection error persists.

missing files with kiauh install

This is the error i get at the end shoud i delete and reinstall as init.d instead of system ?

Installing system start script...

Created symlink /etc/systemd/system/multi-user.target.wants/dwc.service โ†’ /etc/systemd/system/dwc.service.

Launching dwc2-for-klipper-socket...

Service installed!

Checking /etc/default/klipper for necessary entries ...

grep: /etc/default/klipper: No such file or directory

Patching unix domain socket to /etc/default/klipper ...

sed: can't read /etc/default/klipper: No such file or directory

temperature notification

hi,

During print , i have temperature notification and msg in console
is it possible to disabled it ?

Failed to get file list can't detect virtual sd card.

I get the following in /tmp/dwc2.log
========== Started ========== ERROR:tornado.application:Exception in callback functools.partial(<bound method IOLoop._discard_future_result of <tornado.platform.asyncio.AsyncIOMainLoop ob ject at 0x760711f0>>, <Task finished coro=<read_stream() done, defined at /home/pi/dwc2-for-klipper-socket/web_dwc2.py:174> exception=TypeError("the JSON obj ect must be str, not 'bytes'",)>) Traceback (most recent call last): File "/home/pi/dwc-env/lib/python3.5/site-packages/tornado/ioloop.py", line 743, in _run_callback ret = callback() File "/home/pi/dwc-env/lib/python3.5/site-packages/tornado/ioloop.py", line 767, in _discard_future_result future.result() File "/usr/lib/python3.5/asyncio/futures.py", line 293, in result raise self._exception File "/usr/lib/python3.5/asyncio/tasks.py", line 239, in _step result = coro.send(None) File "/home/pi/dwc2-for-klipper-socket/web_dwc2.py", line 181, in read_stream out_ = json.loads(data[:-1]) File "/usr/lib/python3.5/json/__init__.py", line 312, in loads s.__class__.__name__)) TypeError: the JSON object must be str, not 'bytes'

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.