Smart Bluetooth Forum Discussions
I am following WICED SMART SDK 2.x: Smart Designer Overview video; Kindly let me know which Mobile or PC application/software to use for custom GATT database developed in the video. I will really appreciate if you let me know simple example for getting started on this.
Looking forward for your kind help. Thanks in advance.
Have a nice day!
I want to connect a gyro-sensor to BCM20737S.
And the read sequence is like this.
[START] [SLAVEADDR+W] [ack] [REGADDR][ack][RESTART][SLAVEADDR+R][ack][data][ACK][data][ACK][STOP]
Capital letter is "Master to Slave".
Small letter is "Slave to Master".
"REGADDR" is a address of the sensor data like, 0x20 is for X-axis, 0x21 is for Y-axis, so on...
The data is 16bit length.
I already know the sample code of i2c_temperature_sensor and i2cm.h. But it is not like this behavior.
I already have made some products using the i2c function of BCM20737S, and i had thought this gyro-sensor is the same as the read sequence of the i2c_temperature_sensor, but is not. I made the PCB already for this gyro-sensor...
How can I control the I2C?Show Less
I am using the BCM20737S in a custom design.
I want to set up a push button trigger an action.
Currently I have my push button set up on P27. When the button is not pressed, it is open and is pulled to ground. When the button is pressed it is closed and pull to 2.8v.
What do I need to do to set this up in software to trigger an event? Is there an example I can mess around with? I am currently using hello_sensor example.
We have one trouble as below.
1. 20736 work in central mode.
2. Try to connect to one peripheral whose UUID is 128-bits.
Issue: Fail to get 128-bit UUID from peripheral when 20736 works in Central mode
we find out that, when 20736 call the function of blecli_ClientRsp(int len, int attr_len, UINT8 *data) in blecli.c (..\WICED-Smart-SDK-2.2.1\WICED-Smart-SDK\Wiced-Smart\bleapp\app)
The process in this blecli_ClientRsp()
for(i=0; i<len; i+=attr_len)
uuid = data[i+4] + (data[i+5]<<8);
if(uuid == cliAppState->blecli_svc_uuid)
found = i; //start position of uuid
Here, we see that, the UUID would be analyzed in 16-bit directly but not 128-bits.
We try to modify this function to solve this issue, but WICED would not compile & link the file of blecli.c.
Question: blecli.c is already burned into the internal ROM ? or could be modified by some way to solve this issue ?
I am using the BCM20737s to send some data.
I know you can send 20 bytes in one packet over Bluetooth. Is this the maximum?
I have 16bit data, so I will be able to send 10 16bits of data in one packet?
I have 2500 (16 bits) samples I need to send 250 packets. What's the fastest way to do this?
i'm planning on adding a second MCU (stm32) to a pcb, in addition to the BCM20737s, probably connected via PUART or alternatively, SPI.
I really like the OTA feature of the Broadcom modules, and would like to extend the feature to be able to update the STM32's firmware as well as the BCM's. I'm sure I'm not the only one with this in mind, and I was wondering if anyone has already extended the OTA feature for this purpose, or if someone would like to offer some thoughts on this?
Would there be enough space on the internal eeprom of the BCM20737S to copy a complete firmware image before sending it to the STM32? or would it make more sense to pass it through directly?
I was thinking of just joining the two hex files but adding a large offset to the addresses of the STM32's firmware, so that when the BCM receives it, it will be easy to differentiate that from the firmware that's meant for the BCM, (and pass it on to the STM after subtracting the offset on the fly). Is this how you would go about it?
Thanks for any advice (or sample code for that matter 😉Show Less
On Mouser, I find these two part-number...
Different package? reel or tube? or different module? different certifications?
Thanks in advance.Show Less
I am trying to see if I can get peripheral UART running using P32 for TX and P2 for RX on the 20736. I noticed in Application Note BCM920732HW (Wiced Smart Hardware Interfaces) it says "When both SPIFFY2 and peripheral UART interfaces are used by the application, the SPIFFY2 signals and peripheral UART RX signal must be on the lower pad bank (P0 through P7) or on the upper pad bank (P24 through P39). Thus, SPIFFY2 and the peripheral UART RX cannot be on two different pad banks."
We are using SPIFFY2 in our application, and we have SCLK P24, MOSI P4, MISO P25. So we do not have all of our SPIFFY2 pins on the same pad bank. Does this mean we cannot do peripheral UART on the desired pins if we do not want to change the pins we are using for SPIFFY2?Show Less
I have built a custom board using the BCM20737s. My board has a place for two pressure sensors that communicate over I2C.
I have placed only one of the pressure sensors on my board so far. My software works fine, i can read my pressure sensor etc.
I wanted to add my second pressure sensor so to start with i just soldiered it to my board running my previous software.
Also my two pressure sensors have different addresses.
But my board doesn't seem to do anything. Usually it is discoverable by my phone but its not now after adding the second pressure sensor.
So i removed the second pressure sensor, powered back up my board and now it is discoverable again.
My second pressure sensor seems to be causing some problem im just not sure what?
If i had to guess it may be something to do with the recovery mode which uses the SDA line.
Here is my schematic to show you how it is laid out. Maybe it is a problem with my pull up resistors?
We have a system with the BCM20737S module. The module is connected to the host CPU via the PUART and HCI uart. The host cpu is running some custom embedded SW - no windows and no linux.
We were hoping we could do a firmware upgrade via HCI port, but I'm reading the HCI protocol specs are not available for public use. This is a real drawback as it requires a extra step in production to program the device via tools provided by the SDK. We were hoping is to ship our host cpu firmware that includes the firmware for the BLE module and program it in filed via the HCI port. This is also needed as we are doing remote firmware upgrades as the host cpu is connecting via WIFI to a remote server.
I'm kindly asking you to provide a strategy to minimize production steps (to none if possible) and have a functional remote FW upgrade possibility via the host CPU. We can sign a NDA if necessary.
Thanks, MarkoShow Less