Note: this article was originally written by Jeffrey Dutschke and was updated in March 2023 by Eric Wallace, C.E.T.
It’s easy to put condition-based maintenance on a pedestal. The idea that you can leave behind reactive maintenance and start scheduling work based on the real-time condition of assets is enticing, but also intimidating. How do you go from A to B, and is it worth the work? I decided to find out by challenging myself to connect a temperature sensor to the Fiix CMMS using the platform’s open API. Here’s the kicker— I wanted to complete the project in two days.
Step 1: Gathering the tools for condition-based maintenance
I wanted to mock up a simple machine integration using inexpensive equipment that might be realistically used in an industrial environment. I settled on a Beaglebone Black, a Linux-based microcontroller similar to an Arduino or Raspberry Pi, and an off-the-shelf TMP36 temperature sensor. The total combined cost came in at just under $60. My goal was straightforward: To send temperature data from the sensor to the CMMS and then use that data to trigger maintenance.
Step 2: Connecting everything to Fiix
I followed the API instructions in the Fiix Developer’s Guide and configured Fiix to pull temperature data from the Beaglebone once every three seconds. After creating a dummy asset called “My Office” and assigning the temperature meter reading there, the integration was complete.
The result was a continuous stream of temperature values recorded in the CMMS, each separated by about three seconds as shown in the image below:
A high-frequency sampling rate could cause slowdowns when deployed at scale (imagine hundreds of assets all pushing new readings every few seconds), but I wanted to see how well Fiix would work with the sensor so I selected an ambitious rate of three seconds. I didn’t get any slowdowns or missed readings, which was a good sign.
Step 3: Scheduling maintenance with asset condition data
These readings were a great proof-of-concept, but to make them really useful I wanted to setup a scheduled maintenance (SM) that would be automatically triggered by a high temperature. In the real world, this might be used to indicate that an air conditioner unit in my office had failed and should be inspected. I created a scheduled maintenance work order for “My Office” and set it to trigger anytime the temperature rose above 35 °C. The work instruction was fairly simple: “Inspect air conditioner – CMMS API experiment.”
Step 4: Testing the final product
To fool the sensor into thinking it was warmer than it really was, I pointed a hair dryer right at the sensor. Under the blast of hot air, the measured temperature rose and rose until, just as expected, a work order was generated. Success! In a real work environment, the technician would instantly receive a notification for the work order and could inspect the temperature readings directly from the CMMS mobile app. This happens automatically, without the involvement of a maintenance manager, operator, or office tenant at any time. The integration was working.
More possibilities for Fiix integrations
Spurred on by my success, I stared to think more about what was possible. In addition to temperature sensor integrations, other common integrations include voltage sensors, vibration sensors, and of course, PLCs. When it comes to vehicle sensor integrations, the possibilities are endless, with the potential to trigger work based on odometer readings, engine fault codes, or even GPS location.
But besides using the meter readings to trigger work, maintenance technicians and reliability engineers could use the measurements records to help diagnose issues during a root cause analysis. In our air conditioner example, data from other sensors on the unit such as inlet/outlet air pressure sensors or humidity sensors could be pulled in to provide more information and help make a rapid diagnosis. And these are just the hardware integrations. I haven’t yet explored the software integrations with Fiix, like ERPs and MES systems. (Perhaps I’ll explore those in a future article.)
For now, I hope you’ve found my little foray into Fiix sensor integrations helpful. I was happy with the result, and I appreciated the flexibility of the API and the way it made the question less “Can I integrate this?” and more “How can I integrate this?” Imagination and technical know-how are the only limit here.
Here are the top three resources I relied on for my integrations project:
Step-by-step instructions to get started with the Fiix API.
Client API reference
Complete documentation on the inner workings of the API.
Software developer kit
API libraries to help with your development.
To learn more, the Fiix Integrations page is a great place to start.