Over the Air Download Peripheral Device Central Device Slave Master

Slides:



Advertisements
Similar presentations
Renesas Technology America Inc. 1 SKP8CMINI-15,17 Tutorial 2 Creating A New Project Using HEW4.
Advertisements

Code Composer Department of Electrical and Computer Engineering
COMPUTER PROGRAMMING I Essential Standard 5.02 Understand Breakpoint, Watch Window, and Try And Catch to Find Errors.
11 Getting Started with ASP.NET Beginning ASP.NET 4.0 in C# 2010 Chapters 5 and 6.
Copyright © 2008 Pearson Addison-Wesley. All rights reserved. Chapter 12 Separate Compilation Namespaces Simple Make Files (Ignore all class references.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
LAUNCHXL2-RM57L – Project 0
Guide To UNIX Using Linux Third Edition
1 Introduction to Programming Environment Using MetroWerks CodeWarrior and Palm Emulator.
Introduction Purpose Objectives Content Learning Time
Shell and Flashing Images Commands and upgrades. RS-232 Driver chip – ST3232C Driver chip is ST3232C Provides electrical interface between UART port and.
Renesas Technology America Inc. 1 M16C/Tiny SKP Tutorial 2 Creating A New Project Using HEW4.
Chapter Introduction to Computers and Programming 1.
Introduction Purpose This training course covers debugging an application on an SH target in the Renesas HEW (High-performance Embedded Workshop) development.
Chapter 1: Introduction to Computers and Programming.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Moodle (Course Management Systems). Assignments 1 Assignments are a refreshingly simple method for collecting student work. They are a simple and flexible.
How KeePass password safe can save you time and energy
PMS /134/182 HEX 0886B6 PMS /39/80 HEX 5E2750 PMS /168/180 HEX 00A8B4 PMS /190/40 HEX 66CC33 By Adrian Gardener Date 9 July 2012.
Guideline: How to build AMSS source code? History: 01/02/ Make Draft 05/02/2010 – Release /02/2010 – Updated.
Developing C/C++ applications with the Eclipse CDT David Gallardo.
Renesas Technology America Inc. 1 SKP8CMINI Tutorial 2 Creating A New Project Using HEW.
Introduction Purpose This training course covers debugging an application on an SH target in the Renesas HEW (High-performance Embedded Workshop) development.
Janet Crum and Carla Pealer Oregon Health & Science University Library NWIUG 2008 October 17, 2008.
Development of a microprocessor project with LPC2388 development board.
Bit-DSP-MicrocontrollerTMS320F2812 Texas Instruments Incorporated European Customer Training Center University of Applied Sciences Zwickau (FH)
Renesas Technology America Inc. 1 M16C Seminars Lab 3 Creating Projects Using HEW4 14 March 2005 M16C Seminars Lab 3 Creating Projects Using HEW4 Last.
Java Programming, Second Edition Appendix A Working with Java SDK 1.4.
Debugging TI RTOS TEAM 4 JORGE JIMENEZ JHONY MEDRANO ALBIEN FEZGA.
Chapter 9 Creating a Reference Document with a Table of Contents and an Index Microsoft Word 2013.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
Renesas Technology America Inc. 1 SKP8CMINI Tutorial 2 Creating A New Project Using HEW.
HTML Concepts and Techniques Fifth Edition Chapter 3 Creating Web Pages with Links, Images, and Formatted Text.
Quick guide to ASIMON configuration For version 3.0 or greater SAFETY AT WORK Date: 3/18/2009.
1 Introduction Purpose  This course gives an overview of assembler settings of the High-performance Embedded Workshop (HEW), used for developing software.
Open project in Microsoft Visual Studio → build program in “Release” mode.
Debugging tools in Flash CIS 126. Debugging Flash provides several tools for testing ActionScript in your SWF files. –The Debugger, lets you find errors.
VB.NET and Databases. ADO.NET VB.Net allows you many ways to connect to a database. The technology used to interact with a database or data source is.
0 Configuring a 3500 Using iTools 2 iTools Workshop - getting started Start iTools and from the New File menu choose 3504 v1.04 programmer.
RTLAB Kang. Moo jin Using Open Source Tools for AT91SAM7X Cross Development.
Chapter 1: Introduction to Computers and Programming
Mobile Device Development
Workshop Setup The software/hardware used in this workshop are:
Getting started with the Arxterra software and 3DoT Firmware
Lab 1: Using NIOS II processor for code execution on FPGA
Computer System Laboratory
Getting Eclipse for C/C++ Development
Tutorial Using the App help.ebsco.com.
Data Handlers.
DHCP server & Client Objectives Contents
CCNA 3 v3.1 Module 6 Switch Configuration
PRU-ICSS Programming with CCS
Instructor: Prasun Dewan (FB 150,
Douglas Data Manager WebEx
Learning about Taxes with Intuit ProFile
1. Open Visual Studio 2008.
ZXP3 Printer Driver Installation and settings for EPIC Cards
Tutorial Using the App help.ebsco.com.
Learning about Taxes with Intuit ProFile
Training Module Introduction to the TB9100/P25 CG/P25 TAG Customer Service Software (CSS) Describes Release 3.95 for Trunked TB9100 and P25 TAG Release.
Download and Installation of code::blocks
Software Setup & Validation
Changing Ethernet config using IP changer FW upgrade
Computer System Laboratory
Getting Eclipse for C/C++ Development
Preparation for Assignment 2
Review of Previous Lesson
Chapter 1: Introduction to Computers and Programming
Presentation transcript:

Over the Air Download Peripheral Device Central Device Slave Master Bluetooth low energy Over the Air Download New version firmware Peripheral Device Slave Central Device Master

Over the Air Download OAD Target OAD Manager BIM OAD Application OAD Manager(typically iOS devices, Android devices, or PC) runs an OAD application(it is a TI proprietary BLE profile) and has an OAD image (new firmware) to send to OAD target. OAD Target(real BLE products) has BIM(Boot Image Manager), an old image, and prepared area for new image. OAD Manager send new image over-the-air by OAD application. OAD Target stores new image and with BIM, system will jump to new image to execute. OAD Target OAD Manager BIM Old Image(A) OAD Application OAD Image Area for new Image(B) Binary image over BLE

Over the Air Download The following sections will show how to use OAD. With Keyfob sample code and BLE Device Monitor. It contains 4 parts: Configure BIM Configure image A Configure image B Over-the-Air Downloading

Configure BIM (Boot Image Manger) The boot code is separately built and debugged or programmed via the IAR IDE. The project is located at: $INSTALL_DIR\Projects\ble\util\BIM Before debugging or physically programming the OAD application code produced in the next section, this OAD boot code must first be programmed into the flash. The .hex file produced by this project build can be programmed directly using a tool like the SmartRF Programmer.

Configure image A First of all, it is very important for this example, if “DEFAULT_ENABLE_UPDATE_REQUEST” is set to be “TRUE” in your keyfobdemo.c file, please set it to be “FALSE”. Otherwise it will effect BLE Device Monitor’s OAD application. In the real product you do NOT need to do this.

Configure image A Select ProjectEdit ConfigurationsNew… and add a new build target as shown

Configure image A Select PROFILESAddAdd Files and add the files for OAD Profile as show below from the following directory: INSTALL_DIR\Projects\ble\Profiles\OAD

Configure image A Select TARGETCC2540EBDriversAddAdd Files and add hal_crc.c as show below from the following directory: INSTALL_DIR\Components\hal\target\CC2540EB

Configure image A Enable the OAD Profile in the Application by adding a call to OADTarget_AddService() function wherever the other BLE Profiles are activated. For keyfob project is in KeyFobApp_Init().

Configure image A Add an include of the OAD Profile header file in the module accessed in last step. As an example, this is done at the top of the keyfobdemo.c module as shown below:

Configure image A Select Project->OptionsC/C++ CompilerPreprocessorDefined symbols and add the following 4 new definitions as shown in the figure: FEATURE_OAD, OAD_KEEP_NV_PAGES, FEATURE_OAD_BIM, HAL_IMAGE_A And include the path to the OAD Profile as shown above in the ‘Additional include directories’: $PROJ_DIR$\..\..\Profiles\OAD

Configure image A Select Project->Options->Build Actions->Post-build command line and paste the following line (with no carriage return and exactly one single space between quote marks): "$PROJ_DIR$\..\..\common\CC2540\cc254x_ubl_pp.bat" "$PROJ_DIR$" "ProdUBL" "$PROJ_DIR$\CC2541DK-mini Keyfob Slave OAD-imgA\Exe\KeyFobDemo" Note that the relative path above will contain different names as you work with projects other than the CC2541 Keyfob.

Configure image A Select Project->Options->Linker->Config->Linker configuration file and paste the following line: $PROJ_DIR$\..\..\common\CC2541\cc254x_f256_imgA.xcl

Configure image A Select Project->Options->Linker->Output->Format->Allow C-SPY-specific extra output as shown below.

Configure image A Select Project->Options->Linker->Extra Output->Format Select the ‘Format->Output format’ to be ‘intel-extended’ and check the box for ‘Output fileOverride default’ and use the ‘.hex’ suffix for the output file.

Configure image A Select Project->Options->Debugger->Texas Instruments->Download. Uncheck the box to ‘Erase flash’ and check the box to ‘Retain unchanged pages’ so that the BIM is not erased when this application image is downloaded from IAR.

Build image A Build and download the project on Keyfob. You may receive a post-build error. This is because you have not yet produced the .sim file. You can ignore this error at this point. Relax, don’t be scared or panic, nothing is wrong!

Configure image B Similar steps as above will be followed to create the Image-B build target, using the Image- A build target as the source.

Configure image B The preprocessor definition needs to be changed from HAL_IMAGE_A to HAL_IMAGE_B. Very easy.

Configure image B The post-processing build actions path to the EXE must be changed:

Configure image B The linker control file must be the one for Image-B.

Configure image B Now you have configured the image B, you can compile and program the .hex file into Keyfob. Then the Keyfob will contain BIM, image A and image B. (Note: programming image B into Keyfob is NOT a must step) In order to do OAD, the image file must be a .bin file, the following steps will show how to create it.

Configure image B Change the ‘FormatOutput format’ to be ‘simple-code’ and do not check the box for ‘Output fileOverride default’ as shown below.

Configure image B Open the ‘oad_target.c’ module and change the version field in the Image Header from 0x0000 to 0x0002 as shown in the below figure. This will mimic an updated version of the image when the BIM checks the image header.

Configure image B Build but do not download the target build. This will produce the output binary file for OAD in the output directory here: INSTALL_DIR\Projects\ble\KeyFob\CC2541DB\CC2541DK-mini Keyfob Slave OAD-imgB\Exe\KeyFobDemo.bin If this is your first time building with simple-code (.sim) output, you will have to build the project twice for the binary file to be produced. We will use BLE Device Monitor to do OAD with the Keyfob. Please connect a CC2540 USB dongle to PC and start BLE Device Monitor.

Over-the-Air Downloading Once BLE Device Monitor has discovered the keyfob, connect it. Then BLE Device Monitor will show the device supports OAD in the event log:

Over-the-Air Downloading Select File->Program(OAD), you will get Target Firmware Update window. Browse to the .bin file location you have just compiled, then you will see the version information of the .bin file below. Click “Start”, then everything begins!