5.2 Top Reasons Why You Can't Debug

  1. Oscillator not working. Check your Configuration bits setting for the oscillator. If you are using an external oscillator, try using an internal oscillator. If you are using an internal PLL, make sure your PLL settings are correct.
  2. No power to the target board. Check the power cable connection.
  3. Incorrect VDD voltage. The VDD voltage is outside the specifications for this device. See the device programming specification for details.
  4. Physical disconnect. The debugger has become physically disconnected from the computer and/or the target board. Check the communications cables’ connections.
  5. Communications lost. Debugger to PC communication has somehow been interrupted. Reconnect to the debugger in MPLAB X IDE.
  6. Device not seated. The device is not properly seated on the target board. If the debugger is properly connected and the target board is powered, but the device is absent or not plugged in completely, you may receive the message:
 Target Device ID (0x0) does not match expected Device ID (0x%x)
, where %x is the expected device ID.
  7. Device is code-protected. Check your Configuration bits settings for code protection.
  8. Application code corrupted. The target application has become corrupted or contains errors. Try rebuilding and reprogramming the target application. Then initiate a Power-On-Reset of the target.
  9. Incorrect programming pins. The PGC/PGD pin pairs are not correctly programmed in your Configuration bits (for devices with multiple PGC/PGD pin pairs).
  10. Additional setup required. Other configuration settings are interfering with debugging. Any configuration setting that would prevent the target from executing code will also prevent the emulator from putting the code into Debug mode.
  11. Incorrect brown-out voltage. Brown-out Detect voltage is greater than the operating voltage VDD. This means the device is in Reset and cannot be debugged.
  12. Incorrect connections. Review the guidelines in section Operation for the correct communication connections.
  13. Invalid request. The debugger cannot always perform the action requested. For example, the debugger cannot set a breakpoint if the target application is currently running.