Win XBMC4LCDSmartie: New Plugin for LCDSmartie
#1
Hi,

this is only a first beta release, as I am planning to add more functions and to make the plugin more customizable in future.
But currently it is working really good in LCDSmartie so I thought to release it, as the old XBMC-Plugin had a fixed Port Number and was using the soon to be deprecated HTTP-Interface. This plugin uses the current JSON-Interface and was tested and is designed for XBMC Frodo at the moment.

Changelog:
24.02.2012 - 0.9.5
- Picturemode/Slideshow is now supported (Label in Line 1, percentage of currently running slideshow in Line 2)
- More chars are now replaced (ÜÖÄ°)

17.02.2012 - 0.9.1
-Fixed a few bugs

16.02.2012 - 0.9.0
- New parameter for function 2. You can now format your own way to display time and you can also access "Time Remaining"
- Works with Frodo
- Better Error-Handling (there is a new Parameter where you can disable all error messages and i think I am now catching all exceptions)

25.11.2012 - 0.8.0
- New function 5: Allows you to read InfoBooleans
- New additional detection mode for XBMC. Allows you to use the Plugin if LCDSmartie and XBMC are running on different Clients.

08.08.2012 - 0.7.1
- Removed unused configuration options: You can remove the user and pass section from your LCDSmartie.exe.config
- Changed JSON-Protocol to TCP: This means the plugin will run much faster and chances that LCDSmartie will stutter are minimized
Note: You will have to change some settings in your LCDSmartie.exe.config, as TCP uses a different port than HTTP (9090 is default in XBMC)

Description
I have currently implemented 5 functions:

Function1 returns 0 or 1 depending if XBMC.exe is started or not
Function2 either returns what is currently being played with the displayed information depending on the item that is played or it returns the time of the currently played item
Function3 allows you to return any infolabel from xbmc
Function4 returns current playback speed and also XBMC's current status if you want to switch screens dynamically with actions.
Function5 allows you to return any infoboolean from xbmc

Screenshots:
Display currently selected item via infolabels
Image

Playing a movie
Image

Playing music
Image

Playing tv series
Image

You can find the full documentation, source code and download the plugin at http://xbmc4lcdsmartie.codeplex.com

Have a look at it and I would appriciate getting some feedback on the plugin and wishes for further development.

Have fun,
IzeQube
Reply
#2
Man, I used to have and LCD using LCD Smartie Hooked to my HTPC.
But after spending several days without finding nothing I gave up about the idea, and removed the LCD at my new HTPC hardware.

But now, with this I'm probably going to add it again !

Keep the good work !
Reply
#3
Okay, here is the first update (Details in first post and on the website). In preperation for the next changes I changed the transport protocol to TCP. If you already use my plugin this will require you to edit you LCDSmartie.exe.config-file.
And it's really important that you then change your Hostname to your used IP-Adress (or 127.0.0.1) in lcdsmartie.exe.config, otherwise LCDSmartie will be extremely slow.
Reply
#4
Possible to update it for Frodo beta 1?
Reply
#5
There's a new version ready for LCDSmartie

Changes:
25.11.2012 - 0.8.0
- New function 5: Allows you to read InfoBooleans
- New additional detection mode for XBMC. Allows you to use the Plugin if LCDSmartie and XBMC are running on different Clients.

The new (additional) detection modes tries to connect to XBMC. If it fails, the plugin will return XBMC not running. To activate it, you will have to add a new parameter to your lcdsmartie.exe.config. If you don't do that, it will still only look for a process called xbmc.exe.

Function 5 was included for x-cimo, who whished to have this function.
(2012-11-25, 12:12)jasjeet Wrote: Possible to update it for Frodo beta 1?

I'm still using Eden on my HTPC (as I need the DualAudio-Patch). But I did a quick test on Frodo, and it seemed to work.
Reply
#6
Hello IzeQube,
i'm sorry to say that the last version 0.8.0 of your plugin is not working correct with Frodo RC3.

I use the following command for the first Display line
$dll(XBMC4LCDSmartie.dll,2,2,1)
If i play Music, Video or LiveTV it displays only:
NoValidParameter!

Second Line with command
$dll(XBMC4LCDSmartie.dll,2,3,2)
is ok.

Menue display is ok
Commands:
$dll(XBMC4LCDSmartie.dll,3,System.CurrentWindow,1)
$dll(XBMC4LCDSmartie.dll,3,System.CurrentControl,1)


Will there be an update in a short time or to we have to wait for Final Frodo Release?

My System:
Windows 7 64bit, XBMC Frodo RC3, LCDSmartie v5.4, XBMC4LCDSmartie v0.8.0, Display VL-Systems M-Play 202 Plus (2x20), Hauppauge WinTV Nova-S Plus

Thx so far, really great work,
Bongo

(Sorry for my bad english)
Reply
#7
i use LCDSmartie on my main pc, and am loving this plugin so far, thank you.

@ Bongo, try using this for example, and switch screens using action combined with the infolabels and booleans:

line 1 - $dll(XBMC4LCDSmartie.dll,3,VideoPlayer.Title,)
line 2 - $dll(XBMC4LCDSmartie.dll,3,VideoPlayer.Year,1)
line 3 - $dll(XBMC4LCDSmartie.dll,3,VideoPlayer.Studio,1)
line 4 - $dll(XBMC4LCDSmartie.dll,3,VideoPlayer.Time,1) <> $dll(XBMC4LCDSmartie.dll,3,VideoPlayer.TimeRemaining,1)

that is what mine switches to when a movie is playing, hope it is of some help.
Reply
#8
@PhilYHC
thanks a lot, but which InfoLabel you use to check which player (Music,Video,TV, Picture) is active?
I think i have do use the function 5:
$dll(XBMC4LCDSmartie.dll,5,<InfoBoolean>,)

For the video-,TV-, and Music-Player i can use the common Labels Player.Title, Player.Time, Player.Duration..., but for Picture-Slideshow this will not work.

And, sometimes when i change to next video,music... or stop the player there is a short Error message on Display: Execption:...
Is this also on your Display?


I have downloaded the Source-code of xbmc4lcdsmartie and trying to build my own DLL.
Unfortunately this is not the last version of source code on his homepage (i think it's v.0.7.1), but for me it's enough.
(The first thing was to catch this Exeption Errors and replace the Error-Messages Smile )

Thank you for your Tip so far.
Reply
#9
(2013-02-12, 11:40)Bongo Wrote: @PhilYHC
thanks a lot, but which InfoLabel you use to check which player (Music,Video,TV, Picture) is active?
I think i have do use the function 5:
$dll(XBMC4LCDSmartie.dll,5,<InfoBoolean>,)

For the video-,TV-, and Music-Player i can use the common Labels Player.Title, Player.Time, Player.Duration..., but for Picture-Slideshow this will not work.

And, sometimes when i change to next video,music... or stop the player there is a short Error message on Display: Execption:...
Is this also on your Display?


I have downloaded the Source-code of xbmc4lcdsmartie and trying to build my own DLL.
Unfortunately this is not the last version of source code on his homepage (i think it's v.0.7.1), but for me it's enough.
(The first thing was to catch this Exeption Errors and replace the Error-Messages Smile )

i use the Boolean condition: VideoPlayer.Content(parameter) - files, movies, episodes, musicvideos, livetv

and yes i get a short message also.
Thank you for your Tip so far.
Reply
#10
@Bongo: I have not yet seen any exceptions on my install of XBMC.

If you can tell me where you cought the exception(s) i will put it into a new version.

@All: Does anyone have any other wishes? I'll try to put them in to the next Version Blush
Reply
#11
For me I would like:

(Always) - time, preferably as a large two line display.

Then when playing - time played / time remaining / end time (with the current time still displayed).

And possibility to grab weather info labels - so current temp, max predicted, overnight low etc.

Very glad to see some work on this - will try soon!
Addons I wrote &/or maintain:
OzWeather (Australian BOM weather) | Check Previous Episode | Playback Resumer | Unpause Jumpback | XSqueezeDisplay | (Legacy - XSqueeze & XZen)
Sorry, no help w/out a *full debug log*.
Reply
#12
(2013-02-12, 11:40)Bongo Wrote: @PhilYHC
thanks a lot, but which InfoLabel you use to check which player (Music,Video,TV, Picture) is active?
I think i have do use the function 5:
$dll(XBMC4LCDSmartie.dll,5,<InfoBoolean>,)

For the video-,TV-, and Music-Player i can use the common Labels Player.Title, Player.Time, Player.Duration..., but for Picture-Slideshow this will not work.

And, sometimes when i change to next video,music... or stop the player there is a short Error message on Display: Execption:...
Is this also on your Display?


I have downloaded the Source-code of xbmc4lcdsmartie and trying to build my own DLL.
Unfortunately this is not the last version of source code on his homepage (i think it's v.0.7.1), but for me it's enough.
(The first thing was to catch this Exeption Errors and replace the Error-Messages :) )

Thank you for your Tip so far.

I think I've have found most of the parts where exceptions could be risen. They should now all be catched und shown on display only if wished.

For that I've added a new configuration option XBMC4LCDSmartie.ShowErrors. If you set this to 0 no errors are displayed any more, if you change it to 1, all error messages will be displayed on your LCD.

(2013-02-13, 12:20)bossanova808 Wrote: For me I would like:

(Always) - time, preferably as a large two line display.

You have to use already existing LCDSmartie-Plugins for this. I think there is also a PlugIn for Big Numbers.

(2013-02-13, 12:20)bossanova808 Wrote: Then when playing - time played / time remaining / end time (with the current time still displayed).

Okay, there is a new option for function 2. With this new function you can choose how you want to have time formatted as well as which time should be displayed. Here's an example:
3#TAHH:mm:ss#/#TRHH:mm:ss#/#TTHH:mm:ss will display 00:04:22/01:21:22/01:25:44

You have to put the time you wish to have displayed in between '#' together with a standard .NET Time Formatting String. You can choose following time labels:
TA - Time
TR - Time Remaining
TT - Total Time


(2013-02-13, 12:20)bossanova808 Wrote: And possibility to grab weather info labels - so current temp, max predicted, overnight low etc.

You can get them via function 3 (Get Infolabel): $dll(XBMC4LCDSmartie.dll,3,Weather.Temperature,1) for the current temp or
$dll(XBMC4LCDSmartie.dll,3,Window(Weather).Property(Day1.HighTemp),1) for max predicted or
$dll(XBMC4LCDSmartie.dll,3,Window(Weather).Property(Day1.LowTemp),1) for overnight low

Hope you like it :-)
Reply
#13
@IzeQube
Thx for the update, now i see no more Error on my display.
Smile

But, i have still some few litttle problems and suggestions:
1: German small letters ä,ö,ü,ß are converted in ae,oe,ue and ss, but big letters Ä,Ö,Ü are not converted.
2. In Picture-Slideshow i only see in the second line 00:00:00/ 00:00:00, first line is empty.
Is it possible to show the picturename in line two?
3. Can you add in LiveTV in the first Line the Program-Name and/or Program-Channel (with Program-Titel)?

Thanks for the great work.
Reply
#14
@IzeQube - many thanks - will get to work on this very soon and report back. I have had an LCD sitting off my machine for ages now, so will be good to get some proper use from it - it's a clock only at this point Sad
Addons I wrote &/or maintain:
OzWeather (Australian BOM weather) | Check Previous Episode | Playback Resumer | Unpause Jumpback | XSqueezeDisplay | (Legacy - XSqueeze & XZen)
Sorry, no help w/out a *full debug log*.
Reply
#15
Help please.

I followed the directions and I used the $dll(XBMC4LCDSmartie.dll,1,,) to get a result of 1, so it appears that the plugin is working and recognizes that xbmc is running. But I get no communication from the app. When I use Function 4 to show whats running I get -888 returned, yet my xbmc is playing a movie.

What am I missing? I'm running v12 Frodo and have everything on default. I don't see a place in the config file to set the password for communication to xbmc via http. Is there supposed to be one? Mine is set as blank.

Thanks,
Peter
Reply

Logout Mark Read Team Forum Stats Members Help
XBMC4LCDSmartie: New Plugin for LCDSmartie0