Smart Bluetooth Forum Discussions
I downloaded the Android app to get the basic source code and decided the first step is to build the apk from source code. I am a very new to developing Android apps and thought this would be a good place to get some experience. I installed Eclipse about a month ago and have been plinking around with it to learn some basics.
Much to my chagrin, I found that I don't know how to bring in the WicedSense app into the Eclipse environment. I assume this is the expected development method, correct? Can someone please explain how to get the basic WicedSense app into Eclipse and build it?
I know this is a trivial question to someone who does this regularly, but I assume there will be other Hackathon entrants who have the same problem.
Show LessHi,
My team developed a BLE product which is connected to iOS. It is BLE peripheral device and works well with iOS 8.x.
Apple released iOS 9.0 (and 9.0.1, 9.0.2) recently. With iOS9, iOS cannot find some characteristic which can see with iOS8.x (and iOS9.1 beta).
Below images is captured LightBlue iOS app and show services / characteristics list.
iOS8.4 find 6 characteristics for 1st service and 2 characteristics for 2nd services.
On the other hand, iOS9.0.1 device find only 5 characteristics for 1st service and 1 for 2nd service.
The last characteristic looks like be lost.
Module is BCM 20737S.
We uses 128-bit UUIDs for both services and all characteristics.
We uses bonding with Passkey paring.
Not only LightBlue app but also our developed application has same issue.
We have 2 products using WICED Smart, and both product (another service/characteristic set) have similar problem.
We have other vendor module, and this product doesn't have the issue (tested only 1 product).
It might be iOS problem, but if you have any information and/or workaround for the issue, it is very appreciated.
In iOS forum, we found similar report. I cannot know reported product is related to WICED.
https://forums.developer.apple.com/thread/11926
I confirmed this issue has been fixed with iOS9.1 beta, but iOS9.1 release timing is not known.
Thank you very much for your kindly support.
iOS8.4:
iOS9.0.1
Show Less
I define one ID in stacknvram.h, during the application initialize, read this ID(1 byte) with bleprofile_ReadNVRAM(), if the value is not the dedicate value application expect, it will be initialize to the dedicated value and write back with bleprofile_WriteNVRAM(). But when the application reset and check this ID again, it seems the value is lost, any idea about this issue?
Show LessHello,
I'm trying to get the master to process a bleprofile_SendConnParamUpdateReq(100, 300, 1, 600) from a slave. I'm developing code for both master and slave. I can use blecm_ConnectionUpdate() to change the connection parameters, but I can not get the slave to change them. It seems that the data received on the master is not correct but using a sniffer the data looks good.
Here's data from the sniffer:
On the master when I dump out the trace, I see the following:
16:34:53 - blecm evt handler:
16:34:53 - 0e04010e200c
16:34:53 Connection is UP.
16:34:53 connUp
16:34:53 noAdv
16:34:53 ConnTimer stopped: 1
16:34:53 NoConn
16:34:55 -
16:34:55 - l2cap Rx:
16:34:55 - 40201700130004001b2a00aa140de008
16:34:55 - 0000c7180800dd6ab33e89
16:34:55 - Notification:2a, 16
16:34:55 - aa140de0080000c7180800dd6ab33e89
16:34:55 -
16:34:55 - l2cap Rx:
16:34:55 - 402010000c0005001201080064002c01
16:34:55 - 01005802
16:34:55 -
16:34:55 - l2cap Tx:
16:34:55 - 40200a0006000500130102000000
16:34:55 -
16:34:55 - blecm evt handler:
16:34:55 - 0f0402011320
16:34:55 ConnParamUpdateReq
16:34:55 ConnParamUpdate:Min Interval: 100, Max Interval: 300
16:34:55 ConnParamUpdate: Slave LAtency: 0, timeout: 0
16:34:55 -
16:34:55 - blecm evt handler:
16:34:55 - 13050140000100
It seems like both slave latency and supervisor timeouts are incorrect at 16:34:55.
Here's the image footprint on the master.
Patches start at | 0x00204568 (RAM address) |
Patches end at | 0x00205504 (RAM address) |
Application starts at | 0x00205140 (RAM address) |
Application ends at | 0x00206FD2 (RAM address) |
Patch size (including reused RAM) | 3996 bytes |
Patch size | 3032 bytes |
Application size | 7826 bytes |
------ | |
Total RAM footprint | 10858 bytes (10.6kiB) |
Is this a bug on the BLE stack? I'm using SDK2.2.1.71
Thanks,
Vincent
Show LessHi all,
I have a problem under Android and with only certain devices.
I'm using Wiced SDK 2.2.1 and BCM20736.
Problem is that I'm unable to receive notification when a characteristic changes.
This doesn't happen under windows or under IOS. It happens under Android 4.4.2 and 4.3 and only on Samsung devices, except galaxy tab.
It works for example on galaxy note with Android 5.0.1 and on huwaei with 4.4.2.
Searching on the net I found that someone had a similar problem with TI cc2541 and they solved it changing DEFAULT_CONN_PAUSE_PERIPHERAL and GAPROLE_PARAM_UPDATE_ENABLE.
bluetooth lowenergy - Android BLE notification on Samsung s4(Fixed) - Stack Overflow
I don't know meaning of these parameters. Is possible to apply same corrections on BCM20736?
I hope you can help me.
Thanks
Show LessIs the following warning anything to be concerned about? I see this when I compile Speed Test and other Apps in SDK 2.2.1
At this point I have made no changes to the App.
..\..\Tools\ARM_GNU\bin\Win32\arm-none-eabi-objdump: section '.data' mentioned in a -j option, but not found in any input file
Thanks,
Aaron
Show LessPer this thread: Re: clock reference/RTC during deep sleep?
We do not have an external 32kHz crystal on our board. Is there a simple example of how to setup the rtc_sample application to run off of the internal 128kHz oscillator? What simple modifications are required?
Thanks in advance,
Aaron
Show LessHi,
I am observing a very strange thing about the BLE chip BCM20737. After I power up this chip, it may reset every 3~4 minutes. I have recorded the debug traces, and I can see "Application Up" from debug trace every 3~4 minutes. I will print "Application Up" in app_Create function, which is registered in APPLICATION_INIT(). So this debug info should only appear once when the application starts up.
Here is the code:
static void bleptu_Create(void)
{
// some codes ...
ble_trace0("Application Up");
return;
}
APPLICATION_INIT()
{
bleapp_set_cfg(NULL,
0,
(void *)&bleptu_cfg,
(void *)&bleptu_puart_cfg,
(void *)&bleptu_gpio_cfg,
app_Create);
}
More information:
1. I also use an oscilloscope to probe at the reset pin of BLE 20737 chip, the reset pin is always pulled-up to high and very stable.
2. The BLE chip is BCM20737, not BCM20737S.
3. I have disabled sleep mode by adding the following code:
register in app_Create function.
devlpm_registerForLowPowerQueries(DeviceLPMQueriable, 0);
always return 0 to disable sleep mode
static UINT32 DeviceLPMQueriable(LowPowerModePollType type, UINT32 context)
{
// disable sleep
return 0;
}
4. I also see one sentence "CSA Filter Disable" before "Application Up". What does "CSA Filter" mean? I didn't add anything about it in my code. Does it relate with the reset issue?
If you have any ideas about this issue, I'd really appreciate your help.
Thank you
noalac
Hello,
I have several characteristics that I want to make readable and writable(no response) ONLY when the link is encrypted. I've searched the forum, but haven't found a definitive answer to the following questions:
1) Do the permissions logically AND with the properties? For example, if I enabled the read property and the read(authenticated) permission, does that allow reading only over an encrypted link?
2) Does the "authenticated" modifier on permissions solely indicate encryption required, or is MITM authentication being performed as well?
3) What combination of properties/permissions would result in requiring an encrypted link before the characteristic can be accessed?
4) I've seen mentions in a few other threads on the forum (late last year & earlier this year) a security app note that was in the process of being developed. Is it available yet, and if so, where?
Thank you for any assistance,
David
Show LessI build a application based on the hello-client that is checking some
environmental values and send some data to connected slaves. A user can change
some data with his smartphone. But if the smartphone is connected, the
hello-client can't write to the connected slave.
How can I switch back to the slave to send new data?
Show Less