RoverCore-S Documentation

Size: px
Start display at page:

Download "RoverCore-S Documentation"

Transcription

1 RoverCore-S Documentation Release Khalil A. Estell Jan 11, 2019

2

3 Contents 1 Quick Links Getting Started Getting Started Prerequisites Prerequisites For Windows Installation Building and Loading Hello World Application Building and Loading FreeRTOS Project Creating your own Project Understanding The Framework Layout File Hierarchy Folder: firmware Folder: firmware/<application>/l5_application Folder: firmware/<application>/l5_assembly Folder: <applications>/build/bin Folder: <application>/build/_can_dbc Folder: <application>/build/obj Folder: firmware/lib Folder: firmware/lib/l%d_%s Guides Debugging with OpenOCD and GDB Prerequisites Step 0: Installing OpenOCD Step 1: Solder JTAG Headers to SJOne Step 2: Connecting J-Link to SJOne Step 3: Run OpenOCD Step 5: Run GDB Unit Testing Unit Testing Tools Files in test folder Compiling and Running Tests Created additional unit tests Stubbing out and Spying on Function calls using FFF.h framework Telemetry: Embedded Runtime Monitoring and Tuning Setting up Telemetry Using Telemetry i

4 1.2.4 Press Next To Get Started About Copyrights Press Next To Get Started 13 ii

5 CHAPTER 1 Quick Links Get Started Guides API Reference Hardware Reference 1.1 Getting Started Getting Started Prerequisites Need a running version of Ubuntu LTS or above, or Mac OS X (OS X Yosemite and above), or Windows 10 with WSL installed. You must also have the following pre-installed: Python 2.7+ Default installed on WSL, Ubuntu and Mac OS X 1

6 Git make Default installed on Mac OS X To install on WSL & Ubuntu run sudo apt install git-all Default installed on WSL, Ubuntu On Mac OSX this is installed after you run xcode-select --install If you are running Mac OS X you will need to install the xcode command line tools prior to running the setup. xcode-select --install. After the xcode tools are finished installing, follow the instructions below Prerequisites For Windows Note: this is for Windows build or later 1. Open PowerShell as Administrator and run Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux 2. Restart computer when prompted. 3. Open Windows Store and choose Ubuntu as Linux distro 4. Select Get Ubuntu ( If you get any errors go here: 5. After download completes select Launch (a) Create UNIX user account (b) If you get any errors go here: After this point, you should be able to run bash from the start menu Installation Step 0 Clone the repository git clone Step 1 Change directory into SJSU-Dev cd SJSU-Dev Step 2 Run setup script../setup Note: This will download and install the gcc-arm binaries, hyperload, telemetry locally to the repo. It will also generate the environment variables file and link the makefile and environment file to all of the default folders. 2 Chapter 1. Quick Links

7 Step 3 Edit the env.sh script. Change the line SJDEV=/dev/ttyUSB0 to equal what you have on your system. How to find your serial device on Ubuntu You probably do not have to change anything. If no other devices are connected to your machine, then it will be /dev/ttyusb0. It is recommended to keep it at this value, because when you add more devices, it will increment to /dev/ttyusb1. Once you remove your devices and replace them, the value will reset. How to find your serial device on Mac OS X 1. Remove the SJ-One from your computer if it is connected. 2. List the files in the /dev folder by running the following ls /dev/. 3. Plug it into your computer and run ls /dev/. 4. Observe the new file that was created. 5. On mac, the path should look something like the following /dev/tty.cumodemfd If so, change the line in env.sh to that file path from SJDEV=/dev/ttyUSB0 -> SJDEV=/dev/ tty. How to find your serial device on Windows Linux Subsystem On Windows it should be /dev/ttys3. Check your device manager to see what number COM device your device. The number after COM is the number after the S in the /dev/ttys string. That is your device. Replace the line SJDEV=/dev/ttyUSB0 -> SJDEV=/dev/ttyS Building and Loading Hello World Application Step 0 From the root of the repository cd firmware/starter Step 1 Source the env.sh. You only need to do this once for each terminal session. After sourcing, the necessary environment variables will be added to your shell. source env.sh Step 2 Run make build within the Starter folder to compile it into a HEX file located in the bin folder. make build Note: use the --help argument to get additional information on how to use the build script. Step 3 To load the hex file into your SJ-One, run the following make command: make flash Note: If you run this command without first building, this command will build your project and then flash it. So you can skip the step above if you like Getting Started 3

8 Note: If the device port of your SJOne did not appear as the device set in your env.sh file, then run make flash SJDEV=<PATH-TO-YOUR-PORT> and that will change your port path for that instant. Step 4 To view serial output, and interact with the board, run the following make command: make telemetry Note: The interface will pop up in your default browser on launch. If this does not occur you will need to enter the web address into your browser s address bar and load it. Step 5 Done!! Building and Loading FreeRTOS Project Instructions are the same as Starter, but you need to enter the firmware/freertos folder and run make from there Creating your own Project Copy and rename the FreeRTOS, Starter or any of the other template folders to any place in your computer to make a new project Understanding The Framework Layout File Hierarchy firmware Starter L5_Application examples FreeRTOS L5_Application Telemetry L5_Application periodic_scheduler Assembly L5_Assembly CPPFreeRTOS L5_Application periodic_scheduler lib _can_dbc L0_LowLevel source L1_FreeRTOS hooks include MemMang portable src trace (continues on next page) 4 Chapter 1. Quick Links

9 L2_Drivers base src L3_Utils src tlm L4_IO fat src wireless L5_HighLevel examples periodic_scheduler source L6_Testing newlib (continued from previous page) Folder: firmware This folder is meant to hold the firmware applications you make. The default applications are: Starter: Template for simple single-threaded applications. (CMPE 30) FreeRTOS: Template FreeRTOS application. (CMPE 127/146/243/244) CPPFreeRTOS: Template FreeRTOS application. (CMPE 127/146/243/244) Telemetry: Template program to demonstrate usage of Telemetry and FreeRTOS. (CMPE 127/146/243/244) Assembly: Template application for building simple ARM assembly programs (CMPE 102) Unittest: Template unit testing application. (CMPE 146/146/243/244) Folder: firmware/<application>/l5_application The L5_Application folder holds the main.cpp file and other application layer files Folder: firmware/<application>/l5_assembly The L5_Assembly folder holds the main.s ARM assembly template program Folder: <applications>/build/bin This folder holds the executables that can be loaded into the SJOne board.hex. It also holds the disassembly file.lst, linker file.map and the Executable and Linkable Format.elf file Folder: <application>/build/_can_dbc The _can_dbc folder holds the CAN message description files and header generator Getting Started 5

10 Folder: <application>/build/obj This folder holds object files created during the compilation stage of building. They are then all linked together to create an.elf file afterwards. The last phase converts the.elf to a.hex file to be loaded into SJ-One s flash memory Folder: firmware/lib This folder holds the core firmware files for the SJ-One file, such as abstractions for using GPIO, I2C, UART, Interrupts, etc Folder: firmware/lib/l%d_%s The folders that start with L<some number>_<some folder name> are kind of self explanatory as to what they hold. For example, L1_FreeRTOS holds files pertaining to FreeRTOS and the FreeRTOS port files. L2_Drivers are device drivers and so on and so forth. 1.2 Guides Debugging with OpenOCD and GDB This tutorial will use HelloWorld as an example. But this will work for any application you build Prerequisites The official supported JTAG probes for the SJOne board is the SEGGER J-LINK mini EDU. Any other J-Link device will work with no modifications to the sjone.cfg file. Otherwise, change the interface/source to the appropriate adapter Step 0: Installing OpenOCD OpenOCD was installed when you ran the initial./setup script if you are running Linux or WSL. If you are running OS X, install manually Step 1: Solder JTAG Headers to SJOne Do as the title says if you haven t already Step 2: Connecting J-Link to SJOne Connect jumpers from the GND, TDI, TMS, TCK, and TDO pins on the J-Link to the SJOne s JTAG headers. Danger: DOUBLE AND TRIPLE CHECK THAT YOUR CONNECTIONS! The SJOne costs $80 and the BusBaster costs $35! Thats $115 down the drain if your burn them out! 6 Chapter 1. Quick Links

11 Step 3: Run OpenOCD Run: # If you used make install openocd -f./tools/openocd/sjone.cfg Tip: Successful output is the following: Info : clock speed 100 khz Info : JTAG tap: lpc17xx.cpu tap/device found: 0x4ba00477 (mfg: 0x23b (ARM Ltd.), part: 0xba00, ver: 0x4) Info : lpc17xx.cpu: hardware has 6 breakpoints, 4 watchpoints Error: If you see the following message: Error: JTAG-DP STICKY ERROR Info : DAP transaction stalled (WAIT) - slowing down Error: Timeout during WAIT recovery Error: Debug regions are unpowered, an unexpected reset might have happened Then the SJOne board is being held in a RESET state. To fix this, either by power cycling the SJOne board or by deassert the RTS and DTR signals through GTKTerm. Error: If you see your terminal get spammed with this: Error: JTAG-DP STICKY ERROR Error: Invalid ACK (7) in DAP response Error: JTAG-DP STICKY ERROR Error: Could not initialize the debug port Then its a good chance that one of your pins is not connected Step 5: Run GDB Open another terminal and run the following command in the firmware/default/ folder. arm-none-eabi-gdb -ex "target remote :3333" bin/firmware.elf Tip: You can run arm-none-eabi-gdb without arguments and use the following gdb commands file bin/ firmware.elf then target remote :3333 in the gdb command line interface to get the same effect as the above command. At this point the SJOne board has been halted. You should be able to add breakpoints to the program at this point and step through the code. At this point you will not see any source code. Do the following in the gdb command line interface: >>> break main >>> continue 1.2. Guides 7

12 Tip: Don t use the typical run command to start the code. It is already started in the firmware. Also, run does not exist when using target remote :3333 to OpenOCD. It exists with target extended-remote :3333, but causes issues... just don t use it OK. At this point you should see the source code of your main.cpp show up. Now you can step through your code and set breakpoints using step, next, finish and continue, break, etc. For a gdb cheat sheet, see this PDF: Error: If your board keeps restarting, this is due to the Watchdog not getting fed. Although, this shouldn t happen if you ran step 0 correctly. If you do a build spotless and build your project again with the -d flag, and this still does not work, then as a last resort, go into the lpc_sys.c file and comment out the enable_watch_dog() function call Unit Testing Unit Testing Tools To unit test we support CGreens and Catch along with the FFF.h (fake function framework). CGreen must be installed globally your system for the makefile to work Files in test folder Within the test folder, there will be a folder named simple-test which contains the following: makefile: for building the tests test.cpp: a Catch unit test example. cgreen-test.cpp: is a CGreen test example. test-files.list: a new line delimited list of files to be included in your test Compiling and Running Tests Enter the simple-test folder and run make to compile and run the Catch unit test and make cgreen to compile and run the CGreen unit test file Created additional unit tests Copy the simple-test folder and edit the files within to make a new test. Do not move the folder out of the test directory of the application Stubbing out and Spying on Function calls using FFF.h framework In your source, prefix the function you want to test with the following attribute ((weak)). This will make it a weak function that can be overridden with another definition of the same function. Within your test files you can include the following to create a function stub/spy: 8 Chapter 1. Quick Links

13 FAKE_VOID_FUNC(functionToStubAndSpyOn, bool); /*... */ functiontostubandspyon.custom_fake = []() { printf("custom function"); }; See more here Telemetry: Embedded Runtime Monitoring and Tuning Wikipedia: Telemetry is an automated communications process by which measurements and other data are collected at remote or inaccessible points and transmitted to receiving equipment for monitoring. Telemetry is another means of testing your firmware. Unit test are useful for testing your code s logic and making sure the behavior of your code operates as intended. A debugger allows you step through your code one line at a time, inspecting variables to see when adverse behavior arises in your firmware. Telemetry, more or less, is a means of feeding back information to the user about the current state of the firmware during runtime Setting up Telemetry Telemetry was setup when you ran the initial./setup script Using Telemetry Step 1 Run make telemetry in your firmware project directory. It should open up a webpage in your browser. You should see the following: Step 2 Connect your SJOne Board to your computer Guides 9

14 Step 3 Press the Refresh Devices button to check your system for serial devices. Step 4 Press the Connect button to connect to the serial device. At this point, you should see the serial output of the SJOne board being written to the Serial Output textarea. If Telemetry is running on the SJOne, then a table will be generated in the Telemetry Feedback area. 10 Chapter 1. Quick Links

15 1.2.4 Press Next To Get Started 1.3 About Warning: This section is not complete 1.4 Copyrights Warning: This section is not complete 1.3. About 11

16 12 Chapter 1. Quick Links

17 CHAPTER 2 Press Next To Get Started 13

Getting Started with Kinetis SDK (KSDK) v.1.2

Getting Started with Kinetis SDK (KSDK) v.1.2 Freescale Semiconductor Document Number: KSDK12GSUG User's Guide Rev. 0, 4/2015 Getting Started with Kinetis SDK (KSDK) v.1.2 1 Overview Kinetis SDK (KSDK) is a Software Development Kit that provides comprehensive

More information

Getting Started with FreeRTOS BSP for i.mx 7Dual

Getting Started with FreeRTOS BSP for i.mx 7Dual Freescale Semiconductor, Inc. Document Number: FRTOS7DGSUG User s Guide Rev. 0, 08/2015 Getting Started with FreeRTOS BSP for i.mx 7Dual 1 Overview The FreeRTOS BSP for i.mx 7Dual is a Software Development

More information

VORAGO VA108x0 GCC IDE application note

VORAGO VA108x0 GCC IDE application note AN2015 VORAGO VA108x0 GCC IDE application note June 11, 2018 Version 1.0 VA10800/VA10820 Abstract ARM has provided support for the GCC (GNU C compiler) and GDB (GNU DeBug) tools such that it is now a very

More information

Getting Started with Kinetis SDK (KSDK) v.1.3

Getting Started with Kinetis SDK (KSDK) v.1.3 Freescale Semiconductor Document Number: KSDK13GSUG User's Guide Rev. 1, 11/2015 Getting Started with Kinetis SDK (KSDK) v.1.3 1 Overview Kinetis SDK (KSDK) is a Software Development Kit that provides

More information

SiFive Freedom E310 Arty FPGA Dev Kit Getting Started Guide. c SiFive, Inc.

SiFive Freedom E310 Arty FPGA Dev Kit Getting Started Guide. c SiFive, Inc. SiFive Freedom E310 Arty FPGA Dev Kit Getting Started Guide c SiFive, Inc. April 11, 2017 2 SiFive Freedom E310 Arty FPGA Dev Kit Getting Started Guide 1.0.6 SiFive Freedom E310 Arty FPGA Dev KitGetting

More information

Zephyr Kernel Installation & Setup Manual

Zephyr Kernel Installation & Setup Manual Zephyr Kernel Installation & Setup Manual Zephyr kernel is a small footprint Single address space OS, i.e, it combines application specific code with a custom kernel to create a monolithic image that gets

More information

Red Suite 4 Getting Started. Applies to Red Suite 4.22 or greater

Red Suite 4 Getting Started. Applies to Red Suite 4.22 or greater Red Suite 4 Getting Started Applies to Red Suite 4.22 or greater March 26, 2012 Table of Contents 1 ABOUT THIS GUIDE... 3 1.1 WHO SHOULD USE IT... 3 2 RED SUITE 4... 4 2.1 NEW FEATURES IN RED SUITE 4...

More information

Optional Eclipse Workspace Configurations

Optional Eclipse Workspace Configurations 2019/01/08 11:20 1/16 This page will instruct you to install and configure Eclipse as your MidiBox Integrated Development Environment (IDE). Eclipse is supported on multiple platforms, including Windows,

More information

Code::Blocks Student Manual

Code::Blocks Student Manual Code::Blocks Student Manual Lawrence Goetz, Network Administrator Yedidyah Langsam, Professor and Theodore Raphan, Distinguished Professor Dept. of Computer and Information Science Brooklyn College of

More information

SensorLab VESNA open source development environment setup manual for Linux based development

SensorLab VESNA open source development environment setup manual for Linux based development Jožef Stefan Institute Department of Communication Systems SensorLab VESNA open source development environment setup manual for Linux based development version 0.12 by Zoltan Padrah, Tomaž Šolc November

More information

Getting Started with MCUXpresso SDK

Getting Started with MCUXpresso SDK NXP Semiconductors Document Number: MCUXSDKGSUG User's Guide Rev. 3, 03/2017 Getting Started with MCUXpresso SDK 1 Overview The MCUXpresso Software Development Kit (SDK) provides comprehensive software

More information

Freescale Semiconductor Inc. Vybrid DS-5 Getting Started Guide Rev 1.0

Freescale Semiconductor Inc. Vybrid DS-5 Getting Started Guide Rev 1.0 Freescale Semiconductor Inc. Vybrid DS-5 Getting Started Guide Rev 1.0 1 Introduction... 3 2 Download DS-5 from www.arm.com/ds5... 3 3 Open DS-5 and configure the workspace... 3 4 Import the Projects into

More information

Pengwyn Documentation

Pengwyn Documentation Pengwyn Documentation Release 1.0 Silica October 03, 2016 Contents 1 Introduction 3 1.1 Platforms................................................. 3 1.2 Hardware requirements.........................................

More information

How to utilize the CM-9 source

How to utilize the CM-9 source How to utilize the CM-9 source The CM-900 s hardware and software are open-source. You can access the source via Github. You can use the source to develop your own robot development environment and share

More information

PathFinder-XD for MIPS Powered Devices. Simulator

PathFinder-XD for MIPS Powered Devices. Simulator v.1.0.6, 15 th January 2013 PathFinder-XD for MIPS Powered Devices Simulator Contents 1. Introduction 2 2. Installation 2 2.1 Windows Installation 2 2.2 Linux Installation 2 3. Using PathFinder-XD with

More information

Configuring Ubuntu to Code for the OmniFlash or OmniEP

Configuring Ubuntu to Code for the OmniFlash or OmniEP Configuring Ubuntu to Code for the OmniFlash or OmniEP Table of Contents Introduction...2 Assumptions...2 Getting Started...2 Getting the Cross Compiler for ARM...2 Extracting the contents of the compressed

More information

LinuxScope-JTD Installation Guide. Version 4.0.0

LinuxScope-JTD Installation Guide. Version 4.0.0 LinuxScope-JTD Installation Guide Version 4.0.0 Platform Support LinuxScope-JTD v4.0.0 has been tested on the following platforms: Linux Ubuntu 10.04 and 11.10 (others will probably work) Windows XP (Other

More information

Kinetis SDK Freescale Freedom FRDM-KL03Z Platform User s Guide

Kinetis SDK Freescale Freedom FRDM-KL03Z Platform User s Guide Freescale Semiconductor, Inc. KSDKKL03UG User s Guide Rev. 1.0.0, 09/2014 Kinetis SDK Freescale Freedom FRDM-KL03Z Platform User s Guide 1 Introduction This document describes the hardware and software

More information

Code::Blocks Student Manual

Code::Blocks Student Manual Code::Blocks Student Manual Lawrence Goetz, Network Administrator Yedidyah Langsam, Professor and Theodore Raphan, Distinguished Professor Dept. of Computer and Information Science Brooklyn College of

More information

COP 3014: Spring 2018 A Guide to Using CLion

COP 3014: Spring 2018 A Guide to Using CLion COP 3014: Spring 2018 A Guide to Using CLion January 16, 2018 1 CLion CLion is a comprehensive C++ Integrated Development Environment developed and maintained by JetBrains. It is very intuitive and easy

More information

1 Installation (briefly)

1 Installation (briefly) Jumpstart Linux Bo Waggoner Updated: 2014-09-15 Abstract A basic, rapid tutorial on Linux and its command line for the absolute beginner. Prerequisites: a computer on which to install, a DVD and/or USB

More information

Getting Started with STK200 Dragon

Getting Started with STK200 Dragon Getting Started with STK200 Dragon Introduction This guide is designed to get you up and running with main software and hardware. As you work through it, there could be lots of details you do not understand,

More information

CMS-8GP32. A Motorola MC68HC908GP32 Microcontroller Board. xiom anufacturing

CMS-8GP32. A Motorola MC68HC908GP32 Microcontroller Board. xiom anufacturing CMS-8GP32 A Motorola MC68HC908GP32 Microcontroller Board xiom anufacturing 2000 717 Lingco Dr., Suite 209 Richardson, TX 75081 (972) 994-9676 FAX (972) 994-9170 email: Gary@axman.com web: http://www.axman.com

More information

Programming in the MAXQ environment

Programming in the MAXQ environment AVAILABLE The in-circuit debugging and program-loading features of the MAXQ2000 microcontroller combine with IAR s Embedded Workbench development environment to provide C or assembly-level application

More information

Intel System Studio for Microcontrollers

Intel System Studio for Microcontrollers Document Number: 333597-002EN You may not use or facilitate the use of this document in connection with any infringement or other legal analysis concerning Intel products described herein. You agree to

More information

Evaluating SiFive RISC- V Core IP

Evaluating SiFive RISC- V Core IP Evaluating SiFive RISC- V Core IP Drew Barbier January 2018 drew@sifive.com 3 Part Webinar Series Webinar Recordings and Slides: https://info.sifive.com/risc-v-webinar RISC-V 101 The Fundamentals of RISC-V

More information

Download, Install and Setup the Linux Development Workload Create a New Linux Project Configure a Linux Project Configure a Linux CMake Project

Download, Install and Setup the Linux Development Workload Create a New Linux Project Configure a Linux Project Configure a Linux CMake Project Table of Contents Download, Install and Setup the Linux Development Workload Create a New Linux Project Configure a Linux Project Configure a Linux CMake Project Connect to Your Remote Linux Computer Deploy,

More information

Development Environment Embedded Linux Primer Ch 1&2

Development Environment Embedded Linux Primer Ch 1&2 Development Environment Embedded Linux Primer Ch 1&2 Topics 1) Systems: Host and Target 2) Host setup 3) Host-Target communication CMPT 433 Slides #3 Dr. B. Fraser 18-05-05 2 18-05-05 1 Host & Target Host

More information

Lab6 GDB debugging. Conventions. Department of Computer Science and Information Engineering National Taiwan University

Lab6 GDB debugging. Conventions. Department of Computer Science and Information Engineering National Taiwan University Lab6 GDB debugging 1 / 15 Learn how to perform source-level debugging with GDB. 2 / 15 Host Machine OS: Windows Target Machine Raspberry Pi (2 or 3) Build Machine A computer with a SD card slot OS: Ubuntu

More information

AC/DC Adapter. Figure 1. Hardware Setup

AC/DC Adapter. Figure 1. Hardware Setup C8051F12X DEVELOPMENT KIT USER S GUIDE 1. Kit Contents The C8051F12x Development Kit contains the following items: C8051F120 Target Board Serial Adapter (RS232 to Target Board Debug Interface Protocol

More information

How to install and build an application

How to install and build an application GEANT4 BEGINNERS COURSE GSSI, L Aquila (Italy) 27-30 June 2016 How to install and build an application tutorial course Outline Supported platforms & compilers Required software Where to download the packages

More information

Embedded Vision Processor. CMUcam3 SDK Installation Guide

Embedded Vision Processor. CMUcam3 SDK Installation Guide SDK Installation Guide April 29, 2006 This page intentionally left blank. Contents 1. INTRODUCTION...1 2. INSTALLING DEVELOPMENT TOOLS...2 Cygwin...2 GNU ARM GCC...6 Philips LPC210x FLASH Utility...8 The

More information

CSCI Operating Systems, Winter 2019 Lab 1 : Introduction to the BLITZ Tools, git, kpl, makefile, etc. Due Date: 21 January 2019

CSCI Operating Systems, Winter 2019 Lab 1 : Introduction to the BLITZ Tools, git, kpl, makefile, etc. Due Date: 21 January 2019 CSCI 447 - Operating Systems, Winter 2019 Lab 1 : Introduction to the BLITZ Tools, git, kpl, makefile, etc. Due Date: 21 January 2019 Lab and Homework Assignments You may work together to complete the

More information

Armstrap Documentation

Armstrap Documentation Armstrap Documentation Release 0.0.1 Charles Armstrap Mar 20, 2017 Contents 1 Introduction 3 2 Hardware Overview 5 2.1 Armstrap Eagle.............................................. 5 3 Getting Started

More information

KT-LINK. User Manual. KRISTECH ver A

KT-LINK. User Manual. KRISTECH ver A User Manual ver. 02.05.2011-A KRISTECH 2009-2011 www.kristech.eu 2 1. Introduction is a JTAG interface for ARM-core microcontrollers. It enables program launching and monitoring (memory reading and writing,

More information

First, let's make sure we have all of the starter code downloaded. MAC (Go to the second part of the tutorial if you are using windows)

First, let's make sure we have all of the starter code downloaded. MAC (Go to the second part of the tutorial if you are using windows) CSE 167 HW 0 - Due Thur. Jan 18th at 11:59 p.m. This homework will help you set up OpenGL on your computer. First, let's make sure we have all of the starter code downloaded. https://github.com/ht413/cse167startercode

More information

manifold Documentation

manifold Documentation manifold Documentation Release 0.0.1 Open Source Robotics Foundation Mar 04, 2017 Contents 1 What is Manifold? 3 2 Installation 5 2.1 Ubuntu Linux............................................... 5 2.2

More information

HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS

HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS INTRODUCTION A program written in a computer language, such as C/C++, is turned into executable using special translator software.

More information

EMUL-PPC-PC. Getting Started Guide. Version 1.0

EMUL-PPC-PC. Getting Started Guide. Version 1.0 EMUL-PPC-PC Getting Started Guide Version 1.0 EMUL PowerPC Getting Started Guide Edition1 ICE Technology. All rights reserved worldwide. Contents Warranty Information European CE Requirements User Responsibility

More information

Windows QuickStart Guide Page 1 of Ambiq Micro, Inc All rights reserved.

Windows QuickStart Guide Page 1 of Ambiq Micro, Inc All rights reserved. 1. Introduction... 2 2. Installing and Using the Ambiq Control Center... 2 2.1 Run the Installer... 3 2.2 A Word about the Apollo EVK Board Stack and It s Integrated Debugger Interface... 7 2.3 Using the

More information

Lab 6: OS Security for the Internet of Things

Lab 6: OS Security for the Internet of Things Department of Computer Science: Cyber Security Practice Lab 6: OS Security for the Internet of Things Introduction The Internet of Things (IoT) is an emerging technology that will affect our daily life.

More information

Installation and Quick Start of isystem s winidea Open in DAVE. Tutorial Version 1.0, May, 2014

Installation and Quick Start of isystem s winidea Open in DAVE. Tutorial Version 1.0, May, 2014 Installation and Quick Start of isystem s winidea Open in DAVE Tutorial Version.0, May, 0 About winidea Open isysytem provides a free version of its debugger IDE called winidea Open; it can use the Segger

More information

Lab 6: OS Security for the Internet of Things

Lab 6: OS Security for the Internet of Things Department of Computer Science: Cyber Security Practice Lab 6: OS Security for the Internet of Things Introduction The Internet of Things (IoT) is an emerging technology that will affect our daily life.

More information

Unit 13. Linux Operating System Debugging Programs

Unit 13. Linux Operating System Debugging Programs 1 Unit 13 Linux Operating System Debugging Programs COMPILATION 2 3 Editors "Real" developers use editors designed for writing code No word processors!! You need a text editor to write your code Eclipse,

More information

Installing + Configuring

Installing + Configuring Installing + Configuring Install and Recover with TFTP Introduction This document is designed to help you install the Commotion software if the Install on a Ubiquiti Device instructions did not work, or

More information

Indium Documentation. Release Nicolas Petton

Indium Documentation. Release Nicolas Petton Indium Documentation Release 1.2.0 Nicolas Petton Nov 23, 2018 Contents 1 Table of contents 3 1.1 Installation................................................ 3 1.2 Getting up and running..........................................

More information

Reviewing gcc, make, gdb, and Linux Editors 1

Reviewing gcc, make, gdb, and Linux Editors 1 Reviewing gcc, make, gdb, and Linux Editors 1 Colin Gordon csgordon@cs.washington.edu University of Washington CSE333 Section 1, 3/31/11 1 Lots of material borrowed from 351/303 slides Colin Gordon (University

More information

Ethernut 3 Source Code Debugging

Ethernut 3 Source Code Debugging Ethernut 3 Source Code Debugging Requirements This is a short listing only. For Details please refer to the related manuals. Required Hardware Ethernut 3 Board Turtelizer 2 JTAG Dongle PC with USB and

More information

An Introduction to Komodo

An Introduction to Komodo An Introduction to Komodo The Komodo debugger and simulator is the low-level debugger used in the Digital Systems Laboratory. Like all debuggers, Komodo allows you to run your programs under controlled

More information

TUTORIAL: Quickstart with freediameter

TUTORIAL: Quickstart with freediameter 38 TUTORIAL: Quickstart with freediameter How to compile and run freediameter in a simple testbed. Tutorial: Creating a fd testbed 39 Goal : create a simple testbed Two nodes: one client, one server Run

More information

Evaluation board for NXP LPC2103. User Guide. Preliminary Version updated 27 th Aug TechToys Company All Rights Reserved

Evaluation board for NXP LPC2103. User Guide. Preliminary Version updated 27 th Aug TechToys Company All Rights Reserved Evaluation board for NXP LPC2103 User Guide 1 SOFTWARE Download from KEIL web site at http://www.keil.com/demo/ for ARM evaluation software. Limitations to this evaluation copy have been summarized on

More information

Parallella Linux - quickstart guide. Antmicro Ltd

Parallella Linux - quickstart guide. Antmicro Ltd Parallella Linux - quickstart guide Antmicro Ltd June 13, 2016 Contents 1 Introduction 1 1.1 Xilinx tools.......................................... 1 1.2 Version information.....................................

More information

MCUXpresso IDE User Guide. Rev November, 2018

MCUXpresso IDE User Guide. Rev November, 2018 User guide 27 November, 2018 Copyright 2018 All rights reserved. - ii 1. Introduction to MCUXpresso IDE... 1 1.1. MCUXpresso IDE Overview of Features... 1 1.1.1. Summary of Features... 2 1.1.2. Supported

More information

In-Circuit Emulator. UNetICE for ARM

In-Circuit Emulator. UNetICE for ARM In-Circuit Emulator UNetICE for ARM User Manual Version 1.0 Rorixwell Inc. Authorized distributor by Embest Info&Tech Tel: +1 (416) 757 0764 Fax: +1 (416) 757 0764 10 Electro Road, Toronto, ON, M1R 2A7,

More information

Blackfin cross development with GNU Toolchain and Eclipse

Blackfin cross development with GNU Toolchain and Eclipse Blackfin cross development with GNU Toolchain and Eclipse Version 1.0 embedded development tools Acknowledgements Ronetix GmbH Waidhausenstrasse 13/5 1140 Vienna Austria Tel: +43-720-500315 +43-1962-720

More information

UFCETW-20-2 Examination Answer all questions in Section A (60 marks) and 2 questions from Section B (40 marks)

UFCETW-20-2 Examination Answer all questions in Section A (60 marks) and 2 questions from Section B (40 marks) Embedded Systems Programming Exam 20010-11 Answer all questions in Section A (60 marks) and 2 questions from Section B (40 marks) Section A answer all questions (60%) A1 Embedded Systems: ARM Appendix

More information

Embedded Systems Laboratory Manual ARM 9 TDMI

Embedded Systems Laboratory Manual ARM 9 TDMI Embedded Systems Laboratory Manual ARM 9 TDMI 1. Laboratory Rules a) Laboratory assessment: Presence during the laboratory is mandatory. One time unexcused absence is allowed within the semester. Students

More information

DS-5 ARM. Getting Started with DS-5. Version 5.6. Copyright 2010, 2011 ARM. All rights reserved. ARM DUI 0478F (ID071411)

DS-5 ARM. Getting Started with DS-5. Version 5.6. Copyright 2010, 2011 ARM. All rights reserved. ARM DUI 0478F (ID071411) ARM DS-5 Version 5.6 Getting Started with DS-5 Copyright 2010, 2011 ARM. All rights reserved. ARM DUI 0478F () ARM DS-5 Getting Started with DS-5 Copyright 2010, 2011 ARM. All rights reserved. Release

More information

LotOS Framework. Getting Started Guide for Banana Pi. Copyright (C) 2015 ilbers GmbH Revision 1.1,

LotOS Framework. Getting Started Guide for Banana Pi. Copyright (C) 2015 ilbers GmbH Revision 1.1, LotOS Framework Getting Started Guide for Banana Pi Copyright (C) 2015 ilbers GmbH Revision 1.1, 2015-10-20 Mango hypervisor and LotOS framework are copyright (C) 2014 2015 ilbers GmbH. All rights reserved.

More information

HyperBus Memory Controller (HBMC) Tutorial

HyperBus Memory Controller (HBMC) Tutorial Synaptic Labs' HyperBus Memory Controller (HBMC) Tutorial T005B: A Qsys based Nios II Reference design with a simple application running from HyperFlash and HyperRAM device using S/Labs' HBMC IP. The HyperRAM

More information

MCUXpresso IDE Installation Guide. Rev November, 2017 User guide

MCUXpresso IDE Installation Guide. Rev November, 2017 User guide MCUXpresso IDE Installation Guide User guide 14 November, 2017 Copyright 2017 NXP Semiconductors All rights reserved. - ii 1. Installation... 1 1.1. Host Computer Requirements... 1 1.2. Windows... 1 1.3.

More information

Installation and Maintenance

Installation and Maintenance Chapter 9 Installation and Maintenance 9.1 Hardware and software System requirements. 215 9.2 Operating Manuals. 216 9.3 Software. 221 9.4 Maintenance. 225 Chapter 9 Installation and Maintenance. This

More information

Figure 1. JTAGAVRU1 application The JTAGAVRU1 is supported by AVR Studio. Updated versions of AVR Studio is found on

Figure 1. JTAGAVRU1 application The JTAGAVRU1 is supported by AVR Studio. Updated versions of AVR Studio is found on JTAG AVR Emulator through USB Main Features AVR Studio Compatible Supports AVR Devices with JTAG Interface Emulates Digital and Analog On-Chip Functions Data and Program Memory Breakpoints Supports Assembler

More information

DOMAIN TECHNOLOGIES INC. Users Guide Version 2.0 SB-USB2. Emulator

DOMAIN TECHNOLOGIES INC. Users Guide Version 2.0 SB-USB2. Emulator INC. Users Guide Version 2.0 SB-USB2 Emulator Table of Contents 1 INTRODUCTION... 3 1.1 Features... 3 1.2 Package Contents... 4 1.3 Related Components... 4 2 INSTALLATION... 4 3 INTEGRATION WITH LSI LOGIC

More information

Building CircuitPython

Building CircuitPython Building CircuitPython Created by Dan Halbert Last updated on 2018-05-18 03:47:12 AM UTC Guide Contents Guide Contents Introduction Linux Setup Install a Real or Virtual Linux Machine Native Linux Linux

More information

esi-risc Development Suite Getting Started Guide

esi-risc Development Suite Getting Started Guide 1 Contents 1 Contents 2 2 Overview 3 3 Starting the Integrated Development Environment 4 4 Hello World Tutorial 5 5 Next Steps 8 6 Support 10 Version 2.5 2 of 10 2011 EnSilica Ltd, All Rights Reserved

More information

DS-5 ARM. Using Eclipse. Version Copyright ARM. All rights reserved. ARM DUI 0480L (ID100912)

DS-5 ARM. Using Eclipse. Version Copyright ARM. All rights reserved. ARM DUI 0480L (ID100912) ARM DS-5 Version 5.12 Using Eclipse Copyright 2010-2012 ARM. All rights reserved. ARM DUI 0480L () ARM DS-5 Using Eclipse Copyright 2010-2012 ARM. All rights reserved. Release Information The following

More information

Excellent for XIP applications"

Excellent for XIP applications Synaptic Labs' Tiny System Cache (CMS-T003) Tutorial T001A: Boot from On-chip Flash: A Qsys based Nios II Reference design based on S/Labs' Tiny System Cache IP and Intel's On-chip Flash Memory Controller

More information

swiftenv Documentation

swiftenv Documentation swiftenv Documentation Release 1.3.0 Kyle Fuller Sep 27, 2017 Contents 1 The User Guide 3 1.1 Installation................................................ 3 1.2 Getting Started..............................................

More information

SiFive HiFive1 Getting Started Guide. c SiFive, Inc.

SiFive HiFive1 Getting Started Guide. c SiFive, Inc. SiFive HiFive1 Getting Started Guide c SiFive, Inc. January 3, 2017 2 SiFive HiFive1 Getting Started Guide 1.0.2 SiFive HiFive1Getting Started Guide Copyright Notice Copyright c 2017, SiFive Inc. All rights

More information

CS354 gdb Tutorial Written by Chris Feilbach

CS354 gdb Tutorial Written by Chris Feilbach CS354 gdb Tutorial Written by Chris Feilbach Purpose This tutorial aims to show you the basics of using gdb to debug C programs. gdb is the GNU debugger, and is provided on systems that

More information

Hands-On with STM32 MCU Francesco Conti

Hands-On with STM32 MCU Francesco Conti Hands-On with STM32 MCU Francesco Conti f.conti@unibo.it Calendar (Microcontroller Section) 07.04.2017: Power consumption; Low power States; Buses, Memory, GPIOs 20.04.2017 21.04.2017 Serial Interfaces

More information

How To Reinstall Grub In Windows 7 Without Losing Data And Programs

How To Reinstall Grub In Windows 7 Without Losing Data And Programs How To Reinstall Grub In Windows 7 Without Losing Data And Programs So if I install Windows 7 using CD again, will I lose Ubuntu? then yes you will lose Ubuntu, however if you reinstall Windows without

More information

TOOLKIT AND DEBUGGING

TOOLKIT AND DEBUGGING 2 TOOLKIT AND DEBUGGING S3C2410TK ENVIRONMENT SETUP The evaluation environments for the S3C2410TK are shown in Figure 2-1. The serial port (UART0) on the S3C2410TK has to be connected to COM port of the

More information

SKP16C26 Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc.

SKP16C26 Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc. SKP16C26 Tutorial 1 Software Development Process using HEW Renesas Technology America Inc. 1 Overview The following tutorial is a brief introduction on how to develop and debug programs using HEW (Highperformance

More information

Labs instructions for Enabling BeagleBone with TI SDK 5.x

Labs instructions for Enabling BeagleBone with TI SDK 5.x Labs instructions for Enabling BeagleBone with TI SDK 5.x 5V power supply µsd ethernet cable ethernet cable USB cable Throughout this document there will be commands spelled out to execute. Some are to

More information

About this lab. Lab course Operating Systems. Study achievment. Goal Develop an own operating system... from the first code line on...

About this lab. Lab course Operating Systems. Study achievment. Goal Develop an own operating system... from the first code line on... About this lab Lab course Operating Systems Mario Haustein Chemnitz University of Technology The typical lab course Well defined problem statement Deterministic solutions Stable environment This lab course:

More information

Eclipse development with GNU Toolchain

Eclipse development with GNU Toolchain Eclipse development with GNU Toolchain Version 1.0 embedded development tools Acknowledgements Ronetix GmbH Waidhausenstrasse 13/5 1140 Vienna Austria Tel: +43-720-500315 +43-1962-720 500315 Fax: +43-1-

More information

LPCXpresso User Guide. Rev October, 2013

LPCXpresso User Guide. Rev October, 2013 User guide 16 October, 2013 Copyright 2013 All rights reserved. - 1 1. Introduction to LPCXpresso... 1 1.1. LPCXpresso IDE Overview of Features... 1 1.1.1. Summary of Features... 1 1.1.2. New functionality...

More information

FX SERIES. Programmer s Guide. Embedded SDK. MN000540A01 Rev. A

FX SERIES. Programmer s Guide. Embedded SDK. MN000540A01 Rev. A FX SERIES Embedded SDK Programmer s Guide MN000540A01 Rev. A Table of Contents About This Guide Introduction...4 Chapter Descriptions... 4 Notational Conventions...5 Related Documents and Software...5

More information

A113X1 Development Kit

A113X1 Development Kit A113X1 Development Kit User Guide Revision: 4.0 Release Date: 2018-02-06 Amlogic, Ltd. COPYRIGHT 2017 Amlogic, Ltd. All rights reserved. No part of this document may be reproduced. Transmitted, transcribed,

More information

TNM093 Practical Data Visualization and Virtual Reality Laboratory Platform

TNM093 Practical Data Visualization and Virtual Reality Laboratory Platform November 8, 2016 1 Introduction The laboratory exercises in this course are to be conducted in an environment that might not be familiar to many of you. It is based on open source software. We use an open

More information

Unit 10. Linux Operating System

Unit 10. Linux Operating System 1 Unit 10 Linux Operating System 2 Linux Based on the Unix operating system Developed as an open-source ("free") alternative by Linux Torvalds and several others starting in 1991 Originally only for Intel

More information

Computer Science, a Mac, and You. Kevin Cathey Junior, Computer Science

Computer Science, a Mac, and You. Kevin Cathey Junior, Computer Science Computer Science, a Mac, and You Kevin Cathey Junior, Computer Science Roadmap Introduction to Apple s Developer Tools Xcode & Instruments Implement three MP s acm.uiuc.edu Introduction to Developer Tools

More information

ROS Qt Creator Plug-in. Release

ROS Qt Creator Plug-in. Release ROS Qt Creator Plug-in Release Mar 18, 2018 Contents 1 Installation 1 2 FAQ 13 3 Users Help 15 4 Developers Help 23 5 Video Tutorials 25 i ii CHAPTER 1 Installation 1.1 How to Install (Users) This wiki

More information

Using the Command Line

Using the Command Line 1 Unit 15 Debugging COMPILATION 2 3 Using the Command Line While it has a GUI interface like your Mac or Windows PC much of its power lies in its rich set of utilities that are most easily run at the command

More information

HyperBus Memory Controller (HBMC) Tutorial

HyperBus Memory Controller (HBMC) Tutorial Synaptic Labs' HyperBus Memory Controller (HBMC) Tutorial T001A: A Qsys based Nios II Reference design with a simple self test of the HyperFlash and HyperRAM device using S/Labs' HBMC IP This tutorial

More information

RN2483_Silica Documentation

RN2483_Silica Documentation RN2483_Silica Documentation Release 0 Silica Dec 19, 2017 Contents 1 Embedded Vision NXP 3 2 INTRODUCTION 5 2.1 Development tools............................................ 6 i ii Version 1.00E Copyright

More information

ESPixelStick V2 Assembly and Usage

ESPixelStick V2 Assembly and Usage ESPixelStick V2 Assembly and Usage OVERVIEW The ESPixelStick is a wireless (802.11g/n) pixel controller that interfaces as a standard sacn / E1.31 controller and supports a variety of pixel types. It also

More information

UT32M0R500-EVB Development Board User Manual

UT32M0R500-EVB Development Board User Manual Microcontrollers & Microprocessors UT32M0R500-EVB Development Board User Manual March 2018 The most important thing we build is trust 1 INTRODUCTION The UT32M0R500-EVB Development Board provides a comprehensive

More information

USB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup using a USB Debug Adapter

USB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup using a USB Debug Adapter C8051F2XX DEVELOPMENT KIT USER S GUIDE 1. Kit Contents The C8051F2xx Development Kits contain the following items: C8051F206 or C8051F226 Target Board C8051Fxxx Development Kit Quick-Start Guide Silicon

More information

How to install and build an application

How to install and build an application GEANT4 BEGINNERS COURSE GSSI, L Aquila (Italy) 6-10 July 2015 How to install and build an application tutorial course Outline Supported platforms & compilers Required software Where to download the packages

More information

E. Annex. Rules and conventions used for the project. v The µkos package

E. Annex. Rules and conventions used for the project. v The µkos package v 13.28 E.1. Rules and conventions used for the project E. Annex In order to have and to maintain a coherency along all the µkos project, the following rules for writing software have been used. NULL =

More information

Disassemble the machine code present in any memory region. Single step through each assembly language instruction in the Nios II application.

Disassemble the machine code present in any memory region. Single step through each assembly language instruction in the Nios II application. Nios II Debug Client This tutorial presents an introduction to the Nios II Debug Client, which is used to compile, assemble, download and debug programs for Altera s Nios II processor. This tutorial presents

More information

CSE 101 Introduction to Computers Development / Tutorial / Lab Environment Setup

CSE 101 Introduction to Computers Development / Tutorial / Lab Environment Setup CSE 101 Introduction to Computers Development / Tutorial / Lab Environment Setup Purpose: The purpose of this lab is to setup software that you will be using throughout the term for learning about Python

More information

CodeWarrior U-Boot Debugging

CodeWarrior U-Boot Debugging Freescale Semiconductor Application Note Document Number: AN4876 CodeWarrior U-Boot Debugging 1. Introduction This document describes the steps required for U-Boot debugging using the CodeWarrior IDE.

More information

Lab 4: Shell Scripting

Lab 4: Shell Scripting Lab 4: Shell Scripting Nathan Jarus June 12, 2017 Introduction This lab will give you some experience writing shell scripts. You will need to sign in to https://git.mst.edu and git clone the repository

More information

AC/DC. Adapter. Serial. Adapter. Figure 1. Hardware Setup

AC/DC. Adapter. Serial. Adapter. Figure 1. Hardware Setup C8051F35X DEVELOPMENT KIT USER S GUIDE 1. Kit Contents The C8051F35x Development Kit contains the following items: C8051F350 Target Board Serial Adapter (RS232 to Target Board Debug Interface Protocol

More information

NET+Works with GNU Tools Getting Started Guide

NET+Works with GNU Tools Getting Started Guide NET+Works with GNU Tools Getting Started Guide NET+Works with GNU Tools Getting Started Guide Operating system/version: 6.3 Part number/version: 90000718_C Release date: March 2006 www.digi.com 2006 Digi

More information

GNU-AVR Building the GNU AVR Toolchain for Mac OS X and Linux

GNU-AVR Building the GNU AVR Toolchain for Mac OS X and Linux GNU-AVR Building the GNU AVR Toolchain for Mac OS X and Linux BDMICRO http://www.bdmicro.com/ Brian S. Dean bsd@bdmicro.com April 24, 2007 Copyright (c) 2005 BDMICRO All Rights Reserved. GNU-AVR April

More information