Skip to content

Commit ec53647

Browse files
committed
Version 4.13.0
1 parent c899c50 commit ec53647

File tree

10 files changed

+29
-73
lines changed

10 files changed

+29
-73
lines changed

Example/Podfile.lock

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
PODS:
2-
- iOSDFULibrary (4.12.0):
2+
- iOSDFULibrary (4.13.0):
33
- ZIPFoundation (= 0.9.11)
44
- ZIPFoundation (0.9.11)
55

@@ -15,7 +15,7 @@ EXTERNAL SOURCES:
1515
:path: "../"
1616

1717
SPEC CHECKSUMS:
18-
iOSDFULibrary: 9474d6f5a0db68abdbee465ef9274d549a67b2b3
18+
iOSDFULibrary: 3b9de67ed4bfb901b5f09c2fea843f65e152612d
1919
ZIPFoundation: b1f0de4eed33e74a676f76e12559ab6b75990197
2020

2121
PODFILE CHECKSUM: 16697609d795697cac6384a823bc962ccbddb9d0

Example/Pods/Local Podspecs/iOSDFULibrary.podspec.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Example/Pods/Manifest.lock

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Example/Pods/Target Support Files/iOSDFULibrary-iOS/iOSDFULibrary-iOS-Info.plist

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Example/Pods/Target Support Files/iOSDFULibrary-macOS/iOSDFULibrary-macOS-Info.plist

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

+10-8
Original file line numberDiff line numberDiff line change
@@ -59,15 +59,15 @@ if you need to resymbolicate crash logs. you may want to keep those files bundle
5959
**For Swift Package Manager:**
6060

6161
```swift
62-
// swift-tools-version:5.5
62+
// swift-tools-version:5.6
6363
import PackageDescription
6464

6565
let package = Package(
6666
name: "<Your Product Name>",
6767
dependencies: [
6868
.package(
6969
url: "https://github.com/NordicSemiconductor/IOS-DFU-Library",
70-
.upToNextMajor(from: "<Desired Version, e.g. 4.11.1>")
70+
.upToNextMajor(from: "<Desired Version, e.g. 4.13.0>")
7171
)
7272
],
7373
targets: [.target(name: "<Your Target Name>", dependencies: ["NordicDFU"])]
@@ -76,7 +76,7 @@ let package = Package(
7676

7777
---
7878

79-
### Device Firmware Update (DFU)
79+
## Device Firmware Update (DFU)
8080

8181
The nRF5x Series chips are flash-based SoCs, and as such they represent the most flexible solution available.
8282
A key feature of the nRF5x Series and their associated software architecture and S-Series SoftDevices is the
@@ -126,21 +126,21 @@ indication when entered DFU mode and app mode. For bonded devices it is recommen
126126

127127
---
128128

129-
### Documentation
129+
## Documentation
130130

131131
See the [documentation](documentation.md) for more information.
132132

133133
---
134134

135-
### Requirements
135+
## Requirements
136136

137137
The library is compatible with nRF51 and nRF52 devices with S-Series Soft Device and the DFU Bootloader flashed on.
138138

139139
---
140140

141-
### DFU History
141+
## DFU History
142142

143-
#### Legacy DFU
143+
### Legacy DFU
144144

145145
* **SDK 4.3.0** - First version of DFU over Bluetooth Smart. DFU supports Application update.
146146
* **SDK 6.1.0** - DFU Bootloader supports Soft Device and Bootloader update. As the updated Bootloader may be dependent on the new Soft Device, those two may be sent and installed together.
@@ -153,7 +153,7 @@ The library is compatible with nRF51 and nRF52 devices with S-Series Soft Device
153153
- Buttonless update support for bonded devices
154154
- sharing the LTK between an app and the bootloader.
155155

156-
#### Secure DFU
156+
### Secure DFU
157157

158158
* **SDK 12.0.0** - New Secure DFU has been released. This library is fully backwards compatible so supports both the new and legacy DFU.
159159
* **SDK 13.0.0** - Buttonless DFU (still experimental) uses different UUIDs. No bond sharing supported. Bootloader will use address +1.
@@ -164,6 +164,8 @@ This library is fully backwards compatible and supports both the new and legacy
164164

165165
Check platform folders for mode details about compatibility for each library.
166166

167+
## Other frameworks
168+
167169
### React Native
168170

169171
An unofficial library for both iOS and Android that is based on this library is available for React Native: [react-native-nordic-dfu](https://github.com/Pilloxa/react-native-nordic-dfu)

README_OBJC.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ pod 'iOSDFULibrary'
1414
end
1515
```
1616
- Install dependencies
17-
17+
```
1818
pod install
19-
19+
```
2020
- Open the newly created `.xcworkspace` and begin working on your project.
2121
- If Xcode asks to migrate code to Swift 5.5, choose **Later**. (The codebase is Swift 5.5 already)
2222
- Click on the `Pods` project, then go to the `Build Settings`

changelog.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
### Changelog
2+
- **4.13.0**
3+
- Breaking change: Creating DFUFirmware may now throw an error, instead of returning nil (#486).
4+
- Improvement: Internal logging improvements (#487).
5+
26
- **4.12.0**
37
- Bugfix: Issue with incorrect resuming Init Packet fixed (#485).
48
- Bugfix: Fixed crash when Calculate checksum reasponse was received instead of Select Object response (#483, #480).

documentation.md

+4-54
Original file line numberDiff line numberDiff line change
@@ -30,60 +30,10 @@ In case of any communication error the peripheral device will never be bricked.
3030

3131
* **An iPhone 4S or iPad 2 or newer with iOS 9+**
3232

33-
Support for the Bluetooth 4.0 technology is required.
33+
Support for the Bluetooth 4.0 technology is required.
3434
* **nRF5x device for testing.**
3535

36-
A nRF5x Series device is required to test the working solution. If your final product is not available, use the nRF5x DK, which you can find [here](http://www.nordicsemi.com/eng/Products/nRF51-DK "nRF51 DK") or [here](http://www.nordicsemi.com/eng/Products/Bluetooth-Smart-Bluetooth-low-energy/nRF52-DK "nRF52 DK").
37-
38-
### Integration
39-
40-
To include the library in your project do one of those options:
41-
42-
1. Cocoapods (recommended):
43-
44-
Open up a terminal window, cd to your project's root and create a `Podfile` with the follwoing content:
45-
46-
```
47-
use_frameworks!
48-
target 'YourAppTargetName' do
49-
pod 'iOSDFULibrary'
50-
end
51-
```
52-
Then install dependencies
53-
```
54-
pod install
55-
```
56-
57-
**Notice:** Our Cocoapods releases will always be the exact same version as this repository. you may [follow our pod repository here](http://github.com/NordicSemiconductor/IOS-DFU-Library).
58-
59-
2. Include the library as a precompiled framework:
60-
61-
Copy the DFULibrary.framework file to you project.
62-
Add this framework to Embedded Binaries in the Target->Settings->General.
63-
64-
3. Include the library as source code:
65-
66-
Create a Workspace (if you already don't have one).
67-
Add your project to the workspace.
68-
Add the DFULibrary.xcodeproj file below your project, on the same level:
69-
```
70-
MyProject
71-
- MyProject
72-
- MyProjectTests
73-
- Products
74-
DFULibrary
75-
- DFULibrary
76-
- DFULibraryTests
77-
- Frameworks
78-
- Products
79-
- DFULibrary.framework <- this file
80-
- DFULibraryTests.xctest
81-
```
82-
Add (drag&drop) the DFULibrary.framework product file to your Target's Embedded Binaries.
83-
A framework build may be necessary. The framework must exist (color black, not red).
84-
85-
If you decide to use option **2** or **3**, make sure you have the `Embedded Content contains Swift code` set to `YES` in your
86-
target's **Build Options->Build Settings**
36+
A nRF5x Series device is required to test the working solution. If your final product is not available, use the nRF5x DK, which you can find [here](http://www.nordicsemi.com/eng/Products/nRF51-DK "nRF51 DK") or
8737

8838
### Usage
8939

@@ -100,9 +50,9 @@ To start the DFU process you have to do 2 things:
10050
```
10151
Swift:
10252
```swift
103-
let selectedFirmware = DFUFirmware(urlToZipFile:url)
53+
let selectedFirmware = try DFUFirmware(urlToZipFile: url)
10454
// or
105-
let selectedFirmware = DFUFirmware(urlToBinOrHexFile: url, urlToDatFile: datUrl, type: DFUFirmwareType.Application)
55+
let selectedFirmware = try DFUFirmware(urlToBinOrHexFile: url, urlToDatFile: datUrl, type: .application)
10656
```
10757

10858
2. The `DFUFirmware` object allows you to get basic information about the firmware, like sizes of each component or number of parts.

iOSDFULibrary.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "iOSDFULibrary"
3-
s.version = "4.12.0"
3+
s.version = "4.13.0"
44
s.summary = "This repository contains a library to perform Device Firmware Update on the nRF5x devices."
55
s.description = <<-DESC
66
The nRF5x Series chips are flash-based SoCs, and as such they represent the most flexible solution available. A key feature of the nRF5x Series and their associated software architecture and S-Series SoftDevices is the possibility for Over-The-Air Device Firmware Upgrade (OTA-DFU). See Figure 1. OTA-DFU allows firmware upgrades to be issued and downloaded to products in the field via the cloud and so enables OEMs to fix bugs and introduce new features to products that are already out on the market. This brings added security and flexibility to product development when using the nRF5x Series SoCs.

0 commit comments

Comments
 (0)