Post Job Free
Sign in

Manager Service

Location:
Mumbai, MH, India
Posted:
April 08, 2014

Contact this candidate

Resume:

* ******** ***** ******

Mobile: +91-773*******

E-Mail: ********.*.******@*****.***

[pic]

Seeking assignments in Embedded Firmware/Software Development Project

Execution with an organization of repute.

Summary

A Technical Lead (Embedded System) having over 8 years and 6 months of

experience of Firmware/Software Development in Automotive, Mobile and PLC.

From Oct'05 with iGate (previous name Patni) Computers Systems Ltd. India.

From Feb'09 to Apr'10 on client site Sony India Pvt. Ltd, Bangalore.

From Jun'10 to Sep'13 on client site Rockwell Automation Pte. Ltd.

Singapore

Expertise in C, C++ programming and Linux in Embedded Firmware/Software

development utilizing extreme programming methodology.

Hands on experience of designing and developing PLC firmware.

Hands on experience of designing and developing Bootloader firmware

Hands on experience of designing and developing complex Automotive

Software/Firmware systems utilizing protocols RS232, CAN, KWP 2000, J1939,

and ISO-11783.

Hands on experience of designing and developing GPS based software systems

utilizing GSM/GPRS.

Hands on experience of designing and developing Mobile Software in Android

framework for Sony's product.

Adept in conceptualizing, analyzing software system needs, evaluating end-

user requirements, custom designing solutions & troubleshooting for complex

software systems.

An energetic, self-motivated individual/engineer/person with hands on

experience in Embedded Systems and Application Programming, requirements

gathering, application integration and customization.

SKILL SET

Languages:- C, C++, UML, Qt and OpenGL

Domains:- Automotive, Mobile and Automation(PLC )

MCUs:- ARM7/9, Coldfire, Atmel, Motorola, Hitachi,

Renesas, Intel, Siemens / Infineon, ST, TI MS430, PIC, SJA1000 (CAN

controller), iTrax03 GPS

Processor, Novatel GPS Processor

IDE/SDK:- WinCE Platform Builder, IAR, WindRiver

Embedded Workbench, Multi, Keil (C51 and C166 tool chains), Renesas HEW,

CodeWarrior, iSuite3 SDK, AVR

Studio4

Emulators:- Hitex AX51, Hitex DBox16, WindRiver ICE,

Renesas E30A, Renesas E8, Phyton PICE, Hitachi H800

Operating Systems:- Linux, ThreadX, WinCE, VxWorks, Quadros, Android

Communication I2C, SPI, UART, DeviceNet, ContollNet,

EtherNet/IP, Profibus, RS232, CAN, GMLAN, KWP 2000, J1939, ISO-11783

Protocols

Tools:- Configuration management: ClearCase,

CVS, SVN, VSS

Documentation:

Doxygen

Debugging:

JTAG, GDB, CANalyser, Wireshark,, Valgrind

Make Tool:

gmake, qmake and scons

Testing:

CPPUnit, CXXUnit, CUnit, embUnit, QtTestlib, Bullseye

Profile:

gprof, kprof

Others: Android's SDK, adb, ddms,

mksdcard, CANOe, FileZilla, SSH, Putty, cygwin, Rational Rose, Jude,

MS Visio, STI

Understand, Eclipse, Source Insight

Miscellaneous Bootloader Programming, Linux System

Programming, Shocket Programming, Shell Programming,

Device Driver Programming, ARM

Architecture, OS Internals, RTOS, Data Structure

Job Functions

Requirement Analysis, Designing, Coding, Testing, Documentation,

Configuration Management.

CAREER HIGHLIGHTS

From Oct'05 with iGate (previous name Patni) Computers Systems Ltd. India

From Feb'09 to Apr'10 on client site Sony India Pvt. Ltd. Bangalore India

From June'10 to Sept'13 on client site Rockwell Automation Pte. Ltd.

Singapore.

From Oct'13 to iGate Solution Pvt. Ltd.

1

2 Projects Handled:

3 [pic]

4 Title Distributed I/O Modules (DIO) and

PLC Firmware

Description I/O that is distributed around the application or integrated

with the controller. You can install DIO modules locally in the same

chassis as the processor. Through the use of I/O communication networks,

you can also distribute I/O in locations remote from the processor, closer

to the sensors and actuators, reducing your wiring costs. Having the

freedom to monitor and control I/O across an I/O link means you can select

I/O products from a variety of platforms that include a variety of

integrated termination solutions. DIO modules can be located on the machine

close to sensors and actuators, controlled from a safety PLC. A distributed

safety I/O module continuously monitors its internal functions to make

certain that it is functioning and available if a safety demands is placed

on the system. It also provides valuable detailed diagnostic information to

the machine operators and maintenance personnel making troubleshooting

easier and thereby improving overall machine utilization.

Responsibilities Firmware development and support

Controllers Renesas, ST, Coldfire, Atmel,

Infineon, ARM7/9, Motorola, Hitachi, Siemens, PIC

Network Protocols ControlNet, DeviceNet, ProfiBus and

Ethernet/IP

Framework/Tool used WinCE Platform Builder, IAR, MULTI, KEIL, and

CodeWarrior

Technologies C/C++

OS ThreadX, WinCE, VxWorks,

Quadros

Duration June' 10 - till now

Location Onsite-Offshore

5 Title Glucose Engine

Description The Glucose Engine (GE) is a device used to monitor the glucose

count every five minutes. This data is provided to Host Interface (iPhone).

The glucose engine system consists of three components: the Sensor, the

Transmitter, and the Glucose Engine Receiver module. The Transmitter is a

reusable device that snaps into the Sensor Pod and wirelessly sends glucose

information measured by your Sensor to the Glucose Engine Receiver This raw

data is processed by the Algorithm module to get Glucose data and then the

raw value and the engineered value are stored in on-board non-volatile

memory. GE allows a user to view glucose engine module allows a user to

view stored records, read alert conditions, provide calibration data etc.

Apart from being responsible for initialization of Glucose Engine, it also

acts as an interface to know the current state of the Glucose Engine.

Requirement of this project was to implement the communications interface

as a series of host (currently iPhone) or test commands that can be sent

to/from the host (iPhone) to the glucose engine over the glucose engine's

UART serial interface.

Responsibilities - Requirement analysis, creating design documents

- Implementation of

Identify Device Preferences and Settings (IDPS) process over UART serial

communication

between iPhone and

Glucose Engine using iAp protocol.

- Implementation of

Authentication process over SPI between GE and Authentication Co-processor

using iAp protocol

- Implementation of Test interface for communication over UART with

GE

Framework/Tool used IAR

Technologies C++

Hardware MSP430

Duration April' 10 - Jun' 10

Location Offshore

6

7 Title System Services

Description Provides following different middle-ware services:

Data Manager: Data Manager provides the service to applications

to set/get the information to/from database. This

module uses database interface for database operation.

Polling Services: Polling Service provides timer services

scheduled at user specified interval which provides polling

mechanism for registered handler. This service provides two

types of timer :

1. Repeat Timer: calls handler repeatedly after specified interval expires

till the application is active.

2. One-shot Timer : calls user handler only once after specified interval

expires.

An application will register its handler with Polling Service and request

for scheduling its handler on specified timer interval.

Service Manager: Service Manager registers and initialize all the

basic services i.e. Data Manager, Process Life Manager and all resident

services on system boot-up. It also supports run time registration and

launching of a service. It also notifies that a service has started or

stopped. This service manager uses D-bus rather than binder which is used

by Android's Service Manager (provides access to only Android Framework's

services).

Plugin Manager: Android does not has any application framework to

manage loading/unloading of the plugins. Plugin Manager load all the

plugins which are required on system start-up by default.. It also

load/unload a specified plugin or plugins from a specified directory.

Logger Service: Android does not provide persistent logs. Logger

Service maintains all the logs(Android's Main, Radio, Event, Systems and

kernel logs) at one consolidated location in a NAND. This service starts

at boot-up time. This service reads /dev/log, /proc/kmsg, and /dev/main,

/dev/event, /dev/radio devices and writes to their file on NAND. For fast

writing and NAND longetivity mmap approached is used. It also provides

interface for log retrieval. Log retrieval functionality provides a log

viewer tool to see the run time logs like Android's Logcat.

Task Manager: Task manager processes application's task

asynchronously. Task manager registers application's tasks into a queue

then processes all task s sequentially.

Libraries: Created own containers, string, database, thread, task,

stream, file, mobile's application layer.

Responsibilities - Creation of architecture documents

- Designing

- Creation of project's build structure

- Implementation

- CXX and systemTesting

Framework/Tool used Android SDK, Eclipse, CXXUnit, D-bus,

Android's emulator, adb, ddms, mksdcard

OS Ubuntu, Fedora, Moblin

Languages C, C++, Ruby, JNI

Duration Feb' 09 - April'10

Location Client site(Sony India)

8 Title CUnit Testing

Description CUnit testing of different modules.

Responsibilities Environment setup, creating test code, test data and

testing

Framework/Tool used CUnit, Bullseye(Code Coverage)

Technologies C

OS Linux

Duration Aug' 08 - Jan'09

Location Offshore

9 Title EOT GPS Tracker

Description EOT GPS Tracker periodically sends the current GPS

position of EOT (End of Train) device to the server through SMS

using GSM/GPRS. It also communicates to server through any one of the

channels HTTP, FTP, TCP and UDP for handling the commands from

server for tracing GPS data, various debug and system status data. EOT

Tracker sends SMS to server on two different frequencies in USA

and Canada.

Responsibilities - Requirement analysis, creating design documents (HLD &

LLD)

- Implementation of sleep

control algorithm and interrupt handling

- Re-implementation of UDP

channel and SMS frequency handling

- Configuration and

handling of general purpose I/O

Framework/Tool used iSuite3 SDK, EOT GPS Tracker Evaluation kit,

and GPS Workbench

Technologies C

Hardware iTrax03 GPS Receiver and Siemens

GSM modem

Duration Jan' 08 - Jun' 08

Location Offshore

10 Title B6 DOP (Dilution of Precision) Predictor

Description Provides the user with a means of checking the GPS satellite

availability and quality up to 24 hours in advance on the ISO VT screen

(user terminal).

Responsibilities - Requirement analysis, creating design documents (HLD &

LLD)

- Parsing and processing

ALMANAC data from Satellites

- Implementation of DOP

computation algorithm

- Implementation of DOP data

store management

- Drawing satellite quality

graph

Platform Linux

Technologies C++

Duration Nov' 07 - Jan' 08

Location Offshore

11 Title B6 Unit Testing

Description Unit testing of various modules of B6 system.

Responsibilities Environment setup, creating test code, test

data and testing

Platform Linux

Testing Framework QtTestlib

Duration Aug' 07 - Oct' 07

Location Offshore

Title Tractor Simulator

Description A stand-alone application, which runs on PC to simulate GPS

receiver, DMU and VIU, required by BSAC (system controller). This simulator

communicates to BSAC using serial and CAN (IXXAT or NetCAN interfaces)

protocol.

Responsibilities - Requirement analysis, creating design documents (HLD &

LLD)

- Parsing and processing

ALMANAC data from Satellites

- Implementation of GPS, DMU

and VIU emulator

- Setup UART, IXXAT and NetCAN

channel

- Implementation of message

codec (ISO11783 and J1939 message)

- Implementation of vector

calculation

- Implementation of TCP/UDP

communication with Client tools

Framework/Tool used Qt 3.3, Valgrind, gdb, CANOe and CPP Unit

Technologies C++

Platform Linux

Duration Mar' 07 - Aug' 07

Location Offshore

12 Title CAN Messages on BSAC

Description Modifying the existing handling method of outgoing messages on

B3 (system controller) so that all messages which are not broadcast

periodically must be made available on request and for non broadcast

messages, the destination address must be set to the address of the ECU who

sent the request.

Responsibilities - Requirement analysis, creating design documents (HLD &

LLD)

- Re-implementation of

incoming and outgoing message handler

- Re-implementation of message

codec

- Implementation of request

handler

Tool used CANOe

Technologies C++

Platform Linux

Duration Feb' 07 - Mar' 07

Location Offshore

2 Title Multilingual AutoGuide Service Tool

Description The objective of this project was to provide installer and

Unicode support for displaying this existing tool in various languages.

When the install shield is run for the AutoGuide Service Tool, at a point

during the install process, the operator will be prompted to select the

language they want the interface displayed in.

Responsibilities - Requirement analysis, creating design documents

(HLD & LLD)

- Creation of DLL for each

language

- Re-implementation of

functionalities to provide Unicode support

Tool used Visual Studio .NET Technologies, VC++, Windows Forms,

Serial Communication and Unicode support

Duration Nov' 06 - Jan' 07

Location Offshore

1 Title B6 AM System

Description Displays real time movements of Tractor and field view using 2-

D and 3-D graphical display in both day and night modes. This system

provides following features:

A splash screen and progress bar must be displayed while the system loads

and detects the system settings.

A transparent virtual dashboard that displays machine data like

speedometer, digital clock, percentage of field worked, and distance till

the current run is completed.

3-D Map view (Perspective, Overhead and Aerial view).

A semi transparent virtual keyboard (QWERTY, ABC, Numerical and Country

layout) allows an operator to enter text, characters and numbers into the

system.

Responsibilities - Requirement analysis

- Implementation of progress

bar

- Implementation of 2-D and 3-

D motion of Tractor for different views

- Implementation of alarm if

there is any obstacle on the way

- Implementation of offset

error alarm

Framework/Tool used Qt4.2, OpenGL, gprof and kprof

Technologies C++

Platform Linux

Duration Sep' 06 - Nov' 06

Location Offshore

2 Title VIU (Vehicle Interface Unit)

Description VIU is the interface between the

BSAC (system controller) and the vehicle's steering system. BSAC gathers

and processes GPS signals and communicates positioning information to the

components responsible for steering the vehicle. The information is

translated to the vehicle's steering system through VIU4. VIU receives all

steering related commands from BSAC and control the steering systems

accordingly.

Responsibilities: - Requirement analysis, creating design documents

(HLD & LLD)

- Implementation of system

init module

- Setup CAN channel (CAN

controller) and UART serial communication

- Set A/D converter and

implementation of sampling method

- Implementation of ISRs for

host controller (Atmega128)

Framework/Tool used AVR Studio4, ICCAVR and gdb

Technologies C

Hardware Atmega128, SJA1000 (CAN controller)

Duration Nov' 05 - Aug' 06

Location Offshore

3 Title Edit Implement and Default Field Name on ISO-VT

Description Provides following features for the ISO-VT system (user

interface):

Direct Editing of Implement Data width, offset, and link length for an

existing implement

Warning user about Overwriting of Implement Data and blank field error

generation

Default Field Name, which allows the user to save the field with Temporary

as default field name and only one copy of Temporary, is maintained in the

system

Tool used embUnit

Technologies C++

Platform Linux

Duration Oct' 05 -Nov' 05

Location Offshore

Education:[pic]

Post Graduate Diploma in Embedded Systems & VLSI Design in Aug 2005

B. Tech. (Electronics and Communication Engineering) in the year 2004

PERSONAL DETAILS

Date of Birth 02 May 1980

Address Kanchan Pushp Complex, Ghodbunder Road, Navi Mumbai

References Available on request

Visa Status



Contact this candidate