Post Job Free
Sign in

Embedded Software C++

Location:
Seattle, WA
Posted:
May 06, 2025

Contact this candidate

Resume:

RAMACHANDRAN PERUMAL

************@*****.*** 763-***-**** Seattle, WA

Job Objective

Seeking challenging assignments in Systems Analysis, Embedded Software Design & Development with Team Management functions, in the IT sector.

Professional Profile

18 years of experience in Real Time Embedded software development for DVB (Digital Video Broadcasting), ATSC, Satellite/Terrestrial/Open Cable receivers ( Set Top Box ), DVD Players, IPTV STB, OTT Receivers. It includes experience in Medical devices and Aerospace domain.

Skills in C, C++, Assembly language, VSS 6.0, CVS tools with proficiency on RTOS viz. STLite/OS 20 Real Time Kernel, ThreadX on Windows and Linux platforms.

An effective team player/leader with hands on experience in systems study, design, development and testing of Middleware, Application and partially Driver software.

Executed onsite/offshore projects involving Development, Debugging & Testing of software.

Technical Skills

OS/Platform

Windows 10, Linux, Docker

Languages

C/C++

RTOS

STLite/OS20 Real Time Kernel, ThreadX Linux, other RTOS OS Wrappers

Microcontrollers

STi5512/STi5505/STi5500 (ST20 Core). TL955 (Teralogic Core), SupraHD 660, Sigma, Broadcom. TI AM335x (ARM Core)

Tool Chain

GNU

Debugging Tools

OS-Link, DCU - EJTAG, Linux – GDB & KDBG, MultiX, IAR

Configuration Tools

CVS, Visual Source Safe, SVN, GIT

Databases

SQLite

Build Systems

Make/CMake, Yocto

Scripting

Linux Bash, Python, JSON

Education

Bachelor of Eng in Electronics & Communication, Thiagarajar College of Eng, Madurai TN India

Key Projects Handled

01 - Software Development for Evo/ECP hardware present in Flight.

Duration: Sep’19 – May’24. Natrinai Technologies

Environment: Linux/C++/Evo/ECP hardware Role: Team Member

Scope: To develop software for Evo/ECP hardware which is present in Flight. The software includes BIT, AID Interface, GLHM, eADL like modules. The Evo hardware exchanges information to Ground System. The BIT Test results are displayed in UI using cloud server.

Contribution:

ECP

Designed and developed embedded software for ECP hardware of flight. It was implemented in amqp protocol, Rabbitmq message broker mechanism.

Built software in Docker environment.

Developed HAP Simulator software module.

The HAP ( Hardware Abstraction Process ) interacts with the peripheral, I/O devices like SSD, Bluetooth, Wifi, Sensors and RTC. Bypassed the necessity of hardware device being present during the code development, resulting in 30% reduction of software development time.

Developed CLI ( Command Line Interface ) for HAP Simulator.

Developed Container manager module.

The Container manager responsibility is to

1) Create/Start container

2) Monitor container

3) Stop/Remove container

The container manager takes care of customer related ( for ex. TDY core ) containers, third party containers. It reads the manifest file and loads them. Also it queries about the container stats. It responds to other modules that wants to start/stop, other container related activities. It interacts with the AWS Cloud with the credentials provided.

Got exposure to Health manager, Network manager modules.

EVO

Worked in SBIT, CBIT modules. SBIT (Startup Built In Test) performs system-level test at startup and logs results. CBIT is Continous Built In Test that performs the test every 30 seconds.

Developed software for RTC, Sensors, USB, Voltage Monitoring, Ethernet Loopback modules in SBIT. Developed part of the software for AID (Aircraft Interface Device) Interface.

Worked in Code Fix activities.

Used technologies like MQTT, COAP.

02 - Static Code Tool Analysis

Duration: Mar’18 – May’19 KPIT Technologies

Environment: Project code, Opensource (CWE Juliet TestSuite) Role: Team Member

Scope: To identify the best tool (among the tools 1.CodeProver 2.BugFinder 3.TCSECA 4.CodeSonar ) for the Project code and the Opensource code(CWE Juliet TestSuite). The Project code and the Opensource code are introduced with predefined ERRORS and Bugs.

Contribution:

Configured the tool and checked whether the tool reported the ERRORS and Bugs correctly. Some of the ERRORS are like Integer overflow, Division By Zero, Buffer overwrite/underwrite, Multitasking capability.

worked in the QAC Report (Misra C - Rule 13.2, 12.6 )

03 - GUI Devleopment for ICP Express Monitor

Duration: Jun’17 – Feb’18 Mobiveil Technologies

Environment: TI AM3354 Chipset / ThreadX/C Role: Senior Firmware Engineer

Scope: To develop the GUI(Graphical User Interface) for the device IntraCranial Pressure (ICP) sensor monitor. This project is for the medical device. The client is Johnson & Johnson. The device reads an analog signal from a disposable patient sensor and calculates an ICP in mm of mercury.

Contribution:

Worked in designing the GUI Screens in GUIX Studio supported by Express Logic's ThreadX Software. All the GUI Screens are displayed in the new digital board's 7" LCD screen.

Programmed for 1) Showing the GUI Screens in the digital board 2) Drawing the real time graph of Mean ICP Value that is read from the patient sensor.

04 - DVB OTT Receiver STB Application

Duration: Apr 14 – Nov 2015 Lukup Media Pvt Ltd.,

Environment: Broadcom Chipset / Linux/C Role: Senior Software Engineer

Scope: To develop the software for a DVB OTT Receiver which supports DVB Live channels decoding, VOD Channels playing.

Contribution:

Worked in EPG Data Manager, HAL Demux, SQL database, JSON modules in DVB Based Set-Top-Box Application.

05 - VRBP – (Vehicular Router Base Product. )

Duration: Oct’11 – Apr 2012 Aricent Group

Environment: Linux/C Role: Senior Software Engineer

Scope: To prepare UTP and design document for the Vehicular Router Base Product.

Contribution: UTP Preparation and Design Document Preparation are completed.

06 - DVB-S Set-Top-Box Application Maintenance/Porting

Duration: Sep’10 – July2011 Indieon Technologies

Environment: STi5211 / OS20 / Linux/C Role: Application Lead

Scope: To get trained in company’s proprietary application and other components of SetTopBox Software developed as an IP Stack.

Contribution:

Worked as an Application Engineer in DVB-S SetTopBoxes and did bug fixing in the application software.

Also I did Application integration/Porting from one target platform(NXP) to other target platform(ST). NXP platform is a DVB-C Set-Top-Box. I got exposure to SVN, a version control system tool.

07 - IPTV Set-Top-Box Middleware enhancement

Duration: May’08 -Mar'09 Wipro Technologies

Environment: SMP8634 (Sigma Chipset) / Linux/C Role: Team Member

Scope: To get trained in Client's proprietary IPTV middleware so as to use them for the enhancement and development phase of the project. Client is one of the largest IPTV deployers in the Europe market. The Set Top Box had PVR and non PVR solutions.

Contribution:

Enabled the EPG s/w in terrestrial mode for the IPTV set-top-box.

Worked towards the DVB modules like Teletext, PIP feature testing and verification. Got exposure to the Clear case client environment.

08 - ATSC DTV BSP cum Application development

Duration: Jun’05-Jan'08 Wipro Technologies

Environment: SupraHD660 (Teralogic Chipset) / ThreadX/C Role: Project Lead

Scope: To develop and modify the software for LCD TV that decodes the ATSC compliant streams. The client is a Japan based OEM who designed DTV board for North American market. The product is in two forms 1) As a Full DTV solution 2) As a slave controlled by Master analog board to utilize the Digital processing capability alone. In the later phase of the project, did study on OpenTV.

Contribution:

BSP

Front panel / IR s/w – Ported it for the new board.

Flash driver s/w – Ported it for new 4, 8 MB ST flash chipsets.

UART s/w - Enabled it for front panel CPU communication.

Board Control protocol (BCP) - A communication protocol between the master (Analog) board and Slave board for controlling and information retrieval from the slave board.

Application development

In the later phase of the project, mentored the offshore team technically for making a complete user-friendly GUI. Done major bug fixing during the application development.

09 - ATSC/Open Cable IP for U.S Client

Duration: Apr’03-Sep’04 Wipro Technologies

Environment: TL955 (Teralogic Chipset) / Linux/C Role: Team Member

Scope (ATSC-IP): To develop software for digital terrestrial receiver that decodes the ATSC compliant streams comprising of modules like OSD, Audio, Video, Demux HAL interfaces, Database, Database builder.

Contribution:

Parser, Database Builder

Working in the PSIP parser module.

Debugging on Database builder / database modules.

BSP

Designed the OSD HAL interface by studying NEC, Teralogic chipsets which talks to the graphics driver.

Scope (Open Cable-IP): To develop software for Open Cable receiver that decodes the SCTE compliant Open Cable streams sent through inband and out-of-band.

Contribution:

Developed Out-of-band parser, database builder module.

Developed Out-of-band Section Filter module.

Debugging on POD simulator, Knowledge on EAS, DCCM modules.

10 - POD Application Development (Korean Client)

Duration: Oct’04-Feb’2005 Wipro Technologies

Environment: ARM/Linux/C Role: Team Member

Scope: To develop some of the Application resources in the POD side for a CableCARD platform that integrates NDS CAS. This contains resources like MMI, Firmware Upgrade, Host Download Control, Specific Application, and Generic Feature Control.

Contribution:

BSP

Designed Specific Application Support, Firmware Upgrade resource application.

11 - DVD-IP/GUI Toolkit for Wipro Technologies

Duration: Jul’02-Mar’03 Wipro Technologies

Environment: Teralogic Chipset/C Role: Team Member

Scope: To study the IP stack, a middleware that sits on top of the drivers to provide the application the sufficient no. of APIs for controlling the DVD playback. In DVD the data to decode the video, audio and sub picture are present, in the form of tables in files. This module navigates the disc to get the data according to the user’s request.

Contribution:

Studied the PCI Highlight Information and the sub-picture module.

Designed APIs necessary for DVD Menu Navigation and Man Machine Interface.

Designed, implemented & tested GDI layer, Edit Box & Scroll bar controls of GUI Tool kit. Helped in designing Resource Manager to handle resources stored in Flash memory/file.

Title: Study and analysis of Set-Top Box graphics driver software Duration: Apr’02-Jun’02

for a US based client (Onsite)

Environment: BCM7115 (Broad COM chipset), Power TV Role: Team Member

Scope: To develop an application for making the Set Top Box software support HD (High Definition) TV output. The existing software that supported standard definition output runs on Broad COM chip. For HD resolution support, the client opted for STi7020 (ST Chipset) usage.

Contribution:

Handled the patching of the STi7020 Graphics driver into the existing software in conformance to Power TV OS standards & Interactive Cable division document specifications (Client Proprietary).

Completed the study phase for this project.

12 - Set-Top Box application for a Hong Kong based client

Duration: Jul’01-Feb’02 Highgate Worldwide & Co

Environment: STi5500 (ST Micro Controller chipset), STLite/OS20/C Role: Module Leader

Scope: To design software for DVB satellite and terrestrial receivers. To develop the middleware for Set-Top Box application.

Contribution:

Application Development

Developed the entire application which comprises of Man Machine Interface and code that interacts with other modules like database, memory manager.

OSD design for terrestrial software with user interface enhancements.

BSP

Handled Porting of Flash tool from 1x8Mbit to 1x16Mbit Configuration involving read/write/erase the part of /whole Flash memory chip.

Modified the Flash driver code for multiple sector read/write enabling.

Integrated loader module which is used to download software from PC.

13 - Set-Top Box Software ( Appln & BSP ) for a Taiwan based client (Onsite)

Duration: May’00-Jul’01 Highgate Worldwide & Co

Environment: STi5512 (ST Micro Controller chipset), STLite/OS20/C Role: Project Leader

Scope: To design the Middleware and Driver Interface for DVB satellite and terrestrial receivers.

Contribution:

Application

MMI for DVB-S/DVB-T Free-to-Air applications.

Database Navigation module: This module is used by application layer for querying service, transponder and satellite information stored in memory devices.

IRD Status Display - This module reports the set-top box status to the application.

Worked in tracing the ST - MPEG2 Video Layers for video macro-block issues. Worked in the Aspect Ratio related issues.

BSP

Remote Control Interface module detects the remote control keys pressed by the user to operate the Set Top Box, using PWM capture module.

Implemented software for Video Matrix Routing Switch, an I2C controlled device for switching between different audio, video inputs from microcontroller/SCART/Auxiliary device.

Implemented the Terrestrial Démodé Software including programming the demodulator for 6MHz, 7&8MHz bandwidth tuner support and optimized the Auto Scan procedure.

LCD Interface Debugging Module controls the Color, Contrast level & zooming mode of the LCD output which the set-top box has as its display unit.

Debugged and tested the Front Panel Keys Interface and worked on the detection of the Polling based Front Panel Key in this module.

Added PAL-M, PAL-N video output support to the set top box by configuring the digital encoder registers ( Video Encoder ) of the Microcontroller.

14 - Set-Top Box application development for a Taiwan based client

Duration: Dec’99-Apr’00 Highgate Worldwide & Co

Environment: STi5505 (ST Micro Controller chipset), STLite/OS20/C Role: Team Member

Scope: A combination project i.e. The set-top box acts as a DVB-S receiver cum DVD player.

Contribution:

OSD design and implementation.

Did the design document preparation, palette & icon selection for the OSD.

Developed an application for Viaccess conditional access interface and a Game.



Contact this candidate