Klipper3d / klipper

Klipper is a 3d-printer firmware
GNU General Public License v3.0
9.6k stars 5.36k forks source link

Timeout on serial connect #502

Closed SergeyKrutyko closed 6 years ago

SergeyKrutyko commented 6 years ago

SW: OrangePi HW: Atmega2560 + RAMPS 1.4 made all as manuals. sucessfuly flash atmega Klipper installed as user dsi user included in tty and dialout groups. when i start klipper see next:

===== log ======== Starting Klippy... Args: ['/home/dsi/klipper/klippy/klippy.py', '/home/dsi/printer.cfg', '-l', '/tmp/klippy.log'] Git version: 'v0.6.0-307-g7c7de85' CPU: 4 core ARMv7 Processor rev 5 (v7l) Python: '2.7.13 (default, Nov 24 2017, 17:33:09) \n[GCC 6.3.0 20170516]' Start printer at Fri Jul 27 04:25:12 2018 (1532654712.9 1425.2) ===== Config file ===== [stepper_x] step_pin = ar54 dir_pin = ar55 enable_pin = !ar38 step_distance = .0125 endstop_pin = ^ar3 position_endstop = 0 position_max = 200 homing_speed = 50

[stepper_y] step_pin = ar60 dir_pin = !ar61 enable_pin = !ar56 step_distance = .0125 endstop_pin = ^ar14 position_endstop = 0 position_max = 190 homing_speed = 50

[probe] pin = ^!ar18 z_offset = -0.62 speed = 5.0

[stepper_z] step_pin = ar46 dir_pin = ar48 enable_pin = !ar62 step_distance = .00083 endstop_pin = probe:z_virtual_endstop position_endstop = 0 position_max = 120

[bed_tilt] x_adjust = 0 y_adjust = -0 points = 25,25 25,95 25,165 100,165 100,95 100,25 175,25 175,95 175,165

[extruder] step_pin = ar26 dir_pin = ar28 enable_pin = !ar24 step_distance = .0023754 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = ar10 sensor_type = NTC 100K beta 3950 pullup_resistor = 2000 sensor_pin = analog13 control = pid pid_kp = 19.72 pid_ki = 1.9 pid_kd = 51.29 min_temp = 0 max_temp = 270

[heater_bed] heater_pin = ar8 sensor_type = NTC 100K beta 3950 pullup_resistor = 2000 sensor_pin = analog14 control = watermark min_temp = 0 max_temp = 130

[fan] pin = ar9

[display] lcd_type = st7920 cs_pin = ar16 sclk_pin = ar23 sid_pin = ar17

[mcu] serial = /dev/ttyUSB0 pin_map = arduino baud = 250000

[mcu host] serial = /tmp/printer

[printer] kinematics = corexy max_velocity = 300 max_accel = 3000 max_z_velocity = 25 max_z_accel = 30

======================= Extruder max_extrude_ratio=0.266081 Starting serial connect Sending MCU 'mcu' printer configuration... Configured MCU 'mcu' (634 moves) Loaded MCU 'mcu' 69 commands (v0.6.0-307-g7c7de85-20180727_042431-octoprint / gcc: (GCC) 4.9.2 binutils: (GNU Binutils) 2.26.20160125) MCU 'mcu' config: RECEIVE_WINDOW=192 SOFT_PWM_MAX=256 SERIAL_BAUD=250000 ADC_MAX=1023 PWM_MAX=255 CLOCK_FREQ=16000000 MCU=atmega2560 STATS_SUMSQ_BASE=256 Starting serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect Timeout on serial connect

=== end log ===

return firmware of marlin - all worked perfectly :( i dont know how need made for start klipper :(

ViperWorx commented 6 years ago

Check this from the FAQ documents - https://github.com/KevinOConnor/klipper/blob/master/docs/FAQ.md#wheres-my-serial-port

SergeyKrutyko commented 6 years ago

offcoz i try it - no effects.

avrdude flash my mcu via /dev/ttyUSB0 without problems.... octoprint working with marlin wo problems too............

ViperWorx commented 6 years ago

If it's not connecting then it's a port issue. I would ask that you try the serial by ID method again, re-flashing with the serial ID and not /tty/USB0. This should always connect no matter what happens.

SergeyKrutyko commented 6 years ago

i try it now by id - problem not solved............ flashing sucessfully but klipper still connect timeout :(

ViperWorx commented 6 years ago

Ok, can you do a M112 on the Octoprint console and attach the log, not copy/paste as per the instructions in https://github.com/KevinOConnor/klipper/blob/master/docs/Contact.md

::EDIT:: Just as a general thought, whilst it's flashing and connecting to Marlin, and it's probably highly unlikely to be the problem but to rule it out, have you tried a different USB cable?

SergeyKrutyko commented 6 years ago

i could not send m112 command - octoprint no connecting to klipper:

Offline (Error: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:2581)

in terminal: Connecting to: /tmp/printer Changing monitoring state from "Offline" to "Opening serial port" Connected to: Serial(port='/tmp/printer', baudrate=250000, bytesize=8, parity='N', stopbits=1, timeout=10.0, xonxoff=False, rtscts=False, dsrdtr=False), starting monitor Changing monitoring state from "Opening serial port" to "Connecting" Send: N0 M110 N0*125 Unexpected error while reading serial port, please consult octoprint.log for details: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:2581 Please see https://faq.octoprint.org/serialerror for possible reasons of this. Changing monitoring state from "Connecting" to "Offline (Error: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:2581)" Connection closed, closing down monitor

ViperWorx commented 6 years ago

That suggests klipper has stopped or octoprint can't see the port for some reason.

Check klipper is running - sudo service klipper status

Ok, check /tmp/printer exists on the OrangePi - cd /tmp/ ; ls -al | grep printer

I would recommend a full restart of klipper just to make sure - sudo service klipper restart

If octoprint still doesn't connect after that, restart octoprint, this can be done via the GUI, if you have it set up or via sudo service octoprint restart

That should generally resolve any connectivity issues with Klipper and Octoprint.

SergeyKrutyko commented 6 years ago

you dont right..... octoprint could not connecto to klipper, while klipper not connect to printer. klipper reset connection from octaprint, because mcu not connected!

SergeyKrutyko commented 6 years ago

sudo service klipper start dsi@octoprint:~/klipper$ dsi@octoprint:/tmp$ sudo service klipper status ● klipper.service - LSB: Klipper daemon Loaded: loaded (/etc/init.d/klipper; generated; vendor preset: enabled) Active: active (running) since Fri 2018-07-27 13:44:07 MSK; 3min 33s ago Docs: man:systemd-sysv-generator(8) Process: 12744 ExecStop=/etc/init.d/klipper stop (code=exited, status=0/SUCCESS) Process: 12831 ExecStart=/etc/init.d/klipper start (code=exited, status=0/SUCCESS) Tasks: 6 (limit: 4915) CGroup: /system.slice/klipper.service └─12836 /home/dsi/klippy-env/bin/python /home/dsi/klipper/klippy/klippy.py /home/dsi/printer.cfg -l /tmp/klippy.log

Jul 27 13:44:06 octoprint systemd[1]: Starting LSB: Klipper daemon... Jul 27 13:44:07 octoprint klipper[12831]: Starting klipper: klipper. Jul 27 13:44:07 octoprint systemd[1]: Started LSB: Klipper daemon.

SergeyKrutyko commented 6 years ago

cd /tmp/ ; ls -al | grep printer lrwxrwxrwx 1 dsi dsi 10 Jul 27 13:44 printer -> /dev/pts/4

SergeyKrutyko commented 6 years ago

in logs klippy.log i see "printer is not ready" string when octoprint try connect

SergeyKrutyko commented 6 years ago

probles still between klipper and mcu connection!

SergeyKrutyko commented 6 years ago

now i try flash mcu by marlin with bootloader, via octoprint. marlin stated and all worked. i try again flash klipper mcu flash - and again connection timeoud from klipper to mcu

ViperWorx commented 6 years ago

I'm none too sure what's going on here as everything is pointing to it just connecting, the only thing I can think of is it's a permissions issue, I would double check the user dsi (or whatever user klipper is running under) is added to the dialout and tty group to make sure. This can be done via the groups command, if not then the following will correct it

usermod -a -G dialout dsi && usermod -a -G tty dsi

SergeyKrutyko commented 6 years ago

already made it at install:

dsi@octoprint:/tmp$ getent group tty tty:x:5:dsi dsi@octoprint:/tmp$ getent group dialout dialout:x:20:dsi dsi@octoprint:/tmp$

ViperWorx commented 6 years ago

Ok, about the only thing I can suggest at the moment is to attach the log to this thread as per contact.md

SergeyKrutyko commented 6 years ago

klippy.log

printer.zip config.zip

KevinOConnor commented 6 years ago

Remove the "[mcu host]" section from your config. The "mcu" sections describe micro-controllers (see config/example-extras.cfg). Don't try to configure the output of Klipper (/tmp/printer) in the config file.

-Kevin

SergeyKrutyko commented 6 years ago

thanks! all started!