Post Job Free
Sign in

Embedded Engineer

Location:
United States
Posted:
March 31, 2009

Contact this candidate

Resume:

SUMMARY

• Versatile R & D Engineer with over * years experience in development of microcontroller based wireless products from conceptualization to testing.

• Experience with various embedded micro controllers including DSPs. Proficient in ARM7 based product development.

• Good working knowledge of principles of operation for NAND flash memory and JFFS2.

• Knowledge of RTOS constructs including processes, threads, scheduling, synchronization mechanisms, and memory management.

• Experience in Linux Device Drivers development (Serial, USB).

• Sound knowledge in I/O interfacing, data acquisition, and multitasking applications.

• Hands on experience on bringing up a board by porting required OS.

TECHNICAL SKILLS:

• Languages & Scripting: C, Java, Shell scripting, PERL

• Development Tools: GNU Tool Chain (compiler, assemblers, debugger, profiling tool, coverage tool, memory leakage tool), Cadence Virtuoso, Mentor Graphics IC Station, Xilinx ISE, Modelsim

• Operating Systems: Linux, Unix, RT-Linux, UC/OS-II, TinyOS

• Microprocessors/controllers: Atmel (AVR 8515, Atmega128), ARM (Intel Xscale, Philips LPC 2100, TI OMAP, ADI Blackfin), Intel 80x86, ADSP2181, TI MSP430.

• Interfaces: UART, SPI, I2C, CAN, USB, Ethernet, WLAN, Bluetooth, Zigbee

• Simulation/Modeling Tools: Matlab, Simulink, Visual DSP++, Octave, Scilab, Ptolemy, SPIN, UML

EDUCATION:

M.S Electrical Engineering, GPA 3.3

University of Southern California, Los Angeles

Bachelors in Technology, Electronics and Communication Engineering (ECE), GPA 3.5

JNTU, Hyderabad, India

PROFESSIONAL EXPERIENCE:

Shoah Foundation Institute, University of Southern California

Support Engineer May ’08 – Dec ‘08

Worked in a team to provide, maintain and support online access of shoah archives.

• Developed a script in perl to parse a server log file, extract necessary data and display the same in a web browser with variable timeline using flash.

• Developed a script in PHP to search for photographs in a directory tree, extract meta data and place in a tabular format.

• Setup and maintained splunk server to run automated commands extracting server logs.

• Responsible for maintenance of desktop machines with latest versions of in-house software.

Environment: Windows, Unix, Perl, PHP, Shell scripting, Splunk

Interactive Media Division, University of Southern California

Embedded Software Engineer Jan ’08 – May ‘08

Worked in a team to develop computer based games conceptualized by the division.

• Developed an interactive game to receive input from players and instruct using in-built voice messages.

• Implemented in C by using RFID tags to read input from player via RFID reader interfacing with a PC via USB and play back a voice message in response.

• Demonstrated the working of the game for educational purposes.

Environment: C, Visual Studio, Windows, RFID Technology

Autonomous Networks Research Group, University of Southern California

Directed Research Assistant Aug ’07 – Dec ‘08

Worked on design and analysis of algorithms for next-generation Wireless Sensor Networks.

• Implemented in NesC an algorithm for dense one-hop wireless sensor networks to sense the channel at regular intervals of time and update the transmission window accordingly for optimum network throughput.

• Tested the algorithm by setting up a dense sensor network with 50 nodes. A 3 time improvement has been observed as compared to the regular Zigbee protocol.

Environment: C, NesC, Shell scripting, TinyOS 2.0, Linux, MSP430 based hardware

Center for Development of Advanced Computing (C-DAC), Hyderabad, India

Project Engineer Mar ’05 – Jul ‘07

Responsibilities:

• Worked in a team to design, develop, simulate, and test a generic framework to enable fast prototyping of Wireless Sensor Network (WSN) applications.

• Coordinated with ANGRA University, Hyderabad in prototyping and deploying a WSN test bed

• Contributed to generation and maintenance of Technical Specifications and Design and Test Documents

• Maintained the developed code using CVS version control system

• Setup and maintained Cadence EDA software

• Contributed towards embedded systems and VLSI training activities

Relevant Projects:

Design of Transmission Packet Optimizer (Team Lead)

• Developed a low power solution for a mote to aggregate sensor data and decide when to transmit packets optimally over the network.

• The algorithm is based on receiving channel feedback for the decision.

• Implemented in NesC and tested the algorithm for changes in throughput and power over Telosb motes.

Environment: C, NesC, Shell scripting, TinyOS 2.0, Linux, MSP430 and Atmega128 based hardware

Design of Sensor Interface Unit (Team Lead)

• Developed a generic interface to access new sensors added to a mote platform from within TinyOS application.

• Implemented the interface in NesC and tested the working by adding humidity sensor.

• The interface allows for configuration of each sensor’s periodicity over the network.

Environment: C, NesC, Shell scripting, TinyOS 2.0, Linux, MSP430 and Atmega128 based hardware

NesC based Zigbee Stack

• Read, understood and developed APIs for Zigbee (802.15.4) network stack.

• Implemented the APIs in NesC and integrated into TinyOS.

• Tested the working of the stack over MicaZ motes.

Environment: C, NesC, Shell scripting, TinyOS 2.0, Linux, MSP430 and Atmega128 based hardware

TinyOS interface for MANTIS (Team Lead)

• Designed an interface to run NesC based TinyOS applications over C based MANTIS OS transparently.

• Implemented the interface in C and reused NesC applications within MANTIS.

Environment: C, NesC, Shell scripting, TinyOS 2.0, Mantis, Linux, MSP430 and Atmega128 based hardware

GSM/GPRS interface to a Wireless Sensor Network

• Developed an application in C for running in ARM based WSN base station (called Stargate) to serially interface with a GSM/GPRS Unit.

• The interface allows transmitting the collected sensor data in the base station over GPRS to a remote server.

• Used POSIX threads to run both the tasks independently and synchronized using FIFOs.

• Used socket programming to stream data over Intranet.

Environment: C, Linux, TI OMAP ARM processor, Serial I/O GSM/GPRS kit

Development of USB Device driver under linux for FTDI usb to serial converter

• Read and understood the specifications of FT232BM USB  Serial IC chip

• Coded in C a device driver to support the chip in linux

• Registered the driver with Linux USB core

• Handled all the endpoints of the device

Environment: C, Linux, FT232BM based board

Porting of UC/OS – II on ARM based Philips LPC platform

• Coded the platform dependent code for UC/OS-II

• Cross-compiled for ARM platform using GNU ARM Cross compiler

• Burnt the hex code along with the application on to the LPC board and tested for proper working of the application

Environment: C, UC/OS-II, Linux, Philips LPC2100 ARM Processor

Basestation for Wireless Sensor Networks

• A model for software radio based base station (sink) for wireless sensor networks was developed in Ptolemy.

• The model was tested for functioning in Bluetooth, Zigbee and WLAN modes.

Environment: Ptolemy

Porting of SOS on AVR Atmega128 Platform

• Studied the SOS operating system for identifying platform dependent code.

• Rewrote the platform dependent code in AVR assembly.

• Cross-compiled the OS for Atmega128 with board specific memory requirements.

Environment: C, SOS, AVR Atmega128 Microcontroller

Evaluation of simulators for WSN

• Identified simulators that can support simulation of WSN specific network features.

• Evaluated Glomosim, Emstar, Omnet++, and NS2 by running test applications to analyze robustness, scalability, adaptability, easiness to learn, use, power and throughput analysis and other parameters.

Environment: C, NesC, Parsec, C++, Tcl/Tk, Linux, Glomosim, Emstar, Omnet++, and NS2

National Remote Sensing Agency (NRSA), Hyderabad, India

Engineer-I Aug ‘04 – Feb ‘05

• Responsible for generation of merged products using PAN and LISS-III satellite images.

• Developed and implemented a solution involving steerable pyramids to automate the process of merging.

• Evaluated the working of steerable pyramids and genetic algorithm in generation of the merged product

Environment: C, Java, Unix, Erdas Imagine

Somarouthu Technologies, Hyderabad, India

Design Engineer Aug ’03 – Apr ‘04

• Designed and verified the functionality of USB bus interface as per USB 2.0 Specifications.

• A Protocol engine, a packet assembly and disassembly unit, DMA interface and have been designed in Verilog and synthesized for Xilinx FPGA

Environment: Verilog, Veriwell, ActiveHDL, Xilinx Design Manager, Xilinx Spartan FPGA

ACADEMIC PROJECTS

Development of nano-kernel for AVR 8515

• Developed a kernel service for scheduling three tasks in time-sliced FIFO manner on AVR 8515

• Each task is context switch with the next task every 10 ms. Tested the functionality using 3 tasks

Multithreaded Chat Server Application

• Developed a server application in C to handle multiple users using pthreads over LAN.

• The server provides both username based authentication and MAC based authentication

• Developed a client application in C to connect to the above server, register/authenticate, and chat with other users.

• Both the above programs involved linux socket programming

Microcontroller based remote access system

• Developed a program in C and assembly to read input from microcontrollers and allow access

• Involved development of program for

a) reading the input and interfacing the microcontroller with PC,

b) Serial driver for UART,

c) Socket program allowing the transmission of data to main server and

d) An application program to respond to inputs.

TALKS

• Interfacing with AVR through Serial port: Workshop on Linux Device Drivers, Hyderabad, India 1- 2 Mar ‘07

• Bluetooth and Zigbee - A case study: C-DAC, Bangalore, India 11 Aug ‘06

• Networked Embedded Systems OS: Workshop on Wireless Sensor Networks,

Hyderabad, India 29 Dec ‘05

References:

Available upon request



Contact this candidate