header pic

Life Safety System

Developing Firmware and Software Components
for Fire Security System

Overview

The customer is one of the world’s largest manufacturers of embedded system for industrial buildings, delivering state-of-the-art security and safety solutions all over the globe. The customer’s company planned to develop a cutting-edge life safety system that would meet European and American industrial safety standards. A fully automated fire security system for Smart Building was intended to further strengthen customer's position in fire and life safety industry.

Challenge

The customer had the objective of developing a flexible, modular, and highly reliable system, which would be easy to use for the end users. The system itself should be a kind of constructor of various purposes operating modules. The modules are controlled by the main logical node, but also have their own standalone logic for extreme situations.

MERA was to develop the firmware and software for one of the very first modules in the planned production lineup. The development team had to design the software architecture of the module, including interaction with other system parts, and then implement it in code. It included interaction with OS, communication with the main logical node, handling of externally connected devices, and a few more auxiliary tasks. Since the customer planned to reuse the solution in other modules later, it was necessary to write a flexible generic solution that could be adapted when needed.

Solution

MERA developed the solution within the object-oriented paradigm involving widely used design patterns. After discussing the proposed solution with the customer and making corrections, the MERA team implemented the first version of the software. Leveraging the full potential of modern C++, our experts carried out the development in a very short time. The resulting solution was reusable, and the customer could easily expand it in the future.

After the demonstration of the first working version, the development team received a list of modifications. They were aimed to extend the existing functionality and make the operating module more smart and reliable.

In addition to developing software for the module, MERA experts proposed their vision of how testing of these modules could be fully automated. The team members designed the devices, which simulate the operation of real external equipment. Using a simple protocol for interacting with these simulators, MERA could develop a test framework that would eliminate the need for human participation in the system testing process. The customer appreciated this idea, so an additional task was the full-stack development of tools for testing the modules and the entire fire security system.

Results

MERA provided the solution meeting all customer’s initial requirements and allowing to solve new incoming challenges. The customer was satisfied with the high quality of the solution and entrusted MERA with developing another module within the same life-safety system. During the implementation of the interaction with the main logical node, the developers showed their competencies and provided the customer with a detailed analysis of the existing solution’s shortcomings, as well as the parts to be optimized and improved.

The first module was successfully tested using the testing framework developed by MERA. Our specialists continue to work to improve and expand the functionality of the testing system. MERA keeps expanding the scope of its authority in the project, offering the customer solutions in various system aspects.

Major functions:

  • Module:
  • Control of external input/output devices
  • External device fault detection
  • Communication with the main logical node
  • Serial and Ethernet working interface
  • Testing framework:
  • Simulations of the main logical node
  • Simulations of external input/output devices
  • High-level test scenario
  • Integration with existing CI system
  • Detailed reports and statistics

Technologies

  • Module:
  • C++ 11/14
  • FreeRTOS
  • Testing framework:
  • Python
  • Robot Framework

This website uses cookies. If you continue to browse the site, we assume you are fine with how we use cookies on the web. Read more

This website uses cookies. Read more