Firmware Engineering


Let’s Discuss

Embedded Microcontrollers

  • Embedded System Software for non-OS environments
  • Embedded OS porting
  • BSP development
  • Firmware and device-driver development for on-board peripherals
  • Firmware and device-driver development for external interfaces
    • USB (Host and device), Bluetooth, HDMI, SD Card
    • LCD, touchscreen, keyboard, mouse, camera, audio, haptics
  • Standard and customer-specific communication drivers
  • Middleware and custom API development
  • Task-handler design for non-OS real-time environments
  • Consulting for design optimization
  • Board bring-up and verification
  • Bootloader design and development for non-OS environments
  • Development of system and board test software
  • System testing and validation
  • Development languages, frameworks and environments
    • C, C++, Assembly
    • Keil compiler and IDE
    • GCC
  • Development Tools
    • USB analyzers (Beagle 12), JTAG debuggers (STlink/V2, Ulink), Emulators
    • Trace and profiling tools (Ulink 2 Pro)
    • GDB and Keil simulators
    • Logic analyzers (Agilent 1672G, Intronix LA 1034)

Embedded Linux

  • Experience with i.MX series processor, Raspberry pi
  • BSP development
  • Firmware and device-driver development for on-board peripherals
  • Firmware and device-driver development for external interfaces
  • Standard and customer-specific communication drivers
  • Middleware and custom API development
  • Linux drivers & app development
  • Linux application security
  • Board bring-up and verification
  • Bootloader patch development
  • Testing and validation
  • Development languages, frameworks and environments
    • C, C++, C#
    • ARM GCC toolchain, Eclipse IDE, Yocto project, Debian,Uboot
    • GDBserver, JTAG (J-link and Realview), ICE)
    • Linux Shell Scripts
    • OpenCV
    • Uboot Bootloader
    • Streamline™ system-wide performance analyzer
    • Tracing using the Cortex-A8 ETB (Embedded Trace Buffer) (via JTAG)
    • Use of evaluation boards available from the manufacturer to emulate the product’s processor sub-system
    • Development of PC-based applications software which can communicate with the evaluation board to emulate other aspects of the system, to enable a complete system-level simulation
    • Debug log generation module developed in-house that runs in the background while the product is in use to help in debugging and optimization of system performance

Algorithms

  • Design of algorithms
    • Closed-loop feedback control systems
    • Image processing algorithms
    • Image recognition and object detection algorithms
    • Encryption algorithms
    • Speech processing, synthesis and recognition
    • Audio signal processing
    • Battery and power management
    • Laser-based metrology algorithms
  • Simulation in Matlab
  • Implementation on target systems
  • Optimization for real-time performance

 

Let’s Discuss
Scroll to top