Announce: Embedded Linux Device Interfacing, Workshop

Today, Linux runs on a variety of devices, from smartphones to infotainment systems to refrigerators. It is the most popular general purpose operating system, on the planet, used in embedded systems.

The objective of the workshop is to help developers understand how various sensors and actuators are accessed and controlled from a Linux based embedded system. We hope this increased understanding of the system, will lead to a better design, cleaner implementation, faster debugging, finally resulting in a better quality product.

Date and Time

  • Jul 1, 9:00 AM to 6:00 PM

  • Jul 2, 9:00 AM to 4:00 PM

Venue

The workshop venue address is provided below

Innoart Technologies,
116, Pasumpon Muthuramalinga Tevar Rd,
Nandanam Extension, Nandanam,
Chennai

Location of the venue on Google maps: here

Workshop Ticket

This is a paid workshop, and the workshop ticket price starts from Rs. 2500 (inclusive of lunch). You can purchase tickets from https://in.explara.com/e/embedded-linux-workshop

Who Should Attend?

Firmware Developers

With more and more embedded systems becoming connected and IoT enabled, they are being migrated to Linux based systems. Engineers need to adapt themselves to these emerging technologies.

This workshop will help firmware developers understand Linux driver architecture and how application code can access devices through the driver interface.

Application Developers

Embedded Systems are no longer restricted to firmware developers. With Linux being used in many embedded systems, Java and Python developers can also build useful products using these systems.

This workshop will help application developers learn how to interface with the sensors and actuators using interfaces like Serial, I2C, GPIO, PWM and ADC, from a high level language like Python.

Trainers

  • Vijay Kumar, Technologist at Zilogic Systems

  • Deepak, Technologist at Zilogic Systems

  • Babusubashchandar, Technical Specialist at Zilogic Systems

  • Raashid Muhammed, Technical Specialist at Zilogic Systems

Pre-requisites

  • Should be familiar with the Linux command-line

  • Should be familiar with at-least one programming language

Hardware / Software Requirements

  • Supported operating systems: Mac OS X / Windows / Linux

  • Should have the following software installed

    • putty >= 0.6.2

    • python (with IDLE) >= 3.5.2

Tentative Schedule

Day 1

Time Session

09:00

Setup

09:15

Python Basics

11:15

Tea Break

11:30

Introduction to OOP

12:30

Modules, File IO

01:00

Lunch Break

02:00

Embedded Linux Introduction

03:00

Device Interfacing

04:00

Tea Break

04:30

Introduction to Drivers

06:00

End of Day 1

Day 2

Time Session

09:00

Serial Interface

09:30

I2C Interface

10:30

Sysfs

11:00

Tea Break

11:30

GPIOs

12:00

PWM Interface

01:00

Lunch Break

02:00

ADC Interface

02:45

Q&A + Feedback

03:45

End of Day 2

Syllabus

Python Basics

  • Data Types

  • Variables & Dynamic Typing

  • Defining Functions

  • Control Statements

Introduction to OOP

  • Need for OOP

  • Defining Classes

  • The init method

  • self argument

  • Lists and Strings

Modules & File IO

  • Creating Modules

  • Using Modules

  • Importing Styles

  • File IO

Embedded Linux Introduction

  • Why Embedded Linux

  • Hardware Components

  • Development Setup

  • Accessing the Target

Device Interfacing

  • Memory Interfacing

  • Address Decoding

  • Memory Mapped IO

  • Controller Based IO

Introduction to Drivers

  • Linux Device Abstraction

  • Device Files

  • Mouse Device Access

  • Audio Device File

  • Sound Mixer Device

  • CD ROM Device

Serial Interface

  • UART

  • RS-232

  • Python Serial Port Access

I2C Interface

  • On-board Interconnects

  • I2C Protocol

  • I2C Device Access

SysFS Introduction

  • Purpose of SysFS

  • /sys/class hierarchy

GPIO

  • Introduction

  • Sysfs Interface

  • HID Devices

  • LEDs and Keys

PWM

  • PWM Signals

  • Sysfs Interface

  • DC Motors

  • Speed Control

Analog IO

  • Analog Inputs

  • Sysfs Interface

  • Light Sensor

  • Potentiometer