Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    RRF configuration using object model notation

    Scheduled Pinned Locked Moved
    Firmware wishlist
    3
    6
    587
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • zaptaundefined
      zapta
      last edited by zapta

      TL;DR, allow RRF configuration using a human friendly object model notation.

      RRF has now a nice object model and format that allows humans to easily read its state

      https://duet3d.dozuki.com/Wiki/Object_Model_of_RepRapFirmware

      However, writing to the object model (e.g. in config.g) is still done with cryptic gcode based setters.

      Being able to also configure with object model notation would make RRF configuration more intuitive and less error prone. Here is one example how this can be done, using the indented block construct currently used for conditions and loops:

      M???  
          move.axes [
            {
              "letter": "X",
              "max": 200,
              "min": 0,
              "visible": true
            },
            {
              "letter": "Y",
              "max": 200,
              "min": 0,
              "visible": true
            },
        ]
      

      EDIT: Some ideas may be borrowed from GCL. It's a similar language to construct structured configurations but with more bells and whistles https://gcl.readthedocs.io/en/latest/introduction.html#vision

      fcwiltundefined 1 Reply Last reply Reply Quote 0
      • fcwiltundefined
        fcwilt @zapta
        last edited by

        @zapta

        Way too much typing.

        If that was an alternate way fine but don't force everyone to generate that much code.

        Just my 2 cents - well given inflation maybe that should be 4 cents.

        Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

        zaptaundefined 1 Reply Last reply Reply Quote 0
        • zaptaundefined
          zapta @fcwilt
          last edited by

          @fcwilt, think of all the comments it will save.

          😉

          fcwiltundefined engikeneerundefined 2 Replies Last reply Reply Quote 1
          • fcwiltundefined
            fcwilt @zapta
            last edited by

            @zapta said in RRF configuration using object model notation:

            @fcwilt, think of all the comments it will save.

            😉

            True enough.

            Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

            1 Reply Last reply Reply Quote 0
            • engikeneerundefined
              engikeneer @zapta
              last edited by

              @zapta said in RRF configuration using object model notation:

              @fcwilt, think of all the comments it will save.

              😉

              Wait, you guys are commenting your gcode? 😛

              1_0VaTwYF3RdMFp1PjY_1NqA@2x.jpeg.jpg

              E3D TC with D3Mini and Toolboards.
              Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
              i3 clone with a bunch of mods

              fcwiltundefined 1 Reply Last reply Reply Quote 5
              • fcwiltundefined
                fcwilt @engikeneer
                last edited by

                @engikeneer

                I was a programmer for 30+ years.

                Lots and lots of comments, more comments than code.

                Frederick

                Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                1 Reply Last reply Reply Quote 0
                • zaptaundefined zapta referenced this topic
                • First post
                  Last post
                Unless otherwise noted, all forum content is licensed under CC-BY-SA