I am trying to run the helloclient.exe (Windows 7 peer app for hello_sensor in WICED Smart SDK), but Broadcom Bluetooth Profile Pack for Windows is not installed on my PC. Where can I find this?
I am running into into errors while compiling the sample applications with WICED-Smart-SDK-2.1.1 immediately afterunziping and 7z'ing the SDK. Is there a separate toolchain that I would need to download to find the missing files in the toolchain?
The following is the command which I am trying to run to build the proximity sample application:
./make proximity-BCM920737TAG_Q32 build
../../Tools/common/Linux64/perl: error while loading shared libraries: libperl.so.5.14: cannot open shared object file: No such file or directory
make: *** No rule to make target `base'. Stop.
make: *** [../tier2/brcm/mandatory/bld//patch.symdefs] Error 2
make: *** Waiting for unfinished jobs....
make: *** [proximity-BCM920737TAG_Q32] Error 2
Looking at how the perl binary is linked we see that indeed it is relying on the libperl shared library:
linux-vdso.so.1 => (0x00007ffffd39c000)
libperl.so.5.14 => not found
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f253b6cb000)
Looking for this shared library in the SDK didn't yield any results:
>find . -name libperl.so.5.14
>find . -name libperl.so
Looking at the files in the Toolchain in the Linux64 directory we see:
ls -la Tools/common/Linux64
drwxrwxr-x 2 ben ben 4096 Sep 8 12:31 .
drwxrwxr-x 7 ben ben 4096 Sep 8 12:31 ..
-rwxrwxr-x 1 ben ben 13545 Sep 8 12:31 bin2c
-rw-rw-r-- 1 ben ben 7365 Sep 8 12:31 bin2c.c
-rwxrwxr-x 1 ben ben 60064 Sep 8 12:31 cat
-rwxrwxr-x 1 ben ben 70984 Sep 8 12:31 cp
-rwxrwxr-x 1 ben ben 39448 Sep 8 12:31 cut
-rwxrwxr-x 1 ben ben 119885 Sep 8 12:31 dash
-rwxrwxr-x 1 ben ben 39328 Sep 8 12:31 echo
-rwxrwxr-x 1 ben ben 166112 Sep 8 12:31 make
-rwxrwxr-x 1 ben ben 35344 Sep 8 12:31 md5sum
-rwxrwxr-x 1 ben ben 31664 Sep 8 12:31 mkdir
-rwxrwxr-x 1 ben ben 10416 Sep 8 12:31 perl
-rwxrwxr-x 1 ben ben 47088 Sep 8 12:31 rm
-rwxrwxr-x 1 ben ben 39360 Sep 8 12:31 uname
If you could provide any guidance I would really appreciate it.
Yes, BCM20737S is used.
Just to mention, to avoid confusion: you find also a datasheet for BCM20737, not with S. On first look it seems to be similar, but it is not. If you check pins, GPIO ports etc. - go with the BCM20737S, this is the one which matches with schematic (a SoM, not an SoC).
In FW I see code like this:
// If timed wake is enabled, clear P39 interrupt if waking from timed wake.
gpio_clearPinInterruptStatus(GPIO_PIN_P39 / GPIO_MAX_NUM_PINS_PER_PORT, GPIO_PIN_P39 % GPIO_MAX_NUM_PINS_PER_PORT);
gpio_configurePin((GPIO_PIN_P10) / 16, (GPIO_PIN_P10) % 16, GPIO_INPUT_DISABLE, 0);
But I have no clue what P39 and P10 is: I cannot find these in datasheet.
Does anybody know what it will do and if it is correct? (if not available on HW - what happens if code tries to do?)
The gpiodriver.h defines really GPIO_PIN_P0 ... GPIO_PIN_P39 and GPIO_NUM_PINS = GPIO_NUMBER_OF_PINS is really set to 40 (0..39). Hard to find, but comes via make command line, set in file Wiced-Smart/spar/spar_2037x.inc .
So I'm doing the Hackathon and my application uses the accelerometer and the application button to make an Android tablet perform some tasks. I have some experience with Android apps and was able to build the Android WICED Sense app and modify it to detect a given threshold on the accelerometer. However, I have gone through the source code and found nothing on the Android side that interacts or reads the Application Button on the tag. I have even tried dumping undocumented/unused bits in the sensor message sent by the tag to Android and do not see anything changing based ion the application button.
It's looking more and more like I will need to use the SDK and make some firmware that will transmit the state of the application button to the Android app. However, I really would like to avoid messing with the tag firmware if at all possible.
I have three questions:
1) Is there any way to read the default WICED tag firmware's messages in order to get the state of the application button?
2) If not, is there an existing firmware I can upload (i.e. a hex file or binary file) that does this that I can upload so I don't have to create an entire application?
3) If all that fails, what advice can you give for me for building the simplest app to do this? Specifically, what template already in the SDK would be easiest to use as a base to begin with?
Also, I would really like to be able to send a message from Android to the tag to turn on the buzzer, but that is something I will tackle next.
Kevin N. HawShow Less
I can't get the demo app to connect to the WICED Sense device.
The Android app runs.... I see the gauges and dials but they don't move or work in any way... under the Android settings page I see that it has paired to the device... I press the 'Connect' button on the app and it goes dark for about 15 seconds, then comes back to 'white'.
This same WICED Sense pairs with an iPhone without a problem.
Platform is: Nexus 7 running Android v 4.4.4Show Less
is there a way to debug a custom application compiled with Wiced smart IDE on mac os x (yosemite) and downloaded to a Wiced Sense board ?
OS: Android smarphone
Download size ~ 25KB
NV size: need to use "8KB"
We need to enlarge our file system(NV) size in btp file as
DLConfigVSLength from 1024(1KB) to 8KB but
system seems to fail storing data to NV; I wonder that
how the max. size of NV (DLConfigVSLength) can I adjust in
SDK2.1 with 920737S? smaller than 8K?
I want a peripheral device send data to another peripheral device directly, Is it possible?
Design goal is that one peripheral device could found another peripheral device while they are close each other.
Maybe there are two posiible way:
1 peripheral device send ADV and another receive ADV
2 each peripheral device run host & slave role,
I'm not sure which one is good and power consumption is less.
After a successful replication of the steps in ‘SDK WICED Sense Project Creation’
Can you also add some links in http://community.broadcom.com/docs/DOC-1759 after this step
- What to do with the download
- What changes are expect on the WICED Sense device
- What to do next. Modify the iOS app, or can something be done without iOS
According to Bluetooth LE spec,
----------- Excerpt from the spec begins -----------
The Link Layer enters the Connection State when an initiator sends a CONNECT_REQ to an advertiser.
After entering the Connection State, the connection is considered to be created.
The connection is not considered to be established at this point.
The connection is only considered to be established once a data channel packet has been received from the peer device.
If the Link Layer connection supervision timer reaches 6 * connInterval before
the connection is established, the connection shall be considered lost.
This enables fast termination of connections that fail to establish.
------------ Excerpt from the spec ends -------------
Question 1) When is the connection up callback invoked in Initiator side?
Is it just after sending out CONNECT_REQ?
Or, after confirming the connection establishment?
Question 2) How the application gets notified of the connection establishment failure?
(i.e., in case it reaches 6 * connInterval without receiving any data from the Advertiser.)