Split Flap Display

Photo of the split flap display in action.

As a child who grew up in and around airports, I have always loved the Split Flap display. A common sight in transport hubs around the globe, the satisfying clack clack when the board updates provided a glimmer of hope that a flight was on time or had arrived.

Of course, it was inevitable that cheaper and easily-replaceable LCD screens would slowly replace a mechanically intricate display, but I still just think they are cool. Cool enough that I wanted one.

The Acquisition Options

In 2019 I didn’t yet own my 3D printer.

3D Printing attracts some seriously clever and generous people, and there is an outstanding open source community surrounding the hobby. Creators such as scottbez1 have created open source designs for split flap modules, and companion firmware to run on the microcontroller. There is still a fairly significant amount of work required to build and calibrate each flap unit, but the barrier to entry is getting lower.

Rotating split flap animation
3D rendering of the open source split flap project.

Another ready-made option is the Vestaboard. At over $3k, the boards are undoubtedly beautiful and well designed, but many of the “smart” data-driven screens are locked behind a paid subscription service. I understand that Vestaboard have recently released a beta local API, which is exciting and much needed in the spirit of local-first home connected devices.

COVID Strikes

During the turbulent times of COVID-19, many businesses faced unforeseen challenges, and Thomas Pink, the renowned men’s dress shirt company, was no exception. As they declared bankruptcy, their beautifully renovated Heathrow store was left empty for many months. This store, notable for its striking split flap display crafted by Oat Foundry, a Philadelphia-based company, had always caught my eye.

Split flaps in mid-motion
Here is my display in full-flapping glory.

As a pilot based at Heathrow, I frequently walked past and admired the charm of this retro-style board, which felt like a nostalgic nod in the midst of a modern screen-filled airport. When I heard about the store’s unfortunate closure, I made some inquiries and was thrilled to be able to save the display from being scrapped. I brought the display home to hang up in our living room.

Coding

The Oat Foundry board came with a built-in web interface allowing the building and scheduling of static screens. Thankfully, the board also includes a MQTT interface.

I have built a Python library, enabling the programmatic creation of screens using various drawing elements and layers. It is now trivial to create a data-driven screen that draws data from a web API or other python source with automatic updates.

Here is an example screen, which shows the live time in multiple cities:

class ClockScreen(ScreenGenerator):  
    def __init__(self):  
        super().__init__()  
        self.include_in_auto_rotate = True  
  
 def generate(self):  
        screen = Screen(default_animation=Animations.right_to_left)  
        date_element = DateTimeElement(  
            time=arrow.utcnow().to("Europe/London"), 
            dt_format="%A %B %d")  
        time_element = DateTimeElement(  
            time=arrow.utcnow().to("Europe/London"), 
            dt_format="   London %H%M")  
        time_element_br = DateTimeElement(  
            time=arrow.utcnow().to("America/Sao_Paulo"), 
            dt_format="Sao Paulo %H%M")  
        time_element_ca = DateTimeElement(  
            time=arrow.utcnow().to("America/Toronto"), 
            dt_format="  Toronto %H%M")  

# Text is centred by default, text layout is all configurable.
# Coordinates are 1-based (x, y) where the top left corner is (1, 1)
        screen.add_element(date_element, start=(1, 2))  
        screen.add_element(time_element, start=(1, 3))  
        screen.add_element(time_element_br, start=(1, 4))  
        screen.add_element(time_element_ca, start=(1, 5))  
        return screen  
  
  
Board.register_screen_generator(ClockScreen)

And here is how it looks on the board:

To keep it spouse-friendly, the controls for the board are all available in the Apple Home app through Home Assistant. Custom messages can be sent to the board using Telegram.

Want to talk about anything split flap related? Contact me or comment below!