diff --git a/Documentation/epicardium/overview.rst b/Documentation/epicardium/overview.rst
index 6425fed710ba60fca78d27917157ae8fac6b8c23..a63bcdac3c2a9cbee226eae25d820c501e40bf93 100644
--- a/Documentation/epicardium/overview.rst
+++ b/Documentation/epicardium/overview.rst
@@ -1,3 +1,5 @@
+.. _epicardium_api_overview:
+
 Overview
 ========
 Epicardium, the "main" firmware running on core 0, exposes a lot of
diff --git a/Documentation/index.rst b/Documentation/index.rst
index be83c75d96d32005983b95590e9f8b6949b3b558..a21782c939bb5b510669fbb3512121342c8f33d0 100644
--- a/Documentation/index.rst
+++ b/Documentation/index.rst
@@ -8,15 +8,14 @@ includes the Python modules that are available but also documentation of the
 lower level firmware components.
 
 If you want to write Python code for card10, you will want to take a look at
-the :ref:`pycardium_index` docs.  If you are interested in writing applications
+the :ref:`Pycardium <pycardium_overview>` docs.  If you are interested in writing applications
 in other languages, you'll probably want to interface with
-:ref:`epicardium_api_index` directly.
+:ref:`Epicardium API <epicardium_api_overview>` directly.
 
 Last but not least, if you want to start hacking the lower-level firmware, the
-:ref:`firmware_index` section of these docs is a good starting place.
+:ref:`Firmware <firmware_overview>` section of these docs is a good starting place.
 
 
-.. _pycardium_index:
 .. toctree::
    :maxdepth: 1
    :caption: Pycardium
@@ -25,7 +24,6 @@ Last but not least, if you want to start hacking the lower-level firmware, the
    pycardium/color
    pycardium/leds
 
-.. _epicardium_api_index:
 .. toctree::
    :maxdepth: 1
    :caption: Epicardium API
@@ -33,7 +31,6 @@ Last but not least, if you want to start hacking the lower-level firmware, the
    epicardium/overview
    epicardium/api
 
-.. _firmware_index:
 .. toctree::
    :maxdepth: 1
    :caption: Firmware
diff --git a/Documentation/overview.rst b/Documentation/overview.rst
index 8fdc0336049dfdc8eef1305c37bb17d278d5c628..2f0f465e59ae3ef3ee428673e505346328ea6bfb 100644
--- a/Documentation/overview.rst
+++ b/Documentation/overview.rst
@@ -1,3 +1,5 @@
+.. _firmware_overview:
+
 Overview
 ========
 To make the most of card10's dual-core processor, its firmware will have been
@@ -9,8 +11,8 @@ this will have been *Pycardium*, our MicroPython port.
 
 Epicardium
 ----------
-Epicardium is based on `FreeRTOS`_.  There are a number of tasks that will have
-been keeping card10 running.  These are:
+Epicardium is based on `FreeRTOS <https://www.freertos.org/>`_.  There are a
+number of tasks that will have been keeping card10 running.  These are:
 
 * **Dispatcher**:  The dispatcher task handles API calls from core 1.
 * **PMIC**:  The power manager task checks the battery level and other interesting
@@ -22,10 +24,10 @@ been keeping card10 running.  These are:
 
    The following tasks have not yet been implemented/are currently in the works:
 
-   - **Bluetooth**: The bluetooth stack
+   - **Bluetooth**: The bluetooth stack (`#23`_)
    - **Payload Controller**: Control what is running on core 1
 
-.. _FreeRTOS: https://www.freertos.org/
+   .. _#23: https://git.card10.badge.events.ccc.de/card10/firmware/issues/23
 
 Pycardium
 ---------
diff --git a/Documentation/pycardium/overview.rst b/Documentation/pycardium/overview.rst
index ded98271b5fea36e26cac734ac9f604ab5379637..d011dbfcaf2d4c64851562aa2c0a9839e7320165 100644
--- a/Documentation/pycardium/overview.rst
+++ b/Documentation/pycardium/overview.rst
@@ -1,3 +1,5 @@
+.. _pycardium_overview:
+
 Overview
 ========
 Pycardium is what we call our MicroPython port for card10.  For the most part,