LCD Creator Info & Updates

Posted on
Fri Jun 10, 2016 2:51 pm
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

LCD Creator Info & Updates

forum.png
LCD Creator
forum.png (206.23 KiB) Viewed 19123 times


"Turn any Indigo value into a graphical representation in LCD digits for your control pages"

LCD Creator is a plugin that allows you to turn any other device state value into a 4 to 20 digit LCD readout on your control pages.

NAVIGATE: Plugin Store Download | GitHub Downloads & Release Notes

__________________________________________________________________________________________________________________________________________________________________________________________

Introduction

Turn any Indigo value into a graphical representation in LCD digits for your control pages.

LCD Creator is a plugin that allows you to turn any other device state value into a 4 to 20 digit LCD readout on your control pages. This is a fork from the original Room-O-Matic system Acme CP plugin that performed this task (to a MUCH greater degree than ROM did), but there were a number of people looking to use this functionality for other types of control pages so I decided to make this its own entity. The result is that it is considerably more powerful than the Acme CP plugin, faster and supports a much wider range of devices.

This plugin, along with Device Extensions, are direct replacements for Room-O-Matic Acme CP plugin and can be used now on the existing version and will be part of the Room-O-Matic 2 version coming soon. You can use these two extensions with ROM 1 or generically on any existing non-ROM control page.

While the original Acme CP plugin supported a few states from thermostats and Weathersnoop, this new version has the following features:

  • General Features
    • Automatically detects the change in any monitored state in real-time and converts it automatically, so when - say - your house temperature changes then the LCD representation of that change is immediately calculated
    • Graphics Included: extra large and large LED graphics for 0-9, A-Z and special characters such as dashes, dots, colons, spaces, number (pound) symbol, exclamation point, ampersand, plus, and hyphens.
    • Graphics Included: extra large, large, medium and small LED frame (4 digit only for now) as well as Room-O-Matic optimized versions of the frames if using ROM.
    • Options to format the value to your needs
      • 4 or 20 character displays
      • Precision options to show actual value, round to nearest whole integer, round to 10ths, 100ths and 1000ths
      • Pad number with spaces instead of zeros (i.e., "0001" vs " 1")
      • Pad strings left or right (i.e., "1 " or " 1")
  • Weather Devices from the Weathersnoop, NOAA and WUnderground plugins
    • Standard values such as temperature, humidity, daily/hourly rain totals, "feels like", wind chill, wind direction degrees/text, wind speed, wind gust, barometric pressure, solar radiation, UV index and current conditions.
    • If using the Device Extensions plugin added support for daily high/low temperature and daily high/low humidity
    • If using a WUnderground plugin added support for forecasting information (day name, chance of rain, high and low) as well as historic days high and low
    • Can use a 20 character LED value for conditions (i.e., Party Cloudy) or it can truncate it to 4 characters (P.CDY)
  • Thermostat Devices
    • Standard values such as temperature, cool set point, heat set point and humidity
    • If using the Device Extensions plugin added support for daily high/low temperature and daily high/low humidity as well as current mode set point
  • Irrigation Devices
    • Standard values such as active zone number, active zone name and zone names for zones 1-8
    • If using the Device Extensions plugin added support for zone run time remaining, schedule run time remaining and rain sensor hard stop timer
  • Date/Time States and Properties (New in v1.12)
    • Use the date and/or time from any Indigo device or variable or you can use the system date and time to create a custom date/time LCD
  • ANY DEVICE
    • Use ANY state from ANY device (up to five states per State Based LCD device created)

Control Page Screenshots (ROM pictured but can be used generically)

IMG_0619.PNG-2.png
Room-O-Matic (Comfort Master) Screenshot
IMG_0619.PNG-2.png (468.64 KiB) Viewed 767877 times


Configuration and Use

There are two parts to using this plugin, the plugin and its associated devices and the control page images. The device configuration is fairly straightforward on each device:

Screen%20Shot%202016-06-06%20at%201.47.24%20AM.png
Thermostat LCD Config
Screen%20Shot%202016-06-06%20at%201.47.24%20AM.png (51.97 KiB) Viewed 767877 times
Screen%20Shot%202016-06-06%20at%201.47.08%20AM.png
Irrigation LCD Config
Screen%20Shot%202016-06-06%20at%201.47.08%20AM.png (46.11 KiB) Viewed 767877 times
Screen Shot 2016-06-10 at 4.30.26 PM.png
Weather LCD Config (updated v1.1.0)
Screen Shot 2016-06-10 at 4.30.26 PM.png (71 KiB) Viewed 767877 times


  • Device: Choose any Weathersnoop, NOAA or WUnderground plugins installed in your Indigo network
  • Extended Device: If you have installed Device Extensions and have added a compatible device this option will be shown, it is optional wether or not you use this
  • Digits: How many digits you want to display (1-4) or how many characters in text fields (4 or 20)
  • Decimal Treatment: How to handle your decimal precision: actual value, nearest whole integer with no decimal, nearest whole integer with .0 as the decimal or round to 10ths/100ths/1000ths
  • Temperature value: This is for Weathersnoop so you can choose between F or C on NOAA or Weathersnoop devices
  • Measurement value so you can choose between inches, millimeters, centimeters, kilometers and miles when dealing with NOAA or Weathersnoop devices
  • Speed value so you can choose between knots, kilometers per hour, miles per hour or meters per second on NOAA and Weathersnoop devices
  • Pressure value so you can choose between cumulonimbus, inches of mercury or millibars on NOAA and Weathersnoop devices
  • Show Measurements In: Again for Weathersnoop to choose between the various measurements made available there
  • Pad Numbers With Spaces: If you prefer not to have leading zeros on your number values and uses spaces instead
  • Pad text left instead of right: If you prefer to have spaces in front of string values instead of afterwards (on 20 character string and a 5 character value this will result in 15 spaces added)

Alarm Clock

Screen Shot 2016-06-10 at 5.02.25 PM.png
Alarm Clock (new v1.1.0)
Screen Shot 2016-06-10 at 5.02.25 PM.png (30.95 KiB) Viewed 767868 times


v1.12 Date and Time

Screen Shot 2016-06-24 at 12.24.59 PM.png
Date and Time (new 1.12)
Screen Shot 2016-06-24 at 12.24.59 PM.png (58.39 KiB) Viewed 763536 times


  • Use the current date and time as a source, any variable as a source or any device state (and last changed property) as a source
  • Value Python Format: The Python date/time format that EXACTLY matches the value. The default is to use the format that Indigo most typically uses for date/time. If you get this wrong by even a single character you will get an error when the LCD tries to update
  • Python date/time format: The format you want to convert the source value into. You can use up to 20 characters for this as LCD Creator supports 20 characters, but if you use the typical 4 character LCD frame then keep that in mind when setting this value so you can select which digit you want for multiple frames. For example, on Room-O-Matic you may want a 4 character LCD for the current time and another for month and day - the default value in LCD Creator is tuned for this - you select digits 1-4 for you month and day then digits 6-10 for the hours and minutes
  • When using the system clock as the source bear in mind that the clock will not update seconds or milliseconds or anything smaller, it will update only when the date, hour or minute changes due to the fact that trying to update LCD graphics on a second-by-second basis can be very latent on control pages

The State Based LCD device is also very straightforward:

Screen%20Shot%202016-06-06%20at%201.47.46%20AM.png
State Based LCD Screenshot
Screen%20Shot%202016-06-06%20at%201.47.46%20AM.png (98.77 KiB) Viewed 767877 times


  • Device: ANY device in your Indigo network
  • Up to five states for the selected device, select which state you want convert
  • Values Type: Automatically derive the type or force a conversion from a string to a float (decimal) value
  • Clear Button: Clear that particular state from the list if you no longer need to convert it

Advanced

See the next post in this thread on how to assemble the digits on your control pages.
#Version|1.13#
Attachments
header.png
LCD Creator
header.png (231.18 KiB) Viewed 19128 times

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Fri Jun 10, 2016 2:52 pm
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: LCD Creator Info & Updates

How To Add LCD Digits To Control Pages

Create a static image for your LCD frame (eight are included in the ZIP packaged, a Room-O-Matic version in extra large, large, medium and small as well as a generic version in extra large, large, medium and small - or you can choose your own frame). Now create a device image tied to the LCD device(s) created above and select the extra large or large LCD image - it will show as the default value of 0.

Each converted value is translated into a number of states on the device. For example, your thermostat current temperature is linked to four states on the LCD device you create, one for each digit in the temperature (72 degrees converts to 072.0 - the dot is not counted as a character). Link to the state value and placement for each digit. Each LCD digit represents a single state, so the first digit would be "State LED 1", the second digit "State LED 2" and so on.

If using the provided frames then match the digit size to the frame size. The following screen shots will show you how to assemble the readout:

SS1.png
Step 1 - Add A Frame
SS1.png (47.6 KiB) Viewed 767875 times
SS2.png
Step 2 - Add A Digit
SS2.png (62.99 KiB) Viewed 767875 times
SS3.png
Step 3 - Align The Digit In The Frame
SS3.png (73.5 KiB) Viewed 767875 times
SS4.png
Step 4 - Rinse And Repeat Until All Digits Are In The Frame
SS4.png (66.86 KiB) Viewed 767875 times


Fine Tuning Images

While it is pretty easy to align digits into the extra large and large frames it can be very tiny work to do them in the medium and small frames if your background is super high resolution like an iPad Retina. Because you cannot zoom in the Indigo control page designer, here are some steps you can take to make life easier:

  1. Edit your control page
  2. Add your LCD graphics as outlined above
  3. In the lower right click on Browser Preview, this will open the page in Safari
  4. If you have two screens it is much easier, but if you don't then position the browser where you can see it while working on your control page (you may have to size down the control page designer window)
  5. In Safari press CMD + to zoom in, keep zooming in until you can comfortably see the LCD graphics
  6. Instead of looking at Indigo to move the graphics around, look at Safari while you drag the objects in Indigo

FAQ

Question: Do I have to use Room-O-Matic to use this plugin?
Answer: No. This plugin can be used for whatever you can dream up in your control pages. A lot of the screen shots show the Room-O-Matic but that's because I designed this for my use and I use the Room-O-Matic so my goal is to make sure it looks good on that. The frames are the only thing ROM specific, but I have included generic versions of the frames for use in non ROM systems.

Question: Why do I have to use an LED graphic for each character of the value in Indigo rather than just be able to just link to the value and have it output as LED?
Answer: This is a creative image assembly. In order to have the state just translate to a single graphic there would have to be every number and every word in your language saved as a special LED graphics file, which is impractical and prone to problems. It's also very inflexible as it was in the original Room-O-Matic (for which this was originally designed), I write several "pre-baked" LCD strings for weather conditions and if one came up that I hadn't anticipated my LCD graphics were just blank - now they will show me the first four characters instead.

Question: Do the included image files include every character in the English language?
Answer: No. Creating the graphics is a very time consuming and tedious chore so I have tried to include the most common characters in the plugin. 0-9, A-Z and some special characters like spaces are included (see the docs for the list). The included graphics should account for 100% of your numeric output and 95% of your word output. In all there are nearly 600 images that are a part of this set already! If LCD Creator comes across a letter it doesn't have it will default to a space instead.

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Fri Jun 10, 2016 2:52 pm
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: LCD Creator Info & Updates

Version 1.0.1

The plugin, docs and screenshots have been updated and can be downloaded from the link in the first post.

Release Notes
  • Fixed a typo in the startup routine

Current Known Issues
None

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Fri Jun 10, 2016 2:52 pm
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: LCD Creator Info & Updates

Version 1.1.0

The plugin, docs and screenshots have been updated and can be downloaded from the link in the first post.

Release Notes
  • Fixed bug "empty string for float()" when trying to convert an empty float value string
  • Fixed naming inconsistencies with the frame images, they were named as LED_ instead of LCD_ (the digits were correctly named LCD_)
  • Changed Weather LCD preference name for temperature to be "Temperature Value" instead so it wasn't confusing as to think that the LCD Creator would be converting, that field is for NOAA and Weathersnoop devices so we know which value to use in the LCD
  • Added additional LCD digits: + ! # & %
  • Added two additional frame and digit sizes: Medium and Small. Digit image sizes are: Small = 14 x 16, Medium = 29 x 33, Large = 59 x 67, XLarge = 119 x 133
  • Added direct support for Alarm Clock that will automatically convert the start time HH:MM, end time HH:MM, time until on HH:MM, time until off HH:MM and duration as an integer (i.e. 0001)
  • Added separator for custom device state LCD between the state display and state 1 to make it more readable when selecting from the list
  • Added new weather states: dew point, feels like, wind chill, wind direction degrees/text, wind speed, wind gust, barometric pressure, solar radiation/UV
  • Added two new settings to Weather LCD: speed value and pressure value so the proper values can be pulled from both Weathersnoop and NOAA weather devices

Upgrade Note
You will have four duplicate images in your static images folder if you installed prior to this update because the previously named LED* frames are now renamed to LCD, which they should have been in the first place. This won't cause you any problems but if you want to make sure those images get updated in the future then you should, at some point, change all the frames you use in your control pages to use the new LCD frames and then delete the LCD frames just to be safe. Nothing else changed with the images other than the two new sizes and the names.

Current Known Issues
  • If converting a string to float for some built-in variables the plugin converts the actual value of the device state it is pulling the information from, if that state changes to something strange instead of a float (i.e., it normally says 47.1 but now says UNAVAIL or -99999) the plugin will report that it could not find "state4", "state5", etc. This is rare and only produces a single error line in the log but is under investigation

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Fri Jun 24, 2016 12:52 pm
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: LCD Creator Info & Updates

Version 1.12

The plugin, docs and screenshots have been updated and can be downloaded from the link in the first post.

Release Notes
  • Changed version numbering scheme to X.YY format
  • Added automatic version checking to make sure you have the latest version of the plugin
  • Added plugin menu option to check for latest version
  • Added new device for Date and Time LCD display where you can use use any date or time (or both) from the system clock, device state, certain device properties (i.e., date device was last updated) or a variable value
  • Added conversion from total seconds to HH:MM:SS or MM:SS - primarily to support Pesters and Timers but can support any state that represents total seconds
  • Changed WUnderground integration so if the value is -999.0 or -9999.0 the the value defaults to 0 to prevent the number of characters from causing an error when LCD Creator tries to create an LCD version of the value
  • Added support data dump to plugin menu
  • Updated core libraries

Current Known Issues
None

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Wed Jun 29, 2016 6:59 am
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: LCD Creator Info & Updates

Version 1.13

The plugin, docs and screenshots have been updated and can be downloaded from the link in the first post.

Release Notes
  • Fixed critical memory leak slowing performance, please update to this version to fix the leak

Current Known Issues
None

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Posted on
Fri Jul 06, 2018 9:13 am
Colorado4Wheeler offline
User avatar
Posts: 2794
Joined: Jul 20, 2009
Location: Colorado

Re: LCD Creator Info & Updates

This has been moved to the Indigo Plugin Store and removed from the old Indigo Plugin library.

My Modest Contributions to Indigo:

HomeKit Bridge | Device Extensions | Security Manager | LCD Creator | Room-O-Matic | Smart Dimmer | Scene Toggle | Powermiser | Homebridge Buddy

Check Them Out Here

Page 1 of 1

Who is online

Users browsing this forum: No registered users and 0 guests