Ionocom offers development of firmware to support designs that include embedded processors. Firmware is embedded software that is a permanent part of the product, typically stored in Flash memory and usually performing low-level functions that directly control the hardware. Firmware can perform functions that range in complexity from simple control of buttons and displays through to complex multi-tasking features such as TCP/IP networking. Firmware often performs "real-time" functions.
We have experience with 8-bit, 16-bit and 32-bit microcontrollers from suppliers such as Microchip (PIC), Texas Instruments (MSP430 and ARM Cortex-M3), Rabbit and Atmel (AVR), and industry-standard parts such as the 8051. We also have experience with 32-bit microprocessors and DSPs from suppliers such as Texas Instruments, Renesas and Freescale. We have used toolchains from suppliers such as Keil, IAR, Microchip, CCS and Microsoft as well as open-source products such as eclipse and GCC.
We can write firmware in C or directly in assembly language where speed or code size requires.
We can develop low-level firmware to run directly on the hardware, and also higher-level code using executives or real-time operating systems.
We have particular experience developing code for the low-power, limited-speed, memory-constrained environment typical of low-cost designs.
Clients find that having firmware developed concurrently with the hardware, by the same team, is more efficient, faster and less risky than having firmware developed separately.
We use standard tools such as lint, Subversion and Trac for code-checking, revision control, tracking and configuration management.
Next: Other design work