Adventures in home networking

Wires

We’ve been living in our house for approaching two years, and in all of that time we’ve been reliant on Wi-Fi for our home networking. Our phone line enters the house in a spare bedroom so that’s where our ADSL modem is (a BT Home Hub 4, although we’re no longer with BT). This isn’t too bad from a Wi-Fi signal perspective, as it’s located close to the middle of the house, but we still have some signal issues in the kitchen which is the furthest room.

For this reason, we have a Netgear Wi-Fi range extender which ensures an adequate signal in those parts of the house. Combined, the whole of the house is covered.

Limitations of Wi-Fi

The problem is that we have quite a lot of devices all using the Wi-Fi connection. There’s my Mac, Chirstine’s laptop, two smartphones, two tablets, a Roku, a Chromecast, a Blu-Ray player, our Nest thermostat and a Kindle, plus any devices that visitors bring. The Roku and Chromecast in particular are used for streaming video which requires a good connection, and I upload photos from my Mac every now and again.

Most of the equipment we have supports the IEEE 802.11n standard and so it’s reasonably quick, but some devices use the older 802.11g standard and not all are compatible with both 2.4 and 5 GHz wireless bands. Wi-Fi also has higher latency than wired solutions. And I have a Raspberry Pi and a Freesat receiver that do not support Wi-Fi at all. The Raspberry Pi currently gets a connection from an Ethernet cable linked to the Netgear extender, but the Freesat box has been isolated from the internet.

It would be great if everything supported the new 802.11ac standard. But this would require us to replace all of our devices and so isn’t likely to happen soon.

Laying Ethernet cable

The optimum home networking solution would be to lay Ethernet cable across the house, with ports in each room. That would ensure at least Gigabit connection speeds everywhere, with almost no latency.

We had most of the downstairs rewired before we moved in a couple of years ago and, with hindsight, this would have been an ideal time to install network sockets. Sadly, we didn’t, and trying to install sockets now would be very disruptive. I’d rather not have cables trailing around, or even fixed to walls, seeing as our toddler will inevitably want to play with them. Whilst I could probably do this myself, I’d rather not have to cut and crimp network cables.

Power line networking

Which leaves power line networking, also known as Homeplug. This uses your household electric circuits to carry a network connection, with adaptors that plug into your existing electrical sockets.

I was a little hesitant to try this, as our wiring is of variable quality. Obviously the downstairs wiring is good, having only been installed two years ago. But upstairs, some of the wiring is much, much older; in some cases, dating back to the 1950s. I was also worried about whether the signal would pass through our fusebox (which is thankfully quite new), as the upstairs and downstairs are on separate electrical rings.

I decided to take a punt, and ordered some well-reviewed Homeplug networking adaptors from Amazon – I’ll review them later on. At £80 for four, I felt this would be cheaper and less disruptive than installing Ethernet cable. And, so far, so good. I’m using three of the four adaptors; one of them connects in turn to an old Ethernet switch that I had, to provide connection to our Blu-Ray player, Roku and Freesat box.

My worries about the wiring seemed to be unfounded – we’re getting good speeds and much lower latency than on Wi-Fi. In particular, I can upload photos from my Mac much more quickly now than I ever could on just a wireless connection. I’m glad to have a better connection without having to tear the house apart, or replace all of my devices.

Printer sharing with VirtualBox on a Mac

This blog post will probably be only be useful to a small niche. If you have a Mac, with a printer, and run Windows in VirtualBox, here’s what you need to do to get it to work.

Step 1: Make sure your printer is shared on the network

On your Mac, open System Preferences, choose Print & Scan, and then select your device on the list on the left. Tick ‘Share this printer on the network’.

Step 2: Check network settings for your virtual machine

In the VirtualBox manager, open your Windows virtual machine’s settings, and under Network, ensure you’re using ‘Bridged Adaptor’ rather than ‘NAT’. This will make your life much, much easier later on.

Step 3: Install and set up your printer using Bonjour

Bonjour ships on all Macs, but not on Windows, which is a shame because it makes setting up network connections much easier. Thankfully, Apple offers a cut-down version for Windows computers, so download Bonjour Print Services for Windows, and install it. This will add a ‘Bonjour Printer Wizard’ icon to your desktop.

Run the Bonjour Printer Wizard. If you’ve done the first two steps correctly, your printer should be listed. Click Next, and, if you’re lucky, Bonjour will install the correct driver and add the printer to Windows for you. Sorted. If not, then…

Step 4: Install the printer driver in Windows

Sometimes Bonjour won’t be able to identify which printer driver you need and will ask you to select it. Again, if you’re lucky, your printer will be one of those that Windows ships with, but if not, you may reach an impasse here. Some people have had luck with using a driver that is similar to their printer, but this doesn’t always work.

Instead, we’ll connect the printer directly to Windows to convince it to install the driver that way. VirtualBox lets you bridge any USB device which is plugged into your Mac, so that the virtual machine can see it. Turn your printer on, and then whilst Windows is running, click on the Devices menu in VirtualBox, select USB devices, and then choose your printer. Windows should detect that the printer is now ‘plugged in’, and so it will install the necessary drivers. Complete the installation, disconnect your printer using VirtualBox and then shut down both your virtual machine, and your Mac, to ensure that your printer is correctly picked up by your Mac on the next boot.

Start your Mac again, and then open Windows in VirtualBox, and try to run the Bonjour Printer Wizard again. Hopefully, this time you’ll be able to select your printer driver from the lists when presented (annoyingly it’s not searchable).

This still didn’t work for my printer, so I had to do one final trick. I clicked ‘Have Disk’, and then browsed to the c:\Windows\System32\DriverStore\FileRepository folder, then sorted the sub-folders by date. My printer is by HP, and one of the newly-created gobbledegook folders had ‘HP’ in the title which turned out to be my printer. I selected this, and was finally able to get the printer working, with the above test page as proof.

Why not just connect the printer directly?

In step 4, I mentioned you can simply connect your printer directly to the virtual machine, thus avoiding the dilly-dallying around with Bonjour. This works, but it’s flaky; once you’ve connected your printer to Windows, you may need to reboot your Mac before any Mac applications can print to it. Whilst setting up Bonjour is more effort initially, once it’s done, you should find it easier to work with.

If anyone’s interested, I went through all of this because I wanted to print out a coupon for a free one litre carton of grape juice and couldn’t get the Coupon Printer to work correctly on my Mac.