
squirreltown
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2015
01:55 PM
Prevent Black Screen or Timeout
Search the forum for "ECP" you'll find several discussions of this.
Basically the box sends itself a simulated remote keypress over TCP. Probably should make it less then five minutes since that's the minimum time the Roku can be set for before the screensaver kicks in ( that's the black screen you are seeing).
Basically the box sends itself a simulated remote keypress over TCP. Probably should make it less then five minutes since that's the minimum time the Roku can be set for before the screensaver kicks in ( that's the black screen you are seeing).
Kinetics Screensavers
32 REPLIES 32
renojim
Community Streaming Expert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-26-2015
11:01 PM
Re: Prevent Black Screen or Timeout
The minimum screen save time has been changed to one minute with the 6.1 firmware. I wonder how many channels using the ECP trick to disable the screen saver that will affect.
-JT
-JT
Roku Community Streaming Expert
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.

Komag
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-27-2015
12:51 AM
Re: Prevent Black Screen or Timeout
I searched ECP but all the posts are cryptic and hard to understand for me. If I only want to use this trick, is it pretty straightforward?

squirreltown
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-27-2015
04:09 AM
Re: Prevent Black Screen or Timeout
"renojim" wrote:
The minimum screen save time has been changed to one minute with the 6.1 firmware. I wonder how many channels using the ECP trick to disable the screen saver that will affect.
-JT
I would guess every single one that the user sets it below 5 minutes. Of course Roku doesn't let us access what that setting might be ( ifIcanHazFeature().screensavertime), so now we have a much higher possibility of annoying the user or making them think something was written wrong by the developer, because that was my reaction the first time I saw that black screen. I really wonder what pressing need there was to change that.
Komag - yes it's very simple, get the box ip from devinfo, and urltransfer post from (empty) string to the address with the ECP command. if you go back far enough you'll find a function posted by renojim(?) that I've been using.
Kinetics Screensavers

Komag
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-27-2015
06:48 AM
Re: Prevent Black Screen or Timeout
Thanks, I think this is it:
viewtopic.php?f=34&t=55236
viewtopic.php?f=34&t=55236
destruk
Streaming Star
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-27-2015
07:12 AM
Re: Prevent Black Screen or Timeout
"renojim" wrote:
The minimum screen save time has been changed to one minute with the 6.1 firmware. I wonder how many channels using the ECP trick to disable the screen saver that will affect.
-JT
One Minute? Why not set it to immediate screensaver? It wouldn't be so much of a problem if the screensaver didn't screw up some roScreen displays. Maybe they fixed that, but prior using a doublebuffered roscreen for a custom menu system if the screensaver turned on it'd destroy the graphics display you had up for our channels.

NewManLiving
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-27-2015
09:48 AM
Re: Prevent Black Screen or Timeout
Some things that were shared on other threads. Don't know what support the GetScreensaveTimeout has but it works on what I have
The undocumented roAppManager.GetScreensaverTimeout to get timeout values
and a function to send a message at the interval returned by the above function with a global timer should do it
The undocumented roAppManager.GetScreensaverTimeout to get timeout values
and a function to send a message at the interval returned by the above function with a global timer should do it
Function channel_wake_up_box() As Void
l_utr = createObject( "roUrlTransfer" )
l_utr.SetUrl( "http://localhost:8060/keypress/Lit_+" )
l_utr.PostFromString( "" )
End Function
My Channels: 2D API Framework Presentation: https://owner.roku.com/add/2M9LCVC
Updated: 11-11-2015 - Completed Keyboard interface
The Joel Channel ( Final Beta )
Updated: 11-11-2015 - Completed Keyboard interface
The Joel Channel ( Final Beta )

Komag
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-27-2015
10:16 AM
Re: Prevent Black Screen or Timeout
Ah, that script works great, no more black screen, nice!
I have it set to run every 45s
then...
I have it set to run every 45s
IF clock.TotalSeconds() >= ScrSav + 45
ScrSav = clock.TotalSeconds()
? "Resetting anti-screen-saver timer"
noSS()
END IF
then...
FUNCTION noSS() ' trig by Main(1) near bottom, every 45s
ipaddrs = CreateObject("roDeviceInfo").GetIPAddrs()
IF ipaddrs.eth0 <> invalid THEN ipaddr = ipaddrs.eth0
IF ipaddrs.eth1 <> invalid THEN ipaddr = ipaddrs.eth1
xfer = CreateObject("roURLTransfer")
url = "http://"+ipaddr+":8060/keypress/InstantReplay"
xfer.SetUrl(url)
xfer.PostFromString("")
END FUNCTION

TheEndless
Channel Surfer
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-27-2015
10:42 AM
Re: Prevent Black Screen or Timeout
"Komag" wrote:
Ah, that script works great, no more black screen, nice!
I have it set to run every 45s
Out of curiosity, why do you need to prevent the screensaver? In general, this is a bad practice, unless you have a very specific need for it.
Side note, you're never calling Mark() on your timer, so it's only waiting 45 seconds the first time. After that, it's firing on every pass. You definitely don't want to do that.
"squirreltown" wrote:
I really wonder what pressing need there was to change that.
A few months ago, there were a handful of users who insisted there needed to be a lower setting for plasma screens to prevent burn in. I don't know if that had anything to do with it or not. That aside, it does make it a bit easier to test screensavers, since you don't have to sit and wait 5 minutes for them to kick in.
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)

Komag
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-27-2015
12:11 PM
Re: Prevent Black Screen or Timeout
I just don't like that there is a black screen. That being said, hopefully Roku will fix the bug so that with roScreen games, the system screensaver will work properly and not just be black screen.
I'm not marking the clock, but "marking" the variable ScrSav I set to check against, then when the main clock progresses past that point 45s it cycles again, works as intended.
I'm not marking the clock, but "marking" the variable ScrSav I set to check against, then when the main clock progresses past that point 45s it cycles again, works as intended.