We can help with all areas of the software development life cycle of an embedded system, for example:
- Requirements capture.
- Software design.
- Coding, testing, and debugging.
- Documentation.
- Training.
- Customer support.
Although our speciality is embedded software development, we can also develop your stand-alone PC support applications.
Our areas of expertise include the following:
- Custom communications protocols over serial and ethernet
- Digital filters e.g. simple moving average, FIR, IIR
- Embedded file systems
- Mainstream industrial protocols such as Modbus
- Microprocessors and microcontrollers (8-bit up to 32-bit)
- Remote system access using GSM modems
- Round-robin scheduling using state machines
- RS232, RS422, RS485
- RTOS
- Software development process
- TCP/IP, UDP, PPP
- USB
Our programming language of choice is C/C++ and we strongly recommend following the MISRA guidelines when using these languages. We also have experience with Python, Visual Basic, and assembler.