M43 - Debug Pins

debug Get information about pins. PINS_DEBUGGING


When setting up or debugging a machine it’s useful to know how pins are assigned to functions by the firmware, and to be able to find pins for use with new functions. M43 provides these tools. M43 by itself reports all pin assignments. Use P to specify a single pin. Use I to report the values on pins that are protected. Use W to watch the specified pin, or all pins. Use the E option to monitor endstops. Use S option to test a BLTouch type servo probe. Use T option to toggle pins.

The W watch mode option continues looping, blocking all further commands, until the board is reset. If EMERGENCY_PARSER is enabled, M108 may also be used to exit the watch loop without needing to reset the board.

See M43 T for Pins Debugging toggle options.


This feature can be disabled for production use.


M43 [E<bool>] [I] [P<pin>] [S] [T] [W]



Watch endstops


    Ignore protection when reporting values


      Digital Pin Number


        Test BLTouch type servo probes. Use P to specify servo index (0-3). Defaults to 0 if P is omitted.


          Toggle pins - see M43 T for options


            Watch pins


            Get a report on all pins


            Get a report on all pins, ignore pin protection list when displaying values

            M43 I

            Watch pin 56 for changes

            M43 P56 W

            Start watching endstops

            M43 E1

            Toggle pins 3-6 five times with 1 second low and 1 second high pulses but only if the pin isn’t in the protected list.

            M43 T S3 L6 R5 W1000

            Test probe controlled by servo index 2.

            M43 S P2