Archive for the 'Technology' Category

How to extend the range of your home WiFi network

There are several approaches for increasing the range of your home’s WiFi network. Two basic options are:

  1. use a Wireless Access Point to add additional wireless coverage to your network
  2. use a Wireless Range Extender to increase the coverage of your WiFi

They achieve largely the same result, but via two very different methods, and both have their pros and cons.

First up, you need to understand the difference between a Wireless Range Extender and a Wireless Access Point.

A Wireless Access Point is simply a device which allows your devices to connect via WiFi to your network. Your internet router probably has WiFi capabilities, thus it already acts as a Wireless Access Point, connecting your WiFi devices to the network and then to the internet.

Typical Home Network with Wireless Router

Rather than connecting to your home network via the router’s Wireless Access Point, it is possible to move that access point to a different location in the house by connecting a long ethernet network cable to your router, running it to another room, and then connecting a dedicated Wireless Access Point device to the other end of the cable.

Creating a separate WiFi cloud using a Wireless Access Point connected to your router via an ethernet cable

This then creates a second separate WiFi cloud for devices to connect to. Of course, this requires you to either have existing cable installed in the house, or to be able to lay new cable runs through the roof cavity or perhaps under the floor.

If cabling is a problem, an alternative might be to use a paid or Ethernet over Power (EoP) adaptors to utilise your home’s existing power cabling as part of your network. EoP works by having a special power plug adaptor plugged into a power point near your router and connected to it via an ethernet cable. You then have a second of these adaptors in another room also plugged into a power point. The second adaptor is then connected to your Wireless Access Point device via a network cable.

Moving the Wireless Access Point to a new location, connected to the router via Ethernet over Power adaptors rather than a long ethernet cable run

The effectiveness of these adaptors depends on a lot of factors, including the quality of your power cabling, the distance between the adaptors, the amount of interference on the electrical circuits, the number of electrical devices connected to the power and so on. It also requires that the power points used in each room be on the same physical power circuit. Sometimes homes are divided into multiple power circuits, each separately connected to the main power switchboard. In these cases, if the two power points you wish to use are on separate circuits, the EoP adaptors might not work at all.

This solution using Ethernet over Power and a separate Wireless Access Point is what I currently use in my house to create a second WiFi cloud for me to access the network and internet. I use a pair of NetComm NP210 Ethernet over Power adaptors to extend my “physical” network to an old Billion 7401VGP R3 router which is configured to act purely as a Wireless Access Point rather than a router.

The other alternative to using Wireless Access Points is to simply attempt to extend the coverage of your existing WiFi network by using a Wireless Range Extender.

Extenders are simply a form of “repeater” in that they listen for WiFi signals and then just repeat what they find to whomever is listening.

Extending the reach of your WiFi network using a Wireless Range Extender

Wireless Range Extenders are generally much easier to set up than a separate Wireless Access Point, since there is no need to run additional ethernet cabling or rely on solutions such as Ethernet over Power to make it work.

The main downside with range extenders is that the extender itself must still be within range of the existing WiFi network (ie your router). It must be able to see the wireless signals coming from your router’s wireless access point so that it can then “repeat” them out over the range it covers itself.

Wireless Range Extender must be within range of the main Wireless Access Point (router)

This potentially limits the usefulness of a range extender in some situations where the desired range is too far for the combined router plus extender networks to reach.

Transformer

One of the challenges we face with our upcoming trip to Colombia was how to keep a lively 3.5 year old entertained on the long flights, and indeed, during the long wait while we are over there.

It’s not a trivial matter to just “walk around to a nearby playground” in Colombia – although I suspect that we will become regular guests at the nearby Ventolini cafe who do fantastic icecream and milkshakes!

Mr 3yo doesn’t watch much TV, but he loves the Spanish cartoon, Pocoyo (although he prefers to watch the English language version these days). While I will be taking my laptop with, I will be needing to use it for work and can’t just set it up for him to watch his favourite shows. The laptop can also be a bit awkward to use in economy class on a flight, so I went looking for an alternative solution.

ASUS Transformer Prime Tablet + Keyboard Dock

After much reading and research, I decided to buy the ASUS Transformer Prime – a 10.1″ tablet computer (running Android OS) that comes with a keyboard dock to “transform” it into something more like a NetBook. The power and expandability of this machine had received good reviews, so I thought it might work well as a media consumption device, plus a spare laptop so that Leanne could check emails, Facebook, etc while not being used by Mr 3yo!

My vision is that if he gets bored with the in-flight entertainment or just wants something familiar, I can pull out the Transformer (which Leanne has already dubbed Optimus, which I’m sure is what ASUS marketing intended with the naming, much to Hasbro’s horror!), and let him watch some of his favourite Pocoyo episodes. I also have downloaded some educational games that I will try letting him play with. I’m hoping it will eventually become a great learning tool for him.

How to delete a Windows volume mount point for an invalid drive

When I rebuilt my server earlier this year to run Windows 7 (rather than Windows Home Server), I decided to use Windows mount points to expand the storage rather than using separate drive letters or something like RAID to span disks.

The structure I use is similar to this:

C:\
  - Backup
    - PCBackups
      - T510
      - T60
      - Server
    - Photos
    - Video
- Data
    - Photos
    - Video

Each bold entry is a mount point – an empty directory on my C: drive to which I “mount” an external drive (using Windows Disk Management). So every bold entry above corresponds to a separate hard drive (indeed, it could relate to a specific partition on a drive with multiple partitions). Yes, I have a lot of hard drives in my server.

This means that, rather than accessing an additional drive in my server using a new drive letter, I can instead access it through a path such as C:\Data\Photos.

This gives incredible flexibility to add and remove drives – since you can easily change mount points, or use a new drive at a mount point if you run out of space. Any empty folder can be used as a mount point.

An example of this flexibility is from my PCBackups folder, where I store backup archives from my various laptops and computers. I created the C:\Backup\PCBackups folder on my system drive, then mounted a large hard drive at this point to give me plenty of space to store my backups. However, over time I eventually filled this drive and needed to expand the capacity. My laptop backups were taking the most space, so I renamed my laptop backup directory temporarily (C:\Backup\PCBackups\_T510), created a new empty folder (C:\Backup\PCBackups\T510) and then mounted another new drive at this point, greatly increasing the capacity of my PCBackups folder. I moved all the old T510 backups into the new folder, which moved them to the new drive, also freeing up space on the existing drive for other backups at the same time.

One of the nice things about this structure is that Windows remembers the mount points, so if you remove a drive temporarily – it will automatically remount the drive when it is reconnected.

The downside of this is that if your drive dies, or you remove it and use it else-where, the folder where the drive was mounted is not available for mounting of a new drive because Windows is still looking for the old drive to mount there.

Unfortunately, Windows Disk Management doesn’t give you any way of dealing with this – I had a drive die, but could not mount a replacement drive in its place because Windows was reserving that mount point for the old drive. I couldn’t connect the old drive to remove the mount point, because Windows no longer recognised the dead drive.

A bit of Googling found a simple solution – there is a command line tool (at least in Windows 7 – not sure about earlier versions), called “mountvol”, which allows you to manage volume mount points.

Using a command prompt running as Administrator (Start > All Programs > Accessories > right-click on Command Prompt and select “Run as administrator”), I was able to use the “/d” switch to remove a volume mount point from the folder where the dead drive was previously mounted, and then re-create the mount point for the replacement drive using Windows Disk Management. Easy as.

There are instructions on how to use Mountvol on the Microsoft TechNet site.

How to configure PEAR for Zend Server Community Edition on Windows 7

I decided to try running Zend Server CE (PHP v5.3) for my local development environment on my Windows 7 (64-bit) machine.

After discovering that I needed to explicitly choose to install MySQL and phpMyAdmin (simply fixed by running the installer again and modifying the installation), I found that the PEAR libraries some of my existing code relied on, was missing.

After a bit of research, I learned that I needed to run the PEAR installer:

C:\Program Files (x86)\Zend\ZendServer\bin\go-pear.bat

… however, this resulted in some very confusing error messages:

phar "C:\Program Files (x86)\Zend\ZendServer\bin\PEAR\go-pear.phar" does not have a signature
PHP Warning:  require_once(phar://go-pear.phar/index.php): failed to open stream: phar error: 
invalid url or non-existent phar "phar://go-pear.phar/index.php" in 
C:\Program Files (x86)\Zend\ZendServer\bin\PEAR\go-pear.phar on line 1236

After a bit more Googling, I finally came across a suggestion on the PEAR blog: PHP 5.3 Windows and PEAR (go-pear.phar) | PEAR Blog

I ran the following command from the PEAR directory, which worked:

C:\Program Files (x86)\Zend\ZendServer\bin\PEAR>php -d phar.require_hash=0 go-pear.phar

… all that was then required was to follow the instructions (I needed to enter the path to the CLI php.exe, which is C:\Program Files (x86)\Zend\ZendServer\bin), and it worked.

 

How to convert scheduled tasks from Windows XP to Windows 7

When I decommissioned my Windows Home Server recently, I decided to replace it with Windows 7. However, I had over 20 scheduled tasks running on the WHS box to do things like back up my websites and backup files on the server and such.

I wanted to recreate these scheduled tasks on the new Windows 7 install, but discovered that Microsoft had changed the format for scheduled tasks in Win7 and provided no mechanism for importing the old .job files from Windows XP / Windows 2003. Windows 7 now uses XML files for import and exporting task definitions – but no conversion tool from the old .job format.

I really didn’t want to be spending the time manually recreating all of these tasks, but a bit of Google research found a possible solution involving remote invocation of the schtasks command line tool. Here’s what I did.

The first issue was that I had already decommissioned the WHS install, although I did save the C & D partitions on the system drive so I could have theoretically booted it up again. However, I had already changed some of the machine’s hardware (new MoBo, new SATA controller, etc), so that was always going to be a last resort and fraught with potential boot-up issues.

Fortunately I still had an old laptop running Windows XP, so I was able to copy the .job files I had backed up from the WHS box over to the XP machine and have them recognised by Task Scheduler there.

Next, I ran the following command on my Windows 7 laptop from an “elevated” command prompt (Start -> All Programs -> Accessories -> right mouse click on “Command Prompt” and select “Run as administrator”):

schtasks /Query /S remote_computer_name /U remote_username /P remote_password /XML > output_file.xml

… where the “remote_computer_name” was the name of my Windows XP machine, and “remote_username” and “remote_password” were for a valid administration user on that machine.

This command tells the remote machine to dump a list of all parameters for all scheduled tasks and send it to my console and the /XML flag tells the Windows 7 box to convert that information to the new XML format, and then I piped the output to a new file, “output_file.xml”.

The output was a concatenated list of all XML task data (which itself is not a valid file to import into Windows 7 task scheduler), so I used a text editor to copy and paste the individual tasks that I wanted to recreate and then used the “import” feature in Windows 7 task scheduler to import the new task. I believe there is a flag you can set to have the combined output XML for all the tasks  be valid to import directly, but I didn’t try that, preferring to manually select which of the tasks to import and doing them one at a time so I could then check the settings each time.

There are a plethora of new features and settings in Windows 7 task scheduler, so it does pay to verify and tweak any settings after importing them. I really am quite impressed with the new functionality in Windows 7 task scheduler!