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

group: hosts

codes: [ M111 ]

parameters:

- tag: S
  optional: true
  description: Debug flag bits. Add up the bits from the table.
  values:
  - tag: flags
    type: int

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
