---
tag: m0111
title: Debug Level
brief: Report and optionally set the debug flags.
author: thinkyhead

group: hosts

codes: [ M111 ]

notes:

parameters:
  -
    tag: S
    optional: true
    description: Debug flag bits
    values:
      -
        tag: flags
        type: byte

examples:
  -
    pre: Enable extra messages
    code: M111 S38 ; LEVELING, ERRORS, INFO
  -
    pre: Enable dry-run mode
    code: M111 S8
  -
    pre: Enable everything except dry-run mode
    code: M111 S247 ; 255 - 8
  -
    pre: Disable previously set extra debugging output
    code: M111 S0

---

Marlin has several debug bits that can be set, in combination, to help configure, troubleshoot, and debug the firmware. Add up the debug bits you need:

Mask|Name|Description
1|ECHO|Echo all commands sent to the parser.
2|INFO|Print extra informational messages.
4|ERRORS|Print extra error messages.
8|DRYRUN|Don't extrude, don't save leveling data, etc.
16|COMMUNICATION|Not currently used.
32|LEVELING|Detailed messages for homing, probing, and leveling. (Requires `DEBUG_LEVELING_FEATURE`.)
64|Reserved|Reserved for future usage
128|Reserved|Reserved for future usage
