Laerdal.Dfu.Bindings.iOS 4.16.0.44003

Prefix Reserved
dotnet add package Laerdal.Dfu.Bindings.iOS --version 4.16.0.44003
                    
NuGet\Install-Package Laerdal.Dfu.Bindings.iOS -Version 4.16.0.44003
                    
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="Laerdal.Dfu.Bindings.iOS" Version="4.16.0.44003" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Laerdal.Dfu.Bindings.iOS" Version="4.16.0.44003" />
                    
Directory.Packages.props
<PackageReference Include="Laerdal.Dfu.Bindings.iOS" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Laerdal.Dfu.Bindings.iOS --version 4.16.0.44003
                    
#r "nuget: Laerdal.Dfu.Bindings.iOS, 4.16.0.44003"
                    
#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.
#:package Laerdal.Dfu.Bindings.iOS@4.16.0.44003
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Laerdal.Dfu.Bindings.iOS&version=4.16.0.44003
                    
Install as a Cake Addin
#tool nuget:?package=Laerdal.Dfu.Bindings.iOS&version=4.16.0.44003
                    
Install as a Cake Tool

🏠 Laerdal.Dfu.Bindings.iOS

This is an MAUI binding library for iOS/MacCatalyst fueled by Nordic's native iOS-DFU library for updating the firmware of their devices over the air via BLE.

The native iOS Pod library is located here: https://github.com/NordicSemiconductor/IOS-Pods-DFU-Library

🚀 Getting Started

You'll need :

  • MacOS
    • with XCode 16.1+
    • with .NET8-ios
    • with Carthage
    • [with ObjectiveSharpie] (optional)

🛠️ Build

brew cask install objectivesharpie

More about Objective Sharpie

Steps to build on Local-Dev

1) Checkout

git clone https://github.com/Laerdal/Laerdal.Dfu.Bindings.iOS.git

2) Build


# Note    If carthage fails in macos try cleaning up your carthage cache like so and then try again
# Note
# Note                       rm -rf ~/Library/Caches/org.carthage.CarthageKit
# Note
# 
# on macos
dotnet    msbuild                                    \
    Laerdal.Scripts/Laerdal.Builder.targets          \
    '"/m:1"'                                         \
    '"/p:Laerdal_Version_Full=1.0.x.0"'              \
    '"/p:Laerdal_Github_Access_Token=<place your github access token here - its needed by carthage>"'  

# on windows powershell
dotnet   msbuild                                     ^
    Laerdal.Scripts\Laerdal.Builder.targets          ^
    /m:1                                             ^
    /p:Laerdal_Version_Full=1.0.x.0                  ^
    /p:Laerdal_Github_Access_Token="<place your github access token here - its needed by carthage>"

You'll find the nuget in Output/

❗ Known issues

Fix : https://github.com/Laerdal/Laerdal.Dfu.iOS/issues/3#issuecomment-783298581 |

#!/usr/bin/env sh

xcode_lib_path="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-5.0/iphoneos"
app_path=$1
app_name=<insert app name>
libs=("$app_path/Products/Applications/$app_name/Frameworks/"*.dylib)

for i in "${libs[@]}"
do
  cp "$xcode_lib_path/$(basename "$i")" "$app_path/SwiftSupport/iphoneos/"
  cp "$xcode_lib_path/$(basename "$i")" "$app_path/Products/Applications/$app_name/Frameworks/"
done

-- Thanks @OliverFlecke

Fix : You might need to add "--optimize=-remove-dynamic-registrar" to your apps mtouch args.

Product Compatible and additional computed target framework versions.
.NET net8.0-ios18.0 is compatible.  net9.0-ios was computed.  net10.0-ios was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Laerdal.Dfu.Bindings.iOS:

Package Downloads
Laerdal.Dfu

Wrapper around Nordic.Dfu

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
4.16.0.44003 1,424 3/17/2025
4.16.0.44003-ios-sim-x64 152 3/17/2025
4.16.0.44003-ios-sim-arm64 429 3/17/2025
4.16.0.44002 249 3/6/2025
4.16.0.44002-ios-sim-x64 209 3/6/2025
4.16.0.44002-ios-sim-arm64 216 3/6/2025
4.15.3.44000 263 1/16/2025
4.15.3.44000-ios-sim-x64 92 1/16/2025
4.15.3.44000-ios-sim-arm64 97 1/16/2025
4.15.3.43998 122 1/16/2025
4.15.3.43998-ios-sim-x64 101 1/16/2025
4.15.3.43998-ios-sim-arm64 93 1/16/2025
4.15.3.43995 2,892 1/15/2025
4.15.3.43995-ios-sim-x64 89 1/15/2025
4.15.3.43995-ios-sim-arm64 95 1/15/2025
4.15.3.43993 85 1/15/2025
4.15.3.43990 100 1/15/2025
4.15.3.43981 2,535 11/15/2024
4.15.3.43980 3,035 11/15/2024
4.15.3.43974 130 11/13/2024
4.15.3.43973 137 11/12/2024
4.15.3.43972 211 11/12/2024
4.15.3.43971 144 11/12/2024
4.15.3.43957 132 11/12/2024
4.15.3.43950 143 11/12/2024
4.15.3.43948 126 11/12/2024
4.15.3.43947 155 11/11/2024
4.15.3.43942 184 11/8/2024
4.15.3.43941 137 11/8/2024
4.15.3.43937 137 11/8/2024
4.13.0.43933 4,217 5/23/2024
4.13.0.43929 143 5/22/2024
4.13.0.43928 163 5/16/2024
4.13.0.43926 206 5/16/2024
4.13.0.43922 206 5/15/2024
4.13.0.43910 132 5/8/2024
4.13.0.43907 352 5/7/2024
4.13.0.43905 130 5/7/2024
4.13.0.43903 128 5/7/2024
4.13.0.43902 130 5/7/2024
4.13.0.43901 139 5/7/2024
4.13.0.43899 127 5/7/2024
4.13.0.43894 173 4/15/2024
4.13.0.43890 154 4/11/2024
4.13.0.43887 140 4/11/2024
4.13.0.43884 138 4/11/2024
4.13.0.43883 142 4/11/2024
4.13.0.43870 362 3/24/2024
4.13.0.43857 545 8/21/2023
4.13.0.43683 228 8/15/2023
4.13.0.43597 214 8/14/2023
4.13.0.43592 209 8/14/2023
4.13.0 152 3/21/2024
4.13.0-xamarin.43596 254 8/14/2023
4.13.0-xamarin.43593 130 8/14/2023
4.11.1.41370 211 6/26/2023
4.11.1.41338 222 6/23/2023
4.11.1-develop.41314 155 6/23/2023