google / uribeacon

The Web Uri Open Beacon for the Internet of Things
Apache License 2.0
407 stars 108 forks source link

Validator fails with characteristic descriptors #201

Open KST-collin opened 9 years ago

KST-collin commented 9 years ago

The UriBeacon validator app fails most tests when descriptions are added to private characteristics.

I am currently using a nRF51822 board with a custom service with multiple characteristics alongside the UriBeacon service, and when I add descriptions to the characteristics on my custom service, The validator fails almost immediately. I have seen that the validator will read the characteristic description in my custom service instead of the URI from the data characteristic of the UriBeacon service. Removing the descriptors causes the Validator to pass every test.

g-ortuno commented 9 years ago

When you say that the Validator fails you mean it crashes?

On Tue Feb 17 2015 at 2:34:27 PM collinmast notifications@github.com wrote:

The UriBeacon validator app fails most tests when descriptions are added to private characteristics.

I am currently using a nRF51822 board with a custom service with multiple characteristics alongside the UriBeacon service, and when I add descriptions to the characteristics on my custom service, The validator fails almost immediately. I have seen that the validator will read the characteristic description in my custom service instead of the URI from the data characteristic of the UriBeacon service. Removing the descriptors causes the Validator to pass every test.

— Reply to this email directly or view it on GitHub https://github.com/google/uribeacon/issues/201.

KST-collin commented 9 years ago

The app doesn't crash, it just starts failing one test after another. Expanding the failed tests and examining the output, I can see that the value is reading my descriptors instead of the actual UriBeacon characteristic data.

g-ortuno commented 9 years ago

Hmmm can you try configuring the beacon with the Sample App?

g-ortuno commented 9 years ago

https://github.com/google/uribeacon/releases/download/v1.3/uribeacon-sample-release.apk

KST-collin commented 9 years ago

Gio, I just updated to the sample release from the link you provided. The UriBeacon sample app was NOT able to connect to the device. To narrow down was was going on, I removed the characteristic descriptions from my device and re-ran the validator. My device still failed the tests in the same way, but reported different URI data than the previous test. Upon further investigation, I removed the Device Information Service from my device and noticed that the validator passed all tests without any problems and is able to be configured with the sample app.

schilit commented 9 years ago

Are you using the mbed code? There is a bug that rohit at arm is tracking down. The symptom is that characteristics get dropped. Use Nordic tools to look at characteristics and you'll see.

Please point us at your repo and we get rohit to give it a look.

Bill On Feb 19, 2015 5:39 PM, "collinmast" notifications@github.com wrote:

Gio, I just updated to the sample release from the link you provided. The UriBeacon sample app was NOT able to connect to the device. To narrow down was was going on, I removed the characteristic descriptions from my device and re-ran the validator. My device still failed the tests in the same way, but reported different URI data than the previous test. Upon further investigation, I removed the Device Information Service from my device and noticed that the validator passed all tests without any problems and is able to be configured with the sample app.

— Reply to this email directly or view it on GitHub https://github.com/google/uribeacon/issues/201#issuecomment-75185026.

KST-collin commented 9 years ago

The firmware we are using has been built from the ground up to include the UriBeacon service as well as our custom configuration service (we use the Keil compiler for development). Please let me know if this would still be helpful to rohit even though we are not using the mbed code.

schilit commented 9 years ago

Seems unlikely but I'm interested in whether your version is dropping characteristics. Can you connect with a tool other than the validator and see?

Bill On Feb 19, 2015 9:06 PM, "collinmast" notifications@github.com wrote:

The firmware we are using has been built from the ground up to include the UriBeacon service as well as our custom configuration service (we use the Keil compiler for development). Please let me know if this would still be helpful to rohit even though we are not using the mbed code.

— Reply to this email directly or view it on GitHub https://github.com/google/uribeacon/issues/201#issuecomment-75198238.

KST-collin commented 9 years ago

Bill,

Are able to connect with Nordic's Master Control Panel app for android. I use that app to verify connections and to to write and read data from the UriBeacon characteristics. Their app formats the advertisement and I can see that I am able to update the advertisements from characteristic writes

schilit commented 9 years ago

Yes that is what I use. So you are seeing all characteristics? On Feb 19, 2015 11:11 PM, "collinmast" notifications@github.com wrote:

Bill,

Are able to connect with Nordic's Master Control Panel app for android. I use that app to verify connections and to to write and read data from the UriBeacon characteristics. Their app formats the advertisement and I can see that I am able to update the advertisements from characteristic writes

— Reply to this email directly or view it on GitHub https://github.com/google/uribeacon/issues/201#issuecomment-75208852.

KST-collin commented 9 years ago

I am seeing all characteristics. When I connect, I can see that my three services and characteristics are all enumerated. I can read and write from each normally, but the validator fails when the additional descriptors for the characteristics in place.

schilit commented 9 years ago

Additional descriptors is a problem we are looking into. For now, disable the descriptors and run the validator.

On Mon, Mar 2, 2015 at 9:43 AM, collinmast notifications@github.com wrote:

I am seeing all characteristics. When I connect, I can see that my three services and characteristics are all enumerated. I can read and write from each normally, but the validator fails when the additional descriptors for the characteristics in place.

— Reply to this email directly or view it on GitHub https://github.com/google/uribeacon/issues/201#issuecomment-76760263.

g-ortuno commented 9 years ago

If the UriBeacon Sample App can't connect then it might be the case that the Physical Web App won't be able either.

On Mon, Mar 2, 2015, 11:21 AM Bill Schilit notifications@github.com wrote:

Additional descriptors is a problem we are looking into. For now, disable the descriptors and run the validator.

On Mon, Mar 2, 2015 at 9:43 AM, collinmast notifications@github.com wrote:

I am seeing all characteristics. When I connect, I can see that my three services and characteristics are all enumerated. I can read and write from each normally, but the validator fails when the additional descriptors for the characteristics in place.

— Reply to this email directly or view it on GitHub https://github.com/google/uribeacon/issues/201#issuecomment-76760263.

— Reply to this email directly or view it on GitHub https://github.com/google/uribeacon/issues/201#issuecomment-76789415.