Multiple Toolheads for sculpture


I have been studying the code during the past week and I think I’m stuck. I have been trying to fork klipper in order to move a kinetic sculpture of 10 motors. Since the motors are connected in pairs, I though of creating and using a 2 axis toolhead as a starting point, and then making 4 more for a total of 5 toolheads. I copied the cartesian kinematics into a new file with my own class and followed the ‘Code Flow of a move command’ section in the code overview, inserting an if statement everywhere I could see a reference to the 3 axis coordinate space ‘xyz’ and changing it for a 2 axis coordinate space ‘ab’. I finally got it running without errors, but in Mainsail I’m stuck in the ‘Initializing’ message. Neither klippy.log nor moonraker.log show any errors. I know this is a very niche problem, but if anyone could throw some hints I would appreciate it a lot. Attached are my logs. Thank you.
klippy.log (60.8 KB)
moonraker.log (40.5 KB)

You’ve got an error in your code somewhere, since I don’t know what you changed I can’t speculate on what it might be.

Traceback (most recent call last):
  File "/home/biqu/klipper/klippy/", line 217, in run
  File "/home/biqu/klipper/klippy/", line 292, in run
  File "/home/biqu/klipper/klippy/", line 340, in _dispatch_loop
    timeout = self._check_timers(eventtime, busy)
  File "/home/biqu/klipper/klippy/", line 158, in _check_timers
    t.waketime = waketime = t.callback(eventtime)
  File "/home/biqu/klipper/klippy/", line 496, in _do_query
    res = query[obj_name] = po.get_status(eventtime)
  File "/home/biqu/klipper/klippy/extras/", line 137, in get_status
    'position': self.Coord(*self.last_position),
TypeError: <lambda>() takes 3 positional arguments but 5 were given