From 02a32f2b79ead308306975576910ef731e760492 Mon Sep 17 00:00:00 2001 From: Marti Bolivar Date: Fri, 19 Aug 2011 14:03:06 -0400 Subject: troubleshooting.rst: Add debugging pointers to "throbbing LED" item. --- source/troubleshooting.rst | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/source/troubleshooting.rst b/source/troubleshooting.rst index 80f6df4..7654c40 100644 --- a/source/troubleshooting.rst +++ b/source/troubleshooting.rst @@ -17,9 +17,23 @@ This page documents common problems and their solutions. The LED is throbbing and my program is stopped! ----------------------------------------------- -The LED throbs when there has been a failed software :ref:`assertion +The LED throbs when there has been a failed software :ref:`ASSERT() ` or some other error. +In the case of a failed assertion, a first debugging step you can take +is to find out the file and line where the failed assertion took place +(for instructions on this, see the ``ASSERT()`` documentation linked +to above). This may give you some clue about the source of the error. + +:ref:`libmaple` often uses ``ASSERT()`` to halt immediately when it +detects that something has gone wrong, so if you're not using +assertions, then what's probably happening is that some bug is causing +the failed ``ASSERT()`` lower down. + +If it's not a failed assertion, then you're likely looking at +something like a `hard fault +`_. + There are a few issues with the bootloader which mean you might not be able to upload your program when this happens. You can still reprogram by using :ref:`perpetual bootloader mode -- cgit v1.2.3