Flap Display logo

Flap Display

A software flap display

This is a flap display you can run on your info-beamer hosted devices. You can easily update the text by editing the setup and hitting save.

Automatically updating content

Alternatively you can also automatically update the content with a package service. In the source code of this package you'll find an example package service in the file service.example. If you fork the package code, rename this file to service in your fork so info-beamer recognizes it as a package service.

The code for updating the sign output automatically is quite small. Here is a minimal example that output 'Hello World' and the current unix timestamp in the first three lines of your display:

#!/usr/bin/python
import time
from ibquery import InfoBeamerQuery

while 1:
    ib = InfoBeamerQuery("127.0.0.1")
    con = ib.node("display/atomic").io(raw=True)
    con.write("Hello\nWorld\n%d\n" % time.time())
    con.close()

    time.sleep(1)

See the annotated source code for more information on how updating exactly works.

You must send your data encoded as utf8. The following letters are supported by the classic mode:

 abcdefghijklmnopqrstuvwxyzäöü0123456789@#-.,:?!()

Updating from outside

Instead of running a package service you can also modify the output from outside by having an external program directly connecting to the info-beamer process on the device. You'll have to enable access for that. Note that there is no authentication, so anyone who can reach your info-beamer device can update the output.

Once enabled, connect to the device with a TCP connection on port 4444 and send the following data (line-breaks for illustration purposes only):

*raw/display/atomic\n
Line1\n
Line2\n

If your TCP client disconnects, the sent lines will become active on the screen.

Adding your own style

Checkout https://github.com/opendatacity/splitflap, install the dependencies, edit config.js with the charset, animation steps and other details. Then go to textures/ and run

nodejs 1_generate_letters.js
nodejs 2_raytrace.js

to generate ../images/texture_400.png. Use the refit.py tool included in this package to rearrange the texture so it fits into 2048x2048 pixels. See the comment in refit.py for how to run this. Finally add your style to node.lua and node.json.

Want to run Flap Display on your Raspberry Pi?

This package is ready to run on your Raspberry Pi using info-beamer.com hosted. Easily manage unlimited number of Raspberry Pi devices and centrally configure and run visualizations like this on them. info-beamer.com is a prepaid service. You only pay for the resources you are using. No long term commitment, no hidden fees. Learn more...

Compatible devices

pi-0 pi-1 pi-2 pi-3 pi-4 pi-cm1 pi-cm3

Source code for this package

https://github.com/info-beamer/package-flap-display shows you the full source code of this package so you can freely modify it if you want.

Copyright