thinkyhead

M43 - Debug Pins

debug Get information about pins ; set/get pins states PINS_DEBUGGING

Description

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.

Notes

This feature can be disabled for production use.

Usage

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

Parameters

[E<bool>]

Watch endstops

    [I]

    Ignore protection when reporting values

      [P<pin>]

      Digital Pin Number

        [S]

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

          [T]

          Toggle pins - see M43 T for options

            [W]

            Watch pins

            Examples

            Get a report on all pins

            M43

            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