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

General out signal on IO_3 on Movement-Done Commands

Scheduled Pinned Locked Moved
Firmware developers
3
4
88
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.
  • undefined
    afs_uniovi
    last edited by 22 Jan 2025, 15:54

    Hi everyone,

    I'm working on modifying RepRapFirmware (RRF) for Duet3D and need some guidance. I want to trigger a pulse on the IO_3 pin every time a movement command (G0/G1) is executed. Does someone know how to proceed or which file do I have to modify?

    Thank you so much in advance

    undefined 1 Reply Last reply 22 Jan 2025, 16:56 Reply Quote 0
    • undefined
      T3P3Tony administrators @afs_uniovi
      last edited by 22 Jan 2025, 16:56

      @afs_uniovi before you modify the firmware, does it need to be both G0 and G1 moves or could it be just G1? Are you using an extruder in this system? If not then you could setup a virtual extruder, include it in all moves, then use
      https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m571-set-output-on-extrude
      potentially?

      What is your usecase for sending a pulse per move?

      www.duet3d.com

      undefined 1 Reply Last reply 22 Jan 2025, 17:20 Reply Quote 0
      • undefined
        afs_uniovi @T3P3Tony
        last edited by 22 Jan 2025, 17:20

        @T3P3Tony No, unfortunately, that option is not valid..
        Perhaps my explanation was not very clear, but what I need is that for every single movement made by any of the motors being controlled, a logical "1" signal is generated exactly when that movement has finished, and then it must return to "0". The idea is to capture this signal with another data acquisition board to which various sensors are connected.

        Thank you so much by the way

        undefined 1 Reply Last reply 22 Jan 2025, 19:13 Reply Quote 0
        • undefined
          infiniteloop @afs_uniovi
          last edited by 22 Jan 2025, 19:13

          @afs_uniovi

          what I need is that for every single movement made by any of the motors being controlled, a logical "1" signal is generated exactly when that movement has finished, and then it must return to "0".

          Without context, i.e. without relating the event to a specific command, your data acquisition is no more than a platonic exercise. Maybe your goal is to develop and test this ”data acquisition board“, but to obtain meaningful data, you should simply control the Duet by setting up a HTTP client https://github.com/Duet3D/RepRapFirmware/wiki/HTTP-requests#get-rr_gcode. By this, you could even observe RRF’s object model.

          Does someone know how to proceed or which file do I have to modify?

          RRF is Open Source, so feel free to study the code at GitHub. But beware: RRF is a very sophisticated piece of art, so you should have more than just some basic knowledge of C/C++.

          1 Reply Last reply Reply Quote 0
          1 out of 4
          • First post
            1/4
            Last post
          Unless otherwise noted, all forum content is licensed under CC-BY-SA