-/** \file\r
- *\r
- * This file contains special DoxyGen information for the generation of the main page and other special\r
- * documentation pages. It is not a project source file.\r
- */\r
- \r
-/** \mainpage XPLAIN UART Bridge/PDI Programmer Project\r
- *\r
- * \section SSec_Compat Project Compatibility:\r
- *\r
- * The following list indicates what microcontrollers are compatible with this project.\r
- *\r
- * - AT90USB1287\r
- *\r
- * \section SSec_Info USB Information:\r
- *\r
- * The following table gives a rundown of the USB utilization of this project.\r
- *\r
- * <table>\r
- * <tr>\r
- * <td><b>USB Mode:</b></td>\r
- * <td>Device</td>\r
- * <td>Device</td>\r
- * </tr>\r
- * <tr>\r
- * <td><b>USB Class:</b></td>\r
- * <td>1) Communications Device Class (CDC)</td>\r
- * <td>2) Vendor Specific Class</td>\r
- * </tr>\r
- * <tr> \r
- * <td><b>USB Subclass:</b></td>\r
- * <td>1) Abstract Control Model (ACM)</td>\r
- * <td>2) N/A</td>\r
- * </tr>\r
- * <tr>\r
- * <td><b>Relevant Standards:</b></td>\r
- * <td>1) USBIF CDC Class Standard</td>\r
- * <td>2) Atmel AVRISP MKII Protocol Specification</td>\r
- * </tr>\r
- * <tr>\r
- * <td><b>Usable Speeds:</b></td>\r
- * <td>Full Speed Mode</td>\r
- * <td>Full Speed Mode</td>\r
- * </tr>\r
- * </table>\r
- *\r
- * \section SSec_Description Project Description: \r
- *\r
- * This project serves a dual purpose. When loaded into the USB AVR on the XPLAIN board, it will act as either a USB to Serial\r
- * converter for the XPLAIN's hardware USART (at a speed of 9600 baud), or a PDI programmer for the XMEGA. This project replaces\r
- * the firmware preloaded onto the XPLAIN's onboard AT90USB1287 microcontroller.\r
- *\r
- * When inserted, the JTAG port's TDI pin is read. If the pin is left high, the device will enumerate as a regular COM port on\r
- * the host, which can then be opened and data exchanged between the XMEGA and Host as if the XMEGA was connected directly to\r
- * the host's serial port. If the pin is pulled low, the device will enumerate as an AVRISP-MKII to the host, so that the XMEGA\r
- * can be reprogrammed by AVRStudio or other compatible software such as avrdude.\r
- *\r
- * After running this project for the first time on a new computer, you will need to supply the .INF file located in this project\r
- * project's directory as the device's driver when running under Windows. This will enable Windows to use its inbuilt CDC drivers,\r
- * negating the need for custom drivers for the device. Other Operating Systems should automatically use their own inbuilt CDC-ACM\r
- * drivers.\r
- *\r
- * This project relies on files from the LUFA AVRISP-MKII project.\r
- *\r
- * \section SSec_Options Project Options\r
- *\r
- * The following defines can be found in this project, which can control the project behaviour when defined, or changed in value.\r
- *\r
- * <table>\r
- * <tr>\r
- * <td><b>Define Name:</b></td>\r
- * <td><b>Location:</b></td>\r
- * <td><b>Description:</b></td>\r
- * </tr>\r
- * <tr>\r
- * <td>BUFF_STATICSIZE</td>\r
- * <td>RingBuff.h</td>\r
- * <td>Defines the maximum number of bytes which can be buffered in each Ring Buffer.</td>\r
- * </tr>\r
- * </table>\r
- */
\ No newline at end of file
+/** \file
+ *
+ * This file contains special DoxyGen information for the generation of the main page and other special
+ * documentation pages. It is not a project source file.
+ */
+
+/** \mainpage XPLAIN UART Bridge/PDI Programmer Project
+ *
+ * \section SSec_Compat Project Compatibility:
+ *
+ * The following list indicates what microcontrollers are compatible with this project.
+ *
+ * - AT90USB1287
+ *
+ * \section SSec_Info USB Information:
+ *
+ * The following table gives a rundown of the USB utilization of this project.
+ *
+ * <table>
+ * <tr>
+ * <td><b>USB Mode:</b></td>
+ * <td>1) Device</td>
+ * <td>2) Device</td>
+ * </tr>
+ * <tr>
+ * <td><b>USB Class:</b></td>
+ * <td>1) Communications Device Class (CDC)</td>
+ * <td>2) Vendor Specific Class</td>
+ * </tr>
+ * <tr>
+ * <td><b>USB Subclass:</b></td>
+ * <td>1) Abstract Control Model (ACM)</td>
+ * <td>2) N/A</td>
+ * </tr>
+ * <tr>
+ * <td><b>Relevant Standards:</b></td>
+ * <td>1) USBIF CDC Class Standard</td>
+ * <td>2) Atmel AVRISP MKII Protocol Specification</td>
+ * </tr>
+ * <tr>
+ * <td><b>Usable Speeds:</b></td>
+ * <td>1) Full Speed Mode</td>
+ * <td>2) Full Speed Mode</td>
+ * </tr>
+ * </table>
+ *
+ * \section SSec_Description Project Description:
+ *
+ * This project serves a dual purpose. When loaded into the USB AVR on the XPLAIN board, it will act as either a USB to Serial
+ * converter for the XPLAIN's hardware USART (at a speed of 9600 baud), or an AVRStudio compatible PDI programmer for the XMEGA.
+ * This project replaces the firmware preloaded onto the XPLAIN's onboard AT90USB1287 microcontroller.
+ *
+ * When power to the board is applied, the TDI pin (pin 9) of the USB AVR's JTAG port is read. If the pin is left high, the device
+ * will enumerate as a regular COM port on the host, which can then be opened and data exchanged between the XMEGA and Host as if
+ * the XMEGA was connected directly to the host's serial port. If the pin is pulled low by shorting it to GND (pin 10), the device
+ * will enumerate as an AVRISP-MKII to the host, so that the XMEGA can be reprogrammed by AVRStudio or other compatible software
+ * such as avrdude by connecting to the board as if it was an Atmel AVRISP-MKII programmer.
+ *
+ * After running this project in serial bridge mode for the first time on a new computer, you will need to supply the .INF file
+ * located in this project project's directory as the device's driver when running under Windows. This will enable Windows to use
+ * its inbuilt CDC virtual serial drivers, negating the need for custom drivers for the device. Other Operating Systems should
+ * automatically use their own inbuilt CDC-ACM drivers.
+ *
+ * In serial bridge mode, the UART baud rate can be altered through the host terminal software to select a new baud rate - the default
+ * baud is 9600. Note that parity, data bits and stop bits are fixed at none, eight and one respectively can cannot be altered. Changes
+ * to the connection's parity, data bits or stop bits are ignored by the firmware. As the serial link between the controllers on the
+ * XPLAIN is software emulated by the USB AVR, not all baud rates will work correctly.
+ *
+ * This project relies on files from the LUFA AVRISP-MKII project for compilation.
+ *
+ * \section SSec_Options Project Options
+ *
+ * The following defines can be found in this project, which can control the project behaviour when defined, or changed in value.
+ *
+ * <table>
+ * <tr>
+ * <td><b>Define Name:</b></td>
+ * <td><b>Location:</b></td>
+ * <td><b>Description:</b></td>
+ * </tr>
+ * <tr>
+ * <td>BUFFER_SIZE</td>
+ * <td>LightweightRingBuff.h</td>
+ * <td>Defines the maximum number of bytes which can be buffered in each Ring Buffer when in serial bridge mode.</td>
+ * </tr>
+ * <tr>
+ * <td>LIBUSB_DRIVER_COMPAT</td>
+ * <td>Makefile LUFA_OPTS</td>
+ * <td>Define to switch to a non-standard endpoint scheme, breaking compatibility with AVRStudio under Windows but making
+ * the code compatible with software such as avrdude (all platforms) that use the libUSB driver.
+ * </tr>
+ * </table>
+ */