Embedded Software Design Services
Embedded Software Design
Our embedded software design team is specialized in microcontroller and microprocessor families from various manufacturers. Our range includes various processor architectures such as ARM™ Cortex™-M3, ARM™ Cortex™-M4, ARM™ Cortex™-A8, ARM™ Cortex™-A9, ARM™ Cortex™-A15, PIC™, Intel x86, Freescale PowerPC, MSP430 RISC and microcontroller/microprocessor manufacturers such as Texas Instruments, Atmel, Freescale, Microchip and Intel.
On the perspective of software development our services encompasses anything and everything ranging from processor initialization to design of embeddeds system from the ground. We have a deep experience with communications protocols such as SPI, I2C, UART, RS-232, RS-485, interfaces of these protocols, SD and HD camera interfaces on embedded systems and related standards such as BT656.
For upper class microprocessers we use embedded Linux operation systems and develop various applications such as peripheral communication, network applications, web based graphical user interfaces, video input/output, image/video encoding/decoding, multimedia broadcast applications. For video applications we also use software libraries like Gstreamer. We also develop in-house applications and libraries tailored for our clients specific needs.
Firmware/ BSP Development
BSP development process consists of initialization of the processor, bootstrapping the board and getting the peripherals up and running. Device drivers and initialization routines are customized for your boards and optimized according to the chosen operating systems. We work on platforms that has no operating systems such as microcontrollers, platforms that need realtime operating systems(FreeRTOS, TI-RTOS) and microprocessor platforms that use embedded Linux opearating system. We have experience on platform that utilize different architectures; ARM™ Cortex™-M3, ARM™ Cortex™-M4, ARM™ Cortex™-A8, ARM™ Cortex™-A9, ARM™ Cortex™-A15, PIC™, Freescale PowerPC, QorIQ Ailesi, Intel™ x86, MSP430.
For clients we also develop and specialize device drivers and configuration systems for embedded operating kernels(Embedded Linux kernel) and file systems. We provide device driver libraries that will enable easy integration of applications to use in your real-time platforms and platforms that lack any operating system.
Since we work on both commercial and industrial level boards we develop our designs considering the limitations and working conditions of both of the worlds and the needs of our customers. We have worked on general purpose boards from SoC manufacturers as well as specialized boards from our customers. Our work experience consists of boards such as IGEPv2, IGEPv5, Beagleboard, Beagleboard-XM, BeagleBone, BeagleBoneBlack, DM3730 EVM, SAMA5D3 Xplained, Intel Galileo, MSP430 LaunchPad, CC3200 Launchpad, Tiva Launchpad.
Device User Interfaces (UI/UX Design)
Graphical user interfaces are parts that are in direct interaction with the customers. Along with industrial design, GUIs are the essential parts of a device that impress the customers, thus they need to be designed with attention to detail and must be compatible with modern technology. An interface can be a touch-screen display, an LCD monitor or a web interface. We have deep experience and various solutions with all these interfaces.
For LCD monitors and touch-screen displays we use QT framework to develop GUIs. For your embedded Linux devices we design and develop desktop quality interfaces. For restricted devices that lack an operating system we use GUI libraries that have been developed by processor manufacturers such as TivaWare Atmel® Widget Toolkit (WTK).
Technologies Used in Software Development
Operating system porting and driver development(BSP): Linux, VxWorks, FreeRTOS, Embedded Windows, Windows CE, QNX PikeOS
Embedded Linux Applications
.NET(C#) anc C++ applications on Windows
Mobile applications that communicate with embedded devices (Android, IOS)
Mission critical and safety critical applications for industrial, medical, security and avionics sectors.
Tools (ELDK, PTX-Dist, YOCTO, LTIB, Keil, Code Warrior, Workbench, Visual Studio, Qt Creator; GIT, VSS, Subversion, Jira, Stash; Enterprise Architect, Matlab Simulink; Beyond Compare, PC/SP-Lint, RTH)
Qualifaction (Module and component tests, regression tests, black box tests, white box tests, system tests