Exploring the Humax-HD Over the Network

Wednesday, November 11th, 2009

I just updated my Humax-HD Freesat box to the 1.00.23 firmware and decided to have a furtle with it. As this update is supposed to enable iPlayer (although it can’t be used until Freesat say so) I thought I’d try and see if anything funky was going on over the network to give me the opportunity to play with some security tools.

I used Nmap to scan the Humax and see if any ports were open. The scan didn’t return anything from TCP ports (so I’m assuming that they’re all closed), and returned unreachable for all but 10 UDP ports. The Humax didn’t send any kind of response to the scans on these 10 ports so Nmap considers them open|filtered. I checked the well known port list on wikipedia to see if any of them matched up.

1057/udp open|filtered unknown – No listing

5351/udp open|filtered unknown – Wikipedia shows as NAT Port Mapping Protocol (official). This is used to allow a NAT’ed device to communicate with devices outside of the private network. It looks to be used a lot in peer to peer file sharing.

16739/udp open|filtered unknown – Not listed

19935/udp open|filtered unknown – Not listed

20465/udp open|filtered unknown – Not listed

21625/udp open|filtered unknown – Not listed

22053/udp open|filtered unknown – Not listed

24606/udp open|filtered unknown – Not listed

47772/udp open|filtered unknown – Not listed

49187/udp open|filtered unknown – Not listed

I used ncat to send a few key strokes at each of these ports but got nothing back. Then again, not having a clue what could be sat behind most of them (if anything) I don’t know if I should get anything back anyway (or even if there is a service making a reply, would it reply to the same port that made the request?). A UDP service scan in Nmap also fails to get any further information.

The Humax box is connected to my home router via a powerline ethernet adaptor. As the powerline network connects into one port on the broadband router I figured that I should see traffic going between the Humax and the router from a laptop connected to another powerline adaptor using Wireshark. The scan shows that again, there’s not much going on. When the Freesat box boots up it requests an IP address using DHCP. That’s about it.

So all in all, not much info there. The only service that looks to be of interest is NAT-PMP. It makes me wonder whether or not the Humax box will try to engage in a peer to peer network when iPlayer is activated, or if the service is designed to allow the box to be contactable from outside of your home network. Who knows?

If you have any corrections, answers or suggestions then please get in touch. I’d be interested to hear your thoughts.

*UPDATE*

It looks like the BBC have kindly allowed the iPlayer beta test code to ‘leak’ out before its official release. Turn your freesat box over to BBC 1, press the red button and type 5483 to watch iPlayer…

“Email on Three” Push email using SEVEN.

Tuesday, June 30th, 2009

I’ve just installed the ‘email on three’ application onto my Nokia e71. It seems to be a rebranded version of SEVEN; a push email solution for various mobile devices including Symbian based mobile phones.

So far it seems to be pretty good, and although there are a few reports on the ‘tinterweb indicating poor battery life, later comments suggest that this has got better with recent updates to the software.

All of which leads me to the question of whether or not ‘email on three’ uses SMS messages to trigger email synchronisation or whether it keeps an data connection open back to three’s NOC?

Anyone happen to know?

Using the Wiimote & Wii Balance Board in Ubuntu

Sunday, June 28th, 2009

Matt Cutts, head of webspam at Google, has written a couple of very interesting articles describing how to hook up Wii peripherals to an Ubuntu Pc over bluetooth.

The first article describes how to hook Ubuntu up to a Wiimote, followed by another showing how to build a working weight sensor and real time display with Ubuntu, a Wii Balance Board and a couple of hundred lines of Python.

Could this herald a new era of Wii type games on Ubuntu?

I hope so!

Making ‘ondemand’ CPU frequency scaling more responsive

Tuesday, May 12th, 2009

For a while now I’ve found that ondemand CPU frequency scaling (enabled by default) makes my laptop seem sluggish under Ubuntu.

Basically the CPU speed doesn’t seem to increase quickly enough to keep up with the sudden brief bursts of demand caused when using Gmail, or playing Youtube videos for instance. Applying information found on this website seems to give a more responsive system.

echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/ignore_nice_load
echo 40 > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/up_threshold

This changes the default behaviour of the ondemand governor to force it to take into account background processes, and tells it to increase CPU speed when your CPU usage exceeds 40% rather than 95% (as is default).

Because /sys/ is a virtual file system created each time you boot your system, any changes you make are lost after a restart. Add the lines above to /etc/rc.local (read here for more on rc.local) to have your chosen settings applied each time you start Ubuntu.

Have fun.

Getting your eGalax touchscreen monitor working on Ubuntu Hardy

Wednesday, November 12th, 2008

So, you’ve got a touchscreen monitor and you’re wondering why it doesn’t work properly? Lets see if we can get it up and running!

After connecting the touchscreen monitor’s USB cable to your PC and restarting, check out the USB devices on your system by running the command ‘lsusb’. If you see a line with the words:

D-WAV Scientific Co., Ltd eGalax TouchScreen

then we’re in business. I know how to set that one up!

Give the screen a sneaky tap with your finger. Marvel at how the computer seems to recognise a mouse click event (you may notice it highlights some text, or scares a small child from your PC case), but doesn’t yet doesn’t recognise mouse movement events.

Go on over to http://210.64.17.162/web20/TouchKitDriver/linuxDriver.htm and select the file called ‘Kernel 2.6.x with xorg 1.4.0 only’. At the time of writing the direct link to this file is here. It may have moved by the time you read this.

Anyway. Extract the TouchKit-2.03.tar.gz file. It contains a folder with 2 files and a tar archive in it. Good times.

At the command line move to the TouchKit folder you just extracted and run the following command:

sudo sh setup.sh

Wait a sec and be rewarded with the following menu. I’ve left in the choices I made.

(*) Linux driver installer for TouchKit controller

(I) Begin to setup TouchKit Linux driver.
(I) Checking user permission: root, you are the supervisor.
(I) Extract TouchKit driver package to /usr/local/TouchKit_x14.
(I) Create TouchKit utility shortcut in /usr/bin.
(I) Copy X module egalax_drv.so to /usr/lib/xorg/modules/input.

(Q) Which interface controller do you use?
(I) [1] RS232 [2] PS/2 [3] USB : (I) Please choose [1], [2] or [3]
(A) 3
(I) Using interface: USB
(I) Found a HID compliant touch controller.
(I) Found kernel module usbtouchscreen.
(I) It is highly recommended that add it into blacklist.
(Q) Do you want to add it into blacklist? (y/n) y
(I) Add kernel module usbtouchscreen into /etc/modprobe.d/blacklist

(I) Found X configuration file xorg.conf in /etc/X11.
(I) Add touch configuration into /etc/X11/xorg.conf.

(I) Please reboot the system for some changes to take effect.

Reboot your system

When the system comes back up you can calibrate and adjust your touchscreen by running sudo /usr/bin/TouchKit

Jobs a gud’un.

— Update

You may find that clicking on the desktop leaves irritating little selection box artifacts that wont go away. You can sort this out by changing the xorg.conf configuration that the TouchKit application generates.

Change SendCoreEvents to CorePointer (I edited out the default config at the top there). Problem solved.

Section “ServerLayout”
### InputDevice “EETI” “SendCoreEvents”
InputDevice “EETI” “CorePointer”
Identifier “Default Layout”
Screen “Default Screen”

Unfortunately though you may find that your mouse no longer works. Swings and roundabouts!

Modifying the Xbox . Installing a Bigger Hard Drive

Saturday, February 2nd, 2008

Again, the standard disclaimer. This like any other type of mod can jigger your Xbox!

This time round though the risk is slightly less. If you make a mistake on your new hard drive it’s not the end of the world. You should be able to replace the original drive again as long as you are careful with it!

Oooh, mental note – you might want to revert back to the EvolutionX dash for your backup, rather than the XBMC. It’s not obligatory, it just may give you a bit more backup in case anything goes wrong.

In this the final stage of my Xbox modification project, I’m going to cover removing the existing drive to install a larger (320 GB in my case) hard disk.

To accomplish this we’re going to need to take the backups recovered in the last tutorial and use them to image the larger drive. Once prepared, the existing drive can be removed and the larger one inserted.

First of all, ensure that you have backups of the following.

C: Drive
E: Drive
Eeprom (Specifically the eeprom.bin file)

Unpack the xboxhdm archive referred to in the last tutorial onto your Windows XP desktop. Take the C and E folders and use them to replace the existing C and E folders in the xboxhdm\linux folder. Take the eeprom.bin file and put it into the xboxhdm\linux\eeprom folder.

In the root of the xboxhdm folder, you should find a batch file named make-iso-win. Running it creates an .iso image which you need to burn using your favourite CD burning software. This creates a custom Linux Live CD which will allow you to reimage your larger hard disk drive.

Take any old PC and unplug the IDE cables from the mainboard. Plug the cable into the IDE socket attaching the CDROM as the secondary device and your large hard disk drive as the primary device. In my experience, cable selection often goes wrong; so you might have to fiddle with jumper settings. Check the BIOS to ensure that the devices are set up correctly as the Live CD won’t work if they aren’t.

OK – that out of the way you can now boot from your newly created Linux CD.

1) Select option 1
2) Type xboxhd
3) Choose option 1 again (Build a new Xbox Hard Drive from Scratch) If you get errors at this stage check you setup the CDROM and HDD properly.
4) At this stage the installer should ask you whether or not you want the files from C and E transfering to the drive. You do!
5) When asked if you want to create an F drive, you do too.

Now you have nearly finished creating your new larger hard disk drive.

Reboot the PC, and start from the Linux Live CD again. Type ‘3′ to enter the locking/unlocking utility screen and type ‘lockhd -a’ when presented with the prompt. The hard disk drive will be locked using the code located in the eeprom.bin file you saved on the Live CD. It is now prepared for insertion to the Xbox.

Now simply remove the existing drive and replace with your new larger drive and start up the Xbox. It should now boot up nicely!

If you have selected a very large hard disk, you may not be able to see all of it. This seems to be due to some of the limitations of xboxhdm so you will need to grab a copy of the UnleashX dashboard to reformat the final partitions of the hard disk.

Once you get hold of a copy, FTP it to the Apps folder on your XBox. You can then select it as an application from the currently installed dash – and once you have it running – you’ll find options for reformatting partitions on the hard drive.

Finally, to wind the project up, I thought I’d treat you with some screenshots from the XBox Media Centre (Click to enlarge).

Xbox Media Centre

Xbox Media Centre

Xbox Media Centre

Modifying the Xbox . Installing a Softmod and Xbox Media Centre

Thursday, January 31st, 2008

First of all the sombre warning. Don’t rush into this, read around. Use this article as a basic guide and check around on the ‘net for more info to pad it out. You can totally knacker your Xbox by softmodding it if you’re not careful. This is my experience of having a bash with one Xbox. YMMV and you take full responsibility for all of this!

To save headaches later, I’ll give you a list of everything you need now. The nature of some of this software is a bit dubious, and I’ll only link to anything I know to be legal. Don’t worry though, there is enough info here for you to figure out what you need…

Psst – I’ve also included the stuff you’ll need to install a bigger hard drive in the next tutorial. These items have an asterisk * next to them. If you simply want to softmod your Xbox then you can ignore them.

1) USB to Xbox cable
2) Torx 10 & Torx 20 screwdrivers *
3) Blank CDs and a CD rewriter *
4) PC with Windows XP (Just to set it up, Linux is fine for the day to day running)
5) Large hard disk drive *
6) Action Replay for Xbox software (Search the net)
7) Microsoft USB View
8) SID5 Softmod Installer
9) UnleashX (If you want to use a drive bigger than 137 GB) *
10) xboxhdm 1.9 *
11) Compiled copy of the Xbox Media Centre (XBMC)
12) Original copy of the old ‘Splinter Cell’ Xbox game

Phew, OK – Lets get started!

Install the Action Reply software onto your Windows XP computer but don’t start it yet.

Turn on the Xbox and insert your homebuilt Xbox USB cable with the USB memory stick attached into the Xbox. Navigate to memory settings on the dashboard. The Xbox should display a message indicating that it has formatted your memory card.

Remove the USB stick from the Xbox USB cable and insert it into your Windows XP computer.

Run the Microsoft USB View executable. Locate the USB stick that you just inserted and locate plug in usb stick and locate the idVendor and idProduct settings.

Now navigate to the folder in which your Action replay installed and locate the drivers subfolder. In it you should find a file called xbreader.inf

Check out the format of the file. You will notice a section called Devices (just like the example below). You need to ‘con’ Action Replay into believing that your USB stick is an Xbox memory card device, and you’re going to do this by inserting the idVendor and idProduct settings you discovered earlier into this file.

Insert the last four digits of the idVendor (VID) and idProduct (PID) codes into file as show below. In this example my VID is 07AB and my PID FCF6 (Although yours will more than likely be different)

[_Devices]
%S_DeviceDesc1%=_Install1, USB\VID_07AB&PID_FCF6

OK, so if everything worked out OK you should be able to open up the Action Replay software and see your USB stick as an Xbox memory card. If it didn’t work, check that you followed the previous steps correctly. If it still won’t work you may have found a USB stick that doesn’t like being treated like this. Try another one.

You now need to take two files from the softmod installer kit you should have found earlier. These are SID5.Installer & SID5.Loader.SplinterCell.PAL. Copy them to your USB stick using the Action Replay installer.

Remove the USB stick from the computer and reinsert it into the XBox USB cable which is should still be connected to your Xbox.

Behold! You have now reached the step of reckoning!

To make your life easier, it’s suggested that you use the latest version of the Xbox dashboard. My fingers hurt, so I’m not going to tell you exactly how to do that (it’s covered on a thousand sites on the ‘net) but make sure you have version 1.00.5960.01 installed. If you don’t insert a game like Halo 2 and it should update it for you.

If you’re happy with how everything is going, then now is the time to copy the specially crafted files from your USB stick to the Xbox hard disk drive. You can do this in the Xbox dashboard.

Now start the Splinter Cell game selecting the save game called LINUX. Select a checkpoint.

Your Xbox will now restart. Don’t worry if the screen goes black. It may take 15 seconds or so for it to do anything. If all goes well, you should see the softmod start screen. Hurrah!

Before you do anything else backup your C drive, Eeeprom and MS from the backup menu. Now set the network settings and FTP the whole backup file to your PC where it’s snug and safe. If you screw your Xbox up now, you have much more chance of recovering it if you have these files.

Finally you can install the softmod. If I remember correctly I chose hacked dash/softmod dash option with an EvolutionX dashboard. You should have received a PDF as part of your softmod package so check out the description of what each option does to ensure you get what you want.

When the installer has finished, you can restart your Xbox. It should now start up to the EvolutionX or UnleashX dashboard (depending on your choice).

To get the Xbox Media Centre application working, simply upload it to E/Apps and restart the Xbox. Now when you navigate to the Applications menu on the dashboard it should start up the Media Centre.

Once you have established that XBMC is working correctly, changing the configuration of a few files will make it the default dash. You should find a _tools folder inside the XBMC distribution with a couple of files inside it. Locate the .xbe file which starts your current dashboard. Mine is E/evoxdash.xbe. Rename one .xbe file in the _tools folder to evoxdash.xbe and the config file to evoxdash.cfg. Edit evoxdash.cfg so that it contains one line containing the location of the XBMC dash. For instance:

E:\Apps\XBMC\default.xbe

Rename the original evoxdash.xbe file (the one on the Xbox at E:\ ) to evoxdash.xbe.old, and upload your new evoxdash.xbe and evoxdash.cfg files in it’s place.

You should now be able to reboot and the XBMC app should boot as you dashboard. Don’t panic if something goes wrong. Simply turn the Xbox off, and turn it back on again by pressing the CD Eject button as opposed to the power button. This will get you back into the original softmod dash where you can revert any changes you have made via the built in FTP server.

Right then. I’m knackered now, so can’t be bothered to write the ‘how to stuff in a massive hard disk drive’ article. I’ll write it up later in a separate post so until then – have fun – and remember, if you bugger this up it wasn’t my fault!

Modifying the Xbox . Making a USB Cable

Saturday, January 26th, 2008

I’m thinking of turning my Xbox into a media centre, it isn’t used much any more so it might as well become useful (or die trying).

I don’t have a mod chip, I don’t want to take the Xbox to bits (and I’m too tight to pay someone else to do it) so my remaining option is to ’soft mod’ it.

Let the games begin…

Building a USB Cable for the Xbox

First off, we need to copy some files from a PC onto a USB stick and then transfer them to the Xbox. To do this we need to make a cable capable of attaching standard USB devices to Microsoft’s proprietary version of the USB interface.

Assemble the following items:

1) Second hand Xbox controller (£4.99 – Gamestation)
2) A copy of Splinter Cell (we’ll need that later) (99p – Gamestation)
3) USB extension cable (A couple of quid)
4) Cornish Pasty (75p – Cooplands Bakers)

Start eating the pasty.

xbox usb cable step 1

Now take a pair of scissors and cut the Xbox controller cable at a point close to the controller unit.

xbox usb cable step 2

While continuing to eat the pasty, cut the USB extension cable. Bear in mind that you should keep the total length of your final cable to less than 5 metres (probably less than 3 given my dodgy soldering skills).

xbox usb cable step 3

Finish the pasty.

xbox usb cable step 4

After stripping the wires back, note the configuration. We don’t need the yellow wire, the straggly bits of tin foil or wire thread inside the cables so we can cut these back. Fortunately joining the cables together is quite simple. Connect black to black, green to green, white to white and red to red.

xbox usb cable step 5

With a dab of solder carefully link the cables together. Do one at a time and take your time. If like me you’re a soldering newbie, check out the advice here. It’s worth following.

xbox usb cable step 6

Now marvel at my rubbish soldering! Note the yellow wire left over. Chop it off and ensure that you trim the silver foil and mesh back ( you don’t want them connecting together, it may cause a short).

xbox usb cable step 7

Finally, get some insulating tape and carefully insulate each wire from its neighbour, finishing up by covering the whole lot in a protective wad of tape.

xbox usb cable step 8

And that’s that. You now have an Xbox USB cable. It can be used to attach a USB Keyboard and mouse or storage device to the Xbox via the controller port. If you need to attach more than one USB component to your Xbox I’m led to believe that a USB hub would work (which would save you the hassle of making another cable of course!).

I’ll touch upon installing the softmod in another post. I’m not going to go into great detail (hey, you’ve got to have some fun finding stuff out) if nothing else other than some of it seems ‘quasi legal’ to me. Keep your eyes peeled if you’re interested though and feel free to drop me an email or a comment if you want any help.