Skip to content

G28 arguments not parsed correctly #14

@Commod0re

Description

@Commod0re

The profile for my i3 MK2 in Slic3r PE uses G28 W in the out of the box, which raises an exception:

Traceback (most recent call last):
  File "/usr/bin/yagv", line 503, in <module>
    App().main()
  File "/usr/bin/yagv", line 42, in main
    self.load(path)
  File "/usr/bin/yagv", line 70, in load
    self.model = parser.parseFile(path)
  File "/usr/lib/yagv/gcodeParser.py", line 22, in parseFile
    self.parseLine()
  File "/usr/lib/yagv/gcodeParser.py", line 45, in parseLine
    getattr(self, "parse_"+code)(args)
  File "/usr/lib/yagv/gcodeParser.py", line 79, in parse_G28
    self.model.do_G28(self.parseArgs(args))
  File "/usr/lib/yagv/gcodeParser.py", line 55, in parseArgs
    coord = float(bit[1:])
ValueError: could not convert string to float:

parseArgs assumes all arguments are in the form [A-Z][0-9]+ for print head movement, but this is not the case for G28. Changing line 79 to self.model.do_G28(args.split()) at least allows it to continue past that point. Otherwise, parseArgs should not assume all arguments are always in that format.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions