From a5a5c6a88daa4502cf696897e8f56155c3f0d0eb Mon Sep 17 00:00:00 2001 From: Sem van der Hoeven Date: Fri, 4 Sep 2020 11:28:21 +0200 Subject: [PATCH] added library to csproj file --- ProftaakRH/BLELibrary.dll | Bin 0 -> 45568 bytes ProftaakRH/FietsDemo.cs | 92 ++++++++++++++++++ .../ProftaakRH.csproj | 5 + ProftaakRH.sln => ProftaakRH/ProftaakRH.sln | 12 +-- Program.cs => ProftaakRH/Program.cs | 0 5 files changed, 103 insertions(+), 6 deletions(-) create mode 100644 ProftaakRH/BLELibrary.dll create mode 100644 ProftaakRH/FietsDemo.cs rename ProftaakRH.csproj => ProftaakRH/ProftaakRH.csproj (57%) rename ProftaakRH.sln => ProftaakRH/ProftaakRH.sln (65%) rename Program.cs => ProftaakRH/Program.cs (100%) diff --git a/ProftaakRH/BLELibrary.dll b/ProftaakRH/BLELibrary.dll new file mode 100644 index 0000000000000000000000000000000000000000..709a9a3d7fca48140f2bf13b48495074e2ded59d GIT binary patch literal 45568 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 bleBikeList = bleBike.ListDevices(); + Console.WriteLine("Devices found: "); + foreach (var name in bleBikeList) + { + Console.WriteLine($"Device: {name}"); + } + + // Connecting + errorCode = errorCode = await bleBike.OpenDevice("Avans Bike B5F0"); + // __TODO__ Error check + + var services = bleBike.GetServices; + foreach (var service in services) + { + Console.WriteLine($"Service: {service}"); + } + + // Set service + errorCode = await bleBike.SetService("6e40fec1-b5a3-f393-e0a9-e50e24dcca9e"); + // __TODO__ error check + + // Subscribe + bleBike.SubscriptionValueChanged += BleBike_SubscriptionValueChanged; + errorCode = await bleBike.SubscribeToCharacteristic("6e40fec2-b5a3-f393-e0a9-e50e24dcca9e"); + + // Heart rate + errorCode = await bleHeart.OpenDevice("Avans Bike B5F0"); + + await bleHeart.SetService("HeartRate"); + + bleHeart.SubscriptionValueChanged += BleBike_SubscriptionValueChanged; + await bleHeart.SubscribeToCharacteristic("HeartRateMeasurement"); + + Console.Read(); + } + + private static void BleBike_SubscriptionValueChanged(object sender, BLESubscriptionValueChangedEventArgs e) + { + Console.WriteLine("Received from {0}: {1}, {2}", e.ServiceName, + BitConverter.ToString(e.Data).Replace("-", " "), + Encoding.UTF8.GetString(e.Data)); + + string[] bytes = BitConverter.ToString(e.Data).Split('-'); + string[] ANT = new string[5]; + if (e.ServiceName == "6e40fec2-b5a3-f393-e0a9-e50e24dcca9e") + { + Console.WriteLine("SYNC : " + bytes[0]); + ANT[0] = bytes[0]; + Console.WriteLine("LENGTH : " + bytes[1]); + + int length = Convert.ToInt32(bytes[1], 16); + ANT[1] = length.ToString(); + Console.WriteLine("MSG ID : " + bytes[2]); + ANT[2] = bytes[2]; + string msg = string.Empty; + for (int i = 3; i < 3 + length; i++) + { + msg += bytes[i]; + } + ANT[3] = msg; + + Console.WriteLine("MSG : " + msg); + string checksum = bytes[3 + length]; + ANT[4] = checksum; + Console.WriteLine("CHECKSUM : " + checksum); + } else + { + Console.WriteLine("BPM: " + Convert.ToInt32(bytes[1], 16)); + } + Console.WriteLine(); + } + } +} \ No newline at end of file diff --git a/ProftaakRH.csproj b/ProftaakRH/ProftaakRH.csproj similarity index 57% rename from ProftaakRH.csproj rename to ProftaakRH/ProftaakRH.csproj index c73e0d1..06fdf06 100644 --- a/ProftaakRH.csproj +++ b/ProftaakRH/ProftaakRH.csproj @@ -4,5 +4,10 @@ Exe netcoreapp3.1 + + + .\BLELibrary.dll + + diff --git a/ProftaakRH.sln b/ProftaakRH/ProftaakRH.sln similarity index 65% rename from ProftaakRH.sln rename to ProftaakRH/ProftaakRH.sln index e28f334..a756a82 100644 --- a/ProftaakRH.sln +++ b/ProftaakRH/ProftaakRH.sln @@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 16 VisualStudioVersion = 16.0.30413.136 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProftaakRH", "ProftaakRH.csproj", "{82761495-F7CD-4F52-8293-6E6AEBE6CBAF}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProftaakRH", "ProftaakRH.csproj", "{0F053CC5-D969-4970-9501-B3428EA3D777}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -11,15 +11,15 @@ Global Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {82761495-F7CD-4F52-8293-6E6AEBE6CBAF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {82761495-F7CD-4F52-8293-6E6AEBE6CBAF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {82761495-F7CD-4F52-8293-6E6AEBE6CBAF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {82761495-F7CD-4F52-8293-6E6AEBE6CBAF}.Release|Any CPU.Build.0 = Release|Any CPU + {0F053CC5-D969-4970-9501-B3428EA3D777}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0F053CC5-D969-4970-9501-B3428EA3D777}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0F053CC5-D969-4970-9501-B3428EA3D777}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0F053CC5-D969-4970-9501-B3428EA3D777}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {AD8FC239-049F-4332-A21F-76C30779630C} + SolutionGuid = {E8D4CDF6-747D-47AE-B655-159CEBA801D5} EndGlobalSection EndGlobal diff --git a/Program.cs b/ProftaakRH/Program.cs similarity index 100% rename from Program.cs rename to ProftaakRH/Program.cs