Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ble module merge #17

Merged
merged 4 commits into from
Feb 1, 2021
Merged

ble module merge #17

merged 4 commits into from
Feb 1, 2021

Conversation

kpwebb
Copy link
Member

@kpwebb kpwebb commented Jan 20, 2021

initial ble module integration using new notification services described in #15

@kpwebb kpwebb requested a review from russbiggs January 20, 2021 17:34
@russbiggs
Copy link
Contributor

russbiggs commented Jan 29, 2021

After a couple unsuccessful attempts on BLU Android device, I got the BLE to connect and it seems to get the signal from the wheel but there is an exception thats printing out in the Debugger:

E/flutter (14407): [ERROR:flutter/lib/ui/ui_dart_state.cc(177)] Unhandled Exception: PlatformException(set_notification_error, error when writing the descriptor, null, null)

and the full trace

E/flutter (14407): #0      StandardMethodCodec.decodeEnvelope
package:flutter/…/services/message_codecs.dart:582
E/flutter (14407): #1      MethodChannel._invokeMethod
package:flutter/…/services/platform_channel.dart:159
E/flutter (14407): <asynchronous suspension>
E/flutter (14407): #2      MethodChannel.invokeMethod
package:flutter/…/services/platform_channel.dart:332
E/flutter (14407): #3      BluetoothCharacteristic.setNotifyValue
package:flutter_blue/src/bluetooth_characteristic.dart:153
E/flutter (14407): #4      BleWheel.subscribeRevreseCounter
package:curbwheel/service/bluetooth_service.dart:135
E/flutter (14407): #5      BleWheel.connect
package:curbwheel/service/bluetooth_service.dart:110
E/flutter (14407): #6      _rootRunUnary (dart:async/zone.dart:1198:47)
E/flutter (14407): #7      _CustomZone.runUnary (dart:async/zone.dart:1100:19)
E/flutter (14407): #8      _FutureListener.handleValue (dart:async/future_impl.dart:143:18)
E/flutter (14407): #9      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:696:45)
E/flutter (14407): #10     Future._propagateToListeners (dart:async/future_impl.dart:725:32)
E/flutter (14407): #11     Future._complete (dart:async/future_impl.dart:519:7)
E/flutter (14407): #12     _cancelAndValue (dart:async/stream_pipe.dart:61:12)
E/flutter (14407): #13     Stream.first.<anonymous closure> (dart:async/stream.dart:1300:7)
E/flutter (14407): #14     _rootRunUnary (dart:async/zone.dart:1198:47)
E/flutter (14407): #15     _CustomZone.runUnary (dart:async/zone.dart:1100:19)
E/flutter (14407): #16     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1005:7)
E/flutter (14407): #17     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
E/flutter (14407): #18     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:285:7)
E/flutter (14407): #19     _ForwardingStreamSubscription._add (dart:async/stream_pipe.dart:127:11)
E/flutter (14407): #20     _MapStream._handleData (dart:async/stream_pipe.dart:224:10)
E/flutter (14407): #21     _ForwardingStreamSubscription._handleData (dart:async/stream_pipe.dart:157:13)
E/flutter (14407): #22     _rootRunUnary (dart:async/zone.dart:1198:47)
E/flutter (14407): #23     _CustomZone.runUnary (dart:async/zone.dart:1100:19)
E/flutter (14407): #24     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1005:7)
E/flutter (14407): #25     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
E/flutter (14407): #26     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:285:7)
E/flutter (14407): #27     _ForwardingStreamSubscription._add (dart:async/stream_pipe.dart:127:11)
E/flutter (14407): #28     _MapStream._handleData (dart:async/stream_pipe.dart:224:10)
EE/flutter (14407): #46     _rootRunUnary (dart:async/zone.dart:1198:47)
E/flutter (14407): #47     _CustomZone.runUnary (dart:async/zone.dart:1100:19)
E/flutter (14407): #48     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1005:7)
E/flutter (14407): #49     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
E/flutter (14407): #50     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:285:7)
E/flutter (14407): #51     _ForwardingStreamSubscription._add (dart:async/stream_pipe.dart:127:11)
E/flutter (14407): #52     _MapStream.
D/FlutterBluePlugin(14407): [onDescriptorWrite] uuid: 00002902-0000-1000-8000-00805f9b34fb status: 0
E/flutter (14407): [ERROR:flutter/lib/ui/ui_dart_state.cc(177)] Unhandled Exception: RangeError (byteOffset): Invalid value: Valid value range is empty: 0
E/flutter (14407): #0      _ByteDataView.getUint32 (dart:typed_data-patch/typed_data_patch.dart:4580:7)
E/flutter (14407): #1      BleWheel.subscribeForwardCounter.<anonymous closure>
package:curbwheel/service/bluetooth_service.dart:129
E/flutter (14407): #2      _rootRunUnary (dart:async/zone.dart:1198:47)
E/flutter (14407): #3      _CustomZone.runUnary (dart:async/zone.dart:1100:19)
E/flutter (14407): #4      _CustomZone.runUnaryGuarded (dart:async/zone.dart:1005:7)
E/flutter (14407): #5      _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
E/flutter (14407): #6      _BufferingStreamSubscription._add (dart:async/stream_impl.dart:285:7)
E/flutter (14407): #7      _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:808:19)
E/flutter (14407): #8      _StreamController._add (dart:async/stream_controller.dart:682:7)
E/flutter (14407): #9      _StreamController.add (dart:async/stream_controller.dart:624:5)
E/flutter (14407): #10     _rootRunUnary (dart:async/zone.dart:1198:47)
E/flutter (14407): #11     _CustomZone.runUnary (dart:async/zone.dart:1100:19)
E/flutter (14407): #12     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1005:7)
E/flutter (14407): #13     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
E/flutter (14407): #14     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:285:7)
E/flutter (14407): #15     _SyncBroadcastStreamController._sendData (dart:async/broadcast_stream_controller.dart:385:25)
E/flutter (14407): #16     _BroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:250:5)
E/flutter (14407): #17     _StartWithStreamSink._safeAddFirstEvent
package:rxdart/…/transformers/start_with.dart:56
E/flutter (14407): #18     _StartWithStreamSink.onListen.<anonymous closure>
package:rxdart/…/transformers/start_with.dart:38
E/flutter (14407): #19     _rootRun (dart:async/zone.dart:1182:47)
E/flutter (14407): #20     _CustomZone.run (dart:async/zone.dart:1093:19)
E/flutter (14407): #21     _CustomZone.runGuarded (dart:async/zone.dart:997:7)
E/flutter (14407): #22     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1037:23)
E/flutter (14407): #23     _rootRun (dart:async/zone.dart:1190:13)
E/flutter (14407): #24     _CustomZone.run (dart:async/zone.dart:1093:19)
E/flutter (14407): #25     _CustomZone.runGuarded (dart:async/zone.dart:997:7)
E/flutter (14407): #26     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1037:23)
E/flutter (14407): #27     _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
E/flutter (14407): #28     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)

@russbiggs
Copy link
Contributor

@kpwebb I've also pushed a fix on the Android manifest which didnt allow it to build for Android, i think this was something i did in a previous commit

@russbiggs
Copy link
Contributor

I've tested this using the Pi and the SiliconLabs mc, same exception is thrown on both

@russbiggs russbiggs merged commit 491a035 into main Feb 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants