@@ -678,6 +678,71 @@ char *BLEUtils::buildHexData(uint8_t *target, uint8_t *source, uint8_t length) {
|
678 | 678 | return startOfData;
|
679 | 679 | } // buildHexData
|
680 | 680 |
|
| 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 |
681 | 746 |
|
682 | 747 | /*****************************************************************************
|
683 | 748 | * Bluedroid functions *
|
@@ -777,71 +842,6 @@ String BLEUtils::adFlagsToString(uint8_t adFlags) {
|
777 | 842 | return res;
|
778 | 843 | } // adFlagsToString
|
779 | 844 |
|
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 |
| - |
845 | 845 | esp_gatt_id_t BLEUtils::buildGattId(esp_bt_uuid_t uuid, uint8_t inst_id) {
|
846 | 846 | esp_gatt_id_t retGattId;
|
847 | 847 | retGattId.uuid = uuid;
|
@@ -2076,31 +2076,6 @@ const char *BLEUtils::returnCodeToString(int rc) {
|
2076 | 2076 | #endif // #if defined(CONFIG_NIMBLE_ENABLE_RETURN_CODE_TEXT)
|
2077 | 2077 | }
|
2078 | 2078 |
|
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 |
| - |
2104 | 2079 | /**
|
2105 | 2080 | * @brief Utility function to log the gap event info.
|
2106 | 2081 | * @param [in] event A pointer to the gap event structure.
|
|
0 commit comments