Broadcom BCM943364WCD1 C-SDK Setup Guide. Version 1.0

Similar documents
Dell IoT Gateway 5500 Edge MicroServer Setup Guide

NXP i.mx 6 UltraLite Evaluation Kit Edge MicroServer Installation and Setup Guide. Version 1.0

Vantron VT-M2M-TC-VM ThingWorx Setup Guide

B&B Spectre LTE Edge MicroServer Setup Guide

Vantron VT-M2M-TC-VM ThingWorx Setup Guide

Novatel Wireless SA-2100 Edge MicroServer Installation and Setup Guide. Version [1.0]

ThingWorx Lantronix PremierWaveXN Edge MicroServer Installation and Setup Guide

BCM4343W IoT Starter Kit Getting Started Guide Version 2.1

Xirgo OBD II Protocol Adapter SDK Setup Guide. Version 1.0

ArduCAM CC3200 UNO board

VMware AirWatch Product Provisioning and Staging for Windows Rugged Guide Using Product Provisioning for managing Windows Rugged devices.

Lab: Setting up PL-App with a Raspberry Pi

WEB ANALYTICS HOW-TO GUIDE

SN8000 EVK User Guide

xpress Release Notes

Samsung ARTIK05x/Shoreline icast 2 ThingWorx agent Setup Guide Version 1.0

Installing Eclipse (C++/Java)

Log & Event Manager UPGRADE GUIDE. Version Last Updated: Thursday, May 25, 2017

A113X1 Development Kit

How to refresh a Wireless Profile on your computer

Installing and Configuring vcloud Connector

VMware Workspace ONE UEM Product Provisioning for Windows Rugged Documentation. VMware Workspace ONE UEM 1811

PaperCut Fast Release (Network Card Reader) Manual

Interpretype Bluetooth Setup Procedure

NovTech User Guide Chameleon96

Getting Started with Kinetis SDK (KSDK) v.1.2

Tutorial on Basic Android Setup

Bitnami Dolibarr for Huawei Enterprise Cloud

Bitnami ProcessMaker Community Edition for Huawei Enterprise Cloud

Getting Started with Kinetis SDK (KSDK) v.1.3

IMPORTANT Transferring Information from an Earlier Model Newton Personal Digital Assistant (PDA)

Solution Integration Guide for Multimedia Communication Server 5100/WLAN/Blackberry Enterprise Server

VMware Horizon 7 Administration Training

Welcome to Airconsole TS Thanks for purchasing Airconsole TS The worlds smallest most flexible serial console server.

Creating a Yubikey MFA Service in AWS

Lab 0: Intro to running Jupyter Notebook on a Raspberry Pi

PMS 138 C Moto Black spine width spine width 100% 100%

Developing and Deploying vsphere Solutions, vservices, and ESX Agents

WICED. WICED Development System. Factory Programming Application Note

DEPLOYING A 3SCALE API GATEWAY ON RED HAT OPENSHIFT

Incident Response Platform. IBM BIGFIX INTEGRATION GUIDE v1.0

VMware AirWatch Content Gateway for Linux. VMware Workspace ONE UEM 1811 Unified Access Gateway

Spreedbox Getting Started Guide

Quick Installation Guide

UPGRADE GUIDE. Log & Event Manager. Version 6.4

Build your own NAS with OpenMediaVault

Zephyr Kernel Installation & Setup Manual

Dell Storage Compellent Integration Tools for VMware

Dell Storage Integration Tools for VMware

ISMART Inventek Systems Module Arduino Test. Product Brief

Windows Installation Guide 8.2

Horizon Console Administration. 13 DEC 2018 VMware Horizon 7 7.7

Lab Guide Rev. 0 TWRWIFIG1011MILAB

Installing and Configuring vcloud Connector

vsphere Replication for Disaster Recovery to Cloud

Migrating vrealize Automation 6.2 to 7.1

APAR PO06620 Installation Instructions

Quick Installation Guide

AirWatch Mobile Device Management

UDS Enterprise Free & Evaluation Edition. Lab UDS Enterprise + VMware vsphere + RDP/XRDP

BYOD: BRING YOUR OWN DEVICE.

SSH Extension and Terminal Widget User Guide. Version 1.0

UG160: Wizard Gecko BGTool User's Guide

UDS Enterprise Free & Evaluation Edition. Lab UDS Enterprise + VMware vsphere + RDP/XRDP

Intel Galileo Board. Getting Started Guide. 02 October Order Number: US

INNOV.NET PTY LTD. User guide

bitcurator-access-webtools Quick Start Guide Last updated: May 8th, 2018 Release(s): and later

vsphere Replication for Disaster Recovery to Cloud vsphere Replication 6.5

Sigma Tile Workshop Guide. This guide describes the initial configuration steps to get started with the Sigma Tile.

Developing and Deploying vsphere Solutions, vservices, and ESX Agents. 17 APR 2018 vsphere Web Services SDK 6.7 vcenter Server 6.7 VMware ESXi 6.

Dell OpenManage Mobile Version 1.5 User s Guide (ios)

AMBER WEB SERVER Quick Start Guide

Arrayent DevKit Sample Application Quick Start Guide For TI CC3200

Bitnami MEAN for Huawei Enterprise Cloud

PI Scanner User Guide

CONFIGURATION MANUAL. English version

Arrayent DevKit Sample Application Quick Start Guide For TI CC3220

Quick Start Guide Demo Distance2Go. July 2018

The note describes the software installation procedure and the operating mode.

Troubleshoot. What to Do If. Locate chip.log File. Procedure

Tableau Server on Microsoft Azure:

Android Studio Setup Procedure

AirServer Connect User Guide

Zadara Enterprise Storage in

Dell Storage Compellent Integration Tools for VMware

VMware AirWatch Product Provisioning and Staging for QNX Guide Using Product Provisioning for managing QNX devices.

NSFOCUS WAF (VM) User Guide

SAMSUNG ELECTRONICS RESERVES THE RIGHT TO CHANGE PRODUCTS, INFORMATION AND SPECIFICATIONS WITHOUT NOTICE. Products and specifications discussed

CSCI 201 Lab 1 Environment Setup

Cisco TelePresence VCS Cluster Creation and Maintenance

TiWi-SL Simple Web Server Demo Quickstart Guide

PICO-i.MX6UL Development Platform for Android Things Quick Start Guide

IDEAL Wireless Sensor System

Cross-Domain Development Kit XDK110 Platform for Application Development

CRYPTOCard BlackBerry Token Implementation Guide

WB40NBT Quick Start Guide Version 2.0

PEAP under Unified Wireless Networks with ACS 5.1 and Windows 2003 Server

Requesting a license code

cnmaestro Cloud Beta Guide

TI mmwave Training. xwr16xx mmwave Demo

Transcription:

Broadcom BCM943364WCD1 C-SDK Setup Guide Version 1.0

Software Change Log... 2 Introduction... 2 About the Broadcom BCM943364WCD1... 2 Installation... 3 Downloads and Prerequisites... 3 Configuration and Setup... 5 Compiling and Running the Application... 8 Binding Properties in ThingWorx... 10 Troubleshooting... 13 Known Limitations... 15 Compatibility... 15 Document Revision History... 15 1

Software Change Log Version Release Date Changes 1.0 4/7/2016 Initial Release Introduction The Edge MicroServer is a powerful component of the ThingWorx architecture. The Edge MicroServer allows for the rapid deployment of connections between the ThingWorx platform and an associated data reporting device, with minimal design requirements on the part of the user. The Edge MicroServer provides an always-on connection to the platform, and it opens a local web server that interacts with the REST API available on the platform. This document provides installation and usage instructions for setting up the Edge MicroServer via a ThingWorx C-SDK Implementation on a Broadcom BCM943364WCD1. About the Broadcom BCM943364WCD1 The Broadcom BCM943364WCD1 module is mounted on a full-featured USB-based evaluation and development board that is fully compatible with the WICED Wi-Fi Software Development Kit (SDK). Designed to be a lower cost alternative to the popular BCM43362, the onboard SIP module leverages the BCM43364 2.4 GHz WLAN IEEE 802.11b/g/n MAC/baseband/radio. In addition, the module integrates a power amplifier (PA) that meets the output power requirements of most handheld systems, a low-noise amplifier (LNA) for best-in-class receiver sensitivity, and an internal transmit/ receive (itr) RF switch, further reducing the overall solution cost and printed circuit board area. Powered by the STM32F411 32-bit ARM microcontroller, the board is also provisioned to support the authentication chip utilized by Apple s HomeKit offering. The Thingworx C-SDK distribution may be installed on the device, and this guide will follow the procedure for doing so. This guide will also follow a Reference Implementation procedure for connecting the device to a remote ThingWorx server with a simulated steam sensor demo. 2

Installation Setup of the Broadcom device with this guide will require the use of a Linux operating system on either a host or guest (virtual machine) operating system, such as Ubuntu. It is possible to compile the necessary code in Windows, but this guide recommends using a Linux environment. Please note that this guide was written for a computer running Microsoft Windows 7 with an Ubuntu (v14.04) virtual machine. Refer to the Troubleshooting section of this guide for help with frequently asked questions. Downloads and Prerequisites 1. Begin by downloading the WICED 3.5.x (latest) SDK from https://community.broadcom.com/community/wi ced-wifi/wiced-wifi-documentation. Follow the link at the bottom of the page for the WICED SDK 3.5.x IDE Installer and.7z Source Files, and then locate the post containing the *.7z zip file. Refer to the screenshots for guidance. 2. Note: For a build on Linux, download the *.7z files to the Linux machine. If you are compiling on Windows, you may download the.exe executable version. You will also need a Broadcom community site account in order to access these pages. This is free to create. 3

3. Once downloaded, extract the compressed WICED-SDK. Install p7zip first if you do not already have it: sudo apt-get install p7zip-full unzip <file_name>.7z.zip 7za x <file_name>.7z 4. 5. 4

6. Next, change directory to the demo folder in your extracted file as in: WICED-SDK-3.5.x/apps/demo and create a folder named thingworx. 7. Download the ThingWorx C-SDK from the PTC support site (downloads section) at support.ptc.com. mkdir thingworx 8. Open the Thingworx C-SDK and copy the src folder to WICED-SDK-3.5.x/apps/demo/thingworx. Configuration and Setup 1. Extract the Broadcom zip file packaged with this Starter Kit onto your Linux OS. 2. Copy the thingworx.c, thingworx.mk, and wifi_config_dct.h files to the WICED-SDK- 3.5.x/apps/demo/thingworx directory, created earlier. 5

3. Copy the twwiced.c, twwiced.h, and twwicedthread.c files (located in /src/porting in the Extracted Starter Kit package) to WICED-SDK- 3.5.x/apps/demo/thingworx/src/porting/. 4. Open and edit the file apps/demo/thingworx/src/porting/twosport.h Change the following line: #include TW_OS_INCLUDE to #include twwiced.h 6

5. Open and edit the file apps/demo/thingworx/thingworx.c Edit the following line to include the IP address of the ThingWorx server which the device will connect to: #define TW_HOST type_ip_address_here Edit the following line to include a valid AppKey created on this server: #define TW_APP_KEY type_app_key_here As shown below: 7

6. Open and edit the following: apps/demo/thingworx/wifi_config_dct.h Add a local WIFI SSID as a value to CLIENT_AP_SSID Add the SSID passphrase to the value CLIENT_AP_PASSPHRASE Compiling and Running the Application 1. Navigate to the root WICED-SDK-3.5.x directory. 2. Make sure that the Broadcom device is connected via USB. Note: If performing this in a Linux virtual machine environment, you ll need to set up the VM so that the USB device is connected to the guest virtual machine instead of the host computer. 3. Execute the following command from the WICED-SDK-3.5.x root directory: sudo./make demo.thingworx-bcm943364wcd1-freertos-lwip download run Confirm that you see the message above when the build is complete. The build may take a few minutes to finish. 8

4. Optional: Connect to the device via serial to view its console log output. This is especially useful for debugging and troubleshooting purposes. This can be done from either Linux or Windows. From a Linux machine, you may use the screen command when the device is connected and recognized via serial USB. This guide will cover the procedure for viewing the serial output via Windows, and not Linux. From Windows, and on the host operating system, use a client such as PuTTY. The device will first need to be connected to the host operating system and the virtual machine may need to be shut down. The drivers for the WICED device will need to be installed on the Windows machine. From the links at https://community.broadcom.com/community/wiced-wifi/wiced-wifi-documentation, download the Windows.exe executable and install the IDE program when finished. Drivers for the device will be installed along with the IDE. At this point, the presence of the WICED device should be recognized as connected to a COM port in Windows. Re-connect the device if you do not see it, and, if necessary, restart your computer. 9

5. In PuTTY or another similar program such as HyperTerminal, connect to the device at the COM port shown in the Device Manager, and connect via Serial at baud rate 115200. The console output from the device should immediately be visible. Confirm that a log similar to the following is shown. Binding Properties in ThingWorx 1. Navigate to your ThingWorx remote server (same server configured on the Broadcom device) from any computer. 10

2. Click on Monitoring in the top-right corner, and then select Remote Things. Next, click on Unbound Things, and the Broadcom device should be visible as a connected unbound thing. 3. To connect this Unbound Thing to a Thing and begin binding properties, follow the standard procedure for binding a Remote Thing. Create a new Thing in Thingworx Composer with the same name as the remote Unbound Thing. Ensure that this Thing s Thing Template is the RemoteThing Template. 4. Next, edit the Thing s properties, and click on Manage Bindings, and then click the Remote tab in the new window to view the Thing s available properties. In this guide, the properties pushed from the device 11

are the standard SteamSensor example properties, compiled and running as a simulator on the device. They include Temperature and Pressure. Click Add All Above Properties to add these properties to the Thing, and then click Done. 5. After saving and refreshing, you should see properties updating on the Thing from the Properties page. For additional help, refer to the Troubleshooting section below. 12

6. To stop the device from running the simulator, open PuTTY serial connection, and press Q to terminate the device s program. If you wish to restart, the physical RESET button on the device must be pressed once. Troubleshooting Problem Solution(s) 1. Unable to extract WICED zip; problems with extracted file architecture 1. Make sure you have pzip installed on the linux machine, and make sure you are using the proper extraction method. Type sudo apt-get install p7zip-full unzip <file_name>.7z.zip 7za x <file_name>.7z 2. Try extracting the files on a different machine first, and copy the contents to the Linux machine. 3. Contact the Broadcom Community for further assistance. 2. Problems with the compilation of the Broadcom C-SDK 1. Double-check all steps to verify that the file structure and hierarchy is exactly correct for all files, especially the edited files. Restart from scratch if necessary. 13

2. Verify that the edited files (SSID, Appkey, IP address) are exactly correct with no syntax errors, such as a missing quotation mark. The Appkey must be exactly correct, the server hostname should be correct (for IP addresses, type the IP address without http ). 3. Try to use a different version of either the WICED SDK or ThingWorx C- SDK. 3. The device is not visible via USB / Serial in either a guest or host operating system 1. Follow directions from your virtual machine provider to ensure that the device is connected via serial in pass-through from the host computer. 2. For problems with the host computer, make sure you have the WICED drivers installed before connecting the device to your computer. Use Windows and download/install the WICED 3.5.x.exe installer, which includes serial drivers, from https://community.broadcom.com/community/wiced-wifi/wiced-wifidocumentation 4. Cannot connect to the device via PuTTY or another terminal program, or no console output 1. Verify that the device is properly connected to the computer or virtual machine you are attempting to view the console from. 2. Verify that the proper USB serial drivers are installed. 3. Verify that the baud rate of the serial connection is 115200. 4. Verify that the SDK has compiled correctly on the device. Disconnect it and reconnect it before trying again. 5. Try an alternative terminal program, such as PuTTY or HyperTerminal. 5. Cannot bind a Thing to the Broadcom Device in Thingworx. 1. Ensure that the Thing name you are creating is exactly the same as the device s ID in the ThingWorx Unbound Things page. The Thing name can alternatively be customized if it is set to be an identifier in the source code. 2. Ensure the Thing you are creating is of the RemoteThing Template. 3. Refer to ThingWorx support for further assistance. 6. Device will not connect to ThingWorx server / is not visible under Unbound Things. 1. Check the All tab instead of the unbound things tab to confirm that the device is not already bound to a Remote Thing. 2. Double-check the connection settings in thingworx.c. Re-compile if changes were necessary. 3. Confirm that the wifi network is active and that the connection parameters in wifi_config_dct.h are exactly correct. Switch to testing on an unsecured wifi network if necessary. Ensure you have the latest WICED SDK installed. Contact Broadcom if the device will not connect to any WiFi network. 4. Verify that no firewall or network configuration settings are preventing the device from communicating with a remote ThingWorx server. This is a common problem. 5. Test on a locally-hosted ThingWorx platform to rule out internet connectivity issues. 14

Known Limitations This device has the following known limitation: 1. The Broadcom device does not currently support connection via HTTPS (SSL / TLS). Compatibility This guide has been tested for compatibility with the DEVICE and the following ThingWorx platform and operating system: ThingWorx Platform Version ThingWorx 7.0.0 OS Windows 7, Service Pack 1 OS (Virtual Machine) Ubuntu 14.04 WICED SDK v 3.5.2 Document Revision History Revision Date Version Description of Change April 7, 2016 1.0 Initial Release 15