@@ -57,15 +57,18 @@ import {
57
57
} from '../util/usbsdfuHelpers' ;
58
58
import * as userInputActions from './userInputActions' ;
59
59
60
+ let abortController : AbortController | undefined ;
61
+
60
62
const defaultDfuImage : DfuImage = {
61
63
name : '' ,
62
64
initPacket : defaultInitPacket ,
63
65
firmwareImage : Buffer . alloc ( 0 ) ,
64
66
} ;
65
67
66
68
export const openDevice =
67
- ( device : Device ) : AppThunk < RootState > =>
69
+ ( device : Device , controller : AbortController ) : AppThunk < RootState > =>
68
70
dispatch => {
71
+ abortController = controller ;
69
72
logger . info (
70
73
'Using nrfutil-device to communicate with target via USB SDFU protocol'
71
74
) ;
@@ -91,7 +94,10 @@ export const refreshMemoryLayout =
91
94
device ,
92
95
async deviceInBootLoader => {
93
96
const fwInfo = await NrfutilDeviceLib . getFwInfo (
94
- deviceInBootLoader
97
+ deviceInBootLoader ,
98
+ undefined ,
99
+ undefined ,
100
+ abortController
95
101
) ;
96
102
dispatch (
97
103
updateCoreOperations ( {
@@ -219,7 +225,13 @@ export const resetDevice =
219
225
state : 'loading' ,
220
226
} )
221
227
) ;
222
- await NrfutilDeviceLib . reset ( device ) ;
228
+ await NrfutilDeviceLib . reset (
229
+ device ,
230
+ undefined ,
231
+ undefined ,
232
+ undefined ,
233
+ abortController
234
+ ) ;
223
235
logger . info ( `Resetting device completed` ) ;
224
236
dispatch (
225
237
updateCoreOperations ( {
@@ -521,7 +533,10 @@ export const operateDFU = async (
521
533
await NrfutilDeviceLib . program (
522
534
device ,
523
535
{ buffer : zipBuffer , type : 'zip' } ,
524
- onProgress
536
+ onProgress ,
537
+ undefined ,
538
+ undefined ,
539
+ abortController
525
540
) ;
526
541
527
542
logger . info ( 'All dfu images have been written to the target device' ) ;
0 commit comments