Giter Site home page Giter Site logo

Comments (12)

freber avatar freber commented on July 30, 2024

Anyone successfully connected to a peripheral from MacOS 10.8 or 10.9? I've tried everything at this point. Maybe it's something about the connection window being to short? Can it be configured?

Best regards,
Fredrik

from arduino-bleperipheral.

sandeepmistry avatar sandeepmistry commented on July 30, 2024

@freber I've got it working with 10.9 using LightBlue. Sometimes it does take a few attempts to connect, I'm not sure if it's a connection interval thing or just the way OS X behaves.

Connection interval could be configure if nRF Go Studio exposes it, we would need to figure out which bytes in the setup message control it.

from arduino-bleperipheral.

freber avatar freber commented on July 30, 2024

Interesting, I couldn't get it to connect in LightBlue, I can only see it advertise.

I will try to diff the service.h file with a change in the connection interval to see where that goes in the configuration.

Also, I couldn't strip down the working profile more than 11 config messages. I can see that you managed to get it down to 7.

Best regards,
Fredrik

from arduino-bleperipheral.

freber avatar freber commented on July 30, 2024

I manged to diff the service.h files from a few different configurations now.
It looks like the connection interval is set at 2 places.

baseSetupMsgs[8] and baseSetupMsgs[last]

diff services_min1000ms_max4000ms.h services_min10ms_max30ms.h

----- start -------------------------------------------------------------------
77,78c77,78
< #define GAP_PPCP_MAX_CONN_INT 0xc80 /**< Maximum connection interval as a multiple of 1.25 msec , 0xFFFF means no specific value requested */
< #define GAP_PPCP_MIN_CONN_INT  0x320 /**< Minimum connection interval as a multiple of 1.25 msec , 0xFFFF means no specific value requested */
---
> #define GAP_PPCP_MAX_CONN_INT 0x18 /**< Maximum connection interval as a multiple of 1.25 msec , 0xFFFF means no specific value requested */
> #define GAP_PPCP_MIN_CONN_INT  0x8 /**< Minimum connection interval as a multiple of 1.25 msec , 0xFFFF means no specific value requested */
133c133
<0x04,0x01,0x20,0x03,0x80,0x0c,0x00,0x00,0xff,0xff,0x04,0x04,\
---
>0x04,0x01,0x08,0x00,0x18,0x00,0x00,0x00,0xff,0xff,0x04,0x04,\
267c267
<0x06,0x06,0xf0,0x00,0x03,0xe5,0xf0,\
---
>0x06,0x06,0xf0,0x00,0x03,0xe7,0x42,\

----- end --------------------------------------------------------------------

I wonder why it's set in 2 different places. Also, I actually wonder what are reasonable values for these two configuration parameters together with the Connection supervision timeout ;)

Regards,
Fredrik

from arduino-bleperipheral.

freber avatar freber commented on July 30, 2024

I've updated the syntax markdown now..

from arduino-bleperipheral.

sandeepmistry avatar sandeepmistry commented on July 30, 2024

Just curious which nRF8001 device and Arduino are you using?

from arduino-bleperipheral.

freber avatar freber commented on July 30, 2024

I'm using a Arduino Pro Mini (3.3v) and a Bluefruit LE (http://www.adafruit.com/products/1697)

from arduino-bleperipheral.

sandeepmistry avatar sandeepmistry commented on July 30, 2024

One more thing to try out is to clear the CoreBluetooth/blued cache, I wonder if it's expecting the extra characteristics nRFgo studio uses (which I removed). See: http://stackoverflow.com/questions/23549859/clearing-corebluetooth-gatt-cache-without-removing-bond

from arduino-bleperipheral.

freber avatar freber commented on July 30, 2024

Sorry for late reply.

I've tried to clear the cache. Still no progress. I've pulled from the git repo today and is trying the starter.ino together with LightBlue. I've mailed Punch Through Design (makers of LightBlue) and asked what intervals they are using.

They use 20 milliseconds for connection interval and 5.9 seconds for supervision.

Best regards,
Fredrik

from arduino-bleperipheral.

sandeepmistry avatar sandeepmistry commented on July 30, 2024

@freber do you have another Arduino like the Uno or Leonardo to test with? I don't have a Arduino Pro Mini (3.3v) to try out the lib with ...

You could also try manually modifying the setup messages (with the diffs from) earlier in nRF800.cpp

from arduino-bleperipheral.

sandeepmistry avatar sandeepmistry commented on July 30, 2024

@freber debug output would also be useful, uncomment: https://github.com/sandeepmistry/arduino-BLEPeripheral/blob/master/nRF8001.cpp#L13

Also, Apple's Hardware IO tools has a BLE packet inspector, the trace from that would be useful as well ... http://iosdevblog.com/tag/hardware-io-tools-for-xcode/

from arduino-bleperipheral.

sandeepmistry avatar sandeepmistry commented on July 30, 2024

@freber closing this for now, please re-open with the request debug info ...

from arduino-bleperipheral.

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.