Archive for the 'Tech' Category

Samsung Series 9 NP900X3C Linux Review: Beautiful

Purchased a Samsung Series 9 13.3 on the 15th August (as there was a cashback offer for purchases after this date, and I’m a student). It arrived two days later, with scratches on the lid. Fortunately, Amazon sent me a replacement and I got that within about 5 days.

Unwrapping it shocks the senses. So thin, light and yet powerful. The first thing I did was boot up and enter the BIOS. When Samsung say a 9 hour battery life, they rely on a 100% charge (naturally), but the BIOS recommends a Extended Life setting, which caps charging at 80%.

Booted into Windows 7, not bad speeds for a Sandisk U100 (sigh, that’s so getting ripped out) and every piece of bloatware under the sun. Within 10 minutes I PXE booted and purged the Windows 7 installation and recovery partitions with Linux. I wanted Wheezy, but it’s not released yet, and Ubuntu Precise is supposed to be a power saving beast, so I whacked on a minimal version of Ubuntu (netboot install).

I installed the very basics of packages: gdm gnome-shell dropbear.

GDM’s autologin feature is broken. Which is a bit of a pain. As for lightdm, that has issues of its own, so I put up with GDM’s lack of autologin. Not wanting Unity, or GNOME3, I stuck with GNOME Classic, which does the job.

First thing I noticed was the CPU governor changed to “ondemand” frequently. This annoyed me a little (I prefer conservative). I found the /etc/init.d/ondemand script and was able to modify it — it runs in the background and after 60 seconds kicks the governor into ondemand by default. I also adjusted the scaling frequencies. Powertop initially was not looking great, but by writing my own pm-utils scripts this improved. With good tunables, I wrote some scripts to mount CIFS, turn off KB backlight, adjust screen backlight and turn off the Bluetooth radio by default. I’m now able to get 7 hours of wireless browsing with 30% brightness and my 80% charge.

I wanted a Linux laptop, as it sure beats virtualising, and I doubted if this would make the cut. My worries were the 4GB RAM. With a Windows mindset, it’s a bit weak for a developer, but on Linux, I can have make -j4 on the kernel, Firefox open and only be consuming 700MB RAM. It’s going to be very hard to get through all this memory, and I’m glad I bought the 13″ rather than the 15″ model.

The only gripe with running it in Linux is a kernel bug where ACPI state changes are not detected properly. For example, if I put my laptop on charge, it takes a reboot before Linux will detect the battery is on charge. Likewise with removal of power. It’s a minor issue though, that doesn’t present in Windows mind, but I’m hopeful a future BIOS update will resolve this problem.

With the samsung-laptop kernel module, most FN hotkeys work, and those that don’t can be fixed quite easily. With newer packages, and by the time we hit Quantal, this laptop will likely be a perfect machine for Linux.

Gripes: Not perfect in Linux — but this will improve, and for Windows, i.e. most users, there’s no problems. The Sandisk U100 is not the best of SSDs, and a Crucial M4 SSD would have gone down a lot better. Having said that, I don’t need blazing fast speeds, and my boot is not bad, about 10 seconds (including GRUB2 3 second timeout).

All in all, a beautiful laptop, that’s only going to get better in time

Network issues

Hi everyone,

As you are aware both my personal blog and the Raspbmc website went down. This was because of some ‘clever’ idiot who decided to attack me with a SYN flood attack on Port 80. This method of attack abuses the TCP protocol by flooding a network with SYN packets and ignoring the SYN/SYNACK/ACK handshaking protocol. Some suggested that Raspbmc was just very popular. I wish I could blame this as the cause of it going down. But it has been verified that the attack was malicious and was a SYN flood.

For those wondering. A SYN flood is not a skillful attack, but rather a simplistic and idiotic attack that a five year old could pull off. Conversely, it takes skill to defend against them. Initially, I tried SYN cookies, but this didn’t alleviate symptoms. As you can see here below, within a few seconds of re-enabling Port 80 on the hardware firewall, I ended up back down again.

That is the amount of SYN requests after reopening Port 80 on the hardware firewall after 30 seconds.

Thursday evening, and I couldn’t do much to fix the problem. This was because I had an exam the next day, and that takes priority. To make matters worst, my web host was having ‘email’ issues. 2AM Friday, it comes back up. I figured the guy got bored and moved on to something more challenging. Then, Friday 2PM again, the guy strikes again. That afternoon though, a nice guy at NodeDeploy, Ben, who was mirroring Raspbmc for me, steps in. The reason you are able to view this page now is because of him. By tightening the HW firewall, I configured it as such so he only has access to Port 80. We then change A records to the NodeDeploy firewall, which then reverse proxies, returning pages from my server. It’s a bit slower, but it’ll do for now. Throwing 10Gbps of SYN filtering at the problem and the DDoser is small fish.

The first thing that comes to mind when being DDosed is who may be behind it. For me, and a couple of others, it is abundantly clear. Hint: if you are going to DDos me in the future, make sure you spoof the IP of every packet. I won’t name anyone, because without 100% proof, which can’t ever be established, it would be considered slander. What I will say, is that the person who did this did not want RC3 of Raspbmc to be released, hence the impeccable timing. Another interesting thing, is that the attacker did not ICMP flood (ping), but chose to SYN flood. This allowed them to exploit a fault in Raspbmc, namely the issue that Raspbmc checks the Stm Labs server by ping, and if this is successful, attempts to contact the update system. The problem here, was that my server responded to ping, but due to SYN flood, would not serve the files. This meant the boot became stuck. Raspbmc was meant to check for uptime of my server, which it did, but only did so on ping and not HTTP. Thus the attacker has been very specific in their method of attack. Unsurprisingly, the suspected attacker was browsing SVN on Wednesday and browsed the update-system directory of the repository. The attacker was looking for bugs to exploit. This bug did not affect Crystalbuntu users, and soon enough, it will be fixed for Raspbmc users too.

Someone clearly felt threatened by the release of Raspbmc RC3 and didn’t want users to have it. Too bad. Obviously, when something like this happens, the only real thing to do is persist and hope for the best. That’s why, during down time, I continued working on Raspbmc Release Candidate 4, which will be landing shortly, I hope the attacker enjoys it :)

Some guys wanted me to torrent Raspbmc RC3, or asked why I didn’t already. The reason is, my friends, is that the update system dynamically fetches files from a server. The torrent however, would be static. Furthermore, despite me having a CDN for Raspbmc, there was the issue that redirection to the CDN is dependent on my server. There’s not much of a solution round this, round robin DNS has its shortcomings as well. Well done to fellows that tried to help others by hosting the installer image. Unfortunately, that wouldn’t work, as that image needs to get everything from my server, but it was kind of you to try and help others. Also thanks to anyone that offered hosting. It was generous, but unfortunately of no assistance. I’d also like to give a big hats off to:

  • Bytemark hosting – they contacted me, offering help with the project. But as it’s the weekend we didn’t get far.
  • NodeDeploy hosting – Ben contacted me as I mentioned and we got the firewall going. What was good though, is I don’t even have an account with these guys, yet I still got regular helpful contact from them. A lot of love for this company. If they treat non-customers like this I bet they treat their customers amazingly.

And the terrible service of 1and1. They caused me headaches because:

  • They claim managing a hardware firewall is ‘my job’ but provide no access to it other than the ability to set filters. What I wanted was verification of a SYN flood.
  • When trying to change the A record of Raspbmc.com, and still up until now, I am given an error message. I emailed them and got no reply.
  • They have the longest TTL known to man.
  • Email went down.

You get what you pay for I guess. £30.00/month for a dedicated server is not going to be special, but as a kid who’s going to be £30k in the whole after I soon go to uni, I can’t exactly splash.

So, what’s next you ask? Well. We need to wait for DNS settings to update, but after that, you should be good to go. Raspbmc and Crystalbuntu development will continue as normal and I will continue on with delivering the best XBMC experience for the AppleTV and Raspberry Pi platforms. If you flush your DNS settings, you might be able to beat the wait, but no guarantees.

Thanks for using my software guys, and sorry about the issues. I will be taking preventative measures so this can be avoided in the future. An interesting aside, the Dutch political party D66 want to legalise the kind of attack that hit me today, seeing it as a form of ‘protest’.

The Toshiba T4500C was my Raspberry Pi

At around the age of six, my parents gifted me with a Toshiba T4500C. It was not my first experience with a computer: we had a Windows 95 box that I had so disturbingly racked up countless hours of Doom, DeathDrome and HOVER! on at the age of four. But, what it was, was the first personal machine I had. It was my laptop, and I was free to do what I wanted with it.

This is why I am now weird.

This amazing machine had some decent specs for its day, circa, 1993. A 20Mhz processor, an 80 or 120MB drive (I had the 80MB) and an 8.4″ LCD display. I remember I had DOS 6.22 with Windows for Workgroups 3.11 on it. DriveSpace let me get an extra 20MB out of my hard drive, though I can’t say I ever went near the limits of the then monsterous 80MB capacity. What did I do with this machine? In all honesty, spent a lot of time playing Lemmings and messing around.

But it taught me a few things.

Apostrophes? > /dev/null

Having my own machine meant I could mess with it. My initial learning of the inner workings of  a computer was formed from the breaking and subsequent attempts at fixing problems. This taught me a few things, but more importantly it sparked an interest in computers, that not only continues, but thrives, to this day.

And that’s where the Raspberry Pi comes in. Not everyone would have this opportunity, and yet, with the introduction of this new device, we get closer to such a possibility. Everyone should have a chance to have their own machine to mess around with, whether they just want to Facebook with it (or play Fun School), or want to learn a new language such as Python. I was lucky to have my own machine. I know I wouldn’t have been able to mess around breaking and fixing stuff on the family machine. The stuff I learnt was pretty basic, but nonetheless, it sparked curiosity. Stupid things, like how you could automate the DOS 6.22 > Win 3.11 bootup by adding “C:\Windows\win.exe” to autoexec.bat. DOS helped me learn the command line, instead of being tied into a UI. From an early age of six I could use fdisk, cd, deltree, and even say Hi to myself at bootup with echo. This machine was my childhood.

And the Pi will be someone else’s childhood. A Linux distribution will teach them some useful CLI skills, and bring curiosity and intrigue to people. It really will, and more so than DOS and Windows ever did for me as a kid. The problem now is this reliance on the ‘automagic’ concept. Great when something works, but it is essential to know how, because sooner or later, you, the user, will have to fix something. This new device will allow people to explore things they wouldn’t have done so before, be it for fear of breaking the ‘main computer’ in the house, or the fact that they simply don’t have access to one. This puts a computer in kids hands for £22. That’s pretty damn good.

And that’s why the Pi will be someone else’s introduction to the world of Computing. But not mine.

My Toshiba died on me in 2002 if memory serves, the screen just stayed white when turning it on, and there was no longer any VGA output to any external monitors I connected. I cut my losses and moved on. By this point in time I had my own desktop, but I liked to fire it up occasionally to see the Windows 3.1.1 splash screen. It brought back brilliant memories.

I fired it up. One last time, to hear the whirring noise I’d been so greatly accustomed to back in its day.

RIP

I’m getting old.

The Last Crystalbuntu Update: April 2012

Well sort of. Because Crystalbuntu 2.0 is on the way.

This is the last update for the current version of Ubuntu. Now that NVIDIA have updated their drivers and made them compatible with Apple TV again, it means you can update your kernel too. The advantage to this is that you can get drivers for newer hardware such as TV adapters. However, Ubuntu 8.0.4 is an old platform, so I may as well upgrade the underlying operating system Crystalbuntu runs on, to the 12.04 LTS release of Ubuntu when it is released.

This is going to require a lot of time consuming work on my part. I have to effectively build the entire Crystalbuntu OS again, but its worth it to users I do believe, as they’ll be able to expand their systems greatly in terms of software, driver support and performance. This means users will be getting a whole new Linux system for their Apple TV, specifically tailored for 1080p playback through XBMC and built on the foundation of Crystalbuntu.

For now though, this update brings you the following:

  • PVR support included in XBMC again
  • New NVIDIA drivers: More support for display devices, offer better EDID handshaking, refresh rate issues are fixed and better performance.
  • New IO scheduler brings much better performance for users running off of USB

If you’d like to make a donation to support the new release of Crystalbuntu, or even this update, you can do so by clicking here. This is a sign of my continued support for this project which seems to be getting more users every day!

Crystalbuntu: now with XBMC Eden

I’m pleased to announce that Crystalbuntu now has the final release (11.0) of XBMC, Eden. I have been offering nightlies for Eden since June/July of last year, and am now very happy to announce the final version. This version will bring all the benefits of the new version to your Apple TV with rock solid stability and performance. This version doesn’t include PVR support, but a separate, stable, and thoroughly tested, PVR build will be introduced in a couple of weeks. Crystalbuntu will support nightly builds, but from now on, the build included will be a stable Eden build as users want stability over functionality!

It is also with this announcement that I must announce the end of monthly updates. Crystalbuntu will still be updated regularly, however, there is no need to push monthly updates, as the XBMC codebase is now stable. Thus, updates will be less frequent, but more feature packed, and more OS orientated in their nature, rather than updates mainly revolving around a newer release of XBMC.  Don’t worry though, Crystalbuntu is still getting the support it deserves, and you will see Frodo nightlies available for testing shortly!

I am updating the ALSA drivers in your Crystalbuntu installation to 1.0.25. Some users were experiencing issues which were showing in the logs as ‘discontinuity errors’. What this meant is that some users had audio dropouts while watching TV. The drivers should hopefully resolve issues for those that were having this problem. This update will be ready in a couple of days, based on user feedback.

I hope that everyone enjoys Crystalbuntu (I will, once I get a new hard drive), now with XBMC Eden. To get the new build, just reboot your Apple TV.

Thanks!

Sam

Optoma HD23 review

I’d been eyeing projectors since November, and was planning to treat myself to one for Christmas. The Optoma HD 200x initially caught my eyes. It had good reviews and Amazon was doing it for £599. I also looked at the Optoma HD33/300x but wasn’t set on the idea of 3D, as I find that the content currently available in that format is rather limited.

The HD23 was quietly available for online purchase from Richer Sounds before a February announcement by Optoma. Guessing this new model was a successor to the 200X/HD20 I dropped the £749 and bought it blind. Excellent choice it would seem. The HD23 which I purchased is an improvement on the 20 series, it features the DarkChip3 in the HD33, 2500 lumens and an ANSI contrast ratio of 500:1. What that means on paper is irrelevant. It was when I rigged it up and set up the colour settings I was impressed.

Fast forward to now. I’ve only been using it for a little over a month, but I’ve managed to rack up 134 hours on the lamp. I did not notice rainbow effect unless I deliberately moved my head fast to provoke its presence. It seems the rainbow effect is most likely to present itself with strong contrasts, say a black background with white text during a credit sequence that is moving rapidly. The projector is ceiling mounted, and I sit directly under it. I can not hear it at all, running in bright mode (which provokes the fan to its loudest) and even when I’m not listening to anything. From around 4.5m away I have a 115″ screen — this is not at its maximum throw at this distance, but it fits the wall nicely and misses the radiator below it. Using a grey wall without a screen provides a shockingly lifelike picture with vivid and luminescent details.

Night time viewing gets away with low brightness settings, which bring a rich colour and quality. However, I was able to watch in daylight with higher colour, but I wouldn’t recommend it for a film experience, more of a daytime TV viewing one. This is because daytime requires a higher brightness to compensate, which washes out some of the colour details.

For optimum colour settings, after 100 hours on the bulb I would recommend these settings:

Daytime or large level of ambient light

  • Contrast – 45
  • Brightness – 37
  • Color – 64
  • Tint – 50
  • Sharpness – 7

Nightime or low level of ambient light

  • Contrast – 45
  • Brightness – 37
  • Color – 56
  • Tint – 50
  • Sharpness 7

I am thoroughly impressed and would recommend this to anyone!

New Crystalbuntu Update: March 2012

Hey everyone. Sorry that this isn’t the most feature filled update but I am extremely busy with exams, work on the Raspbmc distribution and life in general! I didn’t find the time to implement everything I wanted this month, but be assured I will be adjusting the Configuration Utility soon to add more features and fix some long lasting bugs. For now though, here are the main features of the update:

  • XBMC Eden RC2
  • Spotify support
  • Updated CEC Adapter support for more devices
  • Fix Python issues that may have emerged when users used Python scripts such as SABNZBD or tried to install a desktop
  • Fixed IceFilms and 1Channel

Just restart your Apple TV to get this update immediately. Let me know how it goes, and consider making a donation to help fund future enhancements such as the aforementioned.

New Crystalbuntu Update: February 2012

Well. It’s certainly been a while! Here’s an update that fixes a few things and gets us closer to the final release of XBMC 11.0 (Eden). These are the main features of the update:

  • New PVR build
  • Eden Beta 3
  • FLAC support
  • Fixed buffering issues
  • Fixed remote issues
  • Fixed ‘mark addon as broken in repository?’ prompt issue
  • Fixed issue with ‘Exiting’ XBMC to get to command line interface.
  • Improvements to update system if server is down (before, ping detection was used, but sometimes server responds to ping but cannot service an HTTP request). This has now been fixed.
  • New MySQL database version (be careful, this means all your clients will need Eden Beta 3 or they will not be able to share libraries).

In a few days you will also see some patches to the Configuration Utility, a fix allowing the ability to restore the native Apple OS  as well as the addition of some new features that have been long awaited.

Just restart your Apple TV to get this update immediately. Let me know how it goes, and consider making a donation to help fund future enhancements such as the aforementioned.

Raspbmc – the XBMC distribution for Raspberry Pi

Edit: Check out Raspbmc’s new site now!

 

In light of recent suspension of file sharing websites

So as of now, MegaUpload has been taken offline, FileSonic does not allow file sharing anymore and Uploaded.to has its activities in the US. While the latter two are not down, I’d find it very difficult personally to upload files to a site that is already in a state of ‘damage control’. As we saw with MegaUpload, many users were left stranded and a lot of people lost their files. The suspension of these websites seemed spontaneous, and I would advise people to redownload their files, they might not be accessible for long.

These guys have it wrong. If they plan to reduce piracy by suspending “cyberlockers”, or direct download sites, then this will not work. The average ‘freetard’ consumes content through peer to peer services. Music is generally downloaded through the Gnutella network, where Limewire used to be the top client for accessing this network. Was suspension of Limewire LLC’s license to distribute the program successful? In part yes. The reason for this: peer to peer file sharing is the most popular form of piracy for the average person. The lack of success can be attributed to the architecture of the Gnutella network. The other use of peer to peer technology is torrents. The Pirate Bay is the biggee for RIAA and record companies. I am not going to debate whether piracy is wrong or right, but what I am going to say is it is this site solely that accounts for the most piracy alone. If record companies were attacking these peer to peer services, they might have a chance, but they don’t now, there is too much negative press.

By attacking the direct download sites, they are not capitalising on an economic goldmine. Those that are paying for filesharing websites clearly are not opposed to paying for content, but rather are discontent at the price of the content. I am not going to go into the “piracy does not account for a lost sale argument”, what I am trying to say is that those using a filesharing website would pay for say a subscription service. The record companies and film companies are stuck in the past with an old and incompatible economic model. Why are services like Spotify thriving? Because this company takes advantage of a new economic model, understanding that piracy stems from discontent with pricing and annoying ‘features’ such as DRM.

The ease of piracy also stems from peer to peer based sharing. Many ‘freetards’ are well acquainted with TPB, but probably less so with direct download sites.

All this will do is force more users onto P2P networks. They will also find more users using VPN or Newsgroups. When there is a will there is a way. If these websites can all of a sudden be taken down with such ease, why is there a need for PIPA and SOPA? I cannot help but feel the timing is all to convenient: take down, provoke attack, say from Anonymous, and then justify the introduction of the acts on the grounds of cyber terrorism and disorder.