We’ve recently been adding lots of notifications to our customer’s calendars: sending emails and SMS alerts when milestones are approaching or when team members are assigned new projects. But notifications tend to get lost on your phone, so we decided it was time to level up our notification game with some FileMaker IoT.
“You can’t automate everything,” a customer recently remarked. We’d been replacing their whiteboards with a to-do list based on DayBack Calendar, and some folks worried aloud that the software couldn’t account for some of the by-hand practices that had evolved around the whiteboard. We learned that one of those practices was to ring a gong every time a new construction permit was issued. We decided to automate that as well
We’d build a gong-ringer that received commands from FileMaker. And when users marked a permit as issued, FileMaker would ring the gong for them. The plan was to deliver it without anyone knowing, so that first new permit would be a big surprise.
And we’d ring the gong with Mjølnir, Thor’s hammer: just because.
3D Printing Mjølnir
In addition to designing the circuitry and motor for the device, Tanner Ellen also printed the hammer, motor housing, and hold downs shown in the photos below.
Tanner’s 3D printing obsession has gotten recursive: he’s printed new parts for his 3D printer so that he can make more accurate prints. And once the prints get more precise, he makes even better versions of the newly printed parts in a virtuous cycle. The video below shows his work on the hammer: everything green on the machine was printed soon after he got it: more rigid versions of the parts it shipped with. The two round black things on the print head were also printed early on; they’re fan shrouds holding CPU fans that cool the printed material before it has a chance to wobble or sag.
Sending Notifications with FileMaker IoT
The hammer is really a small web server running on our customer’s local WIFI network. The main board is an ESP32 (shown at the left below) on to which Tanner flashed the web server code with two routes. One returns the status of the hammer so that we can test that it’s up and running without ringing it. The second route, /ring, will swing the hammer and ring the gong. The notifications themselves are sent from FileMaker using an Insert from URL script step.
The smaller board at the right is the stepper motor driver (A4988) which actually swings the hammer.
Tanner added a limit switch to the base of the arm so the program could reliably reposition the hammer if people had been playing with it in between rings. And the stepper motor lets him hit the gong and recoil instead of leaving the hammer resting against the gong. Here’s the hammer in action:
I wish the hammer’s first ring could have been a total surprise, but it’s got some flashing lights and kind of stands out in their office. So there was a lot of talk about it, and a small crowd gathered around it when it rang the first time.
The Business Case for IoT Notifications
While we built the hammer as a fun side-project for our customer, it’s turned out to have more impact than we thought. The original gong was installed years ago when Blueprint started growing and filing permits on behalf of their builders. That services business exploded to the point where walls of their architects’ offices were covered with whiteboards tracking permit status.
While the whiteboards embodied a lot of social practice in the office, they had some real drawbacks. They went out of date frequently and could only be consulted when you were standing in front of them.
Dan Wheelon has since created some calendar based to-do lists that replace the whiteboards while keeping the visual shorthand employed on these boards so folks can understand their work at a glance. But the physical cadence of editing the whiteboards was hard to replace: users were accustomed to seeing someone get up a few times a day, walk over to the whiteboard, make some edits and ring the gong on their way back. The hammer adds this shared social experience back into their work, and it’s led to faster adoption of the new FileMaker to-do lists.
Overheard: “That thing is legendary… how do I make it ring?” “Dude, just update the permits on your to-do list.”
The hammer has also become an API explainer: as more and more of our customer’s work interacts with APIs, we’ve been using the hammer to explain how APIs work. It’s a nice reminder that APIs don’t have to be hosted on your FileMaker Server; some are hosted at Zeit, some are hosted on a block of wood in the architects’ office. And the service that listens for API requests (points to the ESP32) may not be the service that actually performs the requested action (points to the A4988 board beside it).
More FileMaker IoT
For more on this topic, Lui de la Parra will be presenting FileMaker of Things: APIs and IoT Using Node-RED at FileMaker DevCon in August. Node-RED is a programming tool that lets you wire up software and hardware into integrated flows: for more complex FileMaker IoT workflows than just “/ring.” Lui wrote the FileMaker connector for Node-RED so that flows can talk to FileMaker Server.
The flows Lui will be showing at DevCon are truly slick; don’t miss his session.