Jump to content

Plugin for LCD/VFD Screens [Windows] Imon Replacement - using FrontView Server Plugin


GlennNZ

Recommended Posts

GlennNZ

FrontView+ for LCD/VFD Screens

 

1zmi7eq.png

 

 

 

56c160f35160f_LCDSmartie4.png     56ca984a94c8c_LCDSmartie3.png56ca9855cf632_LCDSmartie2.png

56d01b0a87bd0_IMG_5300.jpg

 

 

Following a request over in FrontView+ forum I wrote a small plugin for LCDSmartie to enable playback display of LCD/VFDs for Emby.

It levers off the FrontView+ Emby Server Plugin that was written for the windows app FrontView+.

 

(Phew a bit of word salad - hopefully you follow):

 

LCDSmartie is a Windows app that enables support of a wide range of LCD and VFD displays - it is also very customisable.

Lcdsmartie supports LCD/VFD's with a Hitachi HD44780 Controller, a Matrix Orbital Serial/USB LCD, Crystalfontz Serial/USB LCD, Seetron Serial LCD/VFD, IRTrans driven VFDs, SoundGraph iMON VFDs, Futaba VFDs, Pertelian LCDs, VL System L.I.S VFDs, IEE Inc. VFDs, and PalmOS devices (when used with PalmOrb).

 

Steps:  Basically Download LCDSmartie, add LCDSmartie Emby Plugin, add EmbyServer plugin, configure and run!
 
First:

 

Download LCDSmartie

Download: Zip Contents: (5 files only) ( attached to this post)
  • Howto!.txt 
  • FrontViewLCDSmartie.dll  (-- is the plugin for LCD Smartie - this goes in the plugin directory of LCDSmartie)
  • LCDSmartie.exe.config    (-- is the config file for LCD Smartie - main directory of LCDSmartie)
  • config.ini  (example config.ini to get started)
  • iMON_OEM_LCD.dll (iMON Display driver goes in LCDSmartie/display directory)  Use if using iMON/enables icon support.

GOES ON EMBY SERVER:

 

  • Download from Emby Catalog FrontView+ API  (Below Thumb): Current Version 1.0.0.18
    1zmi7eq.png

 

 
Steps:
 
  • Install LCDSmartie somewhere
  • eg.
  • C:\LCDSmartie\
 
  • Copy config.ini to this directory - replace the one that is there.
  • Copy LCDSmartie.exe.config to this directory - replace the one that is there.
 
  • Edit LCDSmartie.exe.config file:    You need to point to you Emby Server and Port if not 8096.
 
<configuration>
 <appSettings>
  <add key="FrontViewLCDSmartie.IPAddress" value="CHANGE THIS TO EMBY SERVER IP ADDRESS eg. 192.168.1.206"/>
  <add key="FrontViewLCDSmartie.Port" value="8096"/>
  <add key="FrontViewLCDSmartie.RefreshRate" value="300"/>
  <add key="FrontViewLCDSmartie.ServerRefresh" value="1000"/>  
 </appSettings>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" />
</startup>
 <runtime>
    <loadFromRemoteSources enabled="true" />
  </runtime>
</configuration>
 

RefreshRate = is screen RefreshRate  (LCDSmartie suggests 300ms)

ServerRefresh- is frequency of server checking in milliseconds.  eg. 1000 = 1 sec.

Suggest leave these at default

 
  • Alter as needed - change IPAddress to Emby Server IP eg.
  • <add key="FrontViewLCDSmartie.IPAddress" value="192.168.1.206"/>
 
Setup Emby Server:
Restart Emby Server.
 
When restarted - go to plugins, should see FrontView API as plugin - select Settings (once or twice), then select Emby Client that LCDSmartie is to display information for.  
Click Save.
 
Then:
Start LCDSmartie.
Setup Display:
eg. iMON_OEM_LCD.dll usage
56d11bf1c95db_NewOEM_LCDdllsettings.png
 
Config as needed.
All screens are very configurable - configure actions to decide what screen is shown when certain actions occured - ie. Audio playback show different screen etc.
 
FrontViewLCDSmart.dll / LCDSmartie Options
 
To get your particular display working will have to look at LCDSmartie website or online - plenty of help out there.  Once you have text on your display you are ready to configure what you want to show and when.
 
As you can probably gather using LCDSmartie is hard to describe,  once started - however soon makes sense.
Edit Screens 1-20 as needed to display what you wish.  Edit Actions to change to these screens as needed.
Tip:  The Sticky checkbox for each screen means it will not move away from this screen as an action occurs.  Certainly what I would recommend.
 
To use FrontView LCDSmartie Plugin:
Where you want text displayed you enter:
$dll(FrontViewLCDSmartie.dll,8,,)  -- This calls the FrontViewLCDSmartie dll and runs function 8 - which returns text based on that function
&
$dll(FrontViewLCDSmartie.dll,1,Title,) - you can pass info you want to the Plugin and relevant text will be returned.  In this case - "Title"
 
240x7xe.png
 
Functions of FrontViewLCDSmartie.dll Plugin
 
Generally LCDSmartie uses $dll(FrontViewLCDSmartie.dll,<Function Number>, Param 1, Param 2)
We don't both of the params - sometimes none, and sometimes param1 only - hence the commas
 
Function 1:
Usage
 
$dll(FrontViewLCDSmartie.dll,1,<Options Below>,)
 
PlayingClientID , ID , Filename, IsPaused , Overview ,TimePosition, Album, Director ,Rating, Tagline, Studio, IsPlaying, MediaType, Title, Year, Track ,Genre ,PrimaryItemId ,BackdropItemId , Artist ,EpisodeNumber ,SeasonNumber , ShowTitle ,Duration ,IsMuted ,Volume , AirDate,NowViewingName ,NowViewingSeriesName ,NowViewingArtists ,NowViewingAlbum ,NowViewingMediaType 
 
eg.
$dll(FrontViewLCDSmartie.dll,1,ShowTitle,)
to display the ShowTitle of NowPlaying item
 
BEWARE:
Some MediaTypes may not fill all these settings!
 
Function 2:
Returns ClientID of Selected Emby Client
 
Function 3:
Returns Server IP and Port
 
Function 4:
Returns Percentage of file completed
 
Function 5:
Returns Current Time of Playback
eg:
00:04:44
 
Function 6:
Returns Length of File
eg.
00:44:55
 
Function 7:
Returns State of Playback:
No Playback = 0
Episode = 2
Movie = 3
Audio = 4
Trailer = 5
AdultVideo = 6
MusicVideo = 7
Game = 8
Book = 9
ChannelVideoItem = 10   (Trailer for me)
Everything else = 1
 
Function 8:
Returns Title of Media - based on Playback
if TV - Returns ShowTitle plus series/Episode
if Movie Title
if Audio Title & Artist
 
enables function 8 to be used as general Header function.
 
Function 9:
Returns Overview of the show or Artist
If TV returns Overview, if Audio returns Artist.
 
New as of version 1.0.0.5:
 
Function 10:
Returns Number based on Playing Type
- TV: returns 3
- Movie: returns 6
- Audio: returns 7
 
Function 11:
Returns Number based on AudioProfile or if blank Audio Codec
- DTS: returns 27
- AC3: returns 28
- MP3: returns 25
 
Function 12:
Returns Number of Audio Channels
- Number equals number of channels eg.5.1 = 6
 
Function 13:
Return Pixel Height of Video Playing
eg. 720, 1080 etc
 
---------------------------------------------------------------------------------------------------------------------------------
 
 
Sounds Complicated but once start fiddling - not too bad.
I've included a config.ini file which includes setup for Common Emby Screens (just two of them) but infinitely customisable.
LCDSmartie - seems to have issue saving more than 17 Actions - can edit the file manually and functions correctly.
 
Let me know how you go!
 
 
 
Good Luck
 
 
 
Update:
Updated Server Plugin to 1.0.0.11:
Wasn't passing Album data, and better checks for Null - should pass empty strings if null - avoid error message
 
New Update:
Server Plugin to 1.0.0.16 - finally fixed Jquery page load issues/current selection correctly highlighted
LCDSmartie to 1.0.0.4 - changes to 8859-1 encoding for better compatibility with LCDSmartie
&
enables Foreign Characters to be escaped/changed as needed
 
Glenn

LCDSmart Frontview 1.0.0.4 and 1.0.0.16.zip

LCDSmart Fontview iMON Icon support.zip

Edited by GlennNZ
  • Like 6
Link to comment
Share on other sites

GlennNZ

Luke sometimes I think you are a bot with your quick replies!  Hadn't even attached the zip and here is a reply already!

 

Thanks though and will upload video to demonstrate as a bit complicated to follow

 

Glenn

Link to comment
Share on other sites

GlennNZ sorry my ignorance, but it is necessary to use the LCD Smartie program to view information reproduced from Emby Classic to the physical LCD having my HTPC or only is need it the Emby dll? 

I miss for long time when I choose a folder or playing an ISO with PowerDvd from Emby in the phisical LCD display, only appears HOME instead of the name folder or ISO played.

Thanks for your work.

Edited by Teddy
Link to comment
Share on other sites

GlennNZ

Yes

LCDSmartie is needed and does the hard work.

LCDSmartie communicates with the various LCD displays and sends the information of what to display to the LCD.

 

The FrontView -LcdsmartiePlugin, in combination with the emby server plugin - gets information from Emby server allowing lcdsmartie to use that in its displays!

 

Hopefully that makes sense!

 

Glenn

Edited by GlennNZ
Link to comment
Share on other sites

GlennNZ

Yes

 

LCDSmartie - is slightly complicated - particular the $dll() bits

But once fiddle around becomes easier !

 

The plugin setup - just change LCDSmartie.config.exe to point to your server and install MediaBrowser.Frontview.Plugins.dll to Emby server.

 

Not sure what info Emby server gets from Emby classic or from external players/PowerDVD to display though.

 

Glenn

Edited by GlennNZ
Link to comment
Share on other sites

Sorry GlennNZ , but is not working for.

Maybe my VFD is not supported (It's a vfd from Silverstone Box)

 

Last update: I shutdown the iMon Manager and then LCDSmartie works showing title and sinopsis but the physical vfd goes to black.

Edited by Teddy
Link to comment
Share on other sites

GlennNZ

Hi

If you have title and synopsis showing - then essentially the communication is working.(and both the emby server plugin and LCDSmartie plugin is working)

The pictures show the emby server plugin?- press the settings button twice if that screen doesn't load correctly (have seen it a couple of times)

 

Key would be to get LCDSmartie to display on your screen - within LCDSmartie is a display tab where you can chose the correct LCD/screen for the Imon device.

Some suggestions here: (for the LCDSmartie to screen connection)

 

http://forum.kodi.tv/showthread.php?tid=196145

(Ignore the config.exe bits -just try the display related aspects)

 

Glenn

Edited by GlennNZ
Link to comment
Share on other sites

GlennNZ

Good news
Do you want to post what you did for your LCD to help others ?
Thanks
 

Edited by GlennNZ
Link to comment
Share on other sites

GlennNZ sorry but I have anticipated the results.

The tests was done remotely and was convinced that already worked well, but when I got home I saw that physical VFD display only the title that is playing. So it seems LCDSmartie does not communicate well with the iMon software.

You need a log that can help?

Edited by Teddy
Link to comment
Share on other sites

GlennNZ

GlennNZ sorry but I have anticipated the results.

The tests was done remotely and was convinced that already worked well, but when I got home I saw that physical VFD display only the title that is playing. So it seems LCDSmartie does not communicate well with the iMon software.

You need a log that can help?

Teddy - if title is displayed on physical VFD; then LCDSmartie is working, emby plugin& LCD plugin working.

Welcome to take photo of physical screen with Title.

To display other options LCDSmartie needs to be configured to your preference.

Glenn

Edited by GlennNZ
Link to comment
Share on other sites

Glenn, when playing the movie Walker, Smartie shows as Title "Walker" and sinopsis but in the VFD shows "Walker (1987)".

In fact "Walker (1987)" is showed even if Smartie is not running.

 

If playing a DVD ISO ,Smartie shows "Camel: The Opening Farewall" and sinopsis but the VFD shows "IMON LCD"

 

So I think that Smartie communication with VFD does not exist.

 

Regards

Edited by Teddy
Link to comment
Share on other sites

GlennNZ

Hi
Hard to troubleshoot individual devices.
But it appears as if you still have Imon Frontview enabled? & Imon Manager is showing the title?

You need to configure LCDSmartie as it should show whatever is on its display on your device. It involves the LCDSmartie display settings and selecting the right display.dll and the right LCD size/screen.
(I believe yours is the iMON LCD Display)

On looking at photos missed before (the bmp ones)
Yours is not a 4 line 40 characters long screen - which is what LCDSmartie appears to set on.
I don't believe you have set up the LCDSmartie display at all.

Here: The Display Settings/Plugin Tab

56c556d6ddd7b_DisplaySettings.png
If you follow the Kodi Forum post (where LCDSmartie is making it to LCD Display):

1. Download LCD Smartie latest beta from http://lcdsmartie.sourceforge.net/smartied.htm
2a. If you have iMON LCD display, Download iMON display driver modified_iMON_OEM_LCD_dll.zip fromhttps://www.dropbox.com/sh/5q7z57zmyczc9...k6NRa?dl=0
2b. If you have VFD from an Antec Fusion (with the 4-pin FDD power connector that doesn't work with iMON manager) you don't need to download the driver file (Thanks nedge2k smile.png)
4. Unzip LCD Smartie wherever you want
5. Unzip iMON_OEM_LCD.dll to \lcd_smartie_v5.4.2.92 Beta\displays\
6. Unzip XBMC4LCDSmartie.dll and Newtonsoft.Json.dll to \lcd_smartie_v5.4.2.92 Beta\plugins\
7. Copy SG_VFDU.dll from \SOUNDGRAPH\iMON\ folder to \lcd_smartie_v5.4.2.92 Beta\ and rename it to SG_VFD.dll

Setting up:

1. In iMON manager activate the display plugin mode and set the frontview start up to always and disable everything in automode tab. Also disable the date in clock section. I noticed that if date is displayed, the iMON manager steals the display from LCD Smartie quite often.

4a. Start LCD Smartie and go to setup. In display settings click the plugin tab and if your display is LCD select iMON_OEM_LCD.
4b. If you have the VFD from an Antec Fusion (with the 4-pin FDD power connector that doesn't work with iMON manager), you can use imond.dll (Thanks nedge2k smile.png)
5. In screen tab select the LCD size. Modes 1x16 and 2x16 work. I prefer 1x16 because then the text has better readability from distance but if you like two lines of information then select 2x16.
6. Restart LCD Smartie and adjust display contrast to desired level.
7. Now you should see text in your display send by LCD Smartie.

Edited by GlennNZ
  • Like 1
Link to comment
Share on other sites

Excellent explanation, Glenn.

Now everything is working well for me.The only problem I have now is with Spanish characters and accents, I red that there are people Smartie forum with the same problem. I'll have a look how to fix it.
Thanks again and adds these last explanations to help future users.
Regards

Link to comment
Share on other sites

GlennNZ

Let me know if don't find a LCDSmartie solution.

 

The plugin will return whatever Emby has saved .

 

Could probably escape the characters (or replace with others) in the plugin code with a bit of work - if no solution.

 

Would need to know what characters are the issue and also what standard letter to replace them with. Then would have a option remove/replace characters check in the plugin settings.

 

Glenn

 

 

Sent from my iPad using Tapatalk

Link to comment
Share on other sites

Glenn, spanish has a lot of special characters and a lot of accented words .

I looked in the forum and I've only seen a russian guy asking the same with his illiterate but no solution.
Smartie translates any non-English lyrics With simbols, for example the title of the movie is "Todo por un Sueño" and you can see in the photo you sent appears (an "A" with tilde) instead of ñ letter in word "Sueño".

Edited by Teddy
Link to comment
Share on other sites

GlennNZ

I could escape all these characters in the plugin and replace with non accented character - ie.

Replace Above and end up with "Sueno".

 

Would butcher your language a bit but probably the best solution?

 

 

 

 

Sent from my iPad using Tapatalk

Link to comment
Share on other sites

GlennNZ

OK Teddy

 

Just for you.

 

Have been through a few updates.  But try the one attached to this post - Version 1.0.0.14

Contains Two Files:  

Replacement MediaBrowser.Plugins.FrontView.dll for %appdata%/emby-server/plugins directory &

FrontViewForeignCharacters.txt to %appdata%/emby-server/plugins/configurations directory.

 

This is a replacement Emby Server Plugin - it adds a checkbox as below - to turn on/off escaping Accented characters.

56c69e01767e7_Removeaccentcharacters.png



If checkbox selected - It will default to escaping every character unless you use the FrontViewForeignCharacters.txt file  (the default is the same as the full file - it will use this if there is no file FrontViewForeignCharacters.txt file in the configurations directory)

 

Copy the file FrontViewForeignCharacters.txt  --> to the Emby Server:  /plugins/configuration sub directory,  and edit this file as you need/wish.

 

If this file is present FrontView EmbyServer Plugin will use this file for accent character substitution -  The full File looks likes this:

{"äæǽ":"ae","öœ":"oe","ü":"ue","Ä":"Ae","Ü":"Ue","Ö":"Oe","ÀÁÂÃÄÅǺĀĂĄǍΑΆẢẠẦẪẨẬẰẮẴẲẶА":"A","àáâãåǻāăąǎªαάảạầấẫẩậằắẵẳặа":"a","Б":"B","б":"b","ÇĆĈĊČ":"C","çćĉċč":"c","Д":"D","д":"d","ÐĎĐΔ":"Dj","ðďđδ":"dj","ÈÉÊËĒĔĖĘĚΕΈẼẺẸỀẾỄỂỆЕЭ":"E","èéêëēĕėęěέεẽẻẹềếễểệеэ":"e","Ф":"F","ф":"f","ĜĞĠĢΓГҐ":"G","ĝğġģγгґ":"g","ĤĦ":"H","ĥħ":"h","ÌÍÎÏĨĪĬǏĮİΗΉΊΙΪỈỊИЫ":"I","ìíîïĩīĭǐįıηήίιϊỉịиыї":"i","Ĵ":"J","ĵ":"j","ĶΚК":"K","ķκк":"k","ĹĻĽĿŁΛЛ":"L","ĺļľŀłλл":"l","М":"M","м":"m","ÑŃŅŇΝН":"N","ñńņňʼnνн":"n","ÒÓÔÕŌŎǑŐƠØǾΟΌΩΏỎỌỒỐỖỔỘỜỚỠỞỢО":"O","òóôõōŏǒőơøǿºοόωώỏọồốỗổộờớỡởợо":"o","П":"P","п":"p","ŔŖŘΡР":"R","ŕŗřρр":"r","ŚŜŞȘŠΣС":"S","śŝşșšſσςс":"s","ȚŢŤŦτТ":"T","țţťŧт":"t","ÙÚÛŨŪŬŮŰŲƯǓǕǗǙǛŨỦỤỪỨỮỬỰУ":"U","ùúûũūŭůűųưǔǖǘǚǜυύϋủụừứữửựу":"u","ÝŸŶΥΎΫỲỸỶỴЙ":"Y","ýÿŷỳỹỷỵй":"y","В":"V","в":"v","Ŵ":"W","ŵ":"w","ŹŻŽΖЗ":"Z","źżžζз":"z","ÆǼ":"AE","ß":"ss","IJ":"IJ","ij":"ij","Œ":"OE","ƒ":"f","ξ":"ks","π":"p","β":"v","μ":"m","ψ":"ps","Ё":"Yo","ё":"yo","Є":"Ye","є":"ye","Ї":"Yi","Ж":"Zh","ж":"zh","Х":"Kh","х":"kh","Ц":"Ts","ц":"ts","Ч":"Ch","ч":"ch","Ш":"Sh","ш":"sh","Щ":"Shch","щ":"shch","ЪъЬь":"","Ю":"Yu","ю":"yu","Я":"Ya","я":"ya","¿":" ","¡":" "}

But the file could be as simple or small as this:

{"é":"e"}

What the file does is check for any character on the left before ":" and replace with one on the right.  You can change it as you like.

eg.  replace all é with e.  

Multiple characters are also supported:

In the main file as above: 

"ü":"ue" or in reverse: "ÀÁÂÃÄÅǺĀĂĄǍΑΆẢẠẦẪẨẬẰẮẴẲẶА":"A"

eg. 

Replace all ü with ue.

or replace A (accents) with A

 

Just edit and resave the file to your wishes.

 

NB:

Changes in this file will only be registered when emby server restarts & it very important that the formatting of the file needs to be preserved

 

 

As mentioned above - not the best approach to meaning and language - but probably the most compatible.

Glenn

LCDSmart Fontview 1.0.0.14 FrontViewForeignCharacters.txt.zip

Edited by GlennNZ
  • Like 1
Link to comment
Share on other sites

Glenn, I do not have enough words how was your support and explanations .... Incredible, great !!

 

With your new updates LCDSmartie works fine for me and for most Spanish people, whether it is a butcher the language, many young people in my country rarely used accents.
Now it's all legible, and even I read the synopsis without difficulty.
Again, thank you for your admirable work.

Edited by Teddy
Link to comment
Share on other sites

GlennNZ

Thanks Teddy - you are more than welcome!  :D

 

Minor Fix/Update:

To LCDSmartie Plugin to version 1.0.0.4

- Correctly deals with LCDSmartie using (old) 8859-1 encoding (not UTF) This was causing issues mainly if quote "s in text stream - would convert to strange characters.  Now checks overview and function 1 for this and coverts to encoding to utf-8

 

Glenn

FrontViewLCDSmartie 1.0.0.4.zip

Edited by GlennNZ
  • Like 1
Link to comment
Share on other sites

GlennNZ

New Update:

Emby Server Plugin to 1.0.0.16 - finally fixed Jquery page load issues/current selection correctly highlighted on page entry.
 
Link at main Page
 
Cheers
 
Glenn
Link to comment
Share on other sites

GlennNZ

Update:

FrontView+ API now in Emby Catalog (yah!)

(who is going to be first to review??  :D )

1zmi7eq.png

Current Version 1.0.0.16

Edited by GlennNZ
  • Like 2
Link to comment
Share on other sites

Glenn , FrontView+ is working fantastic with Emby but for user as me using WMC, when play any video, TV recorded or Photos the VFD shows black showing none information.

It would be possible LCDSmartie displaying too information reproduced when play something from WMC folders?

I think there is not an easy solution because IMON manager Frontview is disable to work with the Emby api, but maybe you could have a solution for this.

Edited by Teddy
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...