Comments (2)
I'm trying to read data from a specific characteristic. I have already managed to read data using flutter_blue package. It has a similar class BluetoothCharacteristic
with a similar attribute , value
which returns Stream<List<int>>
. The flutter_web_bluetooth package however returns Stream<ByteData>
which I'm having difficulties reading from. Is there any neat way to convert the data type, Stream<ByteData>
to Stream<List<int>>
so that I can treat the data the same way I did previously with flutter_blue on Android and IOS?
This is what I already wrote with flutter_blue:
/// blue.Bluetooth is a BluetoothDevice object
blue.Bluetooth.readCharacteristic.value
.timeout(Duration(seconds: 5))
.firstWhere((d) {
if (d.isNotEmpty) {
if (d[0] == SOME_VAL) {
if (d[1] <= 100) {
setState(() => readingVal = d[1] / 100);
return true;
}
}
}
return false;
}, orElse: () => null);
This is what I tried with flutter_web_bluetooth:
blueWeb.Bluetooth.readCharacteristic.value
.timeout(Duration(seconds: 5))
.firstWhere((d) {
/// trying to convert <ByteData> to List<int>
List<int> dList = new List.from(
d.buffer.asUint8List(d.offsetInBytes, d.lengthInBytes));
if (dList.isNotEmpty) {
if (dList[0] == SOME_VAL) {
if (dList[1] <= 100) {
setState(() => readingVal = dList[1] / 100);
return true;
}
}
}
return false;
}, orElse: () => null);
It wasn't successful though.
from flutter_web_bluetooth.
You will only get a value from the stream if you use readValue
or startNotifications
.
The startNotifications
doesn't work in the latest version because of a typo. But if you get it from the git instead of from pub.dev it will work.
from flutter_web_bluetooth.
Related Issues (20)
- Error with brand new Flutter project HOT 2
- Unable to read data using .value property from a BluetoothCharacteristic object. HOT 6
- Misleading description on pub.dev HOT 4
- Support for getting list of characteristics from a service
- Can't find any service HOT 6
- MTU HOT 6
- Can We Get Manufacturer Data or FilterOption by Manufacturer data HOT 5
- How to determine the current connected device ? HOT 1
- Signal strength HOT 3
- Getting meta dependency issue HOT 1
- Thermal Printers compatibility?
- Interaction between Flutter web app and Flutter mobile app HOT 2
- Browser supports HOT 6
- Unable to getting Services of Bluetooth Device HOT 3
- Add exclusion filters
- Manufacturer Data Map is empty in advertisements HOT 6
- Support Notifications
- Cannot listen for changes on characteristic.startNotifications() HOT 5
- Couldn't find all of the services! HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from flutter_web_bluetooth.