X-Git-Url: http://git.linex4red.de/pub/lufa.git/blobdiff_plain/1d49fc7dd829ecd49a286bcb4ec2c0ba46a0380c..refs/heads/master:/Bootloaders/CDC/BootloaderCDC.txt
diff --git a/Bootloaders/CDC/BootloaderCDC.txt b/Bootloaders/CDC/BootloaderCDC.txt
index 1004a83f3..f8c349cde 100644
--- a/Bootloaders/CDC/BootloaderCDC.txt
+++ b/Bootloaders/CDC/BootloaderCDC.txt
@@ -54,6 +54,33 @@
* When the bootloader is running, the board's LED(s) will flash at regular intervals to distinguish the
* bootloader from the normal user application.
*
+ * \warning THIS BOOTLOADER IS NOT SECURE. Malicious entities can recover written data, even if the device
+ * lockbits are set.
+ *
+ * \section Sec_Running Running the Bootloader
+ *
+ * On the USB AVR8 devices, setting the \c HWBE device fuse will cause the bootloader to run if the \c HWB pin of
+ * the AVR is grounded when the device is reset.
+ *
+ * The are two behaviours of this bootloader, depending on the device's fuses:
+ *
+ * If the device's BOOTRST fuse is set, the bootloader will run any time the system is reset from
+ * the external reset pin, unless no valid user application has been loaded. To initiate the bootloader, the
+ * device's external reset pin should be grounded momentarily.
+ *
+ * If the device's BOOTRST fuse is not set, the bootloader will run only if initiated via a software
+ * jump, or if the \c HWB pin was low during the last device reset (if the \c HWBE fuse is set).
+ *
+ * For board specific exceptions to the above, see below.
+ *
+ * \subsection SSec_XPLAIN Atmel Xplain Board
+ * Ground the USB AVR JTAG's \c TCK pin to ground when powering on the board to start the bootloader. This assumes the
+ * \c HWBE fuse is cleared and the \c BOOTRST fuse is set as the HWBE pin is not user accessible on this board.
+ *
+ * \subsection SSec_Leonardo Arduino Leonardo Board
+ * Ground \c IO13 when powering the board to start the bootloader. This assumes the \c HWBE fuse is cleared and the
+ * \c BOOTRST fuse is set as the HWBE pin is not user accessible on this board.
+ *
* \section Sec_Installation Driver Installation
*
* After running this bootloader for the first time on a new computer, you will need to supply the .INF
@@ -168,6 +195,8 @@
* this module to try to take control over inserted CDC devices, corrupting the
* datastream. A UDEV rule is required to prevent this.
* See here for resolution steps.
+ * If the issue still persists then uninstall modemmanager by executing sudo apt-get remove modemmanager, or
+ * the equivalent using your chosen distribution's package manager.
*
* \par On Linux machines, the CDC bootloader is inaccessible.
* On many Linux systems, non-root users do not have automatic access to newly
@@ -175,12 +204,6 @@
* access.
* See here for resolution steps.
*
- * \par After loading an application, it is not run automatically on startup.
- * Some USB AVR boards ship with the BOOTRST fuse set, causing the bootloader
- * to run automatically when the device is reset. In most cases, the BOOTRST
- * fuse should be disabled and the HWBE fuse used instead to run the bootloader
- * when needed.
- *
* \section Sec_Options Project Options
*
* The following defines can be found in this demo, which can control the demo behaviour when defined, or changed in value.