Giter VIP home page Giter VIP logo

mmb's People

Stargazers

 avatar  avatar  avatar Madz avatar  avatar Iochhi avatar  avatar RepRapster avatar  avatar  avatar  avatar  avatar Neil Smith avatar Jeremiah Watts avatar  avatar  avatar  avatar  avatar dongxunz avatar  avatar  avatar  avatar  avatar  avatar Egor Danko avatar Kyle Sipple avatar Gerad Munsch avatar Simon avatar Hunk Zhu avatar Jared Denish avatar  avatar Mike Thomas avatar zhangzw avatar dSaint avatar  avatar  avatar  avatar o1hitman1o avatar Zachary Patten avatar Brandon Ashworth avatar  avatar  avatar Michael avatar Julian Strohm avatar  avatar  avatar  avatar Roman Priesol avatar Ed Street avatar  avatar  avatar  avatar  avatar  avatar Ryan Laheney avatar Jordan Dyckes avatar  avatar

Watchers

Roman Priesol avatar Gerad Munsch avatar  avatar Avpman avatar Spike avatar  avatar BIGTREETECH avatar  avatar  avatar  avatar

mmb's Issues

document diag pin usage for stallguard

please give clear instructions on using stallguard on this board.
The diag pins seems to be shared, PA3, PA4 but when I jumper diag pins, PA3 PA4 are still working as endstops so this is confusing.
could you please share working configs for stallguard of both UART and SPI steppers.

The following is what I thought should work with Happy-Hare but it doesn't - The limit switch works but stallguard doesn't (or it ignores SGT setting) :

[tmc5160 stepper_mmu_selector]
cs_pin: mmuv2:PC7 #motor2
spi_bus: spi1
run_current: 0.4
hold_current: 0.2
interpolate: True
sense_resistor: 0.075
stealthchop_threshold: 100
diag1_pin: ^!mmuv2:PA4            #motor2 diag pin - also an endstop with nothing plugged into it.
driver_SGT: 3 # -64 -> 64

[stepper_mmu_selector]
step_pin: mmuv2:PD2
dir_pin: !mmuv2:PB13
enable_pin: !mmuv2:PD1
rotation_distance: 40
microsteps: 16                               # Don't need high fidelity
full_steps_per_rotation: 200        # 200 for 1.8 degree, 400 for 0.9 degree
endstop_pin: ^mmuv2:PB2.         # Selector microswitch
endstop_name: mmu_sel_home
#
# Uncomment two lines below to give option of  selector "touch" movement and homing
extra_endstop_pins: tmc5160_stepper_mmu_selector:virtual_endstop
extra_endstop_names: mmu_sel_touch

if the limit switch is unplugged, stallguard works, and if its plugged, it doesn't.

Any insights would be appreciated.

Sensorless not working over Canbus and USB

Trying to run sensorless and keep getting this error:


Receive: 91 342.421202 342.416261 18: seq: 14, tmcuart_response oid=8 read=b'\n\xfaO \x80\x00\x02(\xa3\xc6'
Receive: 92 342.426574 342.423793 8: seq: 17, tmcuart_response oid=8 read=b''
Receive: 93 342.432084 342.427886 18: seq: 18, tmcuart_response oid=8 read=b'\n\xfaO \x80\x00\x02H\xa3\xe1'
Receive: 94 342.437047 342.434404 8: seq: 19, tmcuart_response oid=8 read=b''
Receive: 95 342.442549 342.438327 18: seq: 1a, tmcuart_response oid=8 read=b'\n\xfaO \x80\x00\x02h#\xa5'
Receive: 96 342.447348 342.444747 8: seq: 1b, tmcuart_response oid=8 read=b''
Receive: 97 342.452841 342.448602 18: seq: 1c, tmcuart_response oid=8 read=b'\n\xfaO \x80\x00\x02\x88#\xf2'
Receive: 98 342.460414 342.457717 8: seq: 1d, tmcuart_response oid=8 read=b''
Receive: 99 342.461170 342.460420 12: seq: 1e, shutdown clock=1857677883 static_string_id=Command request

Traceback (most recent call last):
  File "/home/pi/klipper/klippy/mcu.py", line 74, in _do_send
    return xh.get_response(cmds, self._cmd_queue, minclock, reqclock)
  File "/home/pi/klipper/klippy/mcu.py", line 50, in get_response
    raise serialhdl.error("Timeout on wait for '%s' response"
serialhdl.error: Timeout on wait for 'tmcuart_response' response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/pi/klipper/klippy/extras/homing.py", line 235, in manual_home
    hmove.homing_move(pos, speed, triggered=triggered,
  File "/home/pi/klipper/klippy/extras/homing.py", line 71, in homing_move
    self.printer.send_event("homing:homing_move_begin", self)
  File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event
    return [cb(*params) for cb in self.event_handlers.get(event, [])]
  File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp>
    return [cb(*params) for cb in self.event_handlers.get(event, [])]
  File "/home/pi/klipper/klippy/extras/tmc.py", line 524, in handle_homing_move_begin
    self.mcu_tmc.set_register("TCOOLTHRS", tc_val)
  File "/home/pi/klipper/klippy/extras/tmc_uart.py", line 249, in set_register
    self.ifcnt = self._do_get_register("IFCNT")
  File "/home/pi/klipper/klippy/extras/tmc_uart.py", line 230, in _do_get_register
    val = self.mcu_uart.reg_read(self.instance_id, self.addr, reg)
  File "/home/pi/klipper/klippy/extras/tmc_uart.py", line 177, in reg_read
    params = self.tmcuart_send_cmd.send([self.oid, msg, 10])
  File "/home/pi/klipper/klippy/mcu.py", line 78, in send
    return self._do_send([self._cmd.encode(data)], minclock, reqclock)
  File "/home/pi/klipper/klippy/mcu.py", line 76, in _do_send
    raise self._error(str(e))
gcode.CommandError: Timeout on wait for 'tmcuart_response' response

Configuration

[mcu kms_mcu_1]
serial: /dev/serial/by-id/usb-Klipper_stm32g0b1xx_200030001850425539393020-if00
#canbus_uuid: 35537efca352

[duplicate_pin_override]
pins: kms_mcu_1:PB2,kms_mcu_1:PC15

[tmc2209 manual_extruder_stepper kms_mmu_feeder_T0]
uart_pin: kms_mcu_1:PA10
interpolate: True
run_current: 0.90
#hold_current: 0.1
sense_resistor: 0.110
#stealthchop_threshold: 999999
diag_pin: ^kms_mcu_1:PA3
driver_SGTHRS: 75 

[manual_extruder_stepper kms_mmu_feeder_T0]
step_pin: kms_mcu_1:PB15
dir_pin: !kms_mcu_1:PB14
enable_pin: !kms_mcu_1:PA8
rotation_distance: 22.6789511	
microsteps: 16  
full_steps_per_rotation: 200 #200 for 1.8 degree, 400 for 0.9 degree
velocity: 35
accel: 150
endstop_pin: tmc2209_kms_mmu_feeder_T0:virtual_endstop
endstop_name: kms_sensorless_endstop_1
# Uncomment two lines below to give option of  selector "touch" movement and homing
#extra_endstop_pins: tmc2209_kms_mmu_feeder_T0:virtual_endstop,kms_mcu_1:PB2
#extra_endstop_names: kms_virtual_endstop_T0,kms_splitter_endstop_1

Wrong Pins

Im on build a ERCF with your MMB-Board and found 2 wrong declared pins, Ive fixed it in the following pic (red arrows)

MMB CAN V1 0-Pins Fixed

Documentation needs to be improved around function of CAN vs. USB vs. HVIN

It is very unclear that you MUST use the CAN connector to power the board and cannot use the HVIN + USB connectors alone.

For future readers, here's how the various connectors work for real-world usage:

  • If you're flashing firmware, you can connect just USB with the VUSB jumper in place. >>> Be certain to remove the VUSB jumper before connecting any power or CAN cables <<<
  • If using CAN as a communication interface and you don't need extra juice for the steppers, just connect the CAN plug
    • Set each stepper voltage jumper to VIN
    • If your mainboard supports CAN but you otherwise don't know what to do, this is probably the option you want
  • If using CAN as a communication interface and you DO need extra power for the steppers, connect the CAN plug and also connect your additional power leads to the HVIN and GND
    • Set each stepper voltage jumper to HVIN
  • If using USB as a communication interface and you don't need extra juice for the steppers, you have to connect the CAN plug and put 12-24v through its power leads. You then have to connect a USB cable from your printer to the MMB
  • Set each stepper voltage jumper to VIN
    • If your mainboard DOES NOT support CAN but you otherwise don't know what to do, this is probably the option you want
  • If using USB as a communication interface and you DO need extra power for the steppers, you have to connect the CAN plug and put 12-24v through its power leads and also connect your additional power leads to the HVIN and GND. You then have to connect a USB cable from your printer to the MMB
    • Set each stepper voltage jumper to HVIN

CAN bus wiring with EBB SB2209, U2C, and MMB

What is the preferred way to wire the CAN bus when you have multiple devices? In my example I have the SB2209 tool head board connected to my pi via a U2C adapter. What order should the three devices be in the bus and which ones get the 120R resistor jumpers?

Voltage selection pins

Please properly indicate the voltage selection pins of what voltage VIN/HIVIN is and that they are required for the motor to function

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.