BreX900 / mek-packages

10 stars 13 forks source link

Some issues about update device, lost connect and reconnect #78

Open trungnt20 opened 3 weeks ago

trungnt20 commented 3 weeks ago

Hi @BreX900, thanks for this lib. I'm encountering a few issues while using your SDK:

Can you guide me on how to identify if an M2 device has a new update available? To update the M2 device, we would use the function installAvailableUpdate(), correct? After using this function, how can we listen for events that indicate the device update completion? How can we determine which M2 device have lost connection, and what is the process for reconnecting it? I hope you can help explain these issues I'm facing.

Thanks

kekko7072 commented 6 days ago

I'm also getting issue when updating.

 Received reader software update progress: 0.12999999523162842
D/UsbDeviceConnectionJNI(17504): close
I/flutter (17504): Failed to install update 4.01.00.37-SZZZ_Prod_EU_W1_on_v22-511001: TerminalException: notConnectedToReader
I/flutter (17504): Not connected to reader
I/flutter (17504): com.stripe.stripeterminal.external.models.TerminalException: Not connected to reader
I/flutter (17504):  at com.stripe.stripeterminal.internal.common.makers.TerminalExceptionMaker$Companion.fromReaderUpdateException(TerminalExceptionMaker.kt:45)
I/flutter (17504):  at com.stripe.stripeterminal.internal.common.adapter.BbposAdapter$UpdateOperation.onUpdateException(BbposAdapter.kt:640)
I/flutter (17504):  at com.stripe.stripeterminal.internal.common.adapter.BbposAdapter$register$19.accept(BbposAdapter.kt:488)
I/flutter (17504):  at com.stripe.stripeterminal.internal.common.adapter.BbposAdapter$register$19.accept(BbposAdapter.kt:480)
I/flutter (17504):  at io.reactivex.rxjava3.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
I/flutter (17504):  at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:202)
I/flutter (17504):  at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:256)
I/flutter (17504):  at io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler$ExecutorWorker$BooleanRunnable.run(ExecutorScheduler.java:324)
I/flutter (17504):  at io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler$ExecutorWorker.runEager(ExecutorScheduler.java:289)
I/flutter (17504):  at io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler$ExecutorWorker.run(ExecutorScheduler.java:250)
I/flutter (17504):  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/flutter (17504):  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/flutter (17504):  at java.lang.Thread.run(Thread.java:923)
I/flutter (17504): Caused by: com.stripe.core.hardware.updates.ReaderUpdateException$NotConnectedToReader: USB disconnected
I/flutter (17504):  at com.stripe.core.bbpos.BbposOtaListener.handleOTAResultError(BbposOtaListener.kt:179)
I/flutter (17504):  at com.stripe.core.bbpos.BbposOtaListener.handleOTAResultError$default(BbposOtaListener.kt:160)
I/flutter (17504):  at com.stripe.core.bbpos.BbposOtaListener.onReturnRemoteFirmwareUpdateResult(BbposOtaListener.kt:124)
I/flutter (17504):  at com.stripe.bbpos.bbdevice.ota.BBDeviceOTAController.d(SourceFile:1)
I/flutter (17504):  at com.stripe.bbpos.bbdevice.ota.BBDeviceOTAController.$r8$lambda$yLV7c84D_jiHUVI2q4oubquBza8(Unknown Source:0)
I/flutter (17504):  at com.stripe.bbpos.bbdevice.ota.BBDeviceOTAController$$ExternalSyntheticLambda8.run(Unknown Source:4)
I/flutter (17504):  at android.os.Handler.handleCallback(Handler.java:938)
I/flutter (17504):  at android.os.Handler.dispatchMessage(Handler.java:99)
I/flutter (17504):  at android.os.Looper.loop(Looper.java:223)
I/flutter (17504):  at android.app.ActivityThread.main(ActivityThread.java:7664)
I/flutter (17504):  at java.lang.reflect.Method.invoke(Native Method)
I/flutter (17504):  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
I/flutter (17504):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
I/flutter (17504): TerminalException: notConnectedToReader
I/flutter (17504): Not connected to reader
I/flutter (17504): com.stripe.stripeterminal.external.models.TerminalException: Not connected to reader
I/flutter (17504):  at com.stripe.stripeterminal.internal.common.makers.TerminalExceptionMaker$Companion.fromReaderUpdateException(TerminalExceptionMaker.kt:45)
I/flutter (17504):  at com.stripe.stripeterminal.internal.common.adapter.BbposAdapter$UpdateOperation.onUpdateException(BbposAdapter.kt:640)
I/flutter (17504):  at com.stripe.stripeterminal.internal.common.adapter.BbposAdapter$register$19.accept(BbposAdapter.kt:488)
I/flutter (17504):  at com.stripe.stripeterminal.internal.common.adapter.BbposAdapter$register$19.accept(BbposAdapter.kt:480)
I/flutter (17504):  at io.reactivex.rxjava3.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
I/flutter (17504):  at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:202)
I/flutter (17504):  at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:256)
I/flutter (17504):  at io.reactivex.rxjava3.internal.schedulers
I/flutter (17504): #0      TerminalPlatform._throwIfIsHostException (package:mek_stripe_terminal/src/platform/terminal_platform.dart:186:5)
I/flutter (17504): #1      _$TerminalPlatform.connectUsbReader (package:mek_stripe_terminal/src/platform/terminal_platform.api.dart:142:24)
I/flutter (17504): <asynchronous suspension>
I/flutter (17504): #2      Terminal.connectUsbReader.<anonymous closure> (package:mek_stripe_terminal/src/terminal.dart:224:14)
I/flutter (17504): <asynchronous suspension>
I/flutter (17504): #3      Terminal._handleReaderConnection (package:mek_stripe_terminal/src/terminal.dart:599:14)
I/flutter (17504): <asynchronous suspension>
I/flutter (17504): #4      Terminal.connectUsbReader (package:mek_stripe_terminal/src/terminal.dart:223:12)
I/flutter (17504): <asynchronous suspension>
I/flutter (17504): #5      TerminalReaderService.tryConnectReader (package:terminal/services/terminal_reader.dart:34:16)
I/flutter (17504): <asynchronous suspension>
I/flutter (17504): #6      _KioskPageState._connectReader (package:terminal/interfaces/pages/kiosk_page.dart:194:9)
I/flutter (17504): <asynchronous suspension>
I/flutter (17504): ----------------------------------------------------

I'm not getting this issue on version: mek_stripe_terminal: ^3.4.0