@@ -13,7 +13,7 @@ import { createActions } from './actions/index.js'
1313import { GetFeedbacksList } from './feedbacks.js'
1414import { OscMessage } from 'osc'
1515import { WingTransitions } from './handlers/transitions.js'
16- import { WingDeviceDetector } from './handlers/device-detector.js'
16+ import { WingDeviceDetectorInstance , WingDeviceDetectorInterface } from './handlers/device-detector.js'
1717import { ModelSpec , WingModel } from './models/types.js'
1818import { getDeskModel } from './models/index.js'
1919import { GetPresets } from './presets.js'
@@ -34,7 +34,7 @@ export class WingInstance extends InstanceBase<WingConfig> implements InstanceBa
3434
3535 connected : boolean = false
3636
37- deviceDetector : WingDeviceDetector | undefined
37+ deviceDetector : WingDeviceDetectorInterface | undefined
3838 connection : ConnectionHandler | undefined
3939 stateHandler : StateHandler | undefined
4040 feedbackHandler : FeedbackHandler | undefined
@@ -66,7 +66,6 @@ export class WingInstance extends InstanceBase<WingConfig> implements InstanceBa
6666 this . logger . setLoggerFn ( ( level , message ) => {
6767 this . log ( level , message )
6868 } )
69- this . logger . disable ( )
7069 this . logger . debugMode = config . debugMode ?? false
7170 this . logger . timestamps = config . debugMode ?? false
7271 await this . configUpdated ( config )
@@ -102,8 +101,6 @@ export class WingInstance extends InstanceBase<WingConfig> implements InstanceBa
102101 this . updateFeedbacks ( )
103102
104103 this . setupOscForwarder ( )
105-
106- this . deviceDetector ?. subscribe ( this . id )
107104 }
108105
109106 getConfigFields ( ) : SomeCompanionConfigField [ ] {
@@ -119,9 +116,11 @@ export class WingInstance extends InstanceBase<WingConfig> implements InstanceBa
119116 }
120117
121118 private setupDeviceDetector ( ) : void {
122- this . deviceDetector = new WingDeviceDetector ( this . logger )
123- this . deviceDetector ?. unsubscribe ( this . id )
124-
119+ this . deviceDetector = WingDeviceDetectorInstance
120+ if ( this . logger !== undefined ) {
121+ this . deviceDetector . addLogger ( this . logger )
122+ }
123+ this . deviceDetector . subscribe ( this . id )
125124 if ( this . deviceDetector ) {
126125 ; ( this . deviceDetector as any ) . on ?.( 'no-device-detected' , ( ) => {
127126 this . logger ?. warn ( 'No console detected on the network' )
@@ -175,7 +174,6 @@ export class WingInstance extends InstanceBase<WingConfig> implements InstanceBa
175174 this . connected = true
176175
177176 this . logger ?. info ( 'OSC connection established' )
178- this . logger ?. enable ( )
179177
180178 this . feedbackHandler ?. startPolling ( )
181179 this . stateHandler ?. state ?. requestNames ( this )
0 commit comments