Smart Bluetooth Forum Discussions
For some reason my application memory gets corrupted during the runtime. Some global array elements start to contain non printable characters (when it should be all printable) or some null elements start to contain non null, non printable chars. I initialise those global variables with memset setting all bytes to 0. Are there any control mechanism I could use to change the memory space used by the board for my variables? Funnily whenever I try to debug those corrupted array elements with ble_trace the problem goes away.
Show LessHello Everybody
I include this code to wiced sense firmware code ==
i16_t highCounter = 0;
#if WICED_SENSE_SUPPORT_ACCEL
/// Get the instantaneous accelerometer data.;
status_t wiced_sense_get_accelerometer_instantaneous_data(AxesRaw_t* dataA) //////////////////////////////////// MY __ CODE
{
axesCalData = &axesData;
if (!ButtonPressed) return MEMS_ERROR;
if(GetAccAxesRaw(dataA) == MEMS_SUCCESS)
{
if( ( ( axesCalData->AXIS_X - dataA->AXIS_X ) > 20 ) || ( ( axesCalData->AXIS_X - dataA->AXIS_X ) < -20 ) ||
( ( axesCalData->AXIS_Y - dataA->AXIS_Y ) > 20 ) || ( ( axesCalData->AXIS_Y - dataA->AXIS_Y ) < -20 ) ||
( ( axesCalData->AXIS_Z - dataA->AXIS_Z ) > 20 ) || ( ( axesCalData->AXIS_Z - dataA->AXIS_Z ) < -20 ) )
{
highCounter++ ;
if( highCounter >= 30 )
{
wiced_sense_short_beep_buzzer(80);
}
}
else
{
highCounter = 0;
}
return MEMS_SUCCESS;
}
return MEMS_ERROR;
}
#endif
As normal its only works while I connected my wiced sense to my phone because my code is in #if WICED_SENSE_SUPPORT_ACCEL macro expansion
So my question is : How can I change the way to use my code without connecting to my phone?
Show LessHello everybody,
I need to wake-up the BCM20736S via an external button to ground that's connected to P2 of the BLE module.
The GPIO is configured as input with a pull-up resistor and is generating an interrupt callback which already works flawlessly.
But I also need to pull this pin down as a normal GPIO output, as it is shared with our main MCU that will wake-up on falling edge. So if the buttons not pressed by the user but a BLE event is generated, the module must be able to restart the main MCU.
Two questions:
How can I ensure the BLE module will wake-up even from deep sleep?
Is this enough:
devlpm_enableWakeFrom(DEV_LPM_WAKE_SOURCE_GPIO);
bleprofile_PrepareHidOff();
Do I need to disable the interrupt routine, if I reconfigure the GPIO as an output?
I use this code to init it as an input interrupt source:
UINT16 masks[3] = {0, 0, 0};
masks[TACT_PORT] |= (1 << TACT_PIN);
gpio_registerForInterrupt(masks, gpioTactInterruptHandler, NULL);
gpio_configurePin(TACT_PORT, TACT_PIN, GPIO_EN_INT_FALLING_EDGE | GPIO_INPUT_ENABLE | GPIO_PULL_UP, GPIO_PIN_INPUT_HIGH);
Find a schematic detail attached:
Best regards
Hannes Baumgart
Show LessAdding to this discussion: Resetting RTC internal counter
Can I safely say that the internal RTC Counter is not reset unless there is a signal on RESET_N, a disruption in power, or a watch_dog timer expiration? Also, can I safely say (write), that the RTC Counter cannot be bumped or changed, and that once it is reset, you can modify your reference time forward, but not the counter?
Show LessI am currently using version 2.2.1 of the SDK. If I download and run the installer for version 2.2.2 of the SDK (for windows), does it install OVER (and clobber) my 2.2.1 instance, or does it install to a new location allowing me to use either of the installed versions?
Essentially, I want to understand the upgrade process for moving from 2.2.1 to 2.2.2.
Thank you,
David Smith
Show LessHello,
I would like to use the HCI for debug and I've seen many posts in the past discussing the same thing, but they are confusing.
1) On the one hand there is a document MMPWICED-Smart-QSG203-R.pdf (and posts on this site) which suggest calling BLE_APP_ENABLE_TRACING_ON_HCI_UART will work, as long as the UART_RX pin is disconnected once the application is running. The procedure is given in pages 19/20 of the above document (Viewing Traces from the WICED Smart Tag).
2) In WICED-Smart-Hardware-Interfaces.pdf, page 16 says:
The BCM20732 has two UART interfaces. One is the factory or HCI UART that is used for programming and factory testing. The other is the peripheral UART, which is available for application use to output debug messages/tracing or to interface with a peripheral device/microcontroller. The following sections describe the peripheral UART only. The HCI UART is not available for application use.
The two seem to contradict each other. Does anyone know?
Thanks.
Show LessHi BCM support,
Since the OOB issue, we are reviewing all the example and headers, but we can not find any document talk about them. Please kindly provide useful document for the lesmp_ APIs.
I also check the post : Is there a document which describes the lesmp_ type function parameters?
It seems you did some doc for the APIs last year, where can I find them?
Thanks.
Show LessI am trying to make non-default I2C configuration.
I found cfa_bsc_Configure API in cfa.h file but it does not give detailed information.
void cfa_bsc_Configure(UINT8 newConfig);
// To configure the I2C serial interface. The configuration values include:
// - Clock Rate
// - Clock divider
// - Delay disable
// - Deglitch disable
- Clock Rate
I can find defines for them(CFA_BSC_CTL_SCL_400KHZ ~ CFA_BSC_CTL_SCL_1000KHZ)
- Clock divider
I can find defines for it(CFA_BSC_CTL_DV_CLK_BY_4)
- Delay diable
I cannot find any defines for it.
- Deglitch disable
I cannot find any defines for it.
Please let me know how to use newConfig input parameter.
Thanks
Show LessHi BRCM FAE,
As a continuation of this thread: Transmission times of connection event? & Transmission times of connection event? - Part2
I finally found out where the problem.
I add this to the end of my APPLICATION_INIT:
BLE_APP_DISABLE_TRACING(); |
When I disable the trace of HCI UART, I can get 4 packets in each connection after performing a reset.
BAD HCI UART! BAD!
But I still have a question. Why does the stack work properly (send 4 packets in each connection event) after I download the firmware? But I execute the reset, I only got 1 packet in connection event. The HCI UART printed the same results when I execute reset and download the firmware. What the different between execute reset and download the firmware? Dose the ROM operation in different states when I execute reset and download the firmware?
Michelle,
Show LessHello, I need to understand the working of "WICED SMART find me" app. For this reason I need to the source code for this application. Can anyone suggest where I can find the source code for the same. Any kind of help is appreciated.
Show Less