1 Software Overview... 2. 1.1 ncp-uart... 2 1.2 ash-v3-test-app... 2 1.3 ash-v3-test-app Command Line Options... 2. 2 Testing... 2



Similar documents
UG103.8 APPLICATION DEVELOPMENT FUNDAMENTALS: TOOLS

QSG105 GETTING STARTED WITH SILICON LABS WIRELESS NETWORKING SOFTWARE

CP2110-EK CP2110 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup

AN220 USB DRIVER CUSTOMIZATION

AN220 USB DRIVER CUSTOMIZATION

PC Base Adapter Daughter Card UART GPIO. Figure 1. ToolStick Development Platform Block Diagram

How To Develop A Toolstick

AN104 I NTEGRATING KEIL 8051 TOOLS INTO THE SILICON LABS IDE. 1. Introduction. 2. Key Points. 3. Create a Project in the Silicon Labs IDE

ZigBee-2.4-DK 2.4 GHZ ZIGBEE DEVELOPMENT KIT USER S GUIDE. 1. Kit Contents. Figure GHz ZigBee Development Kit

AN437. Si4432 RF PERFORMANCE AND FCC COMPLIANCE TEST RESULTS. 1. Introduction. 2. Relevant Measurements to comply with FCC

AN655 R ANGE TEST APPLICATION FOR EZRADIO AND EZRADIOPRO. 1. Introduction. 2. Supported Radio Types

In the idle state, the TIP lead will be high impedance to ground and the RING lead will have the battery voltage. See Figure 1.

AN335 USB DRIVER INSTALLATION UTILITY. 1. Description. 2. Installation Install Package

USB FM Radio-RD USB FM RADIO USER S GUIDE. 1. USB FM Radio Setup. One-time set-up enables configuration of presets and region specific FM band

UG103.9 EMBER APPLICATION DEVELOPMENT FUNDAMENTALS: ZLL

APPLICATION. si32library. Callback CMSIS HARDWARE. Figure 1. Firmware Layer Block Diagram

AN335 USB DRIVER INSTALLATION METHODS. 1. Introduction. 2. Relevant Documentation. 3. DPInst Installation and Customization

AN588 ENERGY HARVESTING REFERENCE DESIGN USER S GUIDE. 1. Kit Contents. 2. Introduction. Figure 1. Energy Harvesting Sensor Node

AN710 BRINGING UP CUSTOM DEVICES FOR THE EMBER EM35XX SOC OR NCP PLATFORM. (Formerly document )

UG104 TESTING AND DEBUGGING APPLICATIONS FOR THE EMBER EM2XX AND EM35X PLATFORMS

UG103.8: Application Development Fundamentals: Tools

Figure 1. 8-Bit USB Debug Adapter

Figure 1. Typical Measurement Configuration Antenna Board, Pico Board, and Wireless Motherboard

Windows 7: Using USB TAP on a Classic CodeWarrior Installation (MGT V9.2 DSC V8.3)

AN114. Scope. Safety. Materials H AND SOLDERING TUTORIAL FOR FINE PITCH QFP DEVICES. Optional. Required. 5. Solder flux - liquid type in dispenser

etpu Host Interface by:

Initializing the TSEC Controller

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor.

Programming Audio Applications in the i.mx21 MC9328MX21

CodeWarrior Development Studio for Freescale S12(X) Microcontrollers Quick Start

How To Fit A 2Mm Exposed Pad To A Dfn Package

UG103-13: Application Development Fundamentals: RAIL

AN862. OPTIMIZING Si534X JITTER PERFORMANCE IN NEXT GENERATION INTERNET INFRASTRUCTURE SYSTEMS. 1. Introduction

AND8365/D. 125 kbps with AMIS-4168x APPLICATION NOTE

Prepared by: Paul Lee ON Semiconductor

Installing Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start

TS7 EMBER DEBUG ADAPTER (ISA3) TECHNICAL SPECIFICATION

MCF54418 NAND Flash Controller

PQ-MDS-T1 Module. HW Getting Started Guide. Contents. About This Document. Required Reading. Definitions, Acronyms, and Abbreviations

RSA Security Analytics Netflow Collection Configuration Guide

PowerQUICC II Pro (MPC83xx) PCI Agent Initialization

RSA Security Analytics Netflow Collection Configuration Guide

Local Interconnect Network (LIN) Physical Interface

Installing Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start

Freescale Semiconductor, Inc. Product Brief Integrated Portable System Processor DragonBall ΤΜ

CodeWarrior Development Studio Floating Licensing Quick Start

Genesi Pegasos II Setup

The Secrets of Flow Control in Serial Communication

INSTALLING AND USING ENTEL PROGRAMMER IN WINDOWS 7 Technical Support Bulletin

Command Line Interface User Guide for Intel Server Management Software

In-System Programmer USER MANUAL RN-ISP-UM RN-WIFLYCR-UM

Hardware Configurations for the i.mx Family USB Modules

LC898300XA. Functions Automatic adjustment to the individual resonance frequency Automatic brake function Initial drive frequency adjustment function

UG129: ZigBee USB Virtual Gateway Reference Design (RD ) User's Guide

Using the Kinetis Security and Flash Protection Features

Using WinUSB in a Visual Studio Project with Freescale USB device controller

NCP1090GEVB, NCP1094GEVB. Power-over-Ethernet PD Interface Evaluation Board User's Manual EVAL BOARD USER S MANUAL.

Configuring RADIUS Authentication for Device Administration

Minicom User Guide USER GUIDE v1.0 26/06/2010. Minicom User Guide

Software Installation Guide. ModeMaster PC

Connecting Low-Cost External Electrodes to MED-EKG

AN10811 Programming SPI flash on EA3131 boards Rev May 2009 Application note Document information Info Content Keywords Abstract

Sensor Puck SENSOR PUCK USER S GUIDE. 1. Introduction. 2. Evaluation Kit Description

How To Fix An Lmx9838 Bluetooth Serial Port Module With Bluetooth (Bluetooth 2) From A Bluetooth Bluetooth 4.2 Device With A Bluembee 2.2 Module

Creating Overlay Networks Using Intel Ethernet Converged Network Adapters

AN962: Implementing Master-Slave Timing Redundancy in Wireless and Packet- Based Network Applications

Bootloader with AES Encryption

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

APPLICATION NOTE. AT07175: SAM-BA Bootloader for SAM D21. Atmel SAM D21. Introduction. Features

Production Flash Programming Best Practices for Kinetis K- and L-series MCUs

Software Real Time Clock Implementation on MC9S08LG32

Product Brief. 2.0 microtoled. Intelligent GOLDELOX Display Module. µtoled-20-g2. Rev 1.0

MC10SX1190. Fibre Channel Coaxial Cable Driver and Loop Resiliency Circuit

AND9190/D. Vertical Timing Optimization for Interline CCD Image Sensors APPLICATION NOTE

udrive-usd-g1 Embedded DOS micro-drive Module Data Sheet

AN111: Using 8-Bit MCUs in 5 Volt Systems

Generate Makefiles from Command Line Support in Eclipse-Based CodeWarrior Software

Application Note AN_241. FTDI_AOA_HyperTerm_User_Manual

AN295 USB AUDIO CLASS TUTORIAL. 1. Introduction. 2. USB, Isochronous Transfers, and the Audio Class Overview USB Operational Overview

Data Movement Between Big-Endian and Little-Endian Devices

USB Stick Driver Installation Instructions

Performance Monitor on PowerQUICC II Pro Processors

Point-of-Sale (POS) Users Guide Lech José Olmedo Guerrero Jaime Herrerro Gallardo RTAC Americas

Quectel Cellular Engine

Freescale Embedded GUI Converter Utility 2.0 Quick User Guide

M CORE 14-PIN ENHANCED BACKGROUND DEBUG INTERFACE (14EBDI) USER S MANUAL

Installation of the MMA955xL CodeWarrior Service Pack Author: Fengyi Li Application Engineer

AND8132/D. Performance Improvements to the NCP1012 Evaluation Board APPLICATION NOTE

Features + REFCLK CLKOUT. Si DATAOUT DATAIN LOS LTR RESET/CAL CLKDSBL LOS_LVL REXT SLICE_LVL BER_LVL. Si5013-EVB

UG103.1 APPLICATION DEVELOPMENT FUNDAMENTALS: WIRELESS NETWORKING

Techniques and Tools for Software Analysis

Usage, Installation, Warranty and Service Information

UG110 EMBER EM35X DEVELOPMENT KIT USER GUIDE

Application Note AN_243. FT312D USB Host to UART Cable Application

Understanding LCD Memory and Bus Bandwidth Requirements ColdFire, LCD, and Crossbar Switch

CS V/250 ma, 5.0 V/100 ma Micropower Low Dropout Regulator with ENABLE

Improving Embedded Software Test Effectiveness in Automotive Applications

USB HID bootloader for the MC9S08JM60

Connecting to an SMTP Server Using the Freescale NanoSSL Client

Developing an Application for the i.mx Devices on the Linux Platform

Transcription:

ASHV3-UART HOST INTERFACING GUIDE This document describes how to set up and test UART communication between a host and Network Co-Processor (NCP) using ASHv3-UART. It assumes that you have a Raspberry Pi, USB cable (for UART communication), and a development board. This document applies to Silicon Labs Thread version 1.0 or later. Contents 1 Software Overview... 2 1.1 ncp-uart... 2 1.2 ash-v3-test-app... 2 1.3 ash-v3-test-app Command Line Options... 2 2 Testing... 2 2.1 Bootstrap Testing... 3 2.2 Echo Testing... 3 2.3 XON/XOFF Testing... 3 3 Debugging... 3 Rev 0.3 Copyright 2015 by Silicon Laboratories AN844

1 Software Overview A Network Co-Processor (NCP) runs the Ember Thread stack and is controlled by the host processor through ASHv3-UART commands. The NCP must be a chip in the Ember EM35XX family. Two applications are needed for testing: ncp-uart and ash-v3-test-app. 1.1 ncp-uart The ncp-uart image is loaded onto your NCP. 1.2 ash-v3-test-app ash-v3-test-app runs on your host and provides tests to verify that your UART + ASHv3 implementation is working. This test program is much simpler than a full-fledged gateway sample application. As a result, it can more efficiently pinpoint ASHv3-UART interface problems. ash-v3-test-app has two modes of execution interactive and non-interactive. In interactive mode, an interactive console operates the application. In non-interactive mode, the application is operated by command-line arguments. By default, ash-v3-test-app runs in interactive mode. Invoking ash-v3-test-app with the arguments --test-echo, --test-bootstrap or --test-xon-xoff forces it to run in non-interactive mode. (See section 2, Testing for a detailed explanation of these arguments.) Note: ash-v3-test-app does not enable any wireless functionality because its purpose is to validate proper operation of the ASHv3 interface between the host and the NCP. 1.3 ash-v3-test-app Command Line Options ash-v3-test-app takes the following arguments: --uart <uart_file>: Specify the UART file, such as /dev/ttyusb0. This option is required. --test-echo <echo_string>: Run an echo test. For more information, see section 2.1, Bootstrap Testing. --test-bootstrap: Run a bootstrap test. For more information, see section 2.2, Echo Testing. --test-xon-xoff: Run an XON/XOFF test. For more information, see section 2.3, XON/XOFF Testing. --verbose: Display all TX d and RX d ASHv3 packets. 2 Testing ash-v3-test-app provides tests to verify that your UART + ASHv3 implementation is working properly. It verifies that an ASHv3 handshake can be performed and it also provides an echo command. To build the application, execute the following command in the base release directory: make f app/ip-ncp/ash-v3-test-app.mak Before executing ash-v3-test-app, identify your USB TTY driver device. The TTY driver device is usually /dev/ttyusb0. 2 Rev. 0.3

2.1 Bootstrap Testing The bootstrap test verifies that ASHv3 can perform an initial handshake between the host and NCP. Invoke ash-v3- test-app with the -u and --test-bootstrap arguments as follows: sudo build/ash-v3-test-app-unix-host/ash-v3-test-app -u /dev/ttyusb0 --test-bootstrap The text ASHv3 is up will be displayed when ASHv3 successfully performs an initialization handshake. If a handshake cannot be performed, the application displays Failure. 2.2 Echo Testing The echo test sends a string from the host to the NCP, and the NCP then sends the string back to the host. The host verifies that the received string matches what was sent. Invoke ash-v3-test-app with the u and --test-echo arguments as follows: sudo build/ash-v3-test-app-unix-host/ash-v3-test-app -u /dev/ttyusb0 --test-echo this is my string If the host receives a correctly formatted string back from the NCP, it will print Success. Otherwise, it will print Failure. 2.3 XON/XOFF Testing The NCP implements a one-way version of XON/XOFF as follows: The NCP tells the host to stop sending it data by sending an XOFF. The NCP sends a series of XONs when it can accept serial data again. The host does not have the same ability; the NCP ignores any XON or XOFF bytes sent by the host. The NCP sends an XOFF when its receive buffer fills up to a threshold. It sends a series of five XONs, with 100 milliseconds between each, when the buffer drains down to a second lower threshold. The NCP also sends the same sequence of XONs after it is reset. These additional XONs prevent the UART from hanging if an XON is lost or corrupted by noise, or if another byte sent by the NCP is corrupted into an XOFF. XON/XOFF flow control is enabled in the application when it is compiled with this global #define: EMBER_APPLICATION_SUPPORTS_SOFTWARE_FLOW_CONTROL The XON/XOFF test verifies that the ncp-uart sends XONs when either of its RX buffers is full, and sends a series of XONs after it services its RX buffers. Invoke ash-v3-test-app with the u and --test-xon-xoff arguments as follows: sudo build/ash-v3-test-app-unix-host/ash-v3-test-app -u /dev/ttyusb0 --test-xon-xoff ash-v3-test-app displays Passed upon success, and prints an error upon failure. 3 Debugging If the steps in section 2, Testing fail, try these debugging tips: Some problems can be debugged by viewing the ASH frames that are sent between the host and NCP. To do this, invoke ash-v3-test-app with the --verbose argument: sudo build/ash-v3-test-app-unix-host/ash-v3-test-app -u /dev/ttyusb0 --verbose Verify that a tty device exists in /dev, such as /dev/ttyusb0. It might have a different name, such as /dev/ttyusb1. Rev. 0.3 3

If ash-v3-test-app is completely unable to communicate with the NCP, attach a logic analyzer to the UART TX and RX lines, and verify that traffic is being sent. 4 Rev. 0.3

CONTACT INFORMATION Silicon Laboratories Inc. 400 West Cesar Chavez Austin, TX 78701 Tel: 1+(512) 416-8500 Fax: 1+(512) 416-9669 Toll Free: 1+(877) 444-3032 For additional information please visit the Silicon Labs Technical Support page: http://www.silabs.com/support Patent Notice Silicon Labs invests in research and development to help our customers differentiate in the market with innovative low-power, small size, analog-intensive mixed-signal solutions. Silicon Labs' extensive patent portfolio is a testament to our unique approach and world-class engineering team. The information in this document is believed to be accurate in all respects at the time of publication but is subject to change without notice. Silicon Laboratories assumes no responsibility for errors and omissions, and disclaims responsibility for any consequences resulting from the use of information included herein. Additionally, Silicon Laboratories assumes no responsibility for the functioning of undescribed features or parameters. Silicon Laboratories reserves the right to make changes without further notice. Silicon Laboratories makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does Silicon Laboratories assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. Silicon Laboratories products are not designed, intended, or authorized for use in applications intended to support or sustain life, or for any other application in which the failure of the Silicon Laboratories product could create a situation where personal injury or death may occur. Should Buyer purchase or use Silicon Laboratories products for any such unintended or unauthorized application, Buyer shall indemnify and hold Silicon Laboratories harmless against all claims and damages. Silicon Laboratories, Silicon Labs, and Ember are registered trademarks of Silicon Laboratories Inc. Other products or brandnames mentioned herein are trademarks or registered trademarks of their respective holders. Rev. 0.3 5