Happy to Help!

This website doesn't store cookies. Enjoy the experience, without worrying about your data!

Great, thanks!

Board Support Package (BSP) Development Services

Expertise in BSP Development Projects for Automotive

Embitel offers Board Support Package (BSP) solutions and reference designs for an array of microcontroller platforms (Freescale, Fujitsu, IAR and more) that are popularly deployed for automotive applications.

In our automotive journey of more than 11 years, we have built a team with in-depth expertise in automotive ECUs (control units), software stacks and embedded hardware; successfully delivering projects for OEMs and Tier-1 suppliers from across the world.

Features of BSP Solutions for Automotive:

  • We offer ready-to-deploy BSP reference design solutions for all the popular hardware platforms. Leverage the pre-tested and production grade BSP reference design to reduce product development cost and time-to-market.
  • We also provide custom BSP development, tailor-made for your automotive requirements.
  • We develop board support package that adds value to your product development efforts. In order to be sure of the quality and integrity of the solution, we strictly adhere to the quality guidelines and MISRA C best practices
  • Our Board Support Package is tested rigorously under stress conditions to optimize the overall system performance. This includes optimization of power to reduce the power footprint and optimisation of the boot-time.
  • Board Support Package


    Meet Our Automotive Leaders


    Flash Bootloader Factsheet:

    Flash Bootloader-PDF-Image

    This Board Support Package (BSP) factsheet has been designed to provide all the necessary information related to BSP solution package and BSP software integration and support services.

    Download this Board Support Package hand-book to also know about:

    • BSP software stack business model
    • Benefits of one-time licensing fee engagement model
    • Value-add features of our read-to-deploy BSP solution
    • Automotive related use-cases of Board Support Package

    Please refer to Board Support Package FAQ’s for more details.


    BSP Development Services: Embedded Hardware and Software

    Testing support

    Device Driver Development

  • Robust device drivers development is an essential part of BSP development. These drives support the different peripherals of the hardware including USB, GPS, touchscreen and more.
  • These low-level drivers allows the OS Kernel to communicate with the hardware’s component like internal/external buses, CPU and memory.

    Flash Bootloader development services

    Hardware Abstraction Layer (HAL) Libraries Development

  • The HAL includes all the routines that are required for hardware initialization, interrupt handling, hardware timer and clock and memory management.
  • Implement Seed and Key algorithm for security access
  • Additional device drivers and other services can be added to this library to support any custom hardware requirements.

    In-vehicle communication and application layer services

    Porting and Migration Services

  • We offer support for Android BSP Porting and Linux BSP Porting to custom hardware platform
  • Complete integration of BSP with your target hardware and OS is provided. Unit testing, functional testing and integration testing is performed to ensure bug-free code.
  • BSP development, customization, application specific configurations and hardware-specific foot-print optimizations, bootloader specific configurations are carried out efficiently.
  • application layer services

    Service and Safety Layer Services

  • Diagnostics Module: Development and integration of automotive diagnostic software stacks (UDS/J1939/KWP2000/OBD II).

    Support for development and integration of custom-built diagnostic stack, as per your business requirements.

  • Safety Module Development: Support for development and integration of following safety module to safe-guard system from run-time errors:

  • RAM Corruption Test
  • ROM Corruption Test
  • CPU Overload Test
  • Stack Overflow Test
  • Program Flow Test
  • ECU State Manager: An ECU State Manager software module is designed to periodically check the current state of the ECU.

    The integrated ECU State Manager, periodically fetches value from the lower layers (HAL and Low-level Device Drivers) to identify if the system is in one of the following modes:

  • Init mode
  • Run mode
  • Fault mode
  • Prepare to sleep mode
  • Sleep mode
  • FCM (Fault Code Memory): FCM module is also integrated in order to store data regarding active faults, in-active faults and freeze frame data for future analysis and diagnostics of the system.

    This is a robust module designed to transfer fault code memory data between Non-Volatile Memory (NVM)/ROM and RAM based on the current state of the system


    FAQs: Board Support Package (BSP) Development

    Q. Your automotive software & hardware teams have hands-on experience with which microcontrollers for BSP development.


    Q. What is our business engagement model for BSP software development ?


    Q. What programming language is used for development of BSP software? Is your code compliant with any global standard?


    Q. If we have a custom-developed or third party software component, can it be ported with your existing architecture without any compatibility issues?


    Q. Do you provide support for both Real time Operating Systems ( RTOS) and non-RTOS systems?


    Q. What tool-chains does your team expertise in for BSP development ?


    Q. Do you also offer any documentation and testing related services for BSP software?


    Our Expertise in BSP Tools and Technologies

  • Softune IDE: Softtune is an Integrated Development Environment to develop programs for FR family of Fujitsu Microcontrollers. This IDE takes care of all the development, emulation and debugging needs.
  • CodeWarrior: One of the most widely used tool in embedded systems, CodeWarrior is an integrated development environment that is used to write, compile and debug a program for several microcontroller families, most primarily FreeScale.
  • IAR: It is a workbench that is primarily used for RENESAS microcontroller. Their association with each other is quite old and strong.
  • Greenhills: Multi IDE from Greenhills Software is essentially used for developing BSP for PowerPC and our automotive team hasin-depth expertise in development and customization of BSP for PowerPC.

    Knowledge Bytes
      What is the Board Support Package?

      Board Support Package, abbreviated as BSP, is the set of software codes (for low-level drivers and hardware abstraction layer) which are essential to facilitate robust boot process of a microcontroller.

      It does not include any software other than what is necessary for the desired functioning of the peripherals of the System-on-Chip (SoC).

      As BSP is the first software code to be developed for a SoC, it also consists of the bootloader software that will load the applications in the OS memory. The board support package is also designed as per the unique specifications of a particular hardware platform and is not dependent on the OS (Operating System). With respect to the automotive embedded systems, the BSP can have varying number of CAN, PWM and ADC channels.

      What Function does a BSP perform in an automotive ECU?

      The primary function of Board Support Package is to facilitate the communication between the hardware (microcontroller) and the application software.

      To enable this, the BSP has

      • Low-level Drivers– Vehicle network drivers (CAN, LIN etc), Analog to digital converters and more.
      • Hardware Abstraction Layer– I/O handler, Pulse Width Modulation handler, communication control and more.
      • Service and Safety layers– RAM, State Manager, Fault Code Memory and Diagnostics stacks (like UDS, OBD2)
      • Scheduler and Flash Bootloader

      In an automotive ECU, the peripherals on the SOC have to interact with the OS or the Scheduler (depending on the use case). These peripherals may include USB, GPS, touchscreen and more.

      Communication between the OS kernel and the hardware component like system Bus and Memory is also taken care by the Board Support Package.

      Modules to check the ECU state, memory management and fault code memory (FCM) are all handled by BSP software.
      BSP may support additional functions as well depending on the use cases and applications.