diff --git a/.github/workflows/dotnet.yml b/.github/workflows/ShimmerBLEAPIUnitTest.yml
similarity index 95%
rename from .github/workflows/dotnet.yml
rename to .github/workflows/ShimmerBLEAPIUnitTest.yml
index fffa54f8..1507d51c 100644
--- a/.github/workflows/dotnet.yml
+++ b/.github/workflows/ShimmerBLEAPIUnitTest.yml
@@ -1,4 +1,4 @@
-name: .NET
+name: ShimmerBLEAPIUnitTest
on:
push:
diff --git a/.github/workflows/ShimmerBluetoothAPIUnitTest.yml b/.github/workflows/ShimmerBluetoothAPIUnitTest.yml
new file mode 100644
index 00000000..5a069ce6
--- /dev/null
+++ b/.github/workflows/ShimmerBluetoothAPIUnitTest.yml
@@ -0,0 +1,33 @@
+name: ShimmerBluetoothAPIUnitTest
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+
+ runs-on: windows-latest
+
+ steps:
+ - uses: actions/checkout@v2
+ - name: Setup .NET
+ uses: actions/setup-dotnet@v1
+ with:
+ dotnet-version: 5.0.x
+ - name: Setup VSTest Path
+ uses: darenm/Setup-VSTest@v1
+ - name: Setup MSBuild Path
+ uses: microsoft/setup-msbuild@v1
+ - name: Setup Nuget
+ uses: Nuget/setup-nuget@v1.0.5
+ - name: Restore nuget packages
+ run: nuget restore ./ShimmerAPI/ShimmerAPITest.sln
+ - name: Build
+ run: msbuild ./ShimmerAPI/ShimmerAPITest.sln
+ - name: VSTest
+ run: vstest.console.exe ./ShimmerAPI/ShimmerUnitTests/bin/Debug/ShimmerBluetoothTests.dll
+
+
diff --git a/.github/workflows/dotnet472.yml b/.github/workflows/dotnet472.yml
deleted file mode 100644
index 7d743e74..00000000
--- a/.github/workflows/dotnet472.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-name: .NET
-
-on:
- push:
- branches: [ master ]
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
-
- runs-on: windows-latest
-
- steps:
- - uses: actions/checkout@v2
- - name: Setup MSBuild Path
- uses: microsoft/setup-msbuild@v1
- - name: Setup NuGet
- uses: NuGet/setup-nuget@v1.0.2
- - name: Build
- run: msbuild ./ShimmerAPI/ShimmerAPITest.sln
- - name: Test
- run: msbuild test ./ShimmerAPI/ShimmerAPITest.sln --no-build --verbosity normal
-
diff --git a/ShimmerAPI/ShimmerAPI.sln b/ShimmerAPI/ShimmerAPI.sln
index dfc7f51c..6aef3ac5 100644
--- a/ShimmerAPI/ShimmerAPI.sln
+++ b/ShimmerAPI/ShimmerAPI.sln
@@ -25,6 +25,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shimmer32FeetAPI", "..\Shim
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ShimmerAPI", "ShimmerAPI\ShimmerAPI.csproj", "{6E320423-1D88-47EE-97BA-51113E538D33}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShimmerUnitTests", "ShimmerUnitTests\ShimmerUnitTests.csproj", "{30C7273A-87CC-499F-9206-48F89082AE0C}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -304,6 +306,30 @@ Global
{6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPIBasic|x64.Build.0 = Debug|Any CPU
{6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPIBasic|x86.ActiveCfg = Debug|Any CPU
{6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPIBasic|x86.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|x64.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|x86.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|x64.ActiveCfg = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|x64.Build.0 = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|x86.ActiveCfg = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|x86.Build.0 = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|Any CPU.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|Any CPU.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|x64.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|x64.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|x86.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|x86.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|Any CPU.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|Any CPU.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|x64.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|x64.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|x86.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|x86.Build.0 = Debug|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/ShimmerAPI/ShimmerAPITest.sln b/ShimmerAPI/ShimmerAPITest.sln
new file mode 100644
index 00000000..370ec5f2
--- /dev/null
+++ b/ShimmerAPI/ShimmerAPITest.sln
@@ -0,0 +1,81 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.30907.101
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ShimmerAPI", "ShimmerAPI\ShimmerAPI.csproj", "{6E320423-1D88-47EE-97BA-51113E538D33}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShimmerUnitTests", "ShimmerUnitTests\ShimmerUnitTests.csproj", "{30C7273A-87CC-499F-9206-48F89082AE0C}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|Any CPU = Release|Any CPU
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ ShimmerAPI|Any CPU = ShimmerAPI|Any CPU
+ ShimmerAPI|x64 = ShimmerAPI|x64
+ ShimmerAPI|x86 = ShimmerAPI|x86
+ ShimmerAPIBasic|Any CPU = ShimmerAPIBasic|Any CPU
+ ShimmerAPIBasic|x64 = ShimmerAPIBasic|x64
+ ShimmerAPIBasic|x86 = ShimmerAPIBasic|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Debug|x64.Build.0 = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Debug|x86.Build.0 = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Release|Any CPU.Build.0 = Release|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Release|x64.ActiveCfg = Release|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Release|x64.Build.0 = Release|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Release|x86.ActiveCfg = Release|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.Release|x86.Build.0 = Release|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPI|Any CPU.ActiveCfg = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPI|Any CPU.Build.0 = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPI|x64.ActiveCfg = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPI|x64.Build.0 = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPI|x86.ActiveCfg = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPI|x86.Build.0 = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPIBasic|Any CPU.ActiveCfg = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPIBasic|Any CPU.Build.0 = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPIBasic|x64.ActiveCfg = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPIBasic|x64.Build.0 = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPIBasic|x86.ActiveCfg = Debug|Any CPU
+ {6E320423-1D88-47EE-97BA-51113E538D33}.ShimmerAPIBasic|x86.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|x64.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Debug|x86.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|x64.ActiveCfg = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|x64.Build.0 = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|x86.ActiveCfg = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.Release|x86.Build.0 = Release|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|Any CPU.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|Any CPU.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|x64.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|x64.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|x86.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPI|x86.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|Any CPU.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|Any CPU.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|x64.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|x64.Build.0 = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|x86.ActiveCfg = Debug|Any CPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}.ShimmerAPIBasic|x86.Build.0 = Debug|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {0118CC67-3FFA-4D59-B6DD-22E5138CDBBC}
+ EndGlobalSection
+EndGlobal
diff --git a/ShimmerAPI/ShimmerBluetoothTests/ShimmerBluetoothTests.csproj b/ShimmerAPI/ShimmerBluetoothTests/ShimmerBluetoothTests.csproj
index b28387ce..7cdb20c0 100644
--- a/ShimmerAPI/ShimmerBluetoothTests/ShimmerBluetoothTests.csproj
+++ b/ShimmerAPI/ShimmerBluetoothTests/ShimmerBluetoothTests.csproj
@@ -56,12 +56,9 @@
-
-
-
diff --git a/ShimmerAPI/ShimmerUnitTests/Properties/AssemblyInfo.cs b/ShimmerAPI/ShimmerUnitTests/Properties/AssemblyInfo.cs
new file mode 100644
index 00000000..c80e005f
--- /dev/null
+++ b/ShimmerAPI/ShimmerUnitTests/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("ShimmerBluetoothTests")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("ShimmerBluetoothTests")]
+[assembly: AssemblyCopyright("Copyright © 2018")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("f5dd4aa6-b826-49cb-96e2-a6dae01a1c47")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/ShimmerAPI/ShimmerBluetoothTests/ShimmerBluetoothReadData.cs b/ShimmerAPI/ShimmerUnitTests/ShimmerBluetoothReadData.cs
similarity index 100%
rename from ShimmerAPI/ShimmerBluetoothTests/ShimmerBluetoothReadData.cs
rename to ShimmerAPI/ShimmerUnitTests/ShimmerBluetoothReadData.cs
diff --git a/ShimmerAPI/ShimmerBluetoothTests/ShimmerReadDataPacketTest.cs b/ShimmerAPI/ShimmerUnitTests/ShimmerReadDataPacketTest.cs
similarity index 100%
rename from ShimmerAPI/ShimmerBluetoothTests/ShimmerReadDataPacketTest.cs
rename to ShimmerAPI/ShimmerUnitTests/ShimmerReadDataPacketTest.cs
diff --git a/ShimmerAPI/ShimmerBluetoothTests/ShimmerTest.cs b/ShimmerAPI/ShimmerUnitTests/ShimmerTest.cs
similarity index 100%
rename from ShimmerAPI/ShimmerBluetoothTests/ShimmerTest.cs
rename to ShimmerAPI/ShimmerUnitTests/ShimmerTest.cs
diff --git a/ShimmerAPI/ShimmerUnitTests/ShimmerUnitTests.csproj b/ShimmerAPI/ShimmerUnitTests/ShimmerUnitTests.csproj
new file mode 100644
index 00000000..cb3d2084
--- /dev/null
+++ b/ShimmerAPI/ShimmerUnitTests/ShimmerUnitTests.csproj
@@ -0,0 +1,100 @@
+
+
+
+ Debug
+ AnyCPU
+ {30C7273A-87CC-499F-9206-48F89082AE0C}
+ Library
+ Properties
+ ShimmerBluetoothTests
+ ShimmerBluetoothTests
+ v4.7.2
+ 512
+ {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
+ 10.0
+ $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
+ $(ProgramFiles)\Common Files\microsoft shared\VSTT\$(VisualStudioVersion)\UITestExtensionPackages
+ False
+ UnitTest
+
+
+
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+
+ ..\packages\System.IO.Ports.5.0.1\lib\net461\System.IO.Ports.dll
+
+
+
+
+
+
+
+
+
+
+
+ False
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {6e320423-1d88-47ee-97ba-51113e538d33}
+ ShimmerAPI
+
+
+
+
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+ False
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ShimmerAPI/ShimmerUnitTests/packages.config b/ShimmerAPI/ShimmerUnitTests/packages.config
new file mode 100644
index 00000000..9d2e8c4e
--- /dev/null
+++ b/ShimmerAPI/ShimmerUnitTests/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/ShimmerBLE/ShimmerBLEAPI/FodyWeavers.xml b/ShimmerBLE/ShimmerBLEAPI/FodyWeavers.xml
index 39ad1cbf..4e68ed1a 100644
--- a/ShimmerBLE/ShimmerBLEAPI/FodyWeavers.xml
+++ b/ShimmerBLE/ShimmerBLEAPI/FodyWeavers.xml
@@ -1,5 +1,4 @@
-
\ No newline at end of file
diff --git a/ShimmerBLE/ShimmerBLEAPI/FodyWeavers.xsd b/ShimmerBLE/ShimmerBLEAPI/FodyWeavers.xsd
index a608e3f5..69dbe488 100644
--- a/ShimmerBLE/ShimmerBLEAPI/FodyWeavers.xsd
+++ b/ShimmerBLE/ShimmerBLEAPI/FodyWeavers.xsd
@@ -1,6 +1,6 @@
-
+
@@ -11,6 +11,16 @@
Used to control if the On_PropertyName_Changed feature is enabled.
+
+
+ Used to control if the Dependent properties feature is enabled.
+
+
+
+
+ Used to control if the IsChanged property feature is enabled.
+
+
Used to change the name of the method that fires the notify event. This is a string that accepts multiple values in a comma separated form.
@@ -31,17 +41,32 @@
Used to control if equality checks should use the static Equals method resolved from the base class.
+
+
+ Used to turn off build warnings from this weaver.
+
+
+
+
+ Used to turn off build warnings about mismatched On_PropertyName_Changed methods.
+
+
- 'true' to run assembly verification on the target assembly after all weavers have been finished.
+ 'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.
- A comma separated list of error codes that can be safely ignored in assembly verification.
+ A comma-separated list of error codes that can be safely ignored in assembly verification.
+
+
+
+
+ 'false' to turn off automatic generation of the XML Schema file.
diff --git a/ShimmerBLE/ShimmerBLEAPI/ShimmerBLEAPI.csproj b/ShimmerBLE/ShimmerBLEAPI/ShimmerBLEAPI.csproj
index 78e64e35..b57ee6f2 100644
--- a/ShimmerBLE/ShimmerBLEAPI/ShimmerBLEAPI.csproj
+++ b/ShimmerBLE/ShimmerBLEAPI/ShimmerBLEAPI.csproj
@@ -23,11 +23,11 @@
+
-
diff --git a/ShimmerBLE/ShimmerBLETests/ShimmerBLETests.csproj b/ShimmerBLE/ShimmerBLETests/ShimmerBLETests.csproj
index 72d3dcd8..ff775d4b 100644
--- a/ShimmerBLE/ShimmerBLETests/ShimmerBLETests.csproj
+++ b/ShimmerBLE/ShimmerBLETests/ShimmerBLETests.csproj
@@ -1,7 +1,7 @@
- netcoreapp3.1
+ net5.0
false
diff --git a/ShimmerBLE/VerisenseBLEDemoApp/VerisenseBLEDemoApp/MainPage.xaml.cs b/ShimmerBLE/VerisenseBLEDemoApp/VerisenseBLEDemoApp/MainPage.xaml.cs
index 9df46711..883afaae 100644
--- a/ShimmerBLE/VerisenseBLEDemoApp/VerisenseBLEDemoApp/MainPage.xaml.cs
+++ b/ShimmerBLE/VerisenseBLEDemoApp/VerisenseBLEDemoApp/MainPage.xaml.cs
@@ -750,8 +750,11 @@ async void OnButtonClickedPair(object sender, EventArgs args)
}
LBLPairing.Text = "Pairing...";
- verisenseBLEDevice.ShimmerBLEEvent += ShimmerDevice_BLEEvent;
var result = await bleManager.PairVerisenseDevice(DeviceToBePaired, new VerisenseBLEPairingKeyGenerator());
+ if (verisenseBLEDevice != null)
+ {
+ verisenseBLEDevice.ShimmerBLEEvent += ShimmerDevice_BLEEvent;
+ }
if (!result)
{
LBLPairing.Text = "Device Failed To Pair";