3P1 Case Study.
Smoke Curtain Troubleshooting.

Our customer had an issue with a fire shutter not recovering automatically after an alarm is issued. The end customer would end up trapped on one side of the shutter, requiring a service visit to reset the equipment. The shutter is a tens-of-kg shipment, installation and configuration costing typically tens of thousands of pounds. We were warned not to engage this project due to perceived difficulty.

“We solved the issue without requiring a costly and time consuming installation.”

To debug this target, we ported the application code to FreeRTOS and simulated on the desktop. We used message queues to simulate passing messages between the two application CPUs. We verified the motor control is unaffected during curtain up/down. We mocked out the GPIO manipulation and swapped it for variables in the simulation. We used the computer disk to simulate EEPROM reads and writes, allowing us to simulate different installation configurations trivially. 

The issue turned out to be a race condition between an IRQ handler and a signal being polled in a main loop. The previous consultancy had raced to present a timely solution while neglecting scheduling and correctness. Best of all, we solved the issue without requiring a costly and time consuming installation. 

Our solution ended up being the optimal choice both for technical accuracy and cost.

Talk to 3P1 team today to discuss your IoT, electronics development or mechanical project needs.