Product Review: Pro-Lite Scrolling Message Signs
In order to display one or more messages at a time, the sign includes ten timers named A to J. Each timer specifies a time and a series of 1 to 32 pages to sequence through. You may repeat pages in a sequence. The time a sequence is displayed consists of a weekday, an hour and a minute, any of which may be wildcarded (*) to match “all”.
When the first timer is defined, the sign is put into “timer” mode and will display that timer's messages immediately. Should two or more timers be defined, the sign seems to wait one minute, then checks each timer to see if one triggered based on the current time. If so, at the end of the displaying message, the new timer's sequence goes into effect. If no rule matches, no change is made.
Note the sign checks the rules for the immediate time. It will not go back to try to find a previous timer. So if you set a timer for 4:15PM and it is now 4:17PM, you've missed the moment when the sign would change.
Should two or more timers both be valid for the current time, the sign unpredictably selects one for display. This means you cannot set one timer to display at 4:15 and another timer to display at 15 minutes past any hour. Both rules would be triggered at 4:15 and it is a toss-up as to which message will be displayed.
The timer command is defined as <Tx>dhhmmABC..., where x is the timer, d is 0 (Sunday) to 6 (Saturday) for the day, hh is a two-digit hour and mm is the minute. “ABC...” is a list of 1 to 32 pages to display in the order specified. Note that Page-A and Timer-A are two different, unrelated entities. A timer set for “*****” will be triggered immediately.
The following sequence will display a series of messages at 8:00AM, noon, 1:00PM and 5:00PM:
$ cat > /dev/prolite <ID01> <ID01><PA>Good morning. <ID01><PB>Have a nice lunch. <ID01><PC>Get back to work. <ID01><PD>Have a safe drive home. <ID01><TA>*0800A <ID01><TB>*1200B <ID01><TC>*1300C <ID01><TD>*1700D ctrl-D
In order to display a whole sequences of pages, just list more page letters. For instance, it is useful to make a scheme where you assign page letters to different message content. For example, page A could be hourly announcements, page R the runtime status of your machine, page M the message of the day, page T the time and so on. To display several pages right now (including repeats):
$ cat > /dev/prolite <ID01> <ID01><TA>*****TAMARA ctrl-DTwo interesting tidbits of information:
For some reason, the specific time of Sunday at midnight (00000 as a timer value) does not seem to work consistently. I suspect it confuses this value with unset timers.
If a run-page command (<ID01><RPA>) is issued, the sign is taken out of “timer” mode and displays the requested page. If you then issue the command <ID01><RP*>, the sign will go back into “timer” mode, displaying the last sequence of messages.
echo "<ID01><DTx>" > /dev/prolite
There are 26 graphic blocks that can be redefined and are commonly used for graphics. Graphics are inserted into the text via the tag <Bx>, where x is a letter from A to Z. For example, this command will display a mug and a wine glass:
echo "<ID01><PA><BW> Party Tonight <BZ>" >\ /dev/prolite
Altering the graphics requires the <Gx> command followed by a string of 126 characters made up of R (for red), Y (for yellow), G (for green) and B (for black or unlit). A sequence of seven rows of eighteen LEDs is specified back to back on a single command line. (See Figure 4.)
I know at least one user who loads a font into a sequence of graphic blocks, and in this way is able to display more characters than the sign technically allows by default—very clever.
To delete a graphic block, restoring it to the default, use <DGx>, where x is a letter A to Z; * is a wildcard indicating all are to be deleted.
Getting Started with DevOps - Including New Data on IT Performance from Puppet Labs 2015 State of DevOps Report
August 27, 2015
12:00 PM CDT
DevOps represents a profound change from the way most IT departments have traditionally worked: from siloed teams and high-anxiety releases to everyone collaborating on uneventful and more frequent releases of higher-quality code. It doesn't matter how large or small an organization is, or even whether it's historically slow moving or risk averse — there are ways to adopt DevOps sanely, and get measurable results in just weeks.
Free to Linux Journal readers.Register Now!
- Hacking a Safe with Bash
- Django Models and Migrations
- Secure Server Deployments in Hostile Territory, Part II
- Huge Package Overhaul for Debian and Ubuntu
- Home Automation with Raspberry Pi
- The Controversy Behind Canonical's Intellectual Property Policy
- Shashlik - a Tasty New Android Simulator
- Embed Linux in Monitoring and Control Systems
- KDE Reveals Plasma Mobile
- diff -u: What's New in Kernel Development