Acr.Ble 2.0.0-beta4

This is a prerelease version of Acr.Ble.
There is a newer version of this package available.
See the version list below for details.
dotnet add package Acr.Ble --version 2.0.0-beta4
NuGet\Install-Package Acr.Ble -Version 2.0.0-beta4
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Acr.Ble" Version="2.0.0-beta4" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Acr.Ble --version 2.0.0-beta4
#r "nuget: Acr.Ble, 2.0.0-beta4"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Acr.Ble as a Cake Addin
#addin nuget:?package=Acr.Ble&version=2.0.0-beta4&prerelease

// Install Acr.Ble as a Cake Tool
#tool nuget:?package=Acr.Ble&version=2.0.0-beta4&prerelease

Cross Platform Reactive Bluetooth LE Plugin for Xamarin

Supported Platforms
Android 4.3+
iOS 7+
Windows UWP
tvOS
macOS

Product Compatible and additional computed target framework versions.
MonoAndroid monoandroid10 is compatible. 
Xamarin.Mac xamarinmac20 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.0.0 3,646 3/3/2017
2.0.0-beta4 913 2/17/2017
2.0.0-beta3 859 2/7/2017
2.0.0-beta2 880 1/31/2017
2.0.0-beta1 883 1/13/2017
1.3.1 1,517 12/21/2016
1.3.0 1,139 12/21/2016
1.2.0 1,176 12/15/2016
1.1.0 1,540 12/7/2016
1.0.8 1,142 11/25/2016
1.0.7 1,100 11/25/2016
1.0.6 1,108 11/19/2016
1.0.5 1,129 11/12/2016
1.0.4 1,182 11/2/2016
1.0.3 1,103 10/24/2016
1.0.2 1,125 10/20/2016
1.0.1 1,102 10/16/2016
1.0.0 4,271 10/14/2016
0.9.9 1,121 10/13/2016
0.9.8 1,129 9/24/2016
0.9.7 1,382 9/21/2016
0.9.6 1,362 9/20/2016
0.9.5 1,269 9/15/2016
0.9.4 1,085 9/15/2016
0.9.3 1,185 9/14/2016
0.9.2 1,140 9/13/2016
0.9.1 1,131 9/12/2016
0.9.0 1,069 9/8/2016

2.0
[feature] macOS support
[feature][all] Connection configuration allows you to set connection priority, notification states on iOS, tvOS, macOS, and whether or not to make the connection persistent
[feature][macos/tvos/ios] Background mode via CBCentralInitOptions - On the platform project use BleAdapter.Init(BleAdapterConfiguration)
[feature][ios] Background - Adapter.WhenDeviceStateRestored() will allow to hook for background state restoration (must be used in conjunction with BleAdapter.Init)
[feature][uwp][droid] Reliable write transaction via Device.BeginReliableWriteTransaction() and GattReliableWriteTransaction
[feature][uwp][droid] WriteBlob now uses reliable write transactions
[feature] Adapter.GetPairedDevices() - pretty self explanatory
[breaking][feature] RequestMtu now returns as an observable with what the accepted MTU was
[breaking] CreateConnection is gone - created more issues than it solved - Use Connect() as it creates persistent connections out of the gate
[breaking] Disconnect has been renamed to CancelConnection as it cancels any pending connections now
[breaking] Logging is gone.  It just isn't needed in light of all of the top level events
[fix][droid] disconnect on existing connection tries
[fix][droid] more gatt 133 issues
[fix][all] Blob write observable subscriptions not firing properly
[fix][all] NotifyEncryptionRequired, Indicate, and IndicateEncryptionRequired return true for CanNotify

1.3
[fix][droid] descriptors and characteristic read/writes now adhere to AndroidConfig.WriteOnMainThread
[fix][ios] WhenStatusChanged was causing OnError when a connection failure occurred
[fix][core] BlobWrite will now use proper MTU
[breaking][feature][core] Background scan has been replaced.  The normal scan now takes a configuration.
[feature][core] Get current MTU size
[feature][droid] monitor MTU changes

1.2
[feature] ability to open bluetooth settings configuration
[feature] ability to request MTU is now part of device (still only available on droid - but allows for greater flexibility)
[feature][droid] ability to pair with a device
[feature][droid] ability to toggle bluetooth adapter status

1.1
[BREAKING] Characteristic/Descriptor Read, Write, and Notification events now return CharacteristicResult that includes the sender characteristic as well as the data
[fix][droid] Write was not broadcasting completion at the right time

1.0.8
[fix] completion of ReadUntil

1.0.7
[feature] IGattCharacteristic.ReadUntil(endBytes) extension method will read in a loop until end bytes detected
[feature][droid] AndroidConfig.MaxTransmissionUnitSize (MTU) can now be set to negotiate MTU upon connections

1.0.6
[fix][droid] write on main thread (can use AndroidConfig.WriteOnMainThread = false, to disable)
[feature] Blob write
[feature] Logging now has deviceconnected/devicedisconnected if you wish to monitor just one of the status'

1.0.5
[fix] ability to check for true WriteNoResponse flags
[fix][droid] ship proper unsubscribe bytes

1.0.4
[fix] logging cleanup
[feature][core] add logging abilities from device reference
[feature][droid] add improved way to deal with Android connection issues (please read docs under Android Troubleshooting)

1.0.3
[fix][core] logging would not hook properly to existing connected devices
[fix][droid] deal with gatt error 133 by delaying service discovery post connection
[workaround] tvOS was having issues. temporarily pulled from nuget

1.0.2
[feature] write without response void method added
[feature] proper equals check for all ble objects

1.0.1
[fix][all] new adapter scans only clear disconnected devices from cache
[feature] Adapter.GetConnectedDevices

1.0.0
[fix][droid] WhenStatusChanged firing on subscription and replays properly
[fix][droid] properly parsing 16 and 32bit UUIDs in advertisement packet

0.9.9
[breaking] WhenActionOccurs renamed to CreateLogger
[fix] ensure WhenScanStatusChanged() broadcasts its current state on registration
Logging now returns actual packet received where applicable

0.9.8
adding tvOS libraries to package (NOT TESTED)
[fix] createconnection properly persists connection now
[fix] more logging and discovery issues
[fix][droid] device.readrssi was not working
[droid] device.whenstatuschanged will now broadcast Connecting/Disconnecting
[droid] advertisement packet now gets all service UUIDs parsed

0.9.7
[fix] Error notifications on read/writes
[fix] Make sure to replay last status for connectable observables
[fix] Service discovery on iOS and Android was not registering subsequent subscriptions properly
[fix][droid] Read/Write callbacks now passing values back properly
[breaking] PersistentConnection is now CreateConnection with improvements to status reporting

0.9.6
Vastly improved logging
Improvements to observable allocations
Improvements in service discovery

0.9.5
[breaking] Change extension method names

0.9.4
[breaking] Characteristic method WhenNotificationOccurs() is now called WhenNotificationReceived().  It also no longer subscribes to notifications.  Use new method SubscribeToNotifications().  WhenNotificationReceived() is for logging purposes

0.9.3
Add heartrate plugin (extension method)
Add super logging plugin (extension method)
Characteristics and Descriptors now have WhenRead/WhenWritten events to monitor calls externally

0.9.2
ScanListen for working with scan results from a background or decoupled component

0.9.1
BackgroundScan added and ScanFilter removed
Multiple entry points can now hook up to scan, but only one will run (connectable refcount observable)

0.9.0
Initial Public Release