Software Development

Our software development expertise spans many different applications, platforms and disciplines.


We have experience with a large number of languages and development platforms, which means that we are able to adapt our knowledge to new languages and techniques as required. Our current language experience includes the following:

  • Microcontrollers: PIC assembly language, C
  • Linux: C, C++, Bash, Perl, Python, Awk, Lua
  • Windows: C, .NET, Visual Pascal (Delphi), VBA, Batch Files
  • PLC: all programming methods supported by TrioMotion, ABB/Baldor, Scheider and Siemens PLCs
  • Web: PHP, Perl, HTML, Javascript, jQuery, Yii Framework

Types of project

We have undertaken a number of different projects, each with very different requirements. They can be loosely classified as follows:

  • Device drivers: development of Linux kernel device drivers for custom hardware. Several types of driver have been developed – from simple character device drivers to network interface drivers for obsolete network technologies
  • Embedded system software: development of many applications to suit the hardware, often incorporating interfaces to other devices and high-level controllers. We usually aim to program embedded systems in assembly language, although we do occasionally use C
  • KNX applications: we have experience in developing software applications for devices approved for connection to the KNX building automation system.
  • Websites: we have designed and implemented a number of websites, from simple static sites to sites which display real-time data from other systems such as PLCs, motion control systems and KNX devices
  • PLC software: we have developed applications using a variety of different PLCs to control industrial motors and other devices
  • Protocol and interface reverse engineering: we are experienced in reverse-engineering wire-level protocols and undocumented network interfaces
  • Motion control and automation: we have extensive experience in the use of industrial motor control equipment to achieve motion in the entertainment industry. Typically we would allow motion to be controlled using a standard lighting desk using DMX or an Ethernet-based protocol
  • Protocol conversion: we have developed a number of ‘black box’ protocol converters, for instance allowing DMX, ArtNet or ACN data to be made available to an industrial PLC using Modbus

For further information, or to discuss your requirements, please contact Fineline Solutions.