Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob

WICED SENSE Kit BLOG

WICED SENSE Kit BLOG

Anonymous
Not applicable
1.0 Initial Release  
1.9

Added WICED Sense Android Source Code Walk-Thru and iOS Source Code version 1.1

03/10/15

 

Welcome to the WICED Sense BLOG.

WICED Sense Kit Beginners Guide:

WICED Sense Kit Smart Phone Application:

 

WICED Sense Kit using SDK 2.2:

WICED Sense Kit:

 

Please refer to the WICED Sense documents are located here: WICED Smart Documents & Downloads

 

WICED Sense Beginners Guide:

  1. Removing the Battery and WICED Sense Kit Board

Remove_Battery1.JPG

Remove_Battery2.JPG

 

 

WICED Sense SDK Beginners Guide:

  1. SDK 2.1.1 Download
  2. WICED Sense BLOG, Design Files, iOS Source Code
  3. Installation of the Silicon Labs USB-UART Drivers
  4. Connecting the WICED Sense Kit to the USB Cable
  5. Creating a SDK Project for the WICED Sense Kit
  6. Compiling and Downloading the WICED Sense Firmware to WICED Sense Kit.

 

Video Link : 1122

 

WICED Sense Recovery:

  1. Connect the USB Cable to the Kit
  2. Locate the COM Port enumerated by your PC

pastedImage_8.png

 

The Recovery Process uses either the COM35 or COM36 ports in our case.

In the SDK Make Target, the recover port is COM35 and we edit the WICED Sense Target as shown below:

pastedImage_11.png

Before using the SDK to Recover, we need to place the Kit in Recovery Mode by pressing the sequence of Rest and Boot Buttons as follows:

pastedImage_0.png

 

Now we click the Make Target Recovery button and we should see the following:

pastedImage_14.png

 

WICED Sense Modification for Debug:

  1. After programming the WICED Sense Kit with your application you will need to remove the resistor highlighted below to add debugging using a TeraTerm Window.
  2. Caution: Remember to Re-Install the resistor to reprogram the device.

 

Resistor_Removal_Debug_TeraTerm.png

 

WICED Sense Code Walk-Thru:

 

Video Link : 1115

 

Procedure for running the WICED Sense TAG on USB Power:

  1. Remove the USB cable after you have successfully programmed the Tag
  2. Leaving the Battery cover off in this process, press the battery into the battery socket until you see the RED Led turn on

P9250930.JPGP9250931.JPG

 

3. While holding the battery with your fingers making the battery connection, insert the USB Cable in the Tag

P9250932.JPG

4.  Release your finger from the battery, letting the battery drop out of the socket and you are now running the Tag from the USB Power

P9250934.JPG

 

 

 

Introduction to WICED Sensors

 

The following STMicro Sensors are used:

 

Please refer to the STMicro Web site for details on Sensor Data Sheets.

 

pastedImage_9.png

 

The iOS App receives notifications in this format:

 

 

OTA_Sensor_Packets.JPG

 

struct
{
/// Bit mask of sensor data
/// Bit 0: When set, accelerometer included X (2 signed bytes), Y (2 signed bytes) and Z (2 signed bytes).
/// Bit 1: When set, gyro included X (2 signed bytes), Y (2 signed bytes) and Z (2 signed bytes).
/// Bit 2: When set, humidity included (2 unsigned bytes in percentage).
/// Bit 3: When set, magnetometer included X (2 signed bytes), Y (2 signed bytes) and Z (2 signed bytes).
/// Bit 4: When set, pressure included (2 bytes, pressure in mBar * 10)
/// Bit 5: When set, temperature included (2 unsigned bytes, temperature in C * 10).
UINT8    included_sensor_data;
 
/// sensor data.
/// Data included in the order of the bits set.
/// Max length is 20 bytes, may be smaller when data for only some sensors is included
///        in the notification.
/// Notifications sent out when enabled
/// Notifications for Sensor Notification characteristic value (handle 0x2A)
UINT8    sensor_data[];
};

 

Android App Released:

The WICED Sense App for Android is now available on Google Play...

 

JB 4.3 Work-Around:

WICED Sense Android Pairing Work-Around

 

iOS Application designed by www.DittyLabs.com

 

Video Link : 1145

 

Thank you.

 

JT

9085 Views
Comments
Anonymous
Not applicable

Do you know when you will be able to post source code? I have a client project where this code could be of immediate assistance.

Thank You,

George

Anonymous
Not applicable

Hello gmelcer,

Just posted it: WICED Sense SDK 2.1 Firmware.zip

JT

Anonymous
Not applicable

Thanks for this.  But can you also show (directions for dummies) how to load this archive into the workspace properly, build the firmware, and transfer the binary to the sensor?

I inadvertently loaded something from the SDK onto mine, and now it doesn't work.

Anonymous
Not applicable

Hello Trinneer,

Just added a beginners video.

I will add the WICED Sense Recovery Video tomorrow.

Thanks

JT

Anonymous
Not applicable

This is awesome (and excellent timing, as I just ordered my WICED SENSE kit and I'm exploring now)!

I am a total newbie with IoT, devices and C++; however, a veteran with Java, Web, and other tech.

I'd like to use use the WICED SENSE as the peripheral device - can I use my PC (over bluetooth) as the central device to gather data?

I'd love to understand if I can transmit the collected sensor data to a service via MQTT..  anyone have any thoughts?   --thanks so much!  -Mike

VikramR_26
Employee
Employee
25 sign-ins 10 sign-ins 10 comments on KBA

Hi Mike,

To answer your question, PC as central device( No-assuming you don't have BT-LE on it). If you plug in a BT LE usb dongle then you can get data to your PC, since WICED Sense has BT-LE.

Yes you can create a MQTT service , example using rabbitmq and publish the sensor data to your subscribers.

HTH

vik86

SuLe_1710756
Level 5
Level 5
10 likes received First like received First like given

Hi, JT

I have some question about wiced_sense tag.

Is it possible to trace debug message in using sense tag same as DIP switch 2 of SW4 in BCM920737TAG board?

If that is not true, I think it's very difficult to develop user application using sense tag. If it is possible, could you let me know how to trace debug message?

One more thing, I can see another two buttons not two buttons on the side of sense tag, one button on the top side and one button on the other side. Could you let me know these buttons are what for?

Thanks,

Sung-Mok Lee

Anonymous
Not applicable

Hi vik86!  thanks for the reply!  ..that's super exciting.  I got my eye on a BT LE USB adapter so the WICED Sense can talk to the PC.  I have to get my head around how to interface the collected data with the MQTT service I want to publish to..  (wondering if I can do this with a Java?)  - something like:

[WICED Sense Device] ==bluetooth==> [Central Device (PC)] [Java Program / MQTT Library]==MQTT==>[IoT Service]

(forgive my crude ascii drawing) - my gears are spinning!  -Mike

Anonymous
Not applicable

Hi, any ETA on the Android APP? could you guys make it open-source so that we may start with our development and also help in the app development. Thanks!

Anonymous
Not applicable

Hi,

The smart tag is showing up in the under ports (COM & LPT) as

SiLab USB to UARtTconverter bridge:enhanced COM Port (COM5)

SiLab USB to UARtTconverter bridge:standard COM Port (COM6)

I get the error below when compiling one of the sample programs

using SDK 2.1.0

Detecting device...

+------------------------------------------------------------------------------------------+

| No BCM20737 detected                                                                     |

| 1. Verify the BCM20737 tag is connected _AND_ powered                                    |

| 2. Verify SW2 and SW3 switches are towards Vusb and Vreg respectively and all SW4        |

|     switches are set to ON                                                               |

| 3. Press the reset button on the tag and retry                                           |

|                                                                                          |

| If this problem persists, the EEPROM on the tag may be corrupted                         |

| Please see Appendix D in the Quick Start Guide for recovery instructions                 |

+------------------------------------------------------------------------------------------+

Download failed. This version of the SDK only supports download to BCM20736A1 and BCM20737A1 devices

I did installed SKD 2.2.1 and get the same message:

Detecting device...

+------------------------------------------------------------------------------------------+

| No BCM20737 detected                                                                     |

| 1. Verify the BCM20737 tag is connected _AND_ powered                                    |

| 2. Verify SW2 and SW3 switches are towards Vusb and Vreg respectively and all SW4        |

|     switches are set to ON                                                               |

| 3. Press the reset button on the tag and retry                                           |

|                                                                                          |

| If this problem persists, the EEPROM on the tag may be corrupted                         |

| Please see Appendix D in the Quick Start Guide for recovery instructions                 |

+------------------------------------------------------------------------------------------+

Download failed. This version of the SDK only supports download to BCM20736A1 and BCM20737A1 devices

Anonymous
Not applicable

Please use SDK 2.1.1

Thanks

JT

Anonymous
Not applicable

Hi,

I installed SDK 2.1.1 and got the same result.

Thanks,

Mark

SuLe_1710756
Level 5
Level 5
10 likes received First like received First like given

Hi cmxers,

As I know you are using wiced sense tag and SDK 2.1.1, right?

If then, please do as follows,

Step 1. Extract coin-cell battery

Step 2. Connect usb cable to PC and then verify whether installed two com ports correctly in device manager

Step 3. Compile and download

Thanks,

Sung-Mok Lee

Anonymous
Not applicable

Hi vik, maybe JT & Mike too

So i have a windows laptop, bluetooth built in.  It sees the Sense, but won't connect due to driver error. Which I'm guessing is because there's only iOS compatibility for now.  So how does one interface?  Through my Galaxy phone once the Android app is released, and then through Android SDK or WICED-Smart SDK on my pc?

Any advice would be super helpful.

Thanks,

Mike

Anonymous
Not applicable

Sung-Mok Lee,

The reset by extracting and reseating the coin-cell battery worked.

Thanks for the help.

Mark

Anonymous
Not applicable

Sorry for the silly question, but how are you compiling and downloading the new firmware?  I've loaded the firmware SDK into the overall Wiced Smart SDK project, but there's no target or makefile for the firmware.

I could really use some step-by-step instructions.  Thanks.

Anonymous
Not applicable

I got it to compile and download.   In case others are struggling, here is the target name that I specified in the make target.  Note that wiced_sense is the name of the subdirectory that I gave for the SDK.  The path is

Path: ./WICED-Smart-SDK/Apps/wiced_sense

Target name: wiced_sense-BCM920737TAG_Q32 download

Anonymous
Not applicable

Watch the beginner video - it shows that process

Thanks

JT

Anonymous
Not applicable

Now I'm spamming you all.  Sorry...

The console window said the app is running, but the tag still won't start the app via the wake button (after disconnecting and reinserting the battery)

Perhaps my battery is too weak?  I measured it at just over 2 volts.

I assume there's no way to run the tag with power supplied via USB?

Anonymous
Not applicable

Great!

Thanks for the feedback

JT

Anonymous
Not applicable

Yes, you are spamming... just kidding.

I don't know the steps that you have taken or if you made any changes, but you can recover the device to the original code.  We are posting that recovery process this morning - So be patient.

It involves removing the board from the enclosure, a sequence of button presses and typing a Recover Target in the Make Target Window - But again, be patient, as we are working on this now.

Regarding the USB supplied power to the TAG:

There is a "hack" to getting the Tag to run with USB Power:

  1. Remove the USB cable after you have successfully programmed the Tag
  2. Leaving the Battery cover off in this process, press the battery into the battery socket until you see the RED Led turn on.
  3. While holding the battery with your fingers making the battery connection, insert the USB Cable in the Tag
  4. Release your finger from the battery, letting the battery drop out of the socket and you are now running the Tag from the USB Power


Thanks

JT

Anonymous
Not applicable

hey mikeyrivs14,

I think we're in the same boat. 

1) i do have an iPhone and was able to successfully interface to the sample app.. ok, cool!

2) i downloaded the silicon labs drivers and can interface to my PC (for compiling code to the kit).. ok, cool - next!

3) what i really want to do (and i think you do too) is interface the WICED Sense to my laptop (which is bluetooth enabled) and use my laptop as the central device to read the data from the sensors.  Once I got that data, I really really *really* want to ship off the collected data to an MQTT service !!  

..I'd like to do all of #3 with Java if possible; as that's my preferred language (vs. C/C++)

..My laptop does see the bluetooth device and identifies it as "WICED Sense Kit" (which I think is good); and calls is a "bluetooth peripheral" (but also says there are no drivers installed for this device (code 28) ) ..so not sure where to go next...

If anyone has any comments - I'd love the insight.   Thanks, Mike

Anonymous
Not applicable

JT - any update on the recovery process?

Anonymous
Not applicable

Hello trinneer,

Just posted it.  Let me know if this works.

BTW, thanks for sharing your results.

JT

Anonymous
Not applicable

Thanks JT, yes, the procedure worked!

For others, take some care when you remove the board as the screws are tiny and the pushers from the shell will likely fall out (they are easy to replace, but the slots are asymmetrical so they only go in 1 way)

Also - for others - I depleted my battery in a surprisingly short period of time, so perhaps don't leave it in the tag when it isn't in use

MichaelF_56
Moderator
Moderator
Moderator
250 sign-ins 25 comments on blog 10 comments on blog

The Beginner's Video is here in this blog.  Scroll up from here, at the top.

Anonymous
Not applicable

Android App:

Should be beginning of Oct.

JT

Anonymous
Not applicable

Looking for UUIDs for this sensor... Are they available?

I can't find them referenced in code or in docs.  There's a list of UUIDs available in Windows device manager, but I don't know how to map them to the sensors.

For example, the following is available from TI for their sensor:

Thermometer "f000aa00-0451-4000-b000-000000000000"

Accelerometer "f000aa10-0451-4000-b000-000000000000"

Humidity "f000aa20-0451-4000-b000-000000000000"

Magnetometer "f000aa30-0451-4000-b000-000000000000"

Barometer "f000aa40-0451-4000-b000-000000000000"

Gyroscope "f000aa50-0451-4000-b000-000000000000"

Standard:

Key Service "0000ffe0-0000-1000-8000-00805f9b34fb"

+ standard and hidden in device manager:

Generic Access: 00001800-0000-1000-8000-00805f9b34fb

Generic Attribute: 00001801-0000-1000-8000-00805f9b34fb

Device Information: 0000180A-0000-1000-8000-00805f9b34fb

MaMe_1509466
Level 4
Level 4
25 replies posted 10 replies posted 5 replies posted

I have the WICED_Sense project built but cannot download to the tag.

All the videos indicate "We are unable to connect to the content you requested"

Thanks

Anonymous
Not applicable

Sorry you are having problems.

Videos should work - Maybe a browser issue.

If you build the project you should be able to download it to the kit.

If not, you may want to recover and do the Make Target again:

Recover2.JPG

MaMe_1509466
Level 4
Level 4
25 replies posted 10 replies posted 5 replies posted

Videos are working now.

Downloading to the WICED Sense is still not working.

Any hints as to to the duration of the key presses?

I have a Tag 3 board that downloads work fine on with the same setup.

Anonymous
Not applicable

It worked for me.  I just pressed the buttons only briefly.

You're able to see the sensor show up as a serial port in device manager?

Anonymous
Not applicable

The device manager only shows the SiLabs Drivers in the device manager.

JT

MaMe_1509466
Level 4
Level 4
25 replies posted 10 replies posted 5 replies posted

Working now.

Conflict between the drivers for the Tag3 board and the WICED Sense board.

Also, procedure required hitting the RESET button again after getting the device in

boot mode.

Anonymous
Not applicable

Great!

Thanks for the feedback.

JT

Anonymous
Not applicable

When I compiled and flashed wiced_sense firmware, red LED of WICED Sense turned on, and 'Wake button' doesn't responding.

In this situation, WICED Sense app of iOS doesn't detect 'WICED Sense Kit' device.

I tried recovery, but I got same result.

What kind of cause can be considered?

Anonymous
Not applicable

Hello brownie,

Try this:

  1. Do a "Forget Device" in your iPhone Bluetooth Settings
  2. Close the WICED Sense iOS App.
  3. Remove the WICED Sense Battery and then replace it.
  4. Open up the WICED Sense iOS App and then try connecting again.

Let me know if that works

JT

Anonymous
Not applicable

Is anyone having any luck accessing this thing from a PC with C#?

I can only get generic Gatt characteristics (DeviceName, etc.), and can't get any sensor data at all.  It would sure be great to get some documentation like the folks over at TI provide (http://processors.wiki.ti.com/images/a/a8/BLE_SensorTag_GATT_Server.pdf)

JT -- any thoughts there?

Anonymous
Not applicable

Thanks j.t!

I tried 'Forget Device', but no changes.

Aandroid also doesn't detect WICED Sense.

Wake button of WICED Sense doesn't responding.

Anonymous
Not applicable

Try a new battery.  They last WAY shorter than you might think.  These days I keep the batter out and run it via USB when testing.

Anonymous
Not applicable

I compiled and flashed wiced_sense firmware, my IDE console output is exactly like the video so I assume the code produces the factory firmware.  However the device acts differently now.  It will pair/connect with my Moto G phone and Android app shows sensor data but the LED is constantly pulsating.  It can no longer be seen by my IPad.

Anonymous
Not applicable

Hi trinneer,

I tried new battery, but WICED Sense still not working...

Anonymous
Not applicable

Hello brownie,

What version of iOS are you running?

JT

Anonymous
Not applicable

Hi JT and brownie,

I think we are have the same problem.

Compiling and flashing the firmware from the sources makes the device unseen by iOS 8.0.2. and results in it appearing and disappearing frequently with Android 4.4.2.

I think the firmware built from sources is not identical to the factory installed.

Is there a compiler option?  I did exactly what is shown in your video.

I will purchase another sense so to have a known good and an experimental.

James

Anonymous
Not applicable

Hi JT

My iOS version is 8.0.2.

Anonymous
Not applicable

Hi brownie and jpcallahan,

I think i'm experiencing the same situation as you.

I tried to describe it here ?

Did you manage to get traces from device using Broadcom Debug Viewer ?

@ jpcallahan: unfortunately, you seems to be right about the firmware built from source.

I was expecting to start with this sample and build new applications, but right now, I'm stuck with a non functional device, unable to recover it.

Alex

Anonymous
Not applicable

Hello Alex brownie and jpcallahan,

We are looking into these issues and will provide an update shortly.

JT

Anonymous
Not applicable

Please see the new SDK Source Code:

WICED Sense SDK 2.1 Firmware.zip

JT

Anonymous
Not applicable

Please see the new SDK Source Code:

WICED Sense SDK 2.1 Firmware.zip

JT

Anonymous
Not applicable

Please see the new SDK Source Code:

WICED Sense SDK 2.1 Firmware.zip

JT