linkedin.com/in/prashantgandhi27 github.com/prashantgandhi27 SKILLS:
• Programming Languages : C, C++, Embedded C, Algorithms and Data structures, Python (Beginner).
• Communication Protocols : SPI, UART, CAN, I2C.
• Tools/Software : PX4 autopilot firmware, GitHub (version control), Eclipse, Linux, STM32 Bootloader.
• Processors/Platforms : Raspberry pi 3, ARM Cortex-M3/M4, STM32 Nucleo, Pixhawk 4, NVIDIA Jetson nano.
• Embedded OS : FreeRTOS (Real Time Operating System), Linux.
• Unit testing tools : Unity, CMock.
ARMADA AERONAUTICS Inc., Santa Clara, CA, USA, September 2019 – present Firmware Software Engineer Intern
• Performed detailed and application-oriented research on PX4 firmware written in C++, modified and migrated PX4 firmware to the company's prototype.
• Designing high-level architecture for object avoidance using NVIDIA Jetson nano and established communication between nano and Pixhawk 4 using UART. Established CAN communication between STM32F446RE Nucleo boards using C language
• Developed a driver for nRF24L01+ module in C language to establish wireless communication between prototype and ground station.
GELCO ELECTRONICS PVT. LTD, Gandhinagar, India, October 2017 – April 2018 Embedded Software Intern
• Designed Three Phase Star-Delta Motor Starter Control Panel circuit using PIC microcontroller and OP-AMP.
• Developed ADC Driver for PIC microcontroller in C language to detect excessive voltage and current from supply to prevent motor damage.
• Added a feature of LCD to show live current and voltage in line to the product. EDUCATION:
M.S. Computer Engineering, Specialization in Embedded Systems, GPA: 3.88/4.00 (Est. May 2020) San Jose State University, San Jose, CA,
B.Tech Electronics and Communication, June 2017.
Nirma Institute of Technology, Nirma University, Ahmedabad, India. PROJECTS:
Autonomous RC Car (https://github.com/prashantgandhi27/Autonomous-RC-Car), Spring 2019
• Devised RC toy car using five LPC1758 development boards communicating via CAN bus with a master controller for managing the data flow and coordinating the boards.
• Assigned each system with different tasks and interfaced with sensor modules such as ultrasonic sensor, LIDAR, GPS, Compass, Bluetooth module, RPM sensor and improved the efficiency for obtaining responses in real-time using FreeRTOS.
• Constructed DBC file to auto-generate encode and decode function for CAN bus, created driver for GPS and Compass11 in C++ language to compute bearing angle, heading angle and applied these data to calculate the shortest path to reach to the destination point.
• Debugged CAN messages on CAN network using PCAN dongle.
• Unit tested code modules using Test Driven Development (TDD) method to reduce time for code development. Stepper motor control using PID (https://github.com/prashantgandhi27/Stepper-Motor-Control-Using-PID), Spring 2019
• Implemented compensation function for acquired ADC reading to improve accuracy, performed Fast Fourier Transform(FFT) for data validation.
• Identified angular error feedback from actual and calculated value using LSM303 mounted on the stepper motor shaft and devised PID control to reduce error. Used Laplace of Gaussian to eliminate improve PID algorithm. Wireless Sensor Networks (https://github.com/prashantgandhi27/Wireless_Sensor_Network_CMPE244), Fall 2018
• In group of 5 developed firmware for nodes in wireless network which acquire and log temperature, air quality and pressure sensor into SD card via SPI bus and send them to master board over WIFI to show data on RGB 16x32 LED Matrix.
• Wrote ADC Driver in C++ language for Cortex-M3 to read gas sensor (MQ135) output and developed SPI Driver to read BME280 temperature, pressure sensor. Used FreeRTOS operating system to increase response, efficiency and smooth visual experience on LED Matrix.