Sign up here and you can log into the forum!

Can't wake up (turn on) after deep sleep

General WDLXTV-Live forum

Can't wake up (turn on) after deep sleep   

Postby nmdtd » Mon Feb 22, 2016 7:48 am

After flashing 1.05.04_V_WDLXTV_LIVE-0.5.2.2 i've lost the ability of my WD TV Live to wake up after deep sleep mode.
On previous firmware (1.05.04_V_WDLXTV_LIVE-0.5.2.1) it works somehow.
I changed firmware back, restore my settings - nothing helped :(
WEC settings is:
USB_OSD_EJECT_BEFORE_POWER_OFF = Yes
USB_POWER_OFF = Turn off USB 5V bus
USB_POWER_OFF_DEEP_SLEEP = Deep sleep
Using these settings switching my WD to deep sleep, but it can't power on from remote, just plug off/plug in the AC adaptor.
I use my WD 3-5 times a week, and i like it cold and external HDD completely power off :)
Can someone help me with it?
nmdtd
n00b
 
Posts: 9
Joined: Mon Feb 22, 2016 7:34 am

Re: Can't wake up (turn on) after deep sleep   

Postby mad_ady » Mon Feb 22, 2016 11:26 pm

Strange... Perhaps DMAOSD crashes and it can't wake up via remote. Can you try sending some Wake-On-LAN packets to it when it's sleeping?
User avatar
mad_ady
Developer
 
Posts: 4522
Joined: Fri Nov 05, 2010 9:08 am
Location: Bucharest, Romania

Re: Can't wake up (turn on) after deep sleep   

Postby nmdtd » Tue Feb 23, 2016 4:17 am

mad_ady wrote:Strange... Perhaps DMAOSD crashes and it can't wake up via remote. Can you try sending some Wake-On-LAN packets to it when it's sleeping?


Thanks for reply :P

I sent some Wake-On-LAN magic packets, but no result :(
I think you are right about DMAOSD, but how to fix it?
I've got 2 WD TV Live devices, and the problem is different with them:

1 is running 1.05.04_V_WDLXTV_LIVE-0.5.2.2, deep sleep is on, NTFS HDD on USB2.
When i press Power on my remote, it turns off, then turns on to eject HDD, then i see "Are you sure want to remove this device?" dialog on TV and 2 buttons "Yes" and "Cancel" (or something like this). Usually, WD automatically "press" yes and then ejects HDD, after this - deep sleep.
But now it can't "press" Yes: i need to press yes on my remote myself, or it turns off without ejecting HDD :(
If i press Enter on "Yes" by myself via remote - it really go to deep sleep, WD is cold, HDD off and i CAN turn it on from remote.

2 is running 1.05.04_V_WDLXTV_LIVE-0.5.2.1, deep sleep is on, NTFS HDD on USB2.
When i press Power on my remote, it turns off, then turns on to eject HDD, and after this - deep sleep.
But it can't wake up from remote or via WOL.

I changed the firmware, made full reset with WEC - all the same :(
Can you give me any solution?

Is there any difference between shortly pressing Power on my remote and long press for 5+ seconds?
nmdtd
n00b
 
Posts: 9
Joined: Mon Feb 22, 2016 7:34 am

Re: Can't wake up (turn on) after deep sleep   

Postby mad_ady » Tue Feb 23, 2016 6:05 am

I don't know what's going on. Can you log in via telnet/ssh and run this command:

Code: Select all
tail -f /tmp/messages.txt


Leave the command running and put your device to sleep. Paste back the logs (using pastebin).
User avatar
mad_ady
Developer
 
Posts: 4522
Joined: Fri Nov 05, 2010 9:08 am
Location: Bucharest, Romania

Re: Can't wake up (turn on) after deep sleep   

Postby nmdtd » Tue Feb 23, 2016 1:26 pm

mad_ady wrote:I don't know what's going on. Can you log in via telnet/ssh and run this command:

Code: Select all
tail -f /tmp/messages.txt


Leave the command running and put your device to sleep. Paste back the logs (using pastebin).


Oh, i hope i did it right:
http://pastebin.com/raw/gBaEWT6t
My WD turned off, ejected HDD and swithed to deep sleep mode.
Now the only way to turn it on - is to unplug/plug the AC adaptor.
nmdtd
n00b
 
Posts: 9
Joined: Mon Feb 22, 2016 7:34 am

Re: Can't wake up (turn on) after deep sleep   

Postby mad_ady » Tue Feb 23, 2016 11:00 pm

Yes, nicely done.

It looks like when DMAOSD is stopped, it also turns off the remote control:
Code: Select all
Jan  1 00:05:12 WDLXTV user.debug kernel: ir: Disable NEC decoder
Jan  1 00:05:12 WDLXTV user.debug kernel: ir: Disable RC5 decoder


Also, it tries to free up framebuffer memory, but it can't find any (probably because dmaosd crashes before):
Code: Select all
Jan  1 00:05:12 WDLXTV user.notice S70dmaosd: Freeing  MB of FrameBuffer memory: 0x86650b9c


This means that the remote is dead. WOL might wake it up, but with DMAOSD dead you wouldn't get any visual feedback (just webend/ssh might work after WOL).

I don't know why dmaosd crashes, but can you try the same experiment after enabling DMAOSD_DEBUG (and rebooting afterwards)?
Code: Select all
tail -f /tmp/dmaosd.log


Also you might want to try with DEEP_SLEEP turned off and see if you get the same behavior.
User avatar
mad_ady
Developer
 
Posts: 4522
Joined: Fri Nov 05, 2010 9:08 am
Location: Bucharest, Romania

Re: Can't wake up (turn on) after deep sleep   

Postby nmdtd » Wed Feb 24, 2016 2:30 am

Ok. Here is the log with DMAOSD_DEBUG is ON:
http://pastebin.com/raw/PTY4RhDa
I've just find out: my WD just switched to normal standby, not deep sleep :(
WD is accessible through web interface and after pressing "Restart OSD" - it turns on from remote.
I think it can't go to deep sleep for some reason and OSD crashes.
So, reflashing firmware, resetting settings from OSD and WEC can't help :(
nmdtd
n00b
 
Posts: 9
Joined: Mon Feb 22, 2016 7:34 am

Re: Can't wake up (turn on) after deep sleep   

Postby mad_ady » Wed Feb 24, 2016 3:56 am

Interesting...

Code: Select all
(*) SMP863x: Closing HDMI chip 1
[SLi.c:390] New mode: 0x1C
[hdmi.c:889] [HDMI] *** Power off ***
(!) [Main Thread     340.239] ( 2258) *** Assertion [false] failed *** [gfxdrivers/em86xx/em86xx_internals.c:633 in em86_free_global_data()]
(!) [ 2258:  340.239] --> Caught signal 5 (unknown origin) <--
Trace/breakpoint trap


DMAOSD crashing might be due to two problems.
1. A bug in DMAOSD triggered by your HDMI
2. A bug in the memory deallocation code in /etc/init.d/S70dmaosd

Could you try the same shutdown procedure with HDMI unplugged? I'm curious if DMAOSD crashes again.

Alternatively could you run the following code (boot the WDTV with no disks attached) and paste back the output?
Code: Select all
killall dmaosd.sh dmaosd DMARender MediaLogic MediaLogic_PIC wdlxtv.watch scan_manager ossp
cat /proc/driver/em8xxx/0/resources
ADDR=`cat /proc/driver/em8xxx/0/resources | egrep  "\(129.*MB|\(77.*MB" | cut -c 12-21`
echo $ADDR
SIZE=`cat /proc/driver/em8xxx/0/resources | egrep  "\(129.*MB|\(77.*MB" | awk '{ print $5;}' | cut -d '(' -f 2`
echo $SIZE


Regarding DEEP_SLEEP methodology, there are two ways of doing it (from /sbin/usb.power.off):
Code: Select all
logger -s -t usb.power.off "entering deep sleep mode - power button reboots"                                                                                                                       
            if [ "`uname -v | grep "^#7"`" != "" ] ; then                                                                                                                                                     
                #for some older kernels (e.g. 2.6.22.19-19-4 #7)                                                                                                                                               
                echo standby | tee /proc/tangoxfreq/standby                                                                                                                                                   
            else                                                                                                                                                                                               
                echo 'system down' | tee /proc/led &                                                                                                                                                           
            fi                                                                         


For my Live echo 'system down' | tee /proc/led does absolutely nothing (the unit is still powered on), but echo standby | tee /proc/tangoxfreq/standby puts it to sleep. Try running both commands on your system (you should lose network connectivity if it's successful) to see if deep sleep is supported by your hardware revision. Note that /proc/tangoxfreq/standby requires a kernel with support for it (2.6.22.19-19-4 #7).
User avatar
mad_ady
Developer
 
Posts: 4522
Joined: Fri Nov 05, 2010 9:08 am
Location: Bucharest, Romania

Re: Can't wake up (turn on) after deep sleep   

Postby nmdtd » Wed Feb 24, 2016 1:36 pm

Oh, i hope i'm not too noobish for it :D

Ok, here is the shutdown log with no HDMI connected:
http://pastebin.com/8z7CbC49
After turn off with HDMI unplugged - the same situation, dead remote :(

Here is the log from code on WDTV with no disks attached:
http://pastebin.com/Xmjf4Bgn

I'm not sure about doing right with last piece of code:
http://pastebin.com/K1rBhGyt

I'm sure deep sleep is supported by my WD: one of my 2 WD's (they are absolutely identical) worked pretty good with deep sleep on WDLXTV 0.5.2.1 for a 1.5 year.
Maybe i shouldn't change the original firmware 1.06.43_V to WDLXTV 1.05.04_V.WDLXTV_LIVE-0.5.2.2?
nmdtd
n00b
 
Posts: 9
Joined: Mon Feb 22, 2016 7:34 am

Re: Can't wake up (turn on) after deep sleep   

Postby mad_ady » Wed Feb 24, 2016 11:22 pm

Ok, it seems the "system down" command was executed for you. Question is - after you've ran these commands (e.g. echo 'system down' | tee /proc/led & ), did the system go into deep sleep or not? If it did, you should lose network connectivity to it.

This doesn't explain yet why DMAOSD crashes on shutdown...
User avatar
mad_ady
Developer
 
Posts: 4522
Joined: Fri Nov 05, 2010 9:08 am
Location: Bucharest, Romania

Next

Return to Discussion

Who is online

Users browsing this forum: No registered users and 1 guest