Lets start a petition, add your name to this post to let WD know that you would like to see this problem fix.
So its 3:03AM in the morning as I stumble out of bed to head for the loo and as I pass by the bookshelf I noticed that the lights to my WD hard drive is on. A small surge of anger passes through me as I think about how WD never fixes the sleep problem and how it was always the community that attempts to minimalize the problems instead of WD actually fixing it.
It has been four years since I first bought the WD Live followed by the WD Cloud two years later; both had problems with the scans and both had problems with sleeping (WD never fixed these problems).
Yes it is 3:05AM and for those in the know, the CRON runs at 3AM to check for updates even though you have Updates off, the device still wakes up and checks for updates to tell you that you have an update available ignoring your request not to check for updates. I can hear the lead programmers say
Lead programmer: "Lets check for updates at 3am",
2nd programmer "but what if the user turns updates off?".
Lead programmer: "Check for updates anyway and if the updates are turned off, we will just notify the user that an update is available."
Meanwhile in another division another team is investigating why the WD Cloud doesn't sleep.
Lead Analyst: "I have no idea why it is waking up at 3AM everyday"
Student Programmer: "I have turned all the option switches off"
Lead Analyst:"Lets remove all the variable time of 30, 20, 10 minutes from the options and set it at a fixed sleep time of 10 minutes"
Student Programmer:"Why 10 minutes?"
Lead Analyst:"Because it is the only setting that seems to work."
I am awake at 3:45AM and typing up this post
I have already turned CRON off completely; no check for updates, no backup of tmp log files and the deletion of logs thereafter, no running of scans, no indexing, no itune server. In other words, I have turned off every possible job and processes that I could recognize, short of deleting the OS, and still the device wakes up randomly.
I've determine that if you are connected to their server for Cloud acces, they will connect to your WD drive at random times for unknown reasons. Back about a year ago, when their Cloud server was having problems, at exactly 25 minutes intervals my WD Cloud drive would wake up according to my log. This problem went away the next day after I posted up my discoveries, not that I think that they (WD) thinks I was on to them but rather the server ping back was fixed the next day. It seems that their server do have the ability to ping your WD drive thus waking it up.
In fact right now I see internet activity on my WD drive even though I am not accessing the drive.
Linux is your culprit
I am probably one of the most knowledgeable user of the WD OS, short of the WD programmers. I have even re-wrote the monitorio.sh, which is the sleep monitor program that turns the blue light on or off. So I know all the reasons why my WD Cloud doesn't sleep and I also know why WD isn't fixing it; it is because nobody at WD knows how to stop linux from multitasking Even the fact that the logs are being written to causes the drive to wake up. WD tried to fix this by moving the logs to a Ramdrive. If you head over to the WD Live forum you can read about how the log files overflowed which also causes the WD Live not to sleep. So WD has been fighting this problem for a long time. You can see the overflow fix by the log files being archived by a cron job, so no log file ever grows larger then a certain size.
The problem is that linux is an operating system and not really a "Turn-key" system. An operating system means that the system have processes that runs concurently, where-as a real Turn-key system would simply turn on to operate and turn off without any other concurrent processes, something like your WD My Book which has a "Turn-key" boot up program that interfaces to a USB and nothing more.
Remember the problem where if you boot up the Cloud with the USB drive plugged in and the system locks? Yup, this is the problem where "simultaneous/concurrent" processes locks itself. The solution is to let the WD Cloud boot up until all the processes settles down before plugging in the USB drive.
If you "pull the plug" on an operating system, you can corrupt files by having partial files wirtten. Again this is where Linux as an operating system steps in. When it boots up, linux will do a checkdisk of your system and compare itself with logs of file activity; this is the white light... pull the plug on your Cloud too many times and your system may never return from the White light. Now the interesting part to this tidbit and the reason why it never returns from the white light is... (educated guess) that it finds an error and linux is waiting for a user input... "hit any key..."
The Elusive Sleep
Now one of the major reason that your WD Cloud is not sleeping is that "Sleep" has been implemented as a software solution instead of a hardware one. Compare to a real sleeping laptop where everything is powered down except a couple of hardware circuits that watches for network activity or keyboard activity before powering everything back on including the CPU and hard drive.
When you click on the option to allow your WD Cloud to sleep, what it actually does is set the standby.conf file in /etc to enable with a countdown timer of 10 minutes.
Monitorio is a continuous running script that picks up the countdown timer and begins counting down 10 minutes and monitors in an infinite loop checking every minute whether or not the hard drive has been accessed within the countdown; if it has been accessed the count is reset to 10 minutes.
When the countdown ends, it sends an hdparm hard drive park/power down command to your hard drive. The hard drive powers down but your CPU continues to work full speed. There are no hardware sleep here.
Now monitorio is waiting in a loop waiting for the hard drive to wake up. When it sees that the hard drive is awake, it takes the current time and subtracts it from when it went to sleep and logs it to your user file. Note Monitorio does not wake up the hard drive.
Monitorio then goes back into it main loop waiting for the 10 minute countdown to put the drive to sleep again.
A little interesting tidbit of a story here is back when we had this problem with the WD Live, WD removed the adjustable sleep option of 60 minutes, 30 minutes, 10 minutes and set it to only On or Off. It wasn't until I bought the WD Cloud did I realize why they did this.
The WD Cloud has a weird flaw, put the hard drive to sleep and it will wake up in a few seconds at least once or twice after you issue the hdparm command before settling down for the long sleep. If you set the countdown to 10 minutes, waking up once or twice within the hour will still ensure the drive will go to sleep after a couple of wake ups.
Woke at 3:45AM to see my Cloud active! Again!!
So I woke up again and began typing for the last 2 hours.
It has been 4 years since the sleep issue was identified with the WD Live. Granted that there has been many changes in the software including Cloud access, but the general principles of the software has not change, like the incessant need to scan and index every media file that you have.
Although, as a programmer I can understand the problems that faces the WD programming team, making it difficult to change the very nature of an "Operating System"; i.e. cron jobs running, clean up tasks in the backbround, along with jobs that scan for media files to index them so that any Cloud access, DLNA or itunes will be quick and so on...
The WD Cloud OS is comparable to "Windows" where indexing is also a daily job as well as the other insidious Window Defender that grinds away at all hours of the night hunting down malware. Probably as a WD Programmer, they will all say "What do you expect? it is an Operating System?"
However as an end user, I really don't care that it is an "Operating System", I would rather have it perform similar to a laptop, close the lid and it sleeps, open it and it functions. You do not see an "iPad" turn itself on (even for a moment) to run a job like indexing, do you?
In 2010, I became a Mac user and one of the things that I noticed is that I don't have programs that runs "willy-nilly" throughout the night to index, scan, window defend, etc. When I power down to sleep (real-sleep), my mac never wakes up to index itself in the middle of the night.
Although it is great that my WD Cloud even gets a few hours of hard drive sleep but it is no-thanks to the WD Programming team since I spent well over half a year researching the forums and making my own changes to the device in order to even get a resemblance of sleep.
I think it is time that WD gets its' act together and begin working on cleaning up linux if they insist on using an OS for their WD Cloud "Turn-key" system. It is either fixing linux so that it would actually mimic sleep or adding a hardware sleep mode to their WD products so it would be more like a lap-top product.
Why is sleep so important to me?
All my electronic products sleep when I ask them to sleep. None of them turns themselves on or at least I don't see or hear them operating behind the scenes. For example, I don't see my TV turn itself on to index tv shows, or my USB hard drive turn on un-expectedly.
In fact, because of my WD Cloud Ownership, I am now powering all my computers PC and Mac off at night. This was when I thought they might be in-advertantly accessing the WD Cloud drive at night. When it became apparent that the WD Cloud was still powering up with no computers ON, I became suspicious that the WD servers were accessing the drive, so I even pulled the internet connection to no avail.
The WD Cloud continues to turn itself on and off randomly throughout the night; hard drive clicking a few times. All the scan programs have been de-activated as well as the cron.
I hate whiners or complainers, so I said nothing and attempted to fix the problem myself; however I am disappointed that WD for the last 4 years did nothing to address this problem and they seem to continue in that direction as indicated by their firmware releases that doesn't address the scans nor the sleep.
So I know it is linux and it is difficult to isolate one problem from another.
First of all, fix the scans so that they can be toggled on/off from the menus. Without the scans, the Cloud still works, so don't make the error that turning off the media scan will turn off the cloud. Turning off the scans is the first step in allowing the device to sleep, especially that one line in monitorio that checks if there has been any major file changes and thus starting up the scans again. STOP ALL Scans. If you need thumbnails or some indexing, build the index or thumbnails on the fly when requested, not when the device is not in use. When the device is not in use DOES NOT mean that is an opportune time to run your indexes.
Add a hard drive monitor program and display the hard drive access log to the user through the menu program to let them know who, what and why the hard drive is waking up. It could be a pc program or a router, or your WD server, but at least show where the source of the hard disk wakeup is coming from.
all cron jobs should run through either a menu selected time, or indiscreetly when the device is wakened or powered up, such as log copying, deletions etc.
the main fears for ALL users is that someone else is accessing the WD device especially when you are running your scans. So your logs displayed on the menu area should include network access activitiess, what ip is coming in to access the WD cloud, what files are access?
even if you don't fix the scans, you should have logs to display on the menus that a scan was running between 2am and 4am and how many files were thumbnailed, indexed etc. Show us the log of activities instead of a black box that seems to be leaking secrets to the whole world with a public folder.
So it is 7am now and I'm heading back to bed. If possible, I would like to see a new firmware later on today that addresses these problems that have been outstanding for over 4 years.
If you need some help, call me, pay me and I'll resolve all of this within a few months.