Smart Bluetooth Forum Discussions
Hi all,
I am trying to better understand the Quadrature Driver API available in: ./WICED-Smart-SDK/include/Drivers/quadraturedriver.h
It sounds that a structure is defined in: ./WICED-Smart-SDK/include/Drivers/hidddriversconfig.h
In this specific header file I found the following comment:
/// Configuration value used for each GPIO pin used for quadrature. This
/// allows configuration of pull up/down, etc. just like a GPIO.
WORD quadratureInputGpioConfig;
/// If TRUE, Port 0 selected as quadrature input port (P2,P3,P4,P5,P6,P7)
/// If FALSE, Port 2 selected as quadrature input port (P32,P33,P34,P35,P36,P37)
BYTE port0PinsUsedAsQuadratureInput;
How can we set this structure? let's say we want to use GPIO P2 and GPIO P3 as inputs for quadrature decoder.
Also what are the calls that need to be done to setup properly the quadrature interface on the BCM20737? I see the following API:
void quad_hwInit(void);
void quad_init(void);
void quad_configurePortPins(void); ---> not parameters, so I believe we need to set something else up.
Crystal warm-up work-around video
business explains in this thread the steps that need to be taken to implement the crystal warmup fix within your application: Re: BCM20732S module keeps crashing
Scroll down to his post on Mar 6, 2014 5:31 PM.
We managed to resolve this issue in firmware by doing the following:
1 - create a CSG file inside the application folder named app.csg with the content below:
ENTRY "PMU Crystal Warm up Time"
{
"Crystal warm up time" = 5000
}
Note that the default Crystal warm up time is 2500. By increasing this to 5000 we managed to resolve the issue.
2 - Add the following line to makefile.inc in the same folder:
GS_LIST += $(DIR)/app.cgs
This trick only works in SDK 1.1 and does NOT work in version 1.0.1.
Show LessHi all,
I have a problem migrating a project from BCM20732S to BCM20736S.
We worked until now with 732 module mounted on a custom board (see image, note that # means not mounted)
System worked perfectly, but I discovered that this chip is no more supported by SDK, so I decided passing to 736 module.
I verified that pinout is the same, so I simply mounted new module instead that old one.
I installed new WICED 2.1.1 SDK and, connecting to P501 I programmed the hello_sensor example in with BCM20736 configuration.
Programming is successful.
Opening a terminal window and resetting the board I see following stamps:
Initialization function has been called, then I see no other debug stamsp, even if in hello_sensor() there should be timer stamps.
Then I can't find device using a BLE client.
Summarizing:
-same HW configuration, working on BCM20732S
-using WICED 2.1.1 SDK
-compiling and programming successfully hello_sensor example
-I see only call to hello_sensor_create(), then no other action, and device is not discoverable.
I hope you can help me.
Thank you
Show LessHi,
I follow the spi_comm_master and spi_comm_slave to make an application about transferring data between my toy with an iphone app. I can transfer data from my toy to iphone app for first few times. I send 103 bytes to the iphone app. I divide 103 bytes into 13 frames since I only can transfer 8 bytes per frame. For first few times of transceiver data, everything is good. Then the iphone app only receives few frames data. Sometime lost data is the first frame, most of the time is some last frames. When the lost frames is at the last of transfer, I see the Flow Control Pin (P24, see note 1 for configuration) is set at high level (3.3V). Can someone please help to explain what is wrong? I am using STM32F205 to communicate with BCM20732 via SPI bus. Thank you.
Note 1
// use GPIO P24 for output flow control
#define SPIFFY2_OUTPUT_FLOW_CTRL_PIN 8
#define SPIFFY2_OUTPUT_FLOW_CTRL_PORT 1
P/S: Is there any way that I can debug the code on BCM20732? Thank you.
Show LessI have an input device that measures flow rate using PWM output and I would like to use a GPIO line with "interrupt on change" together with a fast time to measure the input rate. Or perhaps use a fast timer and poll the status of the input line. The maximum frequency is 237 Hz (sample at 2ms) with duty cycle 50%+/- 10%.From reading other posts, this seems feasible, but I would like some assurances that I am on the right track. It seems like the timer may be a little slow at the max flow rate. Is there anything else I need to be aware of?
Show LessHello_client from SDK 2.1.0 was modified (code attached) to start advertising after pressing SW1 button (TAG3).
Also adv mode is printed every second.
After reboot (or pressing SW1) adv durations are consistent and match:
high_undirect_adv_duration
low_undirect_adv_duration
But after module gets connected and disconnected (WICED Smart Explorer app was used) the durations vary.
Show LessHello
I have connected BCM20732S to Kinetis FRDM KL02Z micro-controller via UART on a PCB for an application where I would like to to send data from the micro-controller to the BCM20732S and further send that data over the bluetooth. Can someone suggest me how to go ahead with it?
Show LessAll,
As an FYI -- I have published an article on IBM developerWorks on how to interface the WICED sense kit to a hybrid application (basically, it's JavaScript). The hybrid application runs on a smart device (e.g. smart phone or tablet with BLE support) and uses a JavaScript library that interfaces BLE along with my library to interface the WICED Sense Kit.
The article goes on to integrate messages from the WICED Sense gyro sensors (what I used as a "wearable" in this article) into the IoT Foundation Cloud (which you can do too!)
Link: Build your own wearable with IBM IoT Foundation and IBM Bluemix
Source code included in the article. So anyone that wants to read sensors from the WICED Sense Kit from JavaScript, this should get you started.
Cheers, Mike
Show LessHi,
I've bought the BCM920737Tag to check out if my code works right. Therefore I have to readout an accelerometer. Does the BCM920737Tag has one? And are there any other sensors on it? I found no circuit diagram which could tell me that...
Show LessI noticed PWM3 and PWM2 is interference each oher.
I explain what I found as follows
.Use PWM3(P13) and PWM(P14), then set them to output enable mode
↓
.PWM3 doesn't work
↓
.GPIO:P28(connected to PWM2) enable
↓
.PWM3 works but overlap PWM2 wave on PWM3
How can I solve this problem, are there any settings about it?
Show Less