Archive for January, 2010



Android – The Perfect Setup

Wednesday, January 13th, 2010

I’ve had my HTC Hero just over 6 months now, and for all accounts I’m perfectly happy with it, like the Nokia N95 I had before, I’ve no doubt its the best phone I’ve owned. That may sound stupid, but until the release of the Google Nexus last week, or the Acer Liquid or Motorola Droid (and all the amazing Droid’s 2010 is set to offer), I don’t think there was better phone available. IPhone fans shut your mouths (we’ll see what’s coming in Apples late January announcement), but HTC definitely produced something special in the Hero, as they have in the Nexus/Passion and are bound to do the same with the Bravo, Desire and others.

All the praise aside, nothings perfect, and my little Hero was no exception. In fact it suffers from the same ailment as many devices fall victim too, where hardware vendors release their products with poor/inefficient software. So without going into too much detail on the ROM, as I’ve done that before, I’ve come up with what my idea of the perfect setup is for a fast, secure, ultra useful phone that does everything for you.

The ROM

In my previous article about the Android ROM’s, I blogged about some of the ROM’s available for the Hero platform, the most mature and reliable definitely being MoDaCo’s custom ROM (now at version 3.2).  After trialling Android 2.0/2.1 ROM’s I didn’t want to go back to a cupcake build (Android 1.5) so I’ve settled on Kagudroid 1.0-beta, made by Lox of LoxDev fame, a ROM which aims to be as clean as possible built from the AOSP sources.  It’s Sense-less in that it doesn’t have any of the HTC SenseUI software on there so there’s RAM and general speed improvements and runs smoothly and fast.

Kagudroid 1.0beta
Kagudroid 0.1beta (running on AOSP 2.0)

The Perfect-ly Obvious

They deserve a mention as they’re used almost more than anything else on the phone, but any of the google suite is an absolute must if your a google account holder.  GMail, Maps, Places Directory and Tasks are what I use most often, but Google Goggles (image searching) is pretty nifty.

The Perfect Set of Utilities

Due to wiping the phone so many times, I’ve got a a set of applications (as well as their DB’s, so I don’t have to set them up every time), which I load before booting the new ROM.  I consider them essential and it’s just not the same without them.

Locale – Event Driven Profiles

(http://www.twofortyfouram.com/)

Locale’s that profiles menu on your old Nokia 5110, revitalised in way that profile selection is made almost completely automatic, driven by an event system that can act on almost anything thing the phone does, like GPS location, WIFI availability, time, date, battery health, availability of networks/services, etc etc and hundreds of combinations of each.

Locale profiles screen

The Locale Profile Screen

These are my standard set of profiles (in order of preference, as they’ll override each other):

  • Bedtime - In the vicinity of ‘Home’ after 11pm on a week night, phone notifications are silent, GPS turned off and Alarms set on loud to make sure I wake up the following morning
  • Home – In the vicinity of the house, WIFI and bluetooth on, and volume set to relatively low
  • Low Battery – Triggered anytime the battery is below 20%, basically shuts down 3G/Wifi data, GPS and Screen time out to increase time until phone death
  • Office - In the vicinity of the office, WIFI/Bluetooth on and phone almost on silent, screen timeout set on high and Screebl (see below) disabled
  • Default – Phone on loud setting, GPS/WIFI on (for location services) but most other services off as they’re unused

Locale Profile Edit

See?  Infinitely useful, and I’m only just using the most basic of features.

Screebl

(http://www.keyeslabs.com/joomla/index.php/projects/screebl)

Screebl is a simple app with one purpose, it saves battery life by keeping the screen timeout as low as possible, but at the same time using the phones accelerometer to detect when the phone is being held and keep the screen on while using Google Maps, messaging, web browsing etc.  The new version (v2.0) includes Locale plugin support to change Screebl settings on Locale profile change.

Wavesecure – Security

(https://www.wavesecure.com/)

Wavesecure definitely deserves a mention, even though I’ve fortunately not had to use it’s most useful features.  It’s a security app, that runs constantly and checks into a remote server where if the phone is lost/stolen you can physically lock down the device to disable it, and if required wipe it clean to protect personal data.  It’ll also report phones location upon request and can backup files/SMS on a scheduled basis.

WavesecureWavesecure

Advanced Task Manager

(http://arronla.com/)

Advanced Task Manager is perfect for keeping the phone running as quickly as possible at all times, by automatically closing all non essential apps and freeing up much needed RAM.

Advanced Task Manager Home Screen

The Perfect Set of Apps

There’s a load of other apps I use as well on a constant basic, but may not be quite as essential as those listed above

Dolphin Browser

(http://www.dolphinbrower.com)

I’m yet to see the newest HTC and/or Android brower from Android 2.1, but Dolphin Browser is much better and fuller featured than the Cupcake browsers that I used, it’s got tabs (on the screen where you can see them), Google bookmark sync to help typing out those pesky web address’s and a simple to use gesture feature which make the touch screen experience even easier.

Twidroid (or Seesmic too for ping.fm support) – Twitter Clients

(http://www.twidroid.com)

What can I say, I’m a Twitter geek, and Twidroid is defintely the most full features twitter client i know of, it lacks the streamlined integration of Peep, the HTC client but’s very configurable and looks sharp

Newsrob – Google Reader Client

Simple idea, scheduled retrieval of RSS/Podcast and Blog updates from my Google Reader account

Truphone & SIPDroid – VOIP Clients

(http://www.truphone.com)

You may remember Truphone from my N95 articles from a while back and I still use it too for cheap world wide phone calls, and free voip -> voip or skype calls all from within the program.  I’ve been testing SIPDroid as well with my VOIP carrier sipgate.co.uk.  The only problem I’ve got now is choosing which number to give to people as my primary number, I’ve no doubt within a very short time period VOIP accounts like this will be the norm on all data plans.

XBMC Remote Android (android-xbmcremote)

(http://code.google.com/p/android-xbmcremote/)

I’d only recently started using XBMC remote on an old laptop and it has revolutionised the way I watch media on TV, but one thing that annoyed me was needing a wireless keyboard/mouse to interact with it (or even worse, getting up and going to the TV to change media), until I found XBMC remote, like a virtual remote that works via HTTP over WIFI.  It can access almost every function within XBMC including whats playing, media list, info, etc and will even do WOL (Wake on LAN) to start the computer up after its been switched off.  I’ll never have to get off the couch again!!!

XBMC-android remote

Others

  • Transdroid – For access to a transmission-daemon for torrent monitoring, I use it for a number of torrent clients now, very useful! (http://www.transdroid.org/)
  • chompSMS – Not essential, but who wouldn’t want the IPhone’s message screen, an almost exact copy from what I can see (http://www.chompsms.com)
  • Better Keyboard and/or Shapewriter/Swype – Keyboard replacements that definitely make typing faster on the device (in fact, I’m typing this blog post with it right now!… .Not, but you get the idea)
  • SetCPU – for over/underclocking to increase performance or increase battery life (one of life’s true dilemmas)

PEBKAC – Newb mistake

Saturday, January 9th, 2010

PEBKAC (peb-k-aac)
- abbr.
1. (exp.) Problem Exists Between Keyboard And Chair
2. the result of the use of a machine by a fool, who should not be left in control once again
3. idiot..

I’ve been using linux in some form or another for well over ten years now, and I’ve (at least in my mind) been past the n00b stage for the better part of that time period. Of course, in my case, it doesn’t matter if I was an occasional user or the Grand Pu-bar of Gentoo-vian I’d still make mistakes, and this week I embarrassed myself terribly.

My beloved home NAS (QNAP TS-409 Pro that I wrote over a year ago) has been customised in many different ways and although underpowered when compared to the rest of the computers in the house has taken over responsibility of many things that my laptop(s) previously did, such as:

  • Headless Transmission (Bittorrent) client
    • Auto downloading based keyword searches from RSS feeds
    • Scheduled speed changes (off during business hours, 1/3 speed during the evenings, then full speed at other times)
    • Daemon controllable web client (clutch), Android app (Transdroid) or one of the many transmission remote clients for Windows, Mac and Linux
    • Automatic seed ratio checking to stop seeded downloads at a certain point and unpack/move the downloads their area (Music/TV/Movies — all legal of course)
  • Automatic remote backup
    • Rsync backups from the hd911.com server
    • SVN mirror for remote development SVN server, and a primary personal SVN server which is replicated elsewhere
  • UPnP server for my XBMC PC, pushing all available media content, photo collection to any UPnP client
  • Subsonic Media Server –  mainly so I can stream my music collection to my phone, or when I’m out or at work
  • and all the other features that come with the device as standard

Needless to say, I use it for everything, and now I can’t due to a momentously stupid change to /etc/passwd, where I altered the root account (the only one accessible remotely) login shell from /bin/sh to /bin/bash, which ashamedly isn’t accessible until after logging in (some magic in .bashrc) to link the bash from the optware/NSLU2 installation in /opt/bin back to it’s normal place /bin. Now unfortunately, I can’t login at all (except via the web client), but I can’t for the life of me figure out how to change the value in /etc/passwd so I can fix it.

Links to an article that seems somewhat relevant :P

The things I’ve tried so far are:

  • Basic telnet/SSH login attempts, running a command as part of the SSH statement (i.e ssh admin@qnap.****.local cat /etc/passwd)
  • Issue chsh to attempt a login shell change (ssh admin@qnap.****.local chsh /bin/sh)
  • Writing a dodgy web script (total failure)
  • Writing one of the QNAP installable packages (a QPKG) which appear to have elevated system privileges during install (can’t find enough information)
  • I can’t take the drive(s) out to replace the file easily as its 4x drives in RAID-5 and I don’t have a PC to load them into
  • I also can’t wipe the device as it (to my knowledge) deletes all data off the drives in the process.

The way I see it, I’ve now got two choices, either to buy a large HDD and move all the shared stuff off before wiping the device and starting again although this is not perfect as I’ll lose all the scripts and configuration that aren’t accessible via network share.  My other option is finding someone with a PC and 4x SATA ports and attempting to re-mount the array, this is probably the best/most reliable the way, but I believe it or not don’t know any one with such a machine, and we’ve all got Macbooks at the office.

Any ideas, anyone?