Smart Bluetooth Forum Discussions
Hi,
I have a small question about the i2c bus of the Wiced Sense.
The chip of the Wiced Sense is BCM20737S. Is the i2c bus shared between external sensors and the internal eeprom?
Another question, why an i2c extender chip is required for the external sensors?
Thanks,
Fran
Show LessHello,
Can you please help me with the steps to debug the WICED sense using the programming USB cable? I would like to see the ble_trace<n> messages in the console. At the moment when I go to Trace -> Start Debug Traces, nothing happens.
I have seen somewhere that bleapp_trace_enable = 2 (or 1 for PUART). But when I try to define this in APPLICATION_INIT I get an error, if I redefine as UINT8 bleapp_trace_enable = 2; still no output.
Using BLE_APP_ENABLE_TRACING_ON_PUART(); doesn't seem to help either.
I commented out this line.
//#define BLE_TRACE_DISABLE
Also, a couple of separate questions.
I have re-programmed the WICED sense using the latest MAC sdk, now it doesn't beep when connecting to the phone (iPhone 6) is this expected?
When the device is programmed with the USB it is active but if no association happens and it's still plugged in to USB the device enters sleep mode and pushing the buttons can't make it come out, the device needs to be unplugged and the battery inserted. Is there a way to be able to debug with USB in and turn the sense back on?
Thanks,
Mike
Show LessWhat are sequence of event that happens when we wake up from GPIO interrupt, where can we find access to do application stuff on waking up from sleep?
I have a customer application where the device can go to sleep after initializing and then wake up on GPIO interrupt but the device doesn't to go to sleep again. I have the GPIO pin configured for interrupt (which seems to work) & also defined register interrupt handler which just puts the device back to sleep if condition fails. It seems like we never enter interrupt handler routine. I am using spi_comm_master.c example as my reference.
Can we put the device to sleep in callback function?
Is there a place in application where stack will sit and spin its wheels where we can write application stuff that is independent of interrupt/timer?
-R
Show LessHi, I installed the app on Samsung S3 smart phone. The app asked me to upgrade the firmware of the Wiced Sense to the latest version. The app connected to Wiced Sense and run successful, but only in the first time. And then the app crashed after connecting to the Wiced Sense. I have tried two Wiced Sense tag, the situation is the same. Now, I don't want to try the third one. I would like to know what's going on ? And how to solve this problem? Thank you.
Show LessRecommendation for "future" board to replace BCM92073X_LE_KIT
1) Pin Header : not convenient at all to wire TP6 for SPI CLOCK and TP7 for MISO in the back of the board to be able to configure SPI in MASTER2_P24_CLK_P04_MOSI_P25_MISO
2) Default voltage of the board is 1.2 V or so. While it is good as a marketing point of view to sell low power BLE using coin cell, it uis not good enough to power SPI slaves.
3) SPI driver in wiced smart is not as good as STM SPI driver today. WICED WIFI uses STM for SPI and Host MCU.
Using Host MCU for BLE is a good idea but it is not full feature enough to be abke connect with ALL third party devices out there.
I found issues with Analog Device ADC as well as Linear LTC2983 SPI ADC. All those board are requiring 3.3 V mimimum.
It looked like when trying to power SPI slave through BLE as 3.3 V after HW modification. SPI MISO, CLOCK and MOSI are all screwed up although the 3.3 V modidief board was able to drive the Aardvark SPI/I2C Atmel Connectivity demo board,
So it looked like a build in level shifter would be needed or some sort.
I am not an hardware engineer but just felt the frustration not beeing able to read anything using SPI master interface after the board was modified for 3.3 V.
Finally I noticed that idevice Connected Devices - Bluetooth Module & Product Development | iDevices LLC is using "iDevices Bluetooth Smart Module from Broadcom" as a platform that can simply connect to their favorite CPU/Micro-controller via a UART interface.
It is interesting that they decided to use UART for iGrill to have BLE communicate with a bigger Host MCU over UART to exchange data back and forth and let the HOST MCU deal with SPI communciation with Thermocouple and ADC. It looked like it confirms that SPI driver is better on STM today. It is too bad because on paper the BLE should be able to drive 4 SPI slave device.
If Broadcom want to connect everything then the eval board should be able to do so up front. I am affraid it needs to do more so I am looking forward to the next BLE Board!
Show LessHi
I'm adding new characteristic to WICED sense. My new UUID is correctly listed by a tool like lightblue.
It needs to support read & notify.
When i read the wiced sens source code, i saw this function :
blecm_connectionEventNotifiationEnable((void (*)(void*, UINT32))wiced_sense_tx_opportunity_notice, 0, 6250/625, 30000/625, wiced_sense_connection_handle);
i assume that NOTIFY is enabled in the GATT database declaration (with LEGATTDB_CHAR_PROP_READ | LEGATTDB_CHAR_PROP_NOTIFY). I've done it.
but how i can differenciate notification coming from UUID A and UUID B ?
my idea is to get access to UUID and change the PDU depending on the received UUID.
is there anybody who know how to deal with notification, especially when there is multiple UUID with read/notify possibility, please ?
thank you a lot
best regards
Show LessI'm hitting a wall getting 2-way communication going over SPI in slave mode. I am trying to do a 2 byte write and a subsequent 2 byte read in the same transaction. The port, pins, timing, etc. are all ok. TX and RX buffers are enabled. Timing wise, everything looks ok on the scope. SDK 2.1.1
My transaction looks like this:
CS Assert
Master sets up tx buffer with 2 byte command.
slaveTxData(2 byte magic #)
slave->master FC
Master generates 16 clocks
Data is ok on both sides of the fence.
slaveTxData(2 byte response to command)
slave->master FC
Master setups up tx buffer with 0xffff for read
Master generates 16 clocks
CS Deassert
Master reads all 0's after second transaction. I've played with just about everything I can think of -- adding delays, adding to fifo by byte, making sure there are two bytes in fifo before continuing, etc. I am definitely writing the correct data into the fifo, it's just not coming out on the other end.
Is the TX fifo somehow latching onto the fact that it's empty? Is there a limit on the number of transactions per CS?
EDIT
Just discovered something that might be revealing -- If I replace the second slaveTxData call with 2 individual slaveTxByte calls such as:
spiffyd_slaveTxByte(SPIFFYD_2, 0xAA); | ||||
spiffyd_slaveTxByte(SPIFFYD_2, 0xBB); |
I receive 0x00 and 0xBB on the master side. The Tx fifo never shows more than 2 bytes in it.
One other thing I should note - I am doing context switches back to the stack after each FC via the fine timer.
Show LessHi Sir,
I have a electrical question.
If our host soc's io voltage level is 2V5 and I real measure is around 2V7.
Is it okay to connect to BCM20736 Rx?
The Soc Tx -> BCM20736 Rx (2V7) and the Soc RX <- BCM20736 Tx (3V3).
I do a simple transmission and it seems that the packets went wrong.
So, I want to confirm if a level shift IC is required for such combination?
Thanks.
Show LessHi Sir,
We have a request that need to change the GATT database after the bleapp_set_cfg.
After checking the API and discussion area but no answer be found.
Could you have any suggestion and comment for changing the GATT database after bleapp_set_cfg ?
Best Regards,
Rush Chen
Show Less