Git Product home page Git Product logo

Comments (13)

hathach avatar hathach commented on September 15, 2024 1

Hi @cyrusbowman,

We just update the beta firmware (also 0.7.0 with build date "Mar 25 2016") to enable support for wirte_without_response and write with reponse. Can you test to see if that work for you ?

If possible please let me know how you to test there, so that we can also do it here.

from adafruit_bluefruitle_firmware.

cyrusbowman avatar cyrusbowman commented on September 15, 2024 1

@hathach Sorry just saw this. Downloaded and tested. Works great. I am able to get ~668 bytes/sec without data loss. Thats sending 20 bytes at an interval of 0.030 sec on iOS. You can probably get it going a little faster with a smaller interval but that suits my needs! Thanks!

@DadoKomar with swift you do blePeripheral.writeValue(DATA, forCharacteristic: CHARACTERISTIC, type: CBCharacteristicWriteType.WithoutResponse)

from adafruit_bluefruitle_firmware.

don avatar don commented on September 15, 2024

The UART service doesn't support write WithoutResponse. Using write WithResponse the correct way. I think this is by design. The hardware could support both but doesn't.

Note that the older Bluefruit nRF8001 is the opposite, you must use write WithoutResponse.

I support both by checking the characteristic's properties before writing. For most cases this doesn't effect the app since CoreBluetooth is transparently handing the write response.

if ((characteristic.properties & CBCharacteristicPropertyWrite) == CBCharacteristicPropertyWrite) {
    [p writeValue:data forCharacteristic:characteristic type:CBCharacteristicWriteWithResponse];
}
else if ((characteristic.properties & CBCharacteristicPropertyWriteWithoutResponse) == CBCharacteristicPropertyWriteWithoutResponse) {
    [p writeValue:data forCharacteristic:characteristic type:CBCharacteristicWriteWithoutResponse];
}

from adafruit_bluefruitle_firmware.

microbuilder avatar microbuilder commented on September 15, 2024

Thanks for the comment Don!

from adafruit_bluefruitle_firmware.

cyrusbowman avatar cyrusbowman commented on September 15, 2024

Thanks @don. I was wanting to write WithoutResponse because the TX rates aren't high enough for my application. I need ~500 bytes/sec. I like this module but I am not able to get as fast as write rates as the two others I am using. The others have similar speeds as this one when writing WithResponse (~330 bytes/sec). But when writing WithoutResponse on the other two modules I am able to get speeds up to 1130 bytes/sec without any data loss, I was hoping this module would support it.

from adafruit_bluefruitle_firmware.

microbuilder avatar microbuilder commented on September 15, 2024

Have you tried with the 0.7.0 BETA firmware? It's still a work in progress, but we've been making some meaningful effort to improve speed for the upcoming release. The UART service is able to hit ~1KB/s, for example, though it of course depends on what's on the other end, and we actually need to push some updates out to the Bluefruit LE Connect apps now since they aren't keeping up with the latest firmware throughput. You can enable optional BETA firmware updates in both the iOS and Android apps in the respective app config screens.

from adafruit_bluefruitle_firmware.

cyrusbowman avatar cyrusbowman commented on September 15, 2024

@microbuilder yes I am on 0.7.0 beta. I wrote an app to check the speed. I haven't tried on Android (because I need iOS support) but you'd probably be able to get the 1KB/s you suggest. With iOS's longer connection interval it'd be hard and maybe not even possible to get 500 bytes/sec when you are writing acknowledged packets (ie. WithResponse). But with unacknowledged packets you can send much faster, you just aren't guaranteed delivery. That is what I was hoping to do with this module. There's a TinySine and Serialio module that can do it. I like this module better than those two but until it can send unacknowledged packets I'll have to go with the others.

from adafruit_bluefruitle_firmware.

DadoKomar avatar DadoKomar commented on September 15, 2024

Hello @hathach

I have enabled beta versions for your BLE software under iOS, but can not see any beta update in App Store.
When will be 0.7.0 out?

Thanks for help.

from adafruit_bluefruitle_firmware.

DadoKomar avatar DadoKomar commented on September 15, 2024

Hello @cyrusbowman

How to send in data mode without response. I did 660 chars/s with old 070 beta firmware. Just the application on iOS started to fall a lot.

Thnaks

from adafruit_bluefruitle_firmware.

hathach avatar hathach commented on September 15, 2024

@DadoKomar please try to follow the FAQs here https://learn.adafruit.com/introducing-adafruit-ble-bluetooth-low-energy-friend/faq#faq-10

from adafruit_bluefruitle_firmware.

microbuilder avatar microbuilder commented on September 15, 2024

There will be an update for the iOS application shortly ... it does currently have problems with really high speed transfers on 0.7.0. The Android app should be OK if you have access to an Android phone while we finish up the next version of the iOS app, though. Sorry for the delay.

from adafruit_bluefruitle_firmware.

microbuilder avatar microbuilder commented on September 15, 2024

@DadoKomar This is really a support issue not a feature request or bug report ... can you please post support related questions in the Adafruit support forum? The support staff generally doesn't monitor the github issues here.

from adafruit_bluefruitle_firmware.

DadoKomar avatar DadoKomar commented on September 15, 2024

Ah, sorry, of course firmware, thought we talking about app. Testing new beta. And I see under nRF UART it is dividing message into 2 to 6 BT packets. (30 chars message now, sending once per sec). I think it behaves like this because of data mode. Now it has nice dalay in sending message. Looks that this BT has a bright future. ;)))

from adafruit_bluefruitle_firmware.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.