OPT3001EVM Linux Getting Started Guide. Felipe Balbi

Size: px
Start display at page:

Download "OPT3001EVM Linux Getting Started Guide. Felipe Balbi"

Transcription

1 OPT3001EVM Linux Getting Started Guide Felipe Balbi August 18, 2014

2 This page is intentionally left blank

3 Contents 1 Scope 1 2 Introduction OPT Beagle Bone Black Linux Kernel Hardware Platform 3 4 The Linux Kernel Writing Our DeviceTree Downloading The Correct Version Kernel Configuration Usage 13 6 Conclusion 15 ii

4 Chapter 1 Scope This document will describe the necessary steps to connect OPT3001EVM to a BeagleBone Black development platform. By the end of this User s Guide, the reader should be able to verify functionality of the OPT3001 device and get results from light measurements. 1

5 Chapter 2 Introduction 2.1 OPT3001 The OPT3001 is an ideal sensing device for measuring ambient light. Measurements can be made from 0.01 lux up to 83k lux without selecting full-scale ranges by using the built-in, full-scale setting feature. This capability allows light measurement over a 23-bit effective dynamic range. The spectral response of the ambient light sensor is tightly matched to the photopic response of the human eye and has significant infrared rejection. This tightly matched response offers accurate lux readings of different spectral sources, even under dark glass. The digital operation is flexible for system integration. Measurements can be either continuous or single-shot. The control and interrupt system features autonomous operation, allowing the processor to sleep while the sensor searches for appropriate wake-up events. The low power consumption and low power-supply voltage capability make this device ideal for battery-powered applications. 2.2 Beagle Bone Black Beagle Bone Black is an Open Source Hardware Software Development Platform using Texas Instruments AM335x System-on-Chip device. It provides an easy to use Software Development Platform based on an ARM Cortex-A8 CPU together with many other peripherals integrated into the die. 2.3 Linux Kernel The Linux Kernel was created by Linus Torvalds back in It s a General Purpose Operating System which works in many different architectures including, but not limited to, x86, ARM, ARC, Power, MIPS, and Alpha. 2

6 Chapter 3 Hardware Platform For the purpose of this Getting Started Guide, we will be using OPT3001EVM Rev B and Beagle Bone Black Rev A5C. The picture below shows a simple way of connecting OPT3001EVM to the Beagle Bone Black using a standard 100 mil spacing breadboard. Connected like that, OPT3001 will show on Beagle Bone Black s I2C Bus 2 1. The following section will describe all the necessary steps to get OPT3001 working on our Beagle Bone Black. Black 1 note that I2C Bus numbers start at 0, so I2C Bus 2 is the third I2C Bus on Beagle Bone 3

7 CHAPTER 3. HARDWARE PLATFORM 4 Figure 3.1: connecting opt3001evm to beagle bone black

8 Chapter 4 The Linux Kernel 4.1 Writing Our DeviceTree Now that we have OPT3001EVM connected to our Beagle Bone Black, we need to tell Linux about it. Recent Linux Kernel release utilize Open Firmware as the methodology for firmware to tell the Operating System about devices which sit under non-enumerable buses. The language used by Open firmware is known as DeviceTree With a DeviceTree source such as below, we can tell Linux that we have an OPT3001 device sitting under I2C Bus 2 and can be accessed through I2C address 0x44. /* arch/arm/boot/dts/am335x-boneblack.dts */ &i2c2 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&i2c2_pins>; clock-frequency = <400000>; light@44 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&light_pins>; compatible = "opt3001"; reg = <0x44>; }; }; interrupts-extended = <&gpio1 28 IRQ_TYPE_LEVEL_HIGH>; Note that we have two undefined pinctrl DeviceTree nodes. Let s define them: /* arch/arm/boot/dts/am335x-boneblack.dts */ 5

9 CHAPTER 4. THE LINUX KERNEL 6 &am33xx_pinmux { i2c2_pins: i2c2_pins { pinctrl-single,pins = < 0x178 (PIN_INPUT SLEWCTRL_FAST MUX_MODE3) /* uart1_ctsn.i2c2_sda */ 0x17c (PIN_INPUT SLEWCTRL_FAST MUX_MODE3) /* uart1_rtsn.i2c2_scl */ >; }; }; light_pins: light_pins { pinctrl-single,pins = < 0x78 (PIN_INPUT MUX_MODE7) /* gpmc_ben1.gpio1_28 */ >; }; 4.2 Downloading The Correct Version At the time of this writing OPT3001 driver is still not merged in the Mainline 1 Linux Kernel tree. Because of that we have provided git branches for all Linux Kernel versions starting with v3.14 all the way to v3.17. On each of those branches, you will find the same OPT3001 driver together with Beagle Bone Black devicetree changes for easy start. Depending on which Linux Kernel version you re using, download the correct branch as per table below: Linux Version GIT URL v3.14 git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git opt3001-v3.14 v3.15 git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git opt3001-v3.15 v3.16 git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git opt3001-v3.16 v3.17 git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git opt3001-v3.17 To download any of those branches a certain level of knowledge about the git version control system is required but the short version is below 2. $ git clone git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git linux cloning into linux... remote: counting objects: , done. remote: compressing objects: 100% (582455/582455), done. remote: total (delta ), reused (delta ) receiving objects: 100% ( / ), mib 1.84 mib/s, done. resolving deltas: 100% ( / ), done. 1 Linux Kernel tree maintained by Linus Torvalds 2 we are assuming the reader already has git installed in their system

10 CHAPTER 4. THE LINUX KERNEL 7 checking connectivity... done. checking out files: 100% (47441/47441), done. $ cd linux $ git reset --hard opt3001-v Kernel Configuration After downloading the Kernel sources, we need to configure it for our setup. We will start by running: $ make ARCH=arm CROSS_COMPILE=arm-linux- omap2plus_defconfig hostcc scripts/basic/fixdep hostcc scripts/kconfig/conf.o shipped scripts/kconfig/zconf.tab.c shipped scripts/kconfig/zconf.lex.c shipped scripts/kconfig/zconf.hash.c hostcc scripts/kconfig/zconf.tab.o hostld scripts/kconfig/conf # # configuration written to.config # This first command will select all common configuration for Texas Instruments SoCs, including AM335x. Now we need to enable OPT3001 driver. For that, we will run: $ make arch=arm cross_compile=arm-linux- menuconfig You should see a screen such as below in Figure 4.1. After that, let s enable the industrial i/o framework and opt3001 driver, please follow the steps below and refer to the Screen Captures, if necessary. 1. navigate to Device Drivers and press ENTER (see figure 4.2); 2. navigate to Industrial I/O support (see figure 4.3); (a) press M 3 (see figure 4.4); or (b) press Y 4 (see figure 4.5); 3. navigate to Light sensors and press ENTER (see figure 4.6); 4. navigate to Texas Instruments OPT3001 Light Sensor (see figure 4.7); (a) press M (see figure 4.8); or (b) press Y (see figure 4.9); 3 M will compile a dynamically linked module 4 Y will link the binary statically to the kernel image

11 CHAPTER 4. THE LINUX KERNEL 8 5. exit menuconfig by following all Exit buttons; 6. when asked if you want to save the new configuration, choose Yes (see figure 4.10).

12 CHAPTER 4. THE LINUX KERNEL 9 Figure 4.1: linux kernel configuration main window Figure 4.2: Navigating to Device Drivers Figure 4.3: Navigating to Industrial I/O support

13 CHAPTER 4. THE LINUX KERNEL 10 Figure 4.4: Industrial I/O support after pressing M on the keyboard Figure 4.5: Industrial I/O support after pressing Y on the keyboard Figure 4.6: Navigating to Light sensors

14 CHAPTER 4. THE LINUX KERNEL 11 Figure 4.7: Navigating to Texas Instruments OPT3001 Light Sensors Figure 4.8: OPT3001 after pressing M on the keyboard Figure 4.9: OPT3001 after pressing Y on the keyboard

15 CHAPTER 4. THE LINUX KERNEL 12 Figure 4.10: Exitting menuconfig

16 Chapter 5 Usage After booting up and logging in to our Beagle Bone Black running Linux, we will navigate to the directory where files created by our OPT3001 Device Driver are located. To do that, please run: # cd /sys/bus/iio/devices/iio\:device0 # ls dev \verb in_illuminance_integration_time power events \verb integration_time_available subsystem \verb in_illuminance_input name uevent In order to get a single-shot Light measurement, all we have to do is read in_illuminance_input file. # cat \verb in_illuminance_input We can also setup thresholds and have events fire when such thresholds are reached. In order to illustrate that we will make use of iio_event_monitor, a tool which can be found at drivers/staging/iio/documentation/iio_event_monitor.c. Let s setup some thresholds: # cd events # ls \verb in_illuminance_thresh_falling_en \verb in_illuminance_thresh_falling_hysteresis \verb in_illuminance_thresh_falling_value \verb in_illuminance_thresh_rising_en \verb in_illuminance_thresh_rising_hysteresis \verb in_illuminance_thresh_rising_value # echo 200 > \verb in_illuminance_thresh_falling_value # echo 500 > \verb in_illuminance_thresh_rising_value # echo 1 > \verb in_illuminance_thresh_fallin_en # \verb iio_event_monitor /dev/iio\:device0 Event: time: , type: illuminance, channel: 0, evtype: thresh, direction: rising 13

17 CHAPTER 5. USAGE 14 Event: time: , type: illuminance, channel: 0, evtype: thresh, direction: falling Event: time: , type: illuminance, channel: 0, evtype: thresh, direction: rising Event: time: , type: illuminance, channel: 0, evtype: thresh, direction: falling Event: time: , type: illuminance, channel: 0, evtype: thresh, direction: rising Event: time: , type: illuminance, channel: 0, evtype: thresh, direction: falling

18 Chapter 6 Conclusion During this short Guide we have wired OPT3001EVM to a Beagle Bone Black using a standard breadboard, we downloaded and compiled the Linux Kernel and also verified that OPT3001 driver functions as expected. 15

19 This page is intentionally left blank

Device Tree Overview

Device Tree Overview Device Tree Overview Device Tree History Device Tree (DT) was created by Open Firmware to allow an operating system at runtime to run on various hardware without hard coding any information. Open Firmware

More information

NGS IoT Bone (rev. MRF-1)

NGS IoT Bone (rev. MRF-1) BeagleBoneBlack IoT cape IEEE802.15.4 cape with Microchip MRF24J40MD component NGS IoT Bone (rev. MRF-1) Code : NGS_IoT_Bone_rev_MRF_1 Page intentionally left blank New Generation Sensors S.r.l. 2/16 Warranty,

More information

Getting Started using Linux on a New Embedded System

Getting Started using Linux on a New Embedded System At Octavo Systems, we are committed to simplifying your design process. Therefore, we have developed the OSD335x Reference Design Tutorial Series. This excerpt is comprised of three tutorials to help you

More information

Embedded Linux kernel and driver development training 5-day session

Embedded Linux kernel and driver development training 5-day session Embedded Linux kernel and driver development training 5-day session Title Embedded Linux kernel and driver development training Overview Understanding the Linux kernel Developing Linux device drivers Linux

More information

Introduction to Linux kernel driver programming + i2c drivers

Introduction to Linux kernel driver programming + i2c drivers Introduction to Linux kernel driver programming + i2c drivers Introduction to Linux kernel driver programming: i2c drivers The Linux kernel device model Authors and license Authors Michael Opdenacker (michael@bootlin.com)

More information

How to connect the LCD screen

How to connect the LCD screen How to connect the LCD screen The Group (Andrei Vacariu, Kevin Ang, Allan Kuan) This guide will guide the reader through picking GPIO pins, setting their mode using device tree overlays, connecting the

More information

ARM support in the Linux kernel

ARM support in the Linux kernel FOSDEM 2013 ARM support in the Linux kernel Thomas Petazzoni Bootlin thomas.petazzoni@bootlin.com - Kernel, drivers and embedded Linux - Development, consulting, training and support - https://bootlin.com

More information

Wiring an LED Guide for BeagleBone (Black/Green) Table of Contents. by Brian Fraser Last update: November 16, Target Linux Kernel: 4.

Wiring an LED Guide for BeagleBone (Black/Green) Table of Contents. by Brian Fraser Last update: November 16, Target Linux Kernel: 4. Wiring an LED Guide for BeagleBone (Black/Green) by Brian Fraser Last update: November 16, 2017 Target Linux Kernel: 4.4 This document guides the user through: 1. Wiring an LED on P9.23 & controlling it

More information

December 1, 2015 Jason Kridner

December 1, 2015 Jason Kridner December 1, 2015 Jason Kridner Co-author of BeagleBone Cookbook Board member at BeagleBoard.org Foundation Sitara Applications Engineering at Texas Instruments 1 Truly flexible open hardware and software

More information

Linux U-Boot and Kernel Users Guide

Linux U-Boot and Kernel Users Guide Linux U-Boot and Kernel Users Guide 1 Table of Contents Overview... 4 General Information... 4 Getting the U-Boot and Kernel Source Code (SDK)... 4 Preparing to Build... 4 Compiler... 5 Device Trees...

More information

PCIe driver development for Exynos SoC

PCIe driver development for Exynos SoC PCIe driver development for Exynos SoC Korea Linux Forum 2013 Jingoo Han Samsung Electronics Introduction S/W engineer at Samsung Electronics since 2005 Linux kernel development for Samsung Exynos ARM

More information

Supporting 200 different expansionboards. The broken promise of device tree

Supporting 200 different expansionboards. The broken promise of device tree Supporting 200 different expansionboards The broken promise of device tree Devicetree From devicetree.org: The Device Tree is a data structure for describing hardware. Rather than hard coding every detail

More information

Android System Development Training 4-day session

Android System Development Training 4-day session Android System Development Training 4-day session Title Android System Development Training Overview Understanding the Android Internals Understanding the Android Build System Customizing Android for a

More information

ARM support in the Linux kernel

ARM support in the Linux kernel Kernel Recipes 2013 ARM support in the Linux kernel Thomas Petazzoni Bootlin thomas.petazzoni@bootlin.com - Kernel, drivers and embedded Linux - Development, consulting, training and support - https://bootlin.com

More information

Embedded Linux Conference San Diego 2016

Embedded Linux Conference San Diego 2016 Embedded Linux Conference San Diego 2016 Linux Power Management Optimization on the Nvidia Jetson Platform Merlin Friesen merlin@gg-research.com About You Target Audience - The presentation is introductory

More information

Homework 9: Software Design Considerations

Homework 9: Software Design Considerations Homework 9: Software Design Considerations Team Code Name: Mind Readers Group No. 2 Team Member Completing This Homework: Richard Schuman E-mail Address of Team Member: _rschuman_ @ purdue.edu Evaluation:

More information

Industrial I/O and You: Nonsense Hacks! Matt Ranostay Konsulko Group

Industrial I/O and You: Nonsense Hacks! Matt Ranostay Konsulko Group Industrial I/O and You: Nonsense Hacks! Matt Ranostay Konsulko Group Brief Introduction Been a contributor to the Industrial I/O system for about two years Any weird sensors

More information

Lab2 - Bootloader. Conventions. Department of Computer Science and Information Engineering National Taiwan University

Lab2 - Bootloader. Conventions. Department of Computer Science and Information Engineering National Taiwan University Lab2 - Bootloader 1 / 20 Cross-compile U-Boot. Connect to Raspberry Pi via an USB-TTL cable. Boot Raspberry Pi via U-Boot. 2 / 20 Host Machine OS: Windows Target Machine Raspberry Pi (2 or 3) Build Machine

More information

Lab 4: Interrupts and Realtime

Lab 4: Interrupts and Realtime Lab 4: Interrupts and Realtime Overview At this point, we have learned the basics of how to write kernel driver module, and we wrote a driver kernel module for the LCD+shift register. Writing kernel driver

More information

APPLICATION NOTE. Scope. Reference Documents. Software Ethernet Bridge on SAMA5D3/D4. Atmel SMART SAMA5D3/D4 Series

APPLICATION NOTE. Scope. Reference Documents. Software Ethernet Bridge on SAMA5D3/D4. Atmel SMART SAMA5D3/D4 Series SMART APPLICATION NOTE Software Ethernet Bridge on SAMA5D3/D4 Atmel SMART SAMA5D3/D4 Series Scope The Atmel SMART SAMA5D3/D4 series are high-performance, power-efficient embedded MPUs based on the ARM

More information

Porting Linux to a new SoC

Porting Linux to a new SoC Porting Linux to a new SoC Who am I? PrasannaKumar Muralidharan Linux kernel enthusiast Contributed to a few open source projects Contributed several patches to hwrng subsystem Wrote CI20 PRNG driver Implemented

More information

CoLinkEx_LPC11C14 EVB Kit User Guide

CoLinkEx_LPC11C14 EVB Kit User Guide CoLinkEx_LPC11C14 EVB Kit User Guide Rev. 1.0 Release: 2012-05-07 Website: http://www.coocox.org Forum: http://www.coocox.org/forum/forum.php?id=1 Techinal: master@coocox.com Market: market@coocox.com

More information

Leverage Vybrid's asymmetrical multicore architecture for real-time applications by Stefan Agner

Leverage Vybrid's asymmetrical multicore architecture for real-time applications by Stefan Agner Leverage Vybrid's asymmetrical multicore architecture for real-time applications 2014 by Stefan Agner Vybrid Family of ARM processors suitable for embedded devices VF3XX Single core no DDR VF5XX Single

More information

BeagleLogic Documentation

BeagleLogic Documentation BeagleLogic Documentation Release 2.0 Kumar Abhishek Oct 08, 2017 Contents 1 BeagleLogic System Image 3 1.1 Instructions................................................ 3 1.2 Troubleshooting.............................................

More information

DT7837. ARM Module for Embedded Applications. Overview. Key Features. Supported Operating Systems

DT7837. ARM Module for Embedded Applications. Overview. Key Features. Supported Operating Systems DT7837 ARM Module for Embedded Applications Overview The DT7837 is a high accuracy dynamic signal acquisition module for noise, vibration, and acoustic measurements with an embedded Cortex-A8 600 MHz ARM

More information

Speeding AM335x Programmable Realtime Unit (PRU) Application Development Through Improved Debug Tools

Speeding AM335x Programmable Realtime Unit (PRU) Application Development Through Improved Debug Tools Speeding AM335x Programmable Realtime Unit (PRU) Application Development Through Improved Debug Tools The hardware modules and descriptions referred to in this document are *NOT SUPPORTED* by Texas Instruments

More information

Yocto Project and OpenEmbedded training 3-day session

Yocto Project and OpenEmbedded training 3-day session Yocto Project and OpenEmbedded training 3-day session Title Yocto Project and OpenEmbedded development training Overview Understanding the Yocto Project Using it to build a root filesystem and run it on

More information

FPGA Adaptive Software Debug and Performance Analysis

FPGA Adaptive Software Debug and Performance Analysis white paper Intel Adaptive Software Debug and Performance Analysis Authors Javier Orensanz Director of Product Management, System Design Division ARM Stefano Zammattio Product Manager Intel Corporation

More information

GETTING STARTED WITH. Michael Lessard Senior Solutions Architect June 2017

GETTING STARTED WITH. Michael Lessard Senior Solutions Architect June 2017 GETTING STARTED WITH Michael Lessard Senior Solutions Architect June 2017 Agenda What is Git? Installation of Git Git basis Github First steps with Git 2 WHAT IS GIT? What is Git? Started in 2005 Created

More information

USB -Keyboard Guide by DeadPool2 Last update: August 2, 2018

USB -Keyboard Guide by DeadPool2 Last update: August 2, 2018 USB -Keyboard Guide by DeadPool2 Last update: August 2, 2018 This document guides the user through: 1: Figuring out how to detect the USB-Keyboard event. 2. Translate USB-Keyboard raw input (keycode) to

More information

FPGA Manager. State of the Union. Moritz Fischer, National Instruments

FPGA Manager. State of the Union. Moritz Fischer, National Instruments FPGA Manager State of the Union Moritz Fischer, National Instruments $whoami Embedded Software Engineer at National Instruments Other stuff I do: U-Boot, OE, Linux Kernel Co-Maintainer of FPGA Manager

More information

Color 7 click. PID: MIKROE 3062 Weight: 19 g

Color 7 click. PID: MIKROE 3062 Weight: 19 g Color 7 click PID: MIKROE 3062 Weight: 19 g Color 7 click is a very accurate color sensing Click board which features the TCS3472 color light to digital converter with IR filter, from ams. It contains

More information

MYD-C437X-PRU Development Board

MYD-C437X-PRU Development Board MYD-C437X-PRU Development Board MYC-C437X CPU Module as Controller Board Two 0.8mm pitch 100-pin Connectors for Board-to-Board Connections Up to 1GHz TI AM437x Series ARM Cortex-A9 Processors 512MB DDR3

More information

DT7837 ARM Module for Embedded Applications

DT7837 ARM Module for Embedded Applications DT7837 ARM Module for Embedded Applications The DT7837 is a high accuracy dynamic signal acquisition module for noise, vibration, and acoustic measurements with an embedded Cortex-A8 600MHz ARM processor.

More information

CDE460/470 IPMI Firmware Upgrade. Reviewers. Modification History

CDE460/470 IPMI Firmware Upgrade. Reviewers. Modification History Document Number Created By EDCS-1456822 S. Parry CDE460/470 IPMI Firmware Upgrade Details the process of upgrading CDE460/470 IPMI firmware to v3.33 in the field Field Notice #63901 Reviewers Department

More information

Cyclone V SoC PCI-Express Root Port Example Design. Application Note

Cyclone V SoC PCI-Express Root Port Example Design. Application Note Cyclone V SoC PCI-Express Root Port Example Design Application Note 7/1/2013 Table of Contents 1 Revision History... 4 2 Overview... 5 2.1 GSRD... 5 3 Hardware and Software Packages... 6 3.1 GSRD... 6

More information

EMBEDDED LINUX ON ARM9 Weekend Workshop

EMBEDDED LINUX ON ARM9 Weekend Workshop Here to take you beyond EMBEDDED LINUX ON ARM9 Weekend Workshop Embedded Linux on ARM9 Weekend workshop Objectives: Get you exposed with various trends in Embedded OS Leverage Opensource tools to build

More information

Bridging of Control Interfaces over Multimedia Serial Links

Bridging of Control Interfaces over Multimedia Serial Links Bridging of Control Interfaces over Multimedia Serial Links Vladimir Zapolskiy Open Source Senior Software Engineer June 22, 2018 Introduction Embedded Linux developer since 2006 Open Source Software contributor

More information

In this tutorial, we will discuss the architecture, pin diagram and other key concepts of microprocessors.

In this tutorial, we will discuss the architecture, pin diagram and other key concepts of microprocessors. About the Tutorial A microprocessor is a controlling unit of a micro-computer, fabricated on a small chip capable of performing Arithmetic Logical Unit (ALU) operations and communicating with the other

More information

Device Trees A Database Approach to Describing Hardware. Doug Abbott. Produced by EE Times

Device Trees A Database Approach to Describing Hardware. Doug Abbott. Produced by EE Times Device Trees A Database Approach to Describing Hardware Doug Abbott #eelive Produced by EE Times Problem How to describe hardware to OS? Build description into drivers CONFIG_ variables Create a Board

More information

Cycle Approximate Simulation of RISC-V Processors

Cycle Approximate Simulation of RISC-V Processors Cycle Approximate Simulation of RISC-V Processors Lee Moore, Duncan Graham, Simon Davidmann Imperas Software Ltd. Felipe Rosa Universidad Federal Rio Grande Sul Embedded World conference 27 February 2018

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

OMAP3530 has 256MB NAND flash in PoP (PoP: Package-On-Package implementation for Memory Stacking) configuration.

OMAP3530 has 256MB NAND flash in PoP (PoP: Package-On-Package implementation for Memory Stacking) configuration. 1 of 7 04/18/09 15:39 BeagleBoardNAND From elinux.org This page is about using (booting/running from) NAND (http://en.wikipedia.org/wiki/flash_memory#nand_flash) memory on BeagleBoard. Parts of this page

More information

ARM Processors for Embedded Applications

ARM Processors for Embedded Applications ARM Processors for Embedded Applications Roadmap for ARM Processors ARM Architecture Basics ARM Families AMBA Architecture 1 Current ARM Core Families ARM7: Hard cores and Soft cores Cache with MPU or

More information

AT-501 Cortex-A5 System On Module Product Brief

AT-501 Cortex-A5 System On Module Product Brief AT-501 Cortex-A5 System On Module Product Brief 1. Scope The following document provides a brief description of the AT-501 System on Module (SOM) its features and ordering options. For more details please

More information

[RFC] Obtaining Management Buy-in for Mainline Development

[RFC] Obtaining Management Buy-in for Mainline Development [RFC] Obtaining Management Buy-in for Mainline Development Kevin Chalmers Director, Linux Core Product Development Texas Instruments Chase Maupin Manager, Linux Systems Integration Texas Instruments Agenda

More information

Network Embedded Systems Sensor Networks Fall Hardware. Marcus Chang,

Network Embedded Systems Sensor Networks Fall Hardware. Marcus Chang, Network Embedded Systems Sensor Networks Fall 2013 Hardware Marcus Chang, mchang@cs.jhu.edu 1 Embedded Systems Designed to do one or a few dedicated and/or specific functions Embedded as part of a complete

More information

REX-RED Community Android 4.3

REX-RED Community Android 4.3 REX-RED Community Android 4.3 Build Guide REXNOS CO.,Ltd Document Information Version 1.1 File Name REX5260 Android 4.3 Build Guide.doc Date May 20, 2014 Status Working Revision History Date Version Update

More information

1 FOSDEM like real computers - Making distributions work on single board computers André Przywara 04/02/2018

1 FOSDEM like real computers - Making distributions work on single board computers André Przywara 04/02/2018 1 FOSDEM 2018... like real computers - Making distributions work on single board computers André Przywara 04/02/2018 apritzel@freenode 2 FOSDEM 2018 2 FOSDEM 2018 2 FOSDEM 2018 2 FOSDEM 2018 3 FOSDEM 2018

More information

EE414 Embedded Systems Lab 4. Interrupt. 1. Purpose. 2. Problem Statement

EE414 Embedded Systems Lab 4. Interrupt. 1. Purpose. 2. Problem Statement EE414 Embedded Systems Lab 4. Interrupt Due Demo 4 6 PM, Nov 16, Thu. Report 6 PM, Nov 21, Tue. 1. Purpose Understand how to program the interrupt and timer via signal handler on the AM3359 processor in

More information

Enabling IoT with OSD335x using Wi-Fi and Bluetooth Rev.1 3/07/18

Enabling IoT with OSD335x using Wi-Fi and Bluetooth Rev.1 3/07/18 1 Introduction Wi-Fi is a set of wireless communication technologies developed in the 1990s and 2000s that enables millions of devices to be connected together wirelessly. This has enabled the Internet-of-Things

More information

Beaglebone green User Manual

Beaglebone green User Manual Beaglebone green User Manual Release date: 2015/9/22 Version: 1.0 Wiki: http://www.seeedstudio.com/wiki/beaglebone_green Bazaar: http://www.seeedstudio.com/depot/beaglebone-green-p- 2504.html?cPath=122_113

More information

PIGEON RB100-CM3. Features. Applications

PIGEON RB100-CM3. Features. Applications PIGEON RB100-CM3 Pigeon RB100-CM3 is a computer designed for use in control and automation systems. Pigeon RB100-CM3 is powered by Raspberry Pi Compute Module 3 and Linux system. Features Powered by Raspberry

More information

Realtek Ameba-1 Power Modes

Realtek Ameba-1 Power Modes Realtek Ameba-1 Power Modes Table of Contents 1 Power State... 3 1.1 Deep Sleep Mode... 3 1.2 Deep Standby Mode... 4 1.3 Sleep Mode... 4 1.3.1 Wakeup from sleep mode by UART... 4 1.3.1.1 Solution A, select

More information

PRU Hardware Overview. Building Blocks for PRU Development: Module 1

PRU Hardware Overview. Building Blocks for PRU Development: Module 1 PRU Hardware Overview Building Blocks for PRU Development: Module 1 Agenda SoC Architecture PRU Submodules Example Applications 2 SoC Architecture Building Blocks for PRU Development: PRU Hardware Overview

More information

2-Oct-13. the world s most energy friendly microcontrollers and radios

2-Oct-13.  the world s most energy friendly microcontrollers and radios 1 2 3 EFM32 4 5 LESENSE Low Energy Sensor Interface Autonomous sensing in Deep Sleep LESENSE with central control logic ACMP for sensor input DAC for reference generation Measure up to 16 sensors Inductive

More information

November 3, 2015 Jason Kridner

November 3, 2015 Jason Kridner November 3, 2015 Jason Kridner Co-author of BeagleBone Cookbook Board member at BeagleBoard.org Foundation Sitara Applications Engineering at Texas Instruments 1 Truly flexible open hardware and software

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

MicroEmbedded Technologies, Pune. A user manual for Using the BeagleBone Black with Linux Host.

MicroEmbedded Technologies, Pune. A user manual for Using the BeagleBone Black with Linux Host. MicroEmbedded Technologies, Pune. A user manual for Using the BeagleBone Black with Linux Host. Introduction to BeagleBone Black.... 3 1.0. Connecting the BeagleBone Black (BBB) with the PC.... 5 1.1.

More information

CDE250 IPMI Firmware v3.12 Upgrade. Modification History

CDE250 IPMI Firmware v3.12 Upgrade. Modification History Document Number Created By EDCS-11510417 S. Parry CDE250 IPMI Firmware v3.12 Upgrade Details the process of upgrading CDE250 IPMI firmware to v3.12 in the field Field Notice #64219 Modification History

More information

Introduction to the Itron Riva Dev Kits

Introduction to the Itron Riva Dev Kits Introduction to the Itron Riva Dev Kits The purpose of this Guide is to give you a fast path to understanding which Itron Riva Dev Kit is best for your development goals. Itron offers 3 kits: Itron Riva

More information

Die Brummbeere Documentation

Die Brummbeere Documentation Die Brummbeere Documentation Release 0.0.1 Peter Bouda February 21, 2016 Contents 1 owncloud Music Player 1 2 Contents 3 2.1 Compile for desktop........................................... 3 2.2 Embedded

More information

Age nda. Intel PXA27x Processor Family: An Applications Processor for Phone and PDA applications

Age nda. Intel PXA27x Processor Family: An Applications Processor for Phone and PDA applications Intel PXA27x Processor Family: An Applications Processor for Phone and PDA applications N.C. Paver PhD Architect Intel Corporation Hot Chips 16 August 2004 Age nda Overview of the Intel PXA27X processor

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

GM8126 I2C. User Guide Rev.: 1.0 Issue Date: December 2010

GM8126 I2C. User Guide Rev.: 1.0 Issue Date: December 2010 GM8126 I2C User Guide Rev.: 1.0 Issue Date: December 2010 REVISION HISTORY Date Rev. From To Dec. 2010 1.0 - Original Copyright 2010 Grain Media, Inc. All Rights Reserved. Printed in Taiwan 2010 Grain

More information

Raspberry Pi Kernel Install. By: Daniel Rizko

Raspberry Pi Kernel Install. By: Daniel Rizko Raspberry Pi Kernel Install By: Daniel Rizko Introduction In this presentation I will be demonstrating three things. 1. Building a cross compiler from scratch using crosstool-ng for Raspberry Pi hardware.

More information

ARDUINO YÚN MINI Code: A000108

ARDUINO YÚN MINI Code: A000108 ARDUINO YÚN MINI Code: A000108 The Arduino Yún Mini is a compact version of the Arduino YUN OVERVIEW: Arduino Yún Mini is a breadboard PCB developed with ATmega 32u4 MCU and QCA MIPS 24K SoC CPU operating

More information

MAXREFDES131#: 1-WIRE GRID-EYE SENSOR

MAXREFDES131#: 1-WIRE GRID-EYE SENSOR System Board 6331 MAXREFDES131#: 1-WIRE GRID-EYE SENSOR MAXREFDES131# is a sensing solution featuring the Panasonic AMG8833 Grid-EYE and the Maxim 1-Wire bus, enabled by the DS28E17. The system enables

More information

User Manual Rev. 0. Freescale Semiconductor Inc. FRDMKL02ZUM

User Manual Rev. 0. Freescale Semiconductor Inc. FRDMKL02ZUM FRDM-KL02Z User Manual Rev. 0 Freescale Semiconductor Inc. FRDMKL02ZUM 1. Overview The Freescale Freedom development platform is an evaluation and development tool ideal for rapid prototyping of microcontroller-based

More information

AM17x/AM18x ARM Microprocessor General-Purpose Input/Output (GPIO) User's Guide

AM17x/AM18x ARM Microprocessor General-Purpose Input/Output (GPIO) User's Guide AM17x/AM18x ARM Microprocessor General-Purpose Input/Output (GPIO) User's Guide Literature Number: SPRUFV2A June 2010 2 Preface... 7 1 Introduction... 8 1.1 Purpose of the Peripheral... 8 1.2 Features...

More information

Mainline on form-factor devices / Improving AOSP

Mainline on form-factor devices / Improving AOSP Mainline on form-factor devices / Improving AOSP Presented by John Stultz Date Thursday 24 September 2015 Event SFO15 John Stultz Topics from Linux Plumbers Barriers to running

More information

Trees need care a solution to Device Tree validation problem

Trees need care a solution to Device Tree validation problem Trees need care a solution to Device Tree validation problem April 30, 2014 Embedded Linux Conference San Jose, CA Tomasz Figa Linux Kernel Developer Samsung R&D Institute Poland Overview 1. Device Tree

More information

Hi3520D V200 H.264 CODEC Processor. Brief Data Sheet. Issue 01. Date

Hi3520D V200 H.264 CODEC Processor. Brief Data Sheet. Issue 01. Date Brief Data Sheet Issue 01 Date 2014-09-21 . 2014. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means without prior written consent of HiSilicon Technologies

More information

Hookie AM20 Activity Meter

Hookie AM20 Activity Meter User Manual v1.10 Hookie AM20 Activity Meter 06.10.2011 Hookie AM20 Activity Meter Appendix 1: Operating instructions and troubleshooting LED behaviour in measurement mode The device operation is indicated

More information

pcduino V3B XC4350 User Manual

pcduino V3B XC4350 User Manual pcduino V3B XC4350 User Manual 1 User Manual Contents Board Overview...2 System Features...3 Single-Board Computer Configuration......3 Pin Assignments...4 Single-Board Computer Setup...6 Required Hardware...6

More information

Embest SOC8200 Single Board Computer

Embest SOC8200 Single Board Computer Embest SOC8200 Single Board Computer TI's AM3517 ARM Cortex A8 Microprocessors 600MHz ARM Cortex-A8 Core NEON SIMD Coprocessor POWERVR SGX Graphics Accelerator (AM3517 only) 16KB I-Cache, 16KB D-Cache,

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

CDE250 IPMI Firmware Upgrade. Reviewers. Modification History

CDE250 IPMI Firmware Upgrade. Reviewers. Modification History Document Number Created By EDCS-1409002 S. Parry CDE250 IPMI Firmware Upgrade Details the process of upgrading CDE250 IPMI firmware to v3.03 in the field Field Notice #63883 Reviewers Department Name/Title

More information

The code in src/wf_example illustrates the use of WFI or WFE calls that put the calling ARM core into clock gating mode to save power.

The code in src/wf_example illustrates the use of WFI or WFE calls that put the calling ARM core into clock gating mode to save power. Introduction The code in src/wf_example illustrates the use of WFI or WFE calls that put the calling ARM core into clock gating mode to save power. This project makes use of the "Sparrow" baremetal/amp

More information

Analog, Mixed-Signal and Power Management

Analog, Mixed-Signal and Power Management Analog, Mixed-Signal and Power Management MM912_637 Applications Battery Current / Voltage / Temperature Monitoring Battery State of Charge Monitoring Battery State of Health Monitoring Xtrinsic Integrated

More information

Application Note. Introduction. AN2255/D Rev. 0, 2/2002. MSCAN Low-Power Applications

Application Note. Introduction. AN2255/D Rev. 0, 2/2002. MSCAN Low-Power Applications Application Note Rev. 0, 2/2002 MSCAN Low-Power Applications by S. Robb 8/16-bit MCU Division Freescale, East Kilbride Introduction The Freescale Scalable Controller Area Network (MSCAN) is the specific

More information

HYDRA-X10. Power Application Controllers TM. PAC HYDRA-X User s Guide. Copyright 2014 Active-Semi, Inc.

HYDRA-X10. Power Application Controllers TM. PAC HYDRA-X User s Guide.   Copyright 2014 Active-Semi, Inc. HYDRA-X10 Power Application Controllers TM PAC5210 - HYDRA-X User s Guide www.active-semi.com Copyright 2014 Active-Semi, Inc. CONTENTS Contents...2 Overview...3 HYDRA-X10 Body Resources...5 Header Descriptions...5

More information

ARM Device Tree status report

ARM Device Tree status report ARM Device Tree status report Grant Likely Secret Lab Technologies Ltd. October 28, 2010 Embedded Linux Conference Europe Cambridge, UK Overview Device Tree Overview Integration with the Linux device model

More information

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC Multi-core microcontroller design with Cortex-M processors and CoreSight SoC Joseph Yiu, ARM Ian Johnson, ARM January 2013 Abstract: While the majority of Cortex -M processor-based microcontrollers are

More information

AI-102. IR Illuminator. Installation Guide. Rev IP Surveillance

AI-102. IR Illuminator. Installation Guide. Rev IP Surveillance AI-102 IR Illuminator Installation Guide Rev. 1.1 IP Surveillance Revision History: Rev. 1.0: Initial release Rev. 1.1: Changed effective IR range and power consumption. AI-102 Tube Type Infrared Illuminator

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

Kernel maintainership: an oral tradition

Kernel maintainership: an oral tradition Embedded Linux Conference Europe 2015 Kernel maintainership: an oral tradition Gregory CLEMENT Bootlin gregory.clement@bootlin.com (Image credit: Andrew Cheal under license CC BY-ND 2.0) - Kernel, drivers

More information

GIGAVAC Contactors I 2 C Communication

GIGAVAC Contactors I 2 C Communication Document Revision: 3 GIGAVAC Contactors I 2 C Communication Product models: MXST15/16-mm-ss, delay on break contactors. Attention: Read this instruction entirely for a top-level-feel of what you prefer

More information

Electric Imp impexplorer Kit

Electric Imp impexplorer Kit Electric Imp impexplorer Kit The Electric Imp impexplorer Kit is the ideal basis for building self-contained connected devices. It includes not only a trio of temperature and humidity, motion, and pressure

More information

Git Introduction CS 400. February 11, 2018

Git Introduction CS 400. February 11, 2018 Git Introduction CS 400 February 11, 2018 1 Introduction Git is one of the most popular version control system. It is a mature, actively maintained open source project originally developed in 2005 by Linus

More information

Booting Linux Fast & Fancy. Embedded Linux Conference Europe Cambridge, Robert Schwebel

Booting Linux Fast & Fancy. Embedded Linux Conference Europe Cambridge, Robert Schwebel Booting Linux Fast & Fancy Embedded Linux Conference Europe Cambridge, 2010-10-28 Robert Schwebel Slide 1 - http://www.pengutronix.de - 01/11/2010 Motivation: Booting Linux

More information

BUILD AND DEPLOY ORACLE SERVICE BUS PROJECTS FROM ORACLE DEVELOPER CLOUD SERVICE TO ORACLE SOA CLOUD SERVICE USING THE ORACLE SERVICE BUS PLUG-IN

BUILD AND DEPLOY ORACLE SERVICE BUS PROJECTS FROM ORACLE DEVELOPER CLOUD SERVICE TO ORACLE SOA CLOUD SERVICE USING THE ORACLE SERVICE BUS PLUG-IN BUILD AND DEPLOY ORACLE SERVICE BUS PROJECTS FROM ORACLE DEVELOPER CLOUD SERVICE TO ORACLE SOA CLOUD SERVICE USING THE ORACLE SERVICE BUS PLUG-IN Kishor Kumar Contents 1. Introduction... 2 2. Prerequisites...

More information

EECS 373 Practice Midterm & Homework #2 Fall 2011

EECS 373 Practice Midterm & Homework #2 Fall 2011 Exam #: EECS 373 Practice Midterm & Homework #2 Fall 2011 Name: Uniquename: Sign the honor code: I have neither given nor received aid on this exam nor observed anyone else doing so. Scores: Problem #

More information

Gooligum Electronics 2015

Gooligum Electronics 2015 The Wombat Prototyping Board for Raspberry Pi Operation and Software Guide This prototyping board is intended to make it easy to experiment and try out ideas for building electronic devices that connect

More information

Mark Schutzer December 9, 2007 (updated fix for older rev B and C ProCabs)

Mark Schutzer December 9, 2007 (updated fix for older rev B and C ProCabs) Turning on radio ProCabs / PowerCabs Mark Schutzer December 9, 2007 (updated fix for older rev B and C ProCabs) Overview This paper will look into and explain why radio ProCabs / PowerCabs are hard to

More information

HOW TO INTEGRATE NFC CONTROLLERS IN LINUX

HOW TO INTEGRATE NFC CONTROLLERS IN LINUX HOW TO INTEGRATE NFC CONTROLLERS IN LINUX JORDI JOFRE NFC READERS NFC EVERYWHERE 28/09/2017 WEBINAR SERIES: NFC SOFTWARE INTEGRATION PUBLIC Agenda NFC software integration webinar series Session I, 14th

More information

HYDRA-X23/X23S. Power Application Controllers. PAC HYDRA-X User s Guide. Copyright 2014 Active-Semi, Inc.

HYDRA-X23/X23S. Power Application Controllers. PAC HYDRA-X User s Guide.   Copyright 2014 Active-Semi, Inc. HYDRA-X23/X23S Power Application Controllers PAC5223 - HYDRA-X User s Guide www.active-semi.com Copyright 2014 Active-Semi, Inc. CONTENTS Contents...2 Overview...3 HYDRA-X23/X23S Body Resources...5 Header

More information

MYD-JA5D2X Development Board

MYD-JA5D2X Development Board MYD-JA5D2X Development Board MYC-JA5D2X CPU Module as Controller Board 500MHz Atmel SAMA5D26/27 ARM Cortex-A5 Processor 256MB DDR3 SDRAM, 256MB Nand Flash, 4MB Data FLASH, 64KB EEPROM Serial ports, USB,

More information

EE 354 Fall 2015 Lecture 1 Architecture and Introduction

EE 354 Fall 2015 Lecture 1 Architecture and Introduction EE 354 Fall 2015 Lecture 1 Architecture and Introduction Note: Much of these notes are taken from the book: The definitive Guide to ARM Cortex M3 and Cortex M4 Processors by Joseph Yiu, third edition,

More information

MicroProcessor. MicroProcessor. MicroProcessor. MicroProcessor

MicroProcessor. MicroProcessor. MicroProcessor. MicroProcessor 1 2 A microprocessor is a single, very-large-scale-integration (VLSI) chip that contains many digital circuits that perform arithmetic, logic, communication, and control functions. When a microprocessor

More information