lundi 18 novembre 2013

Pi Controlled Garden


Introduction

Here's the thing, I love fresh herbs for my salads, but have a tendency to forget to water them properly... In the summer I keep my little garden on my balcony and it does pretty well, but in the winter it must be kept indoors.

With the winter and it's shorter days coming, two T5 tubes of 28W each were installed to help these little plants. There were happy and thriving:

Original setup with a regular timer
I also wanted to water them automatically, and play with a raspberry pi this rainy weekend, so I started to gather ideas:

Project specifications

The system must: 
- Be autonomous for two weeks (I will leave for two weeks in France for vacations soon)
- Be quite simple and not cumbersome, I do not want a heck of a network and cables running in my kitchen
- Be able to oxygenate the fertilizer solution to provide dissolved oxygen to the roots of the plants
- Run on a PI for the fun of it
- The the system will run on a gallon of water + fertilizer mix controlled by a valve

Oxygenating the solution is important: Oxygen helps the roots to absorbs nutrients, it also helps stirring the solution before pouring it on the soil.

Hardware

Here is the list of the necessary hardware:
- RaspberryPi Rev2 board + SD card
- A samsung smartphone charger for the power supply
- Relay module
- Valve gravity feed 110V
- Small wiring for the board, scavenged from phone lines cables
- 110V electrical cord for the light, valve, air pump
- Transparent aquarium airline tubing + T-splitters
- Black aquarium airline tubing + T-splitters
- Aquarium air pump
- Screws, glue, tape

I used the black airline tubing for the water+fertilizer solution from the tank to the plants. This is important as we do not want any sunlight going throw the solution and algae growing in the tubes and valve... The 1 gallon tank also need to be black or stored in the dark.

Building the system

Raspberrypi and relay module

By looking at the I/O availables for the pi, I selected 3 I/Os that will be used as outputs to control the relays and soldered a cable to connect the two boards.
The selected IO as 14, 15 & 18 on the P2 connector. The same connector provides +5V and GND to power the relay board. Each relay does not consumed much and the PI power supply can take that load. Moreover all relays on the board  are driven by optocouplers, this is nice as each GPIO cannot provide enough current to directly drive a relay.


Wired pi and relay module
In order to make the link between these boards I used a 14 pins IC socket that was cutted in two and solder the wires on the two half sockets. That way the board can easily be connected and disconnected.
Splitted in two, this offers a nice and cheap connector.

Setting up the PI

The first step is to download the Raspbian OS and put it on a SD card. This step takes some time but is quite easy buy following the steps on the elinux beginner guide.

After booting up the pi you can configure the setup of the OS and install a few things. I would recommend these importants steps to configure:
- Maximize the partition to the size of the SD card (gives more room than the original image)
- Enable SSH server (allows to remotely connect to the pi)
- Change password (123456789)
- Reduce the memory shared by the GPU to 16MB (we'll not need the GPU for displaying graphics)

I also installed Apache/MySQL/PHP in order to maybe provide an webinterface to the watering system but haven't found time to code that yet.

The idea then was to use crontab to start scripts that will energize the relays for taking care of my herbs

Scripting

The best way I found to command the GPIO for a PI is a python library called RPi.GPIO. I have very little experience in Python but prefer it than bash scripts ;) This library is very simple to use.

Scripts specifications

The project will be made of 3 scripts:
- One for controlling the light
- One for controlling the air pump
- One for controlling the watering valve

All scripts will be controlled by one configuration file

Each of the scripts will write in a logfile what is beeing executed and at what time.

The scheduling will be done by crontab, that will run one or the other scripts at defined time.

I wanted to avoid a water disaster, but haven't worked on monitoring the system, I would need to read the power given to the valve. However at worst I have a gallon of water in my kitchen which is no so bad :)

Scripts themselves

Here is the code for each of the python scripts, all the files can be found on this github repo.

Basically all files starts with: importing libraries, starting a log file, reading the configuration file and initializing the GPIO of the PI. The following code is the beginning of the lightSTART.py file

import RPi.GPIO as GPIO, time, logging, sys, signal, ConfigParser, os
#setup logging class
dir = os.path.dirname(os.path.abspath(__file__))
logfile = dir + '/logs/info.log'
logging.basicConfig(filename=logfile, level=logging.INFO)
#read configuration file and retrieve light duration
Config = ConfigParser.ConfigParser()
Config.read(dir + '/config.ini')
duration = Config.getint('params','light')
#configure GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
LIGHT = 14
GPIO.setup(LIGHT, GPIO.OUT, initial=GPIO.HIGH)

The rest of the code will handle signals that can be sent to the process in case of Ctrl+C is pressed to halt the script, and the start() method that starts the light itself.

def signal_handler(signal, frame):
        msg = 'You pressed Ctrl+C! Lighting STOPPED'
        logging.info(time.asctime(time.localtime()) + ' ' + msg)
        print msg
        GPIO.output(LIGHT, GPIO.HIGH)
        sys.exit(0)
signal.signal(signal.SIGINT, signal_handler)

def start():
        #starting the light and saving the time at which it started
        start = time.time()
        GPIO.output(LIGHT, GPIO.LOW)
        msg = 'Light STARTED'
        logging.info(time.asctime(time.localtime(start)) + ' ' + msg)
        print msg

        #checking how much time has elapsed every hours
        #if time elapsed is more than 8 hours then break
        elapsed = 0
        while True:
                elapsed = (time.time() - start)
                if elapsed > duration:
                        break;
                time.sleep(1)

        #shutting the light down after 8 hours
        GPIO.output(LIGHT, GPIO.HIGH)
        msg = 'Light STOPPED after %d seconds' % elapsed
        logging.info(time.asctime(time.localtime(start)) + ' ' + msg)
        print msg
        

if __name__ == "__main__":
        start()

I chose to use methods instead of creating a flat script so I can load this as a module in other scripts if needed and call the start() method. Basically all scripts are using the same structure, with different GPIO configuration and timings.

I do not really like the while loop running for 8 hours... In that case I'd maybe better do something like a crontab task to start the light and one to stop the light. Or maybe I could do a script called every minute to check what is the current time and decide if the light should be ON or OFF, that way if the power fails and the system reboots, the light will be ON.

My PI is not connected to the network in "regular operation". I use a long cable across my appartment for debugging only. This makes the project fragile against power outages as the clock will be lagged (as long as the outage lasts) for the execution of the crontab. By default Raspbian has no RTC chip, so it tries to :
 - get the time from NTP server at boot and every 3 hours
 - get the time from the fake-hwclock module
- set the time to the fake-hwclock every hour

As the Pi will not have NTP option available, a crontab job is defined to set the fake-hwclock every minute instead of every hour. That way in the case of a power failure the system clock will be delayed only by as much time as the power outage lasts. And not by increments of one hour.

Crontab jobs

There are three crontab jobs, edit them using >sudo crontab -e.
The RPi.GPIO python library needs root access to change the state of the I/Os, moreover the root level is required to set the clock to fake-hwclock, so sudo is necessary.

* * * * * fake-hwclock save
0 6 * * * /home/pi/scripts/lightSTART.py 2>>/home/pi/scripts/logs/cron.log
0 11 * * * /home/pi/scripts/airWaterSTART.py 2>>/home/pi/scripts/logs/cron.log

Redirecting the STDERR output to a file helped me a lot debugging the execution of the scripts, now it could be taken away but I keep this configuration for a while to see how the system runs. It could still be considered a testing phase as the system is less than 24 hours old now.

Installation

For the setup I wanted minimal impact on my kitchen environment so I tried to hide everything in and under the cabinets. In the cabinets I put a 1 gallon water bottle that contains the fertilizer solution and the air pump. The water line and electricity for the pump are running though a small hole at the bottom of the cabinet:

Gallon filled up with clear water in the cabinet.
Air pump in the front. Air and water lines coming from the top of the jar.
Lots of flour for making lots of crepes !
The electronics is secured upside down under the same cabinet, and wires are organized to have a minimal impact on my view :) What I can see when I'm standing up there are only the line for the water/fertilizer and the electrical cord for the valve and the light.

Power strip tapped in from behind the microwave
Relay board (blueish) and Pi module temporarily connected to the network
The circular object on the front is a kitchen workplan light
 The valve gave me some trouble... a few leaks. I used two bronze threaded adapted from 1/16 inch pipe to 1/4 inch pipe. The transparent 1/4 inch pipes are connected to the solenoid gravity feed valve. There were taped black later on to avoid light and algae growing in the pipes and valve.

This setup was good but leaked around the valve and adapters.
The bronze adapters were leaking though the threading, so there were filled with super glue
The valve was leaking due to plastic molding imperfections that were polished off

The valve outlets were polished off, because by default there was an imperfection that let air and water leak. It's probably due to the fact that the valve was made of two plastic pieces melted together and it left and edge.
The little linear edge can be seen on the top of the outlet. This was sanded off.
Watering the plant themselves was done using the black pipe fastened using cable ties on kebab sticks:

Black pipes are bringing the fertilizer solution to the plants.

Update:

The pipes that bring the solution to the plants deliver very inequal amounts of solution, some where not outputing anything...

In order to solve that issue I decided to raise the pressure in the tubes, that way a little difference of output height will not make a big difference to the flows. So the plan was to seal the output, and leave only a tiny opening. This tiny opening will make the pressure raise in the tube and level out the amount of solution delivered per output.

Well it was late in the evening and I wanted to fix that, so how to seal the output and only leave a tiny opening:
Yep, a screw at each output: Regulates the flow as the solution
can only go though the threading to get out of the tube

Voilà!

It was a fun Sunday, I havent done such DIY things since a long time and remembers me my old time.

I'll need to adjust the watering time, any maybe will post a picture when the  plants thriving again!

References

Syntax Highlighting with Blogger Engine: http://www.craftyfella.com/2010/01/syntax-highlighting-with-blogger-engine.html

Others are linked within the page



lundi 27 mai 2013

Bénéteau 36.7: Experiencing with current flows


The issue on the boat:
There is current flowing between the mast and the keel. A little bit of current might be expected: there are sacrificial anodes on the boat, they create a galvanic cell thus a current. However our saildrive is not supposed to be connected electrically to the ground, see this article. So this current is not coming from a galvanic cell on board, it's probably a current leak from one of the wires going up inside the mast.
All the lights on the mast as well as the instruments and the radio are functioning correctly. We checked all the cables and made sure none was electrically connected to the mast. Most of them were not except the shield of the VHF antenna. This coaxial cable shield is connected to the connector, which is connected to a metallic bracket fastened with rivets at the top of the mast: Here is the electrical path, the cable of the VHF antenna.

We measure the current flowing through the keel from the lightning protection cable, this is the only electrical link to our keel. So we placed a amp meter in series with that cable:

The picture above shows a very small current flowing: 3 µA or 0.000003A which is almost nothing, we don't have to worry about a lot of corrosion here. The issue is when we plugged the shore power to the boat, that value jumped to 300-2000µA. Here some concerns can be raised about corrosion as the cord is usually plugged for very long hours.
As the only electrical path identified before is the VHF antenna shielding or ground, we disconnected the antenna: 




When the antenna is disconnected we get very low current: 0.5µA or 0.0000005A: close to nothing.
So to summarize:
  • Boat in the water, VHF antenna connected, shore power disconnected: very little current.
  • Boat in the water, VHF antenna connected, shore power connected: non negligible current.
  • Boat in the water, VHF antenna disconnected, shore power connected: close to nothing.

 So apparently two majors actors in the equation: The shore power and the VHF antenna.
We decided to carry on, keep the VHF antenna connected, let the shore power cord plugged on the boat, and trip open all the circuit breakers, one is in the lazarette, one by the nav station.

 The circuit breaker of the lazarette disconnects two of the tree wires in the cord from the electrical system on board. It disconnects the hot and neutral wires. The ground (used as a safety) stays connected. We measure again the currents and got the same results.
  • Boat in the water, VHF antenna connected, shore power disconnected: very little current.
  • Boat in the water, VHF antenna connected, shore power connected: non negligible current.
  • Boat in the water, VHF antenna disconnected, shore power connected: close to nothing.
Conclusion, we have a grounding issue with the shore. What can be tested: disconnects every power equipment on board one at a time and measure. If there is no difference in the measurements the component we disconnected is not likely to be the cause of our problems. So we started by disconnecting the battery charger:

On the picture above you can see the hot and neutral wires disconnected and taped (the tape prevent accidental shorts and sparks if you forget about it or power up the system again) You can also see on the picture above that the ground is still connected, it should be disconnected (I took the picture at a bad time).
After measurements no changes, so the charger is not likely to be the cause of our issues. We then try to disconnect the ground from the water heater. Besides the fact that we never use it, the water heater is connected to the shore power in case of the crew needs to take warm showers while staying on dock :)

The picture above shows the ground cable (green) disconnected from the water heater, et voila ! The measurements are not fluctuating anymore weather or not the shore cable is connected. I don't say we fixed all the issues, but we isolated one of the major contributors to our current flow.

As we never use the water heater and it was obviously a source of problems we chose to disconnect it completely from the power panel in the nav station. The green wires all disconnected are the grounds of the on-board equipments: Heater, charger, outlets.

Note: Be sure that nothing is connected to the outlets while making that test, this might be a source of problems too on your boat if one of the appliances is leaking current.


The the power panel the heater in completely disconnected and the poles are taped, this reduced a lot the current flowing through the keel while connected to shore power.

Conclusion:
  • We had currents flowing through the ground of the shore power, then thought the heater and somehow back to the electrical ground of the VHF and finally the keel. This electrical path is now broken open and no current can flow.
  • Our approach is maybe a little bit radical, we might test if a diode based galvanic isolator on the shore ground would solve this issue or not.
  • How is the current flowing from the heater to the ground of our VHF? There are no links between the 12V electric system and the heater, and the battery charger was disconnected... Don suggested that the water heater might have been damaged a year ago when the engine overheated. Something might have been damaged inside the water heater or corrosion might have developed and offer a path for the current to flow. The current might flow then though the engine coolant to the engine, then as the engine is connected to the 12V ground this causes an issue with the keel which was connected to the negative pole of the batteries though the VHF antenna.
  • We also plan to isolate the bracket holding the VHF antenna from the mast. There is no need for that, and it cannot hurts to do it. The good of that is that we'll break another electrical path for currents to flow and prevent further damage.

Be careful while opening all these electrical boxes and playing with shore power, this might hurt or kill you...

Please also use a meter when trying to find issues concerning galvanic corrosion on a boat. All the legends that you hear on dock, at the yacht club or in the yard are most of the time based on other sailboat wiring designs and might not apply in your case. Just use a meter and isolate the issues, this is your best bet!

BoatUS provides also a nice article on issues from shore power. Basically what we did above was trying to disconnect the shore ground from the conductive elements of the boat in the water.

Thanks Don for providing the boat and the camera!


dimanche 26 mai 2013

Bénéteau 36.7 Saildrive electrical tests

The Volvo Penta saildrive was designed to be electrically isolated from the ground of the electrical
Figure 1: Volvo Penta engine and saildrive assembly
system onboard. From the care and maintenance, Volvo states: “Volvo Penta sail drives are designed to provide the sail boat owner with many years of trouble free boating enjoyment.There are two main components to the galvanic protection system on your Volvo Penta sail drive. First off, the entire
sail drive is electrically isolated from the engine and engine grounding system. This isolation is accomplished by the use of plastic bushings, gaskets and washers in the sail drive mounting hardware. Never compromise this protection by placing any type of ship’s ground wire on the sail drive housing or mounting bolts. Don’t use wire wound hose in the water pickup system, and don’t use the sail drive as an SSB ground plane.“

Why? Because if the saildrive is grounded or connected to the electrical system, there is a risk that current is going to flow through it and damage parts of it (internal or most likely the prop). Now there are many zinc or magnesium sacrificial anodes to protect against galvanic corrosion, but this will not help if another component of the boat, i.e. the battery charger is leaking current to the ground (imposed current). The best way to avoid galvanic corrosion is to cut out paths for the electric current to flow! As it can be seen on the Figure 1 above, the green parts are the engine; the gray ones are the saildrive. By using a simple digital meter, measure the resistance between these two parts, the meter should display -1 or infinity. If not you have a problem, current is allowed to flow from the grounding though your saildrive…

What to check:

  • No electrical cable linked between the saildrive and anything else. This is the easier point to check, just open all the panels around your engine and visually check that no electrical cable is attached to your saildrive. If there is a cable then simply remove it.
  • No metallic hose for the water intake, the water intake hose should be an industrial rubber hose which does not conduct electricity. The ones with a metallic sleeve around might conduct electricity.
Figure 2: Gearbox cable end to the saildrive:
Cable that can be electrically connected to the saildrive. 
But should stay isolated from the engine ground.
  • Throttle cable should not be grounded. The original cable I've seen was secured to the gear selector bracket by a cutter pin. This method of fastening the cable to the bracket does not provide electrical isolation. As it can be seen on Figure 2. The red sleeved cable is attached to a bracket which is how gears are selected. By using a standard ohms meter, you should measure a resistance of 0 Ohms between the cable and the saildrive: The gearbox cable is electrically connected to the saildrive, thus might provide a path for electricity. This is why the other cable coming from the engine control handle: the throttle cable is designed to be electrically isolated from the engine. If the throttle cable is not isolated, you provide a path for the electricity from your engine, then though the throttle cable, through the handle, and a return to the saildrive thought the gearbox cable. We’ll see in the next point how to check for that.
Note: On Figure 2, a green/yellow grounding cable can be seen; this is to ground the gas tank gauge sensor to the ground of the system. The sensor needs a ground to operate so this is not a bad option for doing it. But again this cable should not touch the saildrive. 

Figure 3: Throttle cable end and the engine:
The black plastic outer casing holder, make sure no 
conduction is possible between the cable and the two screws, 
this is an isolating holder. 
At the end of the cable, isolating washers/sleeves make 
sure no conduction is possible between the cable 
end and the engine ground. 
  • Test that the throttle cable is isolated from the engine ground: In order to do that, use an Ohms meter again and check that there is no conductivity between the ground of the engine (or batteries ground) and the cable itself. As it can be seen on the Figure 3, the throttle cable is isolated from the engine in two ways. First the cable holder screwed to the engine is made of plastic. This prevents conductivity from the engine to the shell of the cable. The tip of the cable is isolated from the throttle bracket by two plastic washers/sleeves. Something that was wrong on the boat I’m sailing on is that the two screws where holding the cable by a metallic plate. Therefore offering a path for electricity thought the plate and the screws to the cable.

Measuring Points:

Note: We do not care about the polarity here; black/red cables can be inverted. We want to make sure that no current can flow which means that there should be an infinite resistance between the difference components.

If everything is well isolated you should not measure any resistance between the saildrive and the engine. If you measure some, check all the protective sleeves of the cables. Try to detach one by one the cable until you break the path for electricity to isolate the issue. Make sure no conductive elements (hose, screws, cables) are accidently touching the saildrive. If nothing can be found maybe the saildrive isolation gasket is damaged and should be check by a Volvo specialist.

Thanks Don for the providing the boat and the camera!

mercredi 9 janvier 2013

MyBook Live, many buyer's complains, but a GREAT product.

The research


Since the flooding, hard drive prices went up. There is a lot of choices and options for whoever wants to get a few more Bytes at their hands.
My first objective was first to have a copy of all my important files (work, pictures, videos) that I absolutely not want to loose. So what are my options:
- Add other internal hard drives, copy files once in a wile or automate it using some softwares or homemade scripts. Create a RAID drive? Ok why not...
- Get an USB external drive and copy files ones in a while, or use software, scritps..
- NAS what is that?

NAS, network attached storage. Only three words to define a pretty complex appliance. In fact these NAS Drives are made of : one or more hard drives, a little board that we could call "computer" able to manage the hard drives and provide Ethernet connection. NAS is a way to share a hard drive on the local network easily.

Alright, I think I'm either convinced or curious to see what is that. Beeing a professional software and website developer, a curious linux user, I thought that I had a pretty good idea of what a NAS exactly is what what potentially I could turn it into.

My choice went for the Western Digital MyBook Live. Why:
- It's one of the cheapest solution per GB
- The web-interface to manage the NAS looks pretty neat
- They allow the usage of SSH and a debian system is installed on the onboad computer.

This is great it's like a very small computer, that uses no power, that can be accessed thought the network, and share files. All I need :)

Reception of the order


So this is what I got out of the box: One Ethernet cable, one power adapter and THE hard drive. Needless to say that I wont look at the manual before everything is plugged... Anyways there was no manual in my WD cardboard box... The LEDs are blinking, seems to work.

When I go back to my regular desktop computer I try to find it's IP address. These devices get an IP from the router as they are looking for a DHCP server. So I log in the router administration webpage, check the DHCP allocation table and found my IP 192.168.1.19

The Deception

Once I have that I open my browser and simply enter http://192.168.1.19 to see what interface WD offers to it's customers. Well it looks nice, updates automatically, but is very buggy. Besides the fact that I disabled DHCP and use a manual configuration for connecting to the network, I'm unable to create any share, users... unable to use it as we should... That's sad and expected as many reviews are reporting, but...

Holly Grail


By searching a little bit on the web you can find that this is due to the update. They messed up something in the update process, and once you update your firmware, the system is messed up. The solution is on this post

You need to completely "flush" what serves as a firmware for that appliance and put a fresh one. I used the script available from that website but proceed a little bit differently: My "Public" share was not even visible, so I transferred the files using sftp. After it restarts, it was all magic, the web-interface worked smoothly and allowed my to configure my book :)


Time to SSH


Alright let's open the console and do a little ssh root@192.168.1.5, enter the default password "welc0me" and here we are:

 ssh root@192.168.1.5  
 root@192.168.1.5's password:  
 Linux MyBookLive 2.6.32.11-svn70860 #1 Thu May 17 13:32:51 PDT 2012 ppc  
 Disclaimer: SSH provides access to the network device and all its  
 content, only users with advanced computer networking and Linux experience  
 should enable it. Failure to understand the Linux command line interface  
 can result in rendering your network device inoperable, as well as allowing  
 unauthorized users access to your network. If you enable SSH, do not share  
 the root password with anyone you do not want to have direct access to all  
 the content on your network device.  

Installing Tor and Transmission

Now what we could turn this little machine on: A 24/7 computer to download stuff for us. This way my main computer or my laptop do not need to stay on, bother me or overheat during the night.
I use Tor for the connection to the trackers, not for the connection to the other peers. This way I can annonymize a little bit more what I'm doing on the Torrent World.
Transmission is a neat software to exchange torrent, it's very efficient, and provides a web interface.

A few commands needs to be entered in the terminal:

 apt-get update  
 apt-get install tor     
 apt-get install transmission-daemon  

Configuring Transmission

First I open the transmission-daemon configuration file:

 pico /etc/transmission-daemon/settings.json  

I seetted up as this:
 "rpc-authentication-required": true,  
 "rpc-bind-address": "0.0.0.0",  
 "rpc-enabled": true,  
 "rpc-password": "MYPASSWORD",  
 "rpc-port": 9091,  
 "rpc-username": "transmission",  
 "rpc-whitelist": "127.0.0.1",  
 "rpc-whitelist-enabled": false,  

This will provide a web-interface requiring a connection, the username is "transmission" the password is "transmission" by default, but you should change that.

I also created a "Download" folder in the public shared folder:
 cd /DataVolume/shares/Public  
 mkdir Downloads  
 chmod 775 Downloads/  
 chown nobody Downloads/  

And configured it in the transmission-daemon configuration file: 

 "download-dir": "/DataVolume/shares/Public/Downloads",

For using the TOR network to connect to the  trackers:

 "proxy": "127.0.0.1",
 "proxy-auth-enabled": false,
 "proxy-auth-password": "",
 "proxy-auth-username": "",
 "proxy-enabled": true,
 "proxy-port": 9050,
 "proxy-type": 2,


We save the configuration file and send the signup signal to transmission-daemon to reload the configuration. 

 killall -HUP transmission-daemon


We now need to add a block-list. The block-list contains a lot of malicious IP ranges that are know to belong to institutions monitoring torrent traffic. They are seeding you files and if you download it completely, they will sue you for copyright infringements.

The default version of transmission-daemon that is downloaded from the Debian packages is now version 2.03. It does not support user entered URL for the block list, so you have to manually download and decompress the list. Description of the issue can be found on this tread

 /etc/init.d transmission-daemon stop
 cd /var/lib/transmission-daemon/info/blocklists
 wget http://list.iblocklist.com/?list=bt_level1&fileformat=p2p&archiveformat=gz
 gunzip bt_level1.gz
 /etc/init.d transmission-daemon start

Now transmission will restart, compile the block-list in a bin format and use it. Type ls in the console to see if you have the .bin file along with the block-list you just decompressed.

VOILA ! 


This picture shows Transmission's web interface, an ISO of Debian that is being downloaded, and the shared drive that contains the ISO that is being downloaded.

Of course this can be done from any computer of my network as I was pretty relaxed on safety measures here. And with a few ports forwarding from my router, I can manage my downloads from anywhere as long as I have internet :) (I have a DynDns account to get a static URL on the web to my router)

And the load on that poor CPU that is inside MyBook ? I'm downloading files thought samba (because I copy all the movies to MyBook, and download a Debian ISO at the same time)


Top shows me that MyBook is not really under pressure and is doing pretty well.

Conclusion

With the MyBook live from WD, you get a lot for you bucks ! I would recommend it !

However the fact that the default firmware is not working properly would be pretty annoying for a someone without any experience in networking or linux console.