*
* \section Sec_ChangeLogXXXXXX Version XXXXXX
* <b>New:</b>
- * - Library Applications:
- * - Added new Printer class bootloader
- * - Added new Mass Storage class bootloader
+ * - Core:
* - Added additional MIDI command definitions to the MIDI class driver (thanks to Daniel Dreibrodt)
* - Added new CONCAT() and CONCAT_EXPANDED() convenience macros
* - Added new Printer Device Class driver
+ * - Library Applications:
+ * - Added new Printer class bootloader
+ * - Added new Mass Storage class bootloader
*
* <b>Changed:</b>
* - Core:
* - Updated the BUILD build system module to produce binary BIN files in addition to Intel HEX files
+ * - Updated the Android Accessory Class to accept version 2 protocol devices (with version 1 functionality)
*
* <b>Fixed:</b>
* - Core:
AOA_STRING_Version = 3, /**< Index of the Version Number property string. */
AOA_STRING_URI = 4, /**< Index of the URI Information property string. */
AOA_STRING_Serial = 5, /**< Index of the Serial Number property string. */
-
+
#if !defined(__DOXYGEN__)
AOA_STRING_TOTAL_STRINGS
#endif
};
-
+
/** Enum for the possible Android Open Accessory protocol versions. */
enum AOA_Protocols_t
{
AOA_PROTOCOL_AccessoryV1 = 0x0001, /**< Android Open Accessory version 1. */
+ AOA_PROTOCOL_AccessoryV2 = 0x0002, /**< Android Open Accessory version 2. */
};
/* Disable C linkage for C++ Compilers: */
if ((ErrorCode = AOA_Host_GetAccessoryProtocol(&AccessoryProtocol)) != HOST_WAITERROR_Successful)
return ErrorCode;
- if (AccessoryProtocol != CPU_TO_LE16(AOA_PROTOCOL_AccessoryV1))
+ if ((AccessoryProtocol != CPU_TO_LE16(AOA_PROTOCOL_AccessoryV1)) && (AccessoryProtocol != CPU_TO_LE16(AOA_PROTOCOL_AccessoryV2)))
return AOA_ERROR_LOGICAL_CMD_FAILED;
for (uint8_t PropertyIndex = 0; PropertyIndex < AOA_STRING_TOTAL_STRINGS; PropertyIndex++)