Driver Development

Knowing the importance and proliferation of device drivers, and given the many forms they can take, we understand the need, and deploy a special team for faster product realization. Utilising hardware/software tradeoff analysis, we are able to optimize for cost and efficiency. An exhaustive repository of over two decades of proven reusable modules reduces engineering effort, and hence costs for our clients. We have learned to parallel process the realization of drivers using reusable code modules, as well as by leveraging our cross-platform expertise.

Our driver development services constitute the full suite of new device driver development, porting of device drivers, product related developments, customization of API's based on the project requirements, and, development support for real time and non-real time applications. Data Patterns is skilled in various communication protocols and high speed data acquisition driver design, across various computing platforms.

Data Patterns works cross-functionally, pooling the knowledge of our device driver team with our BSP (Board Support Package) team, to create drivers that support peripherals on-board such as a keyboard, touch screen, USB, audio and many others, with the additional rider of enhancing hardware device reliability.

We create new device drivers for ARM, PPC, MIPS and x86- based devices. We support Windows, Linux, VxWorks, QNX, Lynx, RTLinux, HA-Linux and Xenomai operating systems. We develop drivers that conform to Communication Protocols including ARINC 429, ARINC 419, ARINC 561, ARINC-717, ARINC-708, ARINC-818, as well as MIL-1553B, SPI, I2C, CAN, RS422, RS485, RS232, SFPDP and TCP/IP. Data Patterns offers services for the development of device drivers for boards based on the bus interfaces PCI, cPCI, PMC, PCI-e, VME, VXI and VPX.

In new product development, we can walk with you through feasibility study, architecture, modeling, embedded systems design, embedded software development, embedded systems programming, release management, right on to feature driven development.

Good practices, such as extending the use of DOXYGEN, the de facto standard for generating documentation from annotated code, to additionally flag code lines and generate traces for analyses and maintenance, diminishes errors in the finished product and its intended use. Maintaining development logs is never short-circuited as a process and helps us avoid recurring software errors.

A sampling of the comprehensive range of drivers developed is:
  • Serial communication
  • Data acquisition
  • Digital I/O's
  • Relays
  • Embedded driver libraries
  • Ethernet MII and physical interface driver
The range of devices in which we have developed drivers include:
  • Bus interfaces – PCI/PCI-X/PMC, PCI-e/cPCI, VME, VXI, VPX, SRIO, RS232/422/485, SPI, I2C, I2S, CAN
  • Standard I/Os - Digital I/O, Analog I/O, RS-232 / 422 / 485 / UART, SPI, I2C, I2S, CAN, Bluetooth, Zigbee, GPIB, LXI, GPS, SR10 Keypads

We adhere to documentation standards like IEEE 12207 and MIL-STD-498 and design standard like DO 178 B in our development.

In the final analysis, a product can only be as good as the people who produce it. To this end, we deploy personnel experienced in a plethora of software tools.

Integrated development environments (IDE)
1. VC++
2. QT creator
3. Windriver Workbench for VxWorks
4. QNX Momentics
5. GNU Eclipse IDE for ARM and PowerPC processors

Development Tools:
1. CPP rule checker
2. Static code analysis
3. GDB

Development Kit:
2. DDK

Data Patterns with its domain expertise and the product development knowledge base can offer services for the software development of device driver solutions. Our operational model will reduce the overall design effort and time, and is aimed to meet your program schedules. We have the advantage of being able to leverage experience across domains, to reduce the development cycle, putting the right engineering, at the right pace and the right place.

If you are looking for a vendor who can offer the advantage of a modular design, and that of end-product excellence through stringent testing and qualification processes, we are, in all likelihood, the ones who can deliver.