@@ -678,6 +678,71 @@ char *BLEUtils::buildHexData(uint8_t *target, uint8_t *source, uint8_t length) {
678678 return startOfData;
679679} // buildHexData
680680
681+ /* *
682+ * @brief Given an advertising data type, return a string representation of the type.
683+ *
684+ * For details see ...
685+ * https://www.bluetooth.com/specifications/assigned-numbers/generic-access-profile
686+ *
687+ * @return A string representation of the type.
688+ */
689+ const char *BLEUtils::advDataTypeToString (uint8_t advType) {
690+ switch (advType) {
691+ #if ARDUHAL_LOG_LEVEL >= ARDUHAL_LOG_LEVEL_DEBUG
692+ case ESP_BLE_AD_TYPE_FLAG: // 0x01
693+ return " ESP_BLE_AD_TYPE_FLAG" ;
694+ case ESP_BLE_AD_TYPE_16SRV_PART: // 0x02
695+ return " ESP_BLE_AD_TYPE_16SRV_PART" ;
696+ case ESP_BLE_AD_TYPE_16SRV_CMPL: // 0x03
697+ return " ESP_BLE_AD_TYPE_16SRV_CMPL" ;
698+ case ESP_BLE_AD_TYPE_32SRV_PART: // 0x04
699+ return " ESP_BLE_AD_TYPE_32SRV_PART" ;
700+ case ESP_BLE_AD_TYPE_32SRV_CMPL: // 0x05
701+ return " ESP_BLE_AD_TYPE_32SRV_CMPL" ;
702+ case ESP_BLE_AD_TYPE_128SRV_PART: // 0x06
703+ return " ESP_BLE_AD_TYPE_128SRV_PART" ;
704+ case ESP_BLE_AD_TYPE_128SRV_CMPL: // 0x07
705+ return " ESP_BLE_AD_TYPE_128SRV_CMPL" ;
706+ case ESP_BLE_AD_TYPE_NAME_SHORT: // 0x08
707+ return " ESP_BLE_AD_TYPE_NAME_SHORT" ;
708+ case ESP_BLE_AD_TYPE_NAME_CMPL: // 0x09
709+ return " ESP_BLE_AD_TYPE_NAME_CMPL" ;
710+ case ESP_BLE_AD_TYPE_TX_PWR: // 0x0a
711+ return " ESP_BLE_AD_TYPE_TX_PWR" ;
712+ case ESP_BLE_AD_TYPE_DEV_CLASS: // 0x0b
713+ return " ESP_BLE_AD_TYPE_DEV_CLASS" ;
714+ case ESP_BLE_AD_TYPE_SM_TK: // 0x10
715+ return " ESP_BLE_AD_TYPE_SM_TK" ;
716+ case ESP_BLE_AD_TYPE_SM_OOB_FLAG: // 0x11
717+ return " ESP_BLE_AD_TYPE_SM_OOB_FLAG" ;
718+ case ESP_BLE_AD_TYPE_INT_RANGE: // 0x12
719+ return " ESP_BLE_AD_TYPE_INT_RANGE" ;
720+ case ESP_BLE_AD_TYPE_SOL_SRV_UUID: // 0x14
721+ return " ESP_BLE_AD_TYPE_SOL_SRV_UUID" ;
722+ case ESP_BLE_AD_TYPE_128SOL_SRV_UUID: // 0x15
723+ return " ESP_BLE_AD_TYPE_128SOL_SRV_UUID" ;
724+ case ESP_BLE_AD_TYPE_SERVICE_DATA: // 0x16
725+ return " ESP_BLE_AD_TYPE_SERVICE_DATA" ;
726+ case ESP_BLE_AD_TYPE_PUBLIC_TARGET: // 0x17
727+ return " ESP_BLE_AD_TYPE_PUBLIC_TARGET" ;
728+ case ESP_BLE_AD_TYPE_RANDOM_TARGET: // 0x18
729+ return " ESP_BLE_AD_TYPE_RANDOM_TARGET" ;
730+ case ESP_BLE_AD_TYPE_APPEARANCE: // 0x19
731+ return " ESP_BLE_AD_TYPE_APPEARANCE" ;
732+ case ESP_BLE_AD_TYPE_ADV_INT: // 0x1a
733+ return " ESP_BLE_AD_TYPE_ADV_INT" ;
734+ case ESP_BLE_AD_TYPE_32SOL_SRV_UUID: // 0x1f
735+ return " ESP_BLE_AD_TYPE_32SOL_SRV_UUID" ;
736+ case ESP_BLE_AD_TYPE_32SERVICE_DATA: // 0x20
737+ return " ESP_BLE_AD_TYPE_32SERVICE_DATA" ;
738+ case ESP_BLE_AD_TYPE_128SERVICE_DATA: // 0x21
739+ return " ESP_BLE_AD_TYPE_128SERVICE_DATA" ;
740+ case ESP_BLE_AD_MANUFACTURER_SPECIFIC_TYPE: // 0xff
741+ return " ESP_BLE_AD_MANUFACTURER_SPECIFIC_TYPE" ;
742+ #endif
743+ default : log_v (" adv data type: 0x%x" , advType); return " " ;
744+ } // End switch
745+ } // advDataTypeToString
681746
682747/* ****************************************************************************
683748 * Bluedroid functions *
@@ -777,71 +842,6 @@ String BLEUtils::adFlagsToString(uint8_t adFlags) {
777842 return res;
778843} // adFlagsToString
779844
780- /* *
781- * @brief Given an advertising type, return a string representation of the type.
782- *
783- * For details see ...
784- * https://www.bluetooth.com/specifications/assigned-numbers/generic-access-profile
785- *
786- * @return A string representation of the type.
787- */
788- const char *BLEUtils::advTypeToString (uint8_t advType) {
789- switch (advType) {
790- #if ARDUHAL_LOG_LEVEL >= ARDUHAL_LOG_LEVEL_DEBUG
791- case ESP_BLE_AD_TYPE_FLAG: // 0x01
792- return " ESP_BLE_AD_TYPE_FLAG" ;
793- case ESP_BLE_AD_TYPE_16SRV_PART: // 0x02
794- return " ESP_BLE_AD_TYPE_16SRV_PART" ;
795- case ESP_BLE_AD_TYPE_16SRV_CMPL: // 0x03
796- return " ESP_BLE_AD_TYPE_16SRV_CMPL" ;
797- case ESP_BLE_AD_TYPE_32SRV_PART: // 0x04
798- return " ESP_BLE_AD_TYPE_32SRV_PART" ;
799- case ESP_BLE_AD_TYPE_32SRV_CMPL: // 0x05
800- return " ESP_BLE_AD_TYPE_32SRV_CMPL" ;
801- case ESP_BLE_AD_TYPE_128SRV_PART: // 0x06
802- return " ESP_BLE_AD_TYPE_128SRV_PART" ;
803- case ESP_BLE_AD_TYPE_128SRV_CMPL: // 0x07
804- return " ESP_BLE_AD_TYPE_128SRV_CMPL" ;
805- case ESP_BLE_AD_TYPE_NAME_SHORT: // 0x08
806- return " ESP_BLE_AD_TYPE_NAME_SHORT" ;
807- case ESP_BLE_AD_TYPE_NAME_CMPL: // 0x09
808- return " ESP_BLE_AD_TYPE_NAME_CMPL" ;
809- case ESP_BLE_AD_TYPE_TX_PWR: // 0x0a
810- return " ESP_BLE_AD_TYPE_TX_PWR" ;
811- case ESP_BLE_AD_TYPE_DEV_CLASS: // 0x0b
812- return " ESP_BLE_AD_TYPE_DEV_CLASS" ;
813- case ESP_BLE_AD_TYPE_SM_TK: // 0x10
814- return " ESP_BLE_AD_TYPE_SM_TK" ;
815- case ESP_BLE_AD_TYPE_SM_OOB_FLAG: // 0x11
816- return " ESP_BLE_AD_TYPE_SM_OOB_FLAG" ;
817- case ESP_BLE_AD_TYPE_INT_RANGE: // 0x12
818- return " ESP_BLE_AD_TYPE_INT_RANGE" ;
819- case ESP_BLE_AD_TYPE_SOL_SRV_UUID: // 0x14
820- return " ESP_BLE_AD_TYPE_SOL_SRV_UUID" ;
821- case ESP_BLE_AD_TYPE_128SOL_SRV_UUID: // 0x15
822- return " ESP_BLE_AD_TYPE_128SOL_SRV_UUID" ;
823- case ESP_BLE_AD_TYPE_SERVICE_DATA: // 0x16
824- return " ESP_BLE_AD_TYPE_SERVICE_DATA" ;
825- case ESP_BLE_AD_TYPE_PUBLIC_TARGET: // 0x17
826- return " ESP_BLE_AD_TYPE_PUBLIC_TARGET" ;
827- case ESP_BLE_AD_TYPE_RANDOM_TARGET: // 0x18
828- return " ESP_BLE_AD_TYPE_RANDOM_TARGET" ;
829- case ESP_BLE_AD_TYPE_APPEARANCE: // 0x19
830- return " ESP_BLE_AD_TYPE_APPEARANCE" ;
831- case ESP_BLE_AD_TYPE_ADV_INT: // 0x1a
832- return " ESP_BLE_AD_TYPE_ADV_INT" ;
833- case ESP_BLE_AD_TYPE_32SOL_SRV_UUID: return " ESP_BLE_AD_TYPE_32SOL_SRV_UUID" ;
834- case ESP_BLE_AD_TYPE_32SERVICE_DATA: // 0x20
835- return " ESP_BLE_AD_TYPE_32SERVICE_DATA" ;
836- case ESP_BLE_AD_TYPE_128SERVICE_DATA: // 0x21
837- return " ESP_BLE_AD_TYPE_128SERVICE_DATA" ;
838- case ESP_BLE_AD_MANUFACTURER_SPECIFIC_TYPE: // 0xff
839- return " ESP_BLE_AD_MANUFACTURER_SPECIFIC_TYPE" ;
840- #endif
841- default : log_v (" adv data type: 0x%x" , advType); return " " ;
842- } // End switch
843- } // advTypeToString
844-
845845esp_gatt_id_t BLEUtils::buildGattId (esp_bt_uuid_t uuid, uint8_t inst_id) {
846846 esp_gatt_id_t retGattId;
847847 retGattId.uuid = uuid;
@@ -2076,31 +2076,6 @@ const char *BLEUtils::returnCodeToString(int rc) {
20762076#endif // #if defined(CONFIG_NIMBLE_ENABLE_RETURN_CODE_TEXT)
20772077}
20782078
2079- /* *
2080- * @brief Convert the advertising type flag to a string.
2081- * @param advType The type to convert.
2082- * @return A string representation of the advertising flags.
2083- */
2084- const char *BLEUtils::advTypeToString (uint8_t advType) {
2085- #if defined(CONFIG_NIMBLE_ENABLE_ADVERTISMENT_TYPE_TEXT)
2086- switch (advType) {
2087- case BLE_HCI_ADV_TYPE_ADV_IND: // 0
2088- return " Undirected - Connectable / Scannable" ;
2089- case BLE_HCI_ADV_TYPE_ADV_DIRECT_IND_HD: // 1
2090- return " Directed High Duty - Connectable" ;
2091- case BLE_HCI_ADV_TYPE_ADV_SCAN_IND: // 2
2092- return " Non-Connectable - Scan Response Available" ;
2093- case BLE_HCI_ADV_TYPE_ADV_NONCONN_IND: // 3
2094- return " Non-Connectable - No Scan Response" ;
2095- case BLE_HCI_ADV_TYPE_ADV_DIRECT_IND_LD: // 4
2096- return " Directed Low Duty - Connectable" ;
2097- default : return " Unknown flag" ;
2098- }
2099- #else // #if defined(CONFIG_NIMBLE_ENABLE_ADVERTISMENT_TYPE_TEXT)
2100- return " " ;
2101- #endif // #if defined(CONFIG_NIMBLE_ENABLE_ADVERTISMENT_TYPE_TEXT)
2102- } // adFlagsToString
2103-
21042079/* *
21052080 * @brief Utility function to log the gap event info.
21062081 * @param [in] event A pointer to the gap event structure.
0 commit comments