├── BLELib.dll ├── BLE_LIB.aliases ├── BLE_LIB.lvlps ├── BLE_LIB.lvproj ├── HLD ├── BLE_Sample - Test.vi └── BLE_Sample - Test1.vi ├── LLD ├── BLE_ExtractData.vi ├── BLE_GetRandNumber.vi ├── BLE_Get_ServicesUUIDs_Property.vi ├── BLE_Get_WatcherReceivedData.vi ├── BLE_Get_WatcherResponse.vi ├── BLE_Hash256.vi ├── BLE_Initialize.vi ├── BLE_Notify.vi ├── BLE_Notify_Listener.vi ├── BLE_Read_Characteristic.vi ├── BLE_Read_CharacteristicArray.vi ├── BLE_Refunum.ctl ├── BLE_Request_Connect.vi ├── BLE_Request_ServiceUUIDs.vi ├── BLE_StartWatcher.vi ├── BLE_StopWatcher.vi ├── BLE_Template.vit ├── BLE_Verify_Connect.vi ├── BLE_Write.vi └── BLE_Write_Without_Response.vi └── README.md /BLELib.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/BLELib.dll -------------------------------------------------------------------------------- /BLE_LIB.aliases: -------------------------------------------------------------------------------- 1 | [My Computer] 2 | My Computer = "192.168.1.10" 3 | 4 | -------------------------------------------------------------------------------- /BLE_LIB.lvlps: -------------------------------------------------------------------------------- 1 | [ProjectWindow_Data] 2 | ProjectExplorer.ClassicPosition[String] = "25,2,736,1364" 3 | 4 | [AB_Cache_{7ABC353F-0690-4E56-8ECA-A36F77505E4A}] 5 | Cache_Path[Path] Line0001 = "/C/Users/bharathi.t/AppData/Local/Temp/AB_Cache_{7" 6 | Cache_Path[Path] Line0002 = "ABC353F-0690-4E56-8ECA-A36F77505E4A}.txt" 7 | 8 | [AB_Cache_{635946BB-BD0D-43CA-98CC-C138D855323C}] 9 | Cache_Path[Path] Line0001 = "/C/Users/bharathi.t/AppData/Local/Temp/AB_Cache_{6" 10 | Cache_Path[Path] Line0002 = "35946BB-BD0D-43CA-98CC-C138D855323C}.txt" 11 | 12 | -------------------------------------------------------------------------------- /BLE_LIB.lvproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 201310 4 | 5 | 6 | 100 7 | false 8 | 10000 9 | 0 10 | 9 11 | true 12 | false 13 | true 14 | true 15 | false 16 | 0 17 | My Computer/VI Server 18 | My Computer/VI Server 19 | true 20 | true 21 | false 22 | 23 | true 24 | 25 | 26 | 27 | true 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /HLD/BLE_Sample - Test.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/HLD/BLE_Sample - Test.vi -------------------------------------------------------------------------------- /HLD/BLE_Sample - Test1.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/HLD/BLE_Sample - Test1.vi -------------------------------------------------------------------------------- /LLD/BLE_ExtractData.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_ExtractData.vi -------------------------------------------------------------------------------- /LLD/BLE_GetRandNumber.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_GetRandNumber.vi -------------------------------------------------------------------------------- /LLD/BLE_Get_ServicesUUIDs_Property.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Get_ServicesUUIDs_Property.vi -------------------------------------------------------------------------------- /LLD/BLE_Get_WatcherReceivedData.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Get_WatcherReceivedData.vi -------------------------------------------------------------------------------- /LLD/BLE_Get_WatcherResponse.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Get_WatcherResponse.vi -------------------------------------------------------------------------------- /LLD/BLE_Hash256.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Hash256.vi -------------------------------------------------------------------------------- /LLD/BLE_Initialize.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Initialize.vi -------------------------------------------------------------------------------- /LLD/BLE_Notify.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Notify.vi -------------------------------------------------------------------------------- /LLD/BLE_Notify_Listener.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Notify_Listener.vi -------------------------------------------------------------------------------- /LLD/BLE_Read_Characteristic.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Read_Characteristic.vi -------------------------------------------------------------------------------- /LLD/BLE_Read_CharacteristicArray.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Read_CharacteristicArray.vi -------------------------------------------------------------------------------- /LLD/BLE_Refunum.ctl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Refunum.ctl -------------------------------------------------------------------------------- /LLD/BLE_Request_Connect.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Request_Connect.vi -------------------------------------------------------------------------------- /LLD/BLE_Request_ServiceUUIDs.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Request_ServiceUUIDs.vi -------------------------------------------------------------------------------- /LLD/BLE_StartWatcher.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_StartWatcher.vi -------------------------------------------------------------------------------- /LLD/BLE_StopWatcher.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_StopWatcher.vi -------------------------------------------------------------------------------- /LLD/BLE_Template.vit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Template.vit -------------------------------------------------------------------------------- /LLD/BLE_Verify_Connect.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Verify_Connect.vi -------------------------------------------------------------------------------- /LLD/BLE_Write.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Write.vi -------------------------------------------------------------------------------- /LLD/BLE_Write_Without_Response.vi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prabubharathi85/LabVIEW-BLE-Driver/a411447a86aef7c4e7d10bce383949fb5f266030/LLD/BLE_Write_Without_Response.vi -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Products and Environment 2 | 3 | Hardware RF|Wireless 4 | 5 | Software LabVIEW 6 | 7 | Driver NI RF Device Drivers 8 | 9 | Operating System Windows 10 10 | 11 | Programming Language .NET C Sharp LabVIEW 2020 12 | 13 | Description This example demonstrate on how to use the windows 10 BLE native library to communicate with BLE devices (Smart watch, bulb or any device which support BLE). This does not need any BLE dongle to communicate with BLE devices. It uses the windows 10 bluetooth stack and its native library to communicate with BLE devices. 14 | 15 | Developed the DLL to interact with windows 10 BLE library in C# platform and integrated the dll into LabVIEW by using .Net constructor node. 16 | 17 | Here demonstrates usage of the Bluetooth Generic Attribute (GATT) Client APIs for Universal Windows Platform (UWP), along with sample code for common GATT client tasks: 18 | 19 | Query for nearby devices Connect to device Enumerate the supported services and characteristics of the device Read and write to a characteristic Subscribe for notifications when characteristic value change 20 | 21 | How to Use Following are the methods available in BLE library: 22 | 23 | Methods: 24 | 25 | BLE_Initialize.vi - Initialize the DLL BLE_StartWatcher.vi - listening advertisement of near by BLE devices BLE_Get_WatcherResponse.vi - Gets the manufacture data, BLE address from BLE advertisement BLE_Get_WatcherReceivedData.vi - Decodes the watcher response BLE_StopWatcher.vi - Stop getting advertisement from near by BLE devices BLE_Request_Connect.vi - Initiates the connection to BLE device and returns with response of connection status and GATT Services list from BLE device BLE_Get_ServicesUUIDs_Property.vi - Gets the GATT service UUIDs and Property UUIDS from BLE device BLE_Notify.vi - Initiate the BLE notification of UUIDs from BLE device BLE_Notify_Listener.vi - Gets the notification of UUIDs from BLE device BLE_Read_Characteristic.vi - Reads the UUIDs of BLE device BLE_Read_CharacteristicArray.vi - Reads the array of UUIDs of BLE device BLE_Request_ServiceUUIDs.vi - Get the Service UUIDs BLE_Write.vi - Write the UUIDs of BLE device BLE_Write_Without_Response.vi - Write the without response UUIDs of BLE device and not return response 26 | 27 | Additional Information When setting the debug logs to true, C# library created the BLE log files under C drive 28 | 29 | Development Environment: LabVIEW 2020 32 Bit OS: Win 10 64 bit 30 | 31 | Added the Example code in HLD where user has to change the BLE address before run. The BLE address can be get after running the watcher. 32 | --------------------------------------------------------------------------------