Our new official repo is on github
LCD Smartie version 5.6 is released!
Download it now: https://github.com/LCD-Smartie/LCDSmartie/releases

Some configuration help please.

General discussion about LCD Smartie.

Moderators: _X7JAY7X_, caesar, IFR, mattcro, limbo, Fast351

Post Reply
Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Some configuration help please.

Post by Pinan »

Hi everyone. I need some guidance please. Below are my LCDSmartie settings so far. I'm not getting quite what I want yet, but I must say that I have loved this program for the last 3 years or so. Just getting around now to asking for help. Here is what I have so far:

$dll(sage.dll,1,0,1,) > 0 then EnableScreen(1)
$dll(sage.dll,2,1,) > 0 then EnableScreen(2)
$dll(sage.dll,2,2,) > 0 then EnableScreen(2)
$dll(sage.dll,2,1,) > 0 then DisableScreen(1)
$dll(sage.dll,2,2,) > 0 then DisableScreen(1)

Screen one is just a time/date screen
Screen two is What's Recording/For How Long screen

For the most part this works great. Two problems though:

1. If two programs are recording and one finishes, the VFD returns to screen one instead of the What's Recording-still screen. I would like it to stay on screen 2 until the second recording is also finished.

2. If I am watching an already recorded show, and a show is recording, the screen kicks to screen 1. I would like it to keep showing what's recording.

SageTV 6.6.2
LCD Smartie 5.4.1 w/L.I.S VFD driver.
XP Home SP3
Intel Q8400
2GB RAM
Gigabyte DS3 Mobo
Ahanix D.Vine D4 case w/2x16 character Samsung VFD / Parallel Port Connector
Two Hauppauge 150 tuners.

I hope that I've been clear. Please let me know if more info is needed. What I have so far was basically copied from other posts after mucho reading. I'm afraid that I don't really understand the instructions that I have seen.

Thanks to all for any assistance. :smt001

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

Are there no guru's around to help with this? Anyone have any ideas?

caesar
Forum Supporter
Posts: 734
Joined: October 15th, 2005, 10:39 am
Location: Romania
Contact:

Re: Some configuration help please.

Post by caesar »

I'd try making both screens sticky first.
In actions put a go to screen2 if it's recording then a goto screen 1 if it isn't.

Hope this helps...

mattcro
Forum Supporter
Posts: 590
Joined: March 8th, 2006, 1:58 pm
Location: Scotland

Re: Some configuration help please.

Post by mattcro »

I have a feeling it makes a difference which order you put the actions in. Try moving the Enable actions to below the Disable actions. I think the actions get evaluated in order, so you may find it works better to have Smartie possibly disable a screen momentarily (because a recording has finished), then immediately re-enable it (because there is still a recording in progress). Also try Caesar's Goto Screen suggestion instead of enabling and disabling screens.

I don't use SageTV, so can't help much with the Sage plugin...

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

caesar wrote:I'd try making both screens sticky first.
In actions put a go to screen2 if it's recording then a goto screen 1 if it isn't.
Thanks guys!

caesar. Can you type an example please, using my information above? How do I make them "sticky", etc?

mattcro. I've put them in order of action, to no avail. But perhaps I did it wrong. A bit lost here I'm humbled to say.

Thanks again. :smt001

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

I've really worked at this but I just can't figure it out. Can someone please type what I should enter. I am read/researched/hunted out.

I figured the "sticky" part out (duh), but all it did was cause the stickied screen to stick, regardless of what screen should show. I'm lost.

If there was a FAQ on what the different symbols like > <> = => <= etc. meant, it would really help users.

I know that it must be possible. Thanks to whoever.

caesar
Forum Supporter
Posts: 734
Joined: October 15th, 2005, 10:39 am
Location: Romania
Contact:

Re: Some configuration help please.

Post by caesar »

To help you, I need to know what's the output of

$dll(sage.dll,2,1,)
and
$dll(sage.dll,2,2,)
and when it changes (what triggers the change) and to what value it changes.

<, <=, =, => and > are smaller, smaller included, equal, larger included and larger than. Just the mathematical symbols.

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

Hi caesar. Thanks much from the reply.

$dll(sage.dll,2,1,) and $dll(sage.dll,2,2,) are (I believe) "when tuner 1 and tuner 2 are recording. So when tuner 1 or 2 begins recording, LCD Smartie shows the show, and length of show that's recording (screen 2). Example:

Recording: CSI Miami (This line can scroll to show both tuners at the same time)
1:00 (This line can scroll also to show all lengths of time to record, in hours.)

~~~~~~~~~
Screen #1 setup:

$Time(mm/dd/yy) (To show the Day and Date
$Time(h:nn:ss ampm) (To show the Time)

Screen #2 setup:

*Recording* $dll(sage.dll,2,1,) / $dll(sage.dll,2,2,) (Which tuner is recording)
$dll(sage.dll,7,1,) $dll(sage.dll,7,2,) (For how long)

~~~~~~~~~
I figure I may not even need the 1st "action" line, which I think just says to show the time:

$dll(sage.dll,1,0,1,) > 0 then EnableScreen(1)

Seems to want to go to that anyway.

~~~~~~~~~~
"<, <=, =, => and > are smaller, smaller included, equal, larger included and larger than. Just the mathematical symbols."

Seems that changing these will do me no good, right? I should just ignore them and stick to ">" for all?


Is this what you needed? I'll help all that I can.

Thanks again.

caesar
Forum Supporter
Posts: 734
Joined: October 15th, 2005, 10:39 am
Location: Romania
Contact:

Re: Some configuration help please.

Post by caesar »

The info is ok, but it doesn't help much.
See, you can't use those functions if they return text...


Ah, explanation comes from the plugin page:
To get LCD Smartie to only show Sage information if Sage actually is running go to the Actions tab. Enter the command: if $dll(sage.dll, 1, 0, 1) > 0 then GotoScreen(2) if your Sage screen is number 2. Then goto the Screens tab and disable the Sage screen and enable another screen (for example a screen with time information). Set Time to show for the Sage screen to at least 5 seconds or more to avoid flashing.
You could change that to
$dll(sage.dll, 1, X, 1) > 0 then GotoScreen(2)
where X is recording number. I don't know what that means but hope it helps.

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

See, you can't use those functions if they return text...
Sorry. I don't know what you mean. Everything works how I have it. I get the time to show, and what's recording. Even from both tuners at the same time. But when one stop recording, it snaps back to Screen 1 (Time) instead of staying on the recording screen. I thought it should be easy to "fix".

I wish I knew a better way to explain it....

Yes, I use the SageTV plugin for LCD Smartie from http://www.nolberger.se/Sage/LCDSmartie/

Maybe you're saying to add an extra digit, where I'm only using two? 1,x,1, ? I'll try.

Thank you for trying caesar.

mattcro
Forum Supporter
Posts: 590
Joined: March 8th, 2006, 1:58 pm
Location: Scotland

Re: Some configuration help please.

Post by mattcro »

I believe the Smartie actions are triggered by a change in the input conditions, so they only "fire" when there is a change of input. This is happening when (for example) your channel 1 recording finishes - you jump back to screen 1 (because there was a change of recording state), even if channel 2 is still recording (no change for that channel's action).

Also, there is no priority for actions (and apparently no execution order as you have discovered) so you can't make one action override another.

I don't think this can be done properly without some kind of action priority, or actions with multiple conditions. What you really need is something like: IF [tuner1 recording] OR [tuner 2 recording] THEN GOTO(screen 2)

I don't use SageTV but have tried to do something similar for other plugins with no luck.

You may be able to do something with a combination of themes and screens, so post you results if you get something working!

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

mattcro wrote:1. This is happening when (for example) your channel 1 recording finishes - you jump back to screen 1 (because there was a change of recording state), even if channel 2 is still recording (no change for that channel's action).

2. Also, there is no priority for actions (and apparently no execution order as you have discovered) so you can't make one action override another.

3. What you really need is something like: IF [tuner1 recording] OR [tuner 2 recording] THEN GOTO(screen 2)

4. so post you results if you get something working!
1. That's a good way of looking at it.

2. Yup. No dice.

3. That's what these lines actually accomplish:

$dll(sage.dll,2,1,) > 0 then EnableScreen(2)
$dll(sage.dll,2,2,) > 0 then EnableScreen(2)

Where the "2,1," means if recording (2) on Tuner 1 (1), and "2,2," means if recording (2) on Tuner 2 (2). Which works....just not how I want it to. Using the "GoTo Screen x" command did not make a difference.

4. I certainly will. Today I had some limited success. I'll post if I find a solution.

Thanks for your input mattcro.

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

mattcro wrote:What you really need is something like: IF [tuner1 recording] OR [tuner 2 recording] THEN GOTO(screen 2)
If you mean to have all of this on one line, yeah, that might work. Does anyone know how to do that? I tried entering them with a "/" between the two, and a "+", and others to no avail. Endless possibilities. Can this be done?
mattcro wrote:. . . . you may find it works better to have Smartie possibly disable a screen momentarily (because a recording has finished), then immediately re-enable it (because there is still a recording in progress).
This might work. How do I momentarily disable a screen?

Btw. I had no luck. Up till 2:00 this morning trying. I'm such a geek. LOL.

Actually. If I put Tuner 1 and 2 on separate Screens (2 & 3), then it kinda worked. Smartie would scroll through all 3 Screens (Time included....yuck), and if one tuner stopped recording Smartie kept scrolling through the other remaining Screens. Far from ideal though.

Thanks guys. :-)

mattcro
Forum Supporter
Posts: 590
Joined: March 8th, 2006, 1:58 pm
Location: Scotland

Re: Some configuration help please.

Post by mattcro »

I think you've probably got as close as possible with the 3 screens idea. I can't think of any better way to do it. Not great, but the actions are not powerful/flexible enough for this sort of thing...

You cannot actually have the kind of thing I was suggesting (IF x OR y THEN ...) with more than 1 parameter per action. That's on the wish-list and it would allow you to do the kind of thing you want.

There is also no command to momentarily disable a screen - I was trying to describe what might happen if you had a set of actions where 1 action disabled a screen and another action happened to immediately re-enable it based on a different condition. That doesn't actually seem to happen since the actions don't seem to execute in any sequential manner or priority...

EDIT:

Just had a thought...
Try using the Math plugin (http://forums.lcdsmartie.org/viewtopic.php?f=8&t=763) to ADD the results of the 2 "is tuner x recording" Sage plugin calls. If the result is "0", you know that there are no recordings in progress and you can switch back to Screen 1 (time display). You can use the same actions as originally to switch to the Sage screen (2) if either tuner is recording. Worth a try!

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

mattcro wrote:1. You cannot actually have the kind of thing I was suggesting (IF x OR y THEN ...) with more than 1 parameter per action. That's on the wish-list and it would allow you to do the kind of thing you want.

2. Just had a thought...
Try using the Math plugin (http://forums.lcdsmartie.org/viewtopic.php?f=8&t=763) to ADD the results of the 2 "is tuner x recording" Sage plugin calls. If the result is "0", you know that there are no recordings in progress and you can switch back to Screen 1 (time display). You can use the same actions as originally to switch to the Sage screen (2) if either tuner is recording. Worth a try!
1. I actually had both tuners in a row in Actions and they worked fine. But to no advantage. Let's get that Wish List rockin! :-)

2. Math Plugin. Hmmmmmmm. Maybe something to try. I've spent so many hours on this (tenacious) that I'm a bit burnt out. I'll take a break and then look into it. I hate to sound like a dolt.....but how would I set that up as you describe? Flying by the seat of my pants here.

It's a shame really. I know of several people on the SageTV forum, and I would think that there are many people with home built DVR's that would love this functionality. Many users have multiple tuners these days.

Here's hoping. Thanks for the info mattcro. I'll keep you posted if I get anywhere. :smt001

mattcro
Forum Supporter
Posts: 590
Joined: March 8th, 2006, 1:58 pm
Location: Scotland

Re: Some configuration help please.

Post by mattcro »

I'll give it a try, though I've never used the Math or SageTV plugins for real...

Actions to enable the Sage screen can be the same as in the 1st post.

Action to disable the Sage screen only if neither tuner is recording (i.e. zero recordings currently in progress):
IF $dll(math.dll,1,$dll(sage.dll,2,1,),$dll(sage.dll,2,2,) = 0 THEN DisableScreen(2)

That should add the result of the 2 recording checks. If 1 or both tuner(s) is/are recording the result is not 0 so the screen remains enabled.

This will cycle between the Time/Date and Recording screens if there's a recording in progress, which I think is what you had in your original post? If you don't want time/date during recordings, you can add another math+sage action like the above one to disable screen 1 if either tuner is recording (use "> 0" as the comparison).

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

Great, thanks! How do I get the plugin to work though? I put it into the Smartie Plugin folder, but nothing changed visually (should it?). Or do I simply enter the lines and go about my merry way?

No. I don't want (never did) the Time/Date to show at all while recording, so I'll attempt what you suggest.

Thanks tons mattcro. :-)

mattcro
Forum Supporter
Posts: 590
Joined: March 8th, 2006, 1:58 pm
Location: Scotland

Re: Some configuration help please.

Post by mattcro »

Adding a new plugin is as simple as copying the DLL file (eg math.dll) into Smartie's \plugins folder. Then you just use/call it in a screen in the normal $dll(...) way. There's no special installation and Smartie doesn't tell you it has found a new plugin.

Assuming you only use the 2 screens (time/date and SageTV), you should be able to simplify the actions a bit by having both screens set to sticky and enabled - that means they won't automatically cycle and you don't have to disable/enable. Then you only need actions to GotoScreen(2) when either tuner starts recording, and GotoScreen(1) when neither tuner is recording. Both actions can use a variation of the math+sage action I posted.

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

All right, great. I'll get this a go and post back tomorrow.

Thanks for all the help. :smt001

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

mattcro wrote:1. Assuming you only use the 2 screens (time/date and SageTV)

2. Then you only need actions to GotoScreen(2) when either tuner starts recording, and GotoScreen(1) when neither tuner is recording. Both actions can use a variation of the math+sage action I posted.
1. That's correct. Just the two screens.

2. So two actions total on the Actions page, with none of my earlier one? That sounds good. Would you be so kind as to write those out for me please?

Is one of them (guessing)?: IF $dll(math.dll,1,$dll(sage.dll,2,1,),$dll(sage.dll,2,2,) = 0 THEN GotoScreen(1)


I've tried many variations, but I just can't figure this out. I'm sorry to say that none of the other suggestions worked. I've spent far too much time on this. Sigh....

Thank you

mattcro
Forum Supporter
Posts: 590
Joined: March 8th, 2006, 1:58 pm
Location: Scotland

Re: Some configuration help please.

Post by mattcro »

I think this will work. Remember I have not tested these as I don't use Sage...

I'm assuming here that $dll(sage.dll,2,1,) will return "1" if tuner 1 is recording or "0" if it's not recording. $dll(sage.dll,2,2,) does the same for tuner 2?

:oops: I made a small mistake (forgot a closing bracket) in the action I posted... should be:

To switch back to time/date when no recordings are in progress:
IF $dll(math.dll,1,$dll(sage.dll,2,1,),$dll(sage.dll,2,2,)) = 0 THEN GotoScreen(1)

To switch to Sage screen if either (or both) tuner is recording:
IF $dll(math.dll,1,$dll(sage.dll,2,1,),$dll(sage.dll,2,2,)) > 0 THEN GotoScreen(2)

Make both screens sticky and enabled.

If I understand the Sage plugin right, those 2 actions should be all you need.

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

mattcro wrote:
1. I'm assuming here that $dll(sage.dll,2,1,) will return "1" if tuner 1 is recording or "0" if it's not recording. $dll(sage.dll,2,2,) does the same for tuner 2?

2. I made a small mistake (forgot a closing bracket) in the action I posted... should be:

3. Make both screens sticky and enabled.
Bummer. Still no go.

1. I assume that as well. Seems to be the case.

2. With the added bracket I get "LCD Smartie- Load of plugin failed with #126: The specified module could not be found" when I restart Smartie. Removing the extra bracket lets it run, but....

3. If both screens are sticky, when I start Smartie it goes dircetly to Screen 2 (Sage screen) and scrolls a mostly blank screen. It works well there when recording. Stopping one of two recordings results in still showing the other, but it won't go back to Screen 1 when that 2nd recording is stopped.

I tried different variations of Sticky and Enabled with no luck.

We seem to be getting close to a solution here. What should I try next?

Thanks again for your help, mattcro.

mattcro
Forum Supporter
Posts: 590
Joined: March 8th, 2006, 1:58 pm
Location: Scotland

Re: Some configuration help please.

Post by mattcro »

I'm not sure about the brackets - math.dll works for me with 2 brackets at end, and it shouldn't work with only 1 as I originally had. Don;t know about the plugin load error - it could be that you're getting some strange output as Smartie or the Sage plugin start up...

If you haven't already done so, check that what the Sage plugin returns for the 2 sage.dll calls is what you need for the math plugin to do its work - use a simple test screen like so:

Tuner1: $dll(sage.dll,2,1,)
Tuner2: $dll(sage.dll,2,2,)
Recordings: $dll(math.dll,1,$dll(sage.dll,2,1,),$dll(sage.dll,2,2,))

Another thing to try is using the demo plugin (demo.dll which ships with Smartie) to do the addition instead of math.dll. I observed that math.dll does not update/recalculate very fast, so you might have better results with the demo dll function 1. You can just replace "math.dll" with "demo.dll" in the actions/screens.

Pinan
Posts: 20
Joined: July 9th, 2006, 5:15 pm

Re: Some configuration help please.

Post by Pinan »

Well mattcro, I finally got it working!!!! Jeesh! I have no hair left, LOL!

I should have asked you what version of LCD Smartie you are using! I was using the newest, v.5.4.1. I'm thinking you're using an older version? I switched to 5.4, and bang! At any rate. The math plugin did not accomplish what I needed, although it works with this version (5.4).

Meanwhile, I had also been trying to get MizookLCD plugin to work, with much the same issues. I wrote to the author and he tried to help as well, to no avail. But it works just fine with 5.4! Yay!!! Perhaps he has an older version of Smartie as well.

Two Actions only:

1. if $dll(MizookLcd.dll,9,$dll(MizookLcd.dll, 1, 1, 1)#0,a) > 0 Then GotoScreen(2)
2. if $dll(MizookLcd.dll,9,$dll(MizookLcd.dll, 1, 2, 1)#0,b) > 0 Then GotoScreen(2)

Using the old Screen setup that I already had.

Note: I was using 5.4.1 with the FutabaVFD_LCD display driver, as it is the only one that I get no garbled text from. This is great. Fortunately you can also choose which driver you want in v5.4.

I note this because I tried 5.3.2 first and it worked just as well with MizookLCD, but the garbled text returned. Yuck. I am hoping that 5.4 holds for me.

Here is a the link to the MizookLCD plugin: http://mizook.com/lcd/

Thank you very much for your time and effort here mattcro. Your help kept me going until I found the answer. I hope by posting this it helps others in the future. If I develop any problems I'll come back and note them.

Thanks again :smt001

mattcro
Forum Supporter
Posts: 590
Joined: March 8th, 2006, 1:58 pm
Location: Scotland

Re: Some configuration help please.

Post by mattcro »

Not sure what's going on there... I'm using 5.4.1 beta (internal version 5.4.1.7) from http://lcdsmartie.sourceforge.net/smartied.htm

I discovered that the math plugin didn't respond to rapid changes of inputs - I have a feeling that its internal "update rate" setting is lower than my screen refresh interval. The demo plugin did the maths correctly for me, so maybe the sage plugin doesn't quite provide the correct output you needed for those actions. I'm still not sure I understand all the logic of Smartie's actions!

That's a clever method to return to the time/date screen with the Mizook plugin... a flip/flop value and a disabled, non-sticky screen.

I'm glad you've finally got something working, and thanks for posting how you did it - there's not much mention of Mizook here.

Post Reply