NordicID.UpdateLib.Net
3.2.0
dotnet add package NordicID.UpdateLib.Net --version 3.2.0
NuGet\Install-Package NordicID.UpdateLib.Net -Version 3.2.0
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="NordicID.UpdateLib.Net" Version="3.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add NordicID.UpdateLib.Net --version 3.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: NordicID.UpdateLib.Net, 3.2.0"
#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 NordicID.UpdateLib.Net as a Cake Addin #addin nuget:?package=NordicID.UpdateLib.Net&version=3.2.0 // Install NordicID.UpdateLib.Net as a Cake Tool #tool nuget:?package=NordicID.UpdateLib.Net&version=3.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
NordicID.UpdateLib.Net
NordicID Device Update Library
Usage
using System;
using System.Collections.Generic;
using NurApiDotNet;
using NordicID.UpdateLib;
using System.Threading;
namespace NurUpdateLatest
{
class Program
{
static void Main(string[] args)
{
// Get device connection uri from command line or use default
string uri = args.Length > 0 ? args[0] : "usb://autoconnect";
// Enable serial and USB transport support
// Note: Needs NordicID.NurApi.SerialTransport and NordicID.NurApi.USBTransport libraries
NurApiDotNet.SerialTransport.Support.Init();
NordicID.NurApi.USBTransport.Support.Init();
NurApi api = new NurApi();
//For Debug Use Only
//api.SetLogToFile(true);
//api.SetLogLevel(NurApi.LOG_ALL);
var connectedEvent = new ManualResetEvent(false);
api.ConnectedEvent += (s, e) => {
connectedEvent.Set();
};
var disconnectedEvent = new ManualResetEvent(false);
api.DisconnectedEvent += (s, e) => {
disconnectedEvent.Set();
};
Console.WriteLine("NiduLib Version= " + NurUpdate.FileVersion + " NurApi version= " + NurApi.FileVersion);
Console.WriteLine("Connecting to: " + uri);
api.Connect(new Uri(uri));
// Wait connection for 5 seconds
if (!connectedEvent.WaitOne(5000))
{
throw new Exception("Connection Timeout");
}
Console.WriteLine("Connected to: " + api.ConnectedDeviceUri);
try
{
NurUpdate upd = new NurUpdate();
upd.OnUpdatingEvent += Upd_OnUpdatingEvent;
upd.SetNurApi(api);
List<NurUpdate.UpdateItem> items = upd.GetAvailableUpdatesFromNordicIDServer();
if (items.Count > 0)
{
foreach (NurUpdate.UpdateItem i in items)
{
Console.WriteLine(i.fw_info);
}
Console.WriteLine("Load update packet..");
upd.LoadZipFromNordicIDServer();
upd.Validate();
Console.WriteLine("Start updating");
upd.StartUpdate();
}
else Console.WriteLine("No available updates");
}
catch (Exception e)
{
Console.WriteLine("NurUpdate EXCEPTION:" + e.Message);
}
api.StopContinuous();
api.Disconnect();
// Wait disconnection for 5 seconds
if (!disconnectedEvent.WaitOne(5000))
{
throw new Exception("DisConnection Timeout");
}
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
private static void Upd_OnUpdatingEvent(object sender, NurUpdate.UpdatingEventArgs e)
{
if (e.niduEvent == NurUpdate.Event.LOG)
{
Console.WriteLine("LOG:" + e.msg);
}
else if (e.niduEvent == NurUpdate.Event.STATUS)
{
Console.WriteLine("STATUS:" + e.msg);
}
else if (e.niduEvent == NurUpdate.Event.PROGRESS)
{
Console.WriteLine("PROGRESS:" + e.prg.ToString() + "%");
}
}
}
}
Feedback
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- Newtonsoft.Json (>= 13.0.3)
- NordicID.NurApi.Net (>= 6.0.0)
- PeterO.Cbor (>= 4.5.5)
- SharpZipLib (>= 1.4.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.