IMAP vs POP3

imap-pop3A well dated argument this one, when retrieving e-mail from a mail server which protocol is best used?

I’ve been a long standing user of POP3, as many others. The reason this protocol is great is because it allows several devices the ability to download all e-mail messages within a retention period (most e-mail clients call this “Leave messages on the server for x days” in their settings). Storage requirements on the server are kept to a minimum and so is network load.

These reasons made POP3 the protocol of choice, at least in 1996 which is roughly the last time I looked at the issue.

IMAP however stores all messages on the server. Clients either browse the data available on the server, or synchronize with the server so they keep a copy of the same data. As storage is handled by the server, any message sorting on one device applies to all devices and marking of read or unread will also carry across to all devices – as each device is simply viewing data from the IMAP server.

Today computers are readily available and many have a collection of e-mail capable devices (I use 3 myself). Also we live in the era of Internet video so bandwidth and storage in a datacentre is both plentiful and cheap. Processors have probably seen the biggest expansion in cheap availability.

So earlier this year I migrated from POP3 to IMAP. Eventually I uploaded about a decade of old e-mails to my IMAP server. Using ZFS and Courier-IMAP-SSL over two nodes at the server end, I’ve ensured that I have high availability for my e-mail service.

Probably the biggest plus to using IMAP was backups. I already use bacula on my Linux based servers for daily off-site backups and this includes everything in /home. So without any change all my e-mail is backed up and stored off site every day.

Finally using GO Contact Sync Mod and Google Calendar Sync to keep my Microsoft Outlook contacts and calendar in sync with my Android phone – there really is no need to backup anything related to my e-mail at the client end on any computer because everything is either stored with the IMAP server or Google.

Playing Asterisk voicemail on Android devices

I got my first Android device last year and ever since getting it I wanted to play back the e-mailed voicemail messages sent by Asterisk’s Comedian Mail voicemail system.

It certainly is possible however your Asterisk rig needs one minor tweak which results in a more compatible codec at a higher bitrate.

In voicemail.conf Asterisk defaults to:

format=g723sf|wav49|wav

You need to attach the wav codec. So you can either:

format=wav|gsm|wav49

AND/OR

attachfmt=wav

And then the best method of e-mailing your Android device is to a Gmail address – as a new message alert will appear instantly in most cases. Don’t bother with the E-mail app – just use the Gmail app.

Superuser for Noontec A9, UMAX A9 & Media-Tech Media-Droid HQ

Well there has been some developments in rooting the Noontec A9. rodos15 on xda-forums posted about how to install files into Noontec supplied firmware for the Noontec A9. rodos15 also posted about the Media-Tech clone device and the 1.2.07 build firmware they offer.

Nobody else has posted a complete firmware image where you can just perform a firmware upgrade as you do with Noontec firmware. So I did.

In my opinion use the 1.2.07 build. Its better and has newer software pre-installed. There is more support for USB Webcams for one and support for USB Keyboards is improved.

Extract the update.img file from the ZIP to the root of an SD card, then put that SD card in your Noontec A9 which is switched on. When asked, install the firmware update. Your data will be wiped as with other firmware updates. After the device reboots, installs firmware, and reboots again, you will have Superuser preinstalled as well as a functional su binary.

I briefly tried to get cifs.ko working with no luck. I’ll look at this eventually I’m sure, but right now I don’t really have the time. My 1.2.07 build comes with a non-functional cifs.ko

Given that nobody else is doing it and I now have the tools to do it, I guess I’ll start shipping my own firmware builds for the Noontec A9. My blog is the best place to check for updates.

As another plus I managed to dribble some crap on xda-forums so I no longer have moderator restrictions. Yehaw.

Cyanogenmod 7.2 for Samsung Galaxy Gio GT-5660S

cyanogenmodI only just realized that at the time of writing my guide for Cyanogenmod 7.1 RC3 for Samsung Galaxy Gio GT-5660S is out of date.

Cyanogenmod 7.2 24/02/2012 GIO-KANG is the latest version. So if you used my guide before all you need to do is download ClockworkMod 5.0.2.7 ext4only for Samsung Galaxy Gio GT-5600S and the latest Cyanogenmod 7.2 image.

From there you just copy them to your memory card probably after turning off your phone and connecting it to a PC. Then boot up your phone into recovery by holding the home and power buttons. Then flash ClockworkMod, reboot and let your phone boot all the way into Cyanogenmod, reboot into recovery, then flash the Cyanogenmod 7.2 image.

Simple!

Also the latest Google Maps (6.3) seems to work great on this Cyanogenmod image.

A couple tips on if you want to improve your battery performance on your Gio running Cyanogenmod:

  • Settings, Cyanogenmod Settings, Interface, Render effect, Calibrated (N1) Low Red – this setting doesn’t seem to preserve after reboots however it reduces the power consumption on the screen
  • Settings, Cyanogenmod Settings, Performance, CPU settings – here you can under-clock your processor which has the most battery improvements I’ve seen. I clocked mine to a min of 245MHz and a max of 480MHz with Set on boot enabled
  • Install Battery Monitor Widget and add the widget to your home screen to keep track of your charges and discharges. Tapping the widget shows a graph
  • If you’re going to buy a Samsung Galaxy Gio – DON’T – buy the HTC Incredible S instead. It may be twice the price but the battery is probably twice as good at the least and it also can run Cyanogenmod provided you haven’t installed the latest HTC firmware

Zello – Push to Talk for Android, BlackBerry & Windows Mobile

zelloWell I’ve tried many Push to Talk apps for Android both over WiFi and 3G networks and tested them all with poor reception. I must have tried about 20 apps, and only one of them really held up to be any good.

LoudTalks Lite was released for Android on July 25th 2011 so its very new software. Just a few days ago they changed their name to Zello.

What makes it so good is its use of keep-alive and allowing the user to alter this preference. Keep-alive directly affects battery drain while Zello is operating and if the connection is retained when travelling through an area with total loss of 3G signal.

Further to this, Zello allows the user to tinker with buffering settings. Zello uses the open source Speex codecs. Zello also supports channels which can optionally be privatized with a password or moderated.

My testing by talking with my partner showed that Zello was most likely to get a message out in all scenarios with the least amount of delay.

All we need now is an iPhone version.

Sync’ing with Microsoft Office Outlook and Android

I use Microsoft Office Outlook for my e-mail because it has other tools like a calendar, task list and address book. I do not use Microsoft Exchange but I do use Outlook on a number of computers which all run the same version of Windows 7 Ultimate x64 and Microsoft Office 2010 Premium.

I also have a Samsung Galaxy Gio running Android which is currently the Cyanogenmod firmware. The best method to use contacts by far on this device is “in the cloud” on Google Contacts. The calendar is the same with Google Calendar. And so are notes with Notes in Google Docs.

I previously have had lots of problems sync’ing to Android. I first used Samsung Kies which seemed alright except it had a tendency to duplicate contacts and calendar events continually so that my phone’s memory eventually filled up. Cyanogenmod won’t actually support Samsung Kies, mainly because the USB device function seems to be broken on the Samsung Galaxy Gio port and Cyanogenmod also lacks the Samsung Apps framework.

I found GO Contact Sync Mod after trying several other methods of sync’ing. When run on a PC which uses Outlook, it essentially sync’s your Outlook Calendar & Notes with Google.

Google also have put out Google Calendar Sync which will sync your Outlook to Google Calendar.

So with those two apps, you have a total sync solution that doesn’t fuck out if you run it on two PCs – and it uses the Internet connection so no direct connection between the phone and PC is needed, just the Internet on both devices.

Cyanogenmod for Samsung Galaxy Gio

cyanogenmodYesterday I began trying Cyanogenmod 7 for Samsung Galaxy Gio RC 3.0.

I was finding that SimpliGio+ had some weirdness where sometimes the mobile network, GPS or WiFi wouldn’t work. The only way to fix it was to restart the device. I also had some troubles with predictive text not working at all. I probably could have fixed these issues but it was a lot of fucking around and I really can’t be bothered.

So far Cyanogenmod seems to be working great and has a good set of features. For a start it is the most used unofficial firmware, and like the DD-WRT unofficial firmware for wireless routers, it supports hundreds of devices and provides a common feature set and user interface between all those devices. Cyanogenmod has even received praise for being better than factory supplied Android firmware. At present the Samsung Galaxy Gio port is not officially supported by Cyanogenmod, but I’m guessing the low price point of the Samsung Galaxy product lines will probably change that.

I didn’t have to install sipdroid as it has native VoIP. I also setup s2e with a 300MB EXT4 partition on the MicroSD card – and now magically my phone has statics of internal memory so I can install really big apps like Angry Birds. It also has OpenVPN bundled so I’ll have to play with that later.

I’ll have to blog more about Cyanogenmod after I tinker with it. I’m still yet to reflash my partners handset with it.

Alternative firmware for the Noontec A9

After posting on xda-forums the other day I was pointed to this page. Umax is Noontec’s distributor in the Czech Republic and have published a couple firmwares that Noontec haven’t. They are:

I’m yet to try the 1.2.04 myself, but I will soon and naturally I’ll blog about it.

I have made some small steps in rooting the Noontec… in that realizing root is available by default through the adb shell when connected via USB to a PC.

I also realized that the /system partition on the Noontec firmware is cramfs, and therefore read only, and therefore I cannot modify it even with Super User installed. This seems like an absolutely stupid move by Noontec considering the device’s tech specs mention it has 2GB of NAND memory (so its capable of being in a writeable format) and the advantages of root on Android include things like playback of videos over CIFS network shares (which would be a target market for a “Smart TV Box”).

It seems like I’ll have to work on my own firmware image. I’m just a little fearful of this considering the Noontec also lacks a /recovery partition which makes the recovery menus non-existent.

Noontec A9 Smart TV Box

Noontec A9 Out Of The BoxI’m writing up a review for my Noontec A9 Smart TV Box since none seem to exist. The trouble is I’ve never owned a Smart TV Box other than a modded XBox running XBox Media Center or a PC running Windows XP connected to the TV, so I have no real comparison.

Out of the box the Noontec doesn’t have a lot. It has a tiny 11 button remote and a power supply.

The Noontec A9 is really easy to plug in and get up and running, especially with a HDMI connection (obviously you’ll need to buy the HDMI cable as extra). Simply plug in an Ethernet cable (optional, WiFi could also be used), your TV, the power supply, and you’re up and running.

At very first you need to confirm your Internet is connected. If you didn’t connect an Ethernet cable you should set up WiFi under Settings. Load up the Browser on the home screen to ensure your Internet is up.

A USB keyboard and mouse goes really well with the A9. I plugged in some generic PC versions and they work great. However on Android there are some minor differences to the keymap that you’ll need to know. The very first one is right click won’t bring up a menu, it has the same action as the “Back” button.

USB Keyboard Keymap

Keyboard Key Android
Home Home
Esc Back
F1 Menu
F4 Volume Down
F5 Volume Up
Power Power

Another thing I needed to do before I did anything at all… Out of the box the default firmware wasn’t so crash hot, and at the time of writing v1.1.06 OC03 11-11-29 is the latest firmware available from the Noontec download page. Installing the firmware is fairly easy but you’ll need an SD memory card. I tried using a USB flash drive but it would not install correctly. As Noontec instruct, you simply download their ZIP file and extract the recovery.img file to the root folder of your SD card. Then when inserted into your A9 which is already powered on, it pops up with a dialog to install the new firmware.

With the pre-installed firmware I couldn’t install ES File Explorer, the Android Market said it wasn’t compatible with my device. After performing the firmware update I could. This app is really useful to install as it allows you to play videos from Samba/CIFS/Windows File shares. So for a downloader like me, I just setup ES File Explorer to read some shares on my PC and I download videos on my PC and when they’re available I can play it on the TV with the Noontec remote.

One slight disadvantage for video playback with the A9 is there is no information on rooting, or installing the SuperUser application and the /system/xbin/su binary it requires. This means you cannot use CifsManager which would be the desired operation for playing media from Samba shares – since it would allow any application to play the media, and not limit you to media players that support Samba shares. It’d also allow you to run ClockSync which seems wise considering that “Automatic Network Time” is a feature of GSM networks that the A9 cannot support since it has no support for GSM networks or any mobile phone networks at all.

YouTube and any website which uses Adobe Flash Video (FLV) also works very well on the A9. YouTube obviously works best with the app pre-installed with Android, while some FLV streaming sites for pirated content don’t work so great as the overload of Flash based advertising can overload the browser making it quite slow. ABC iView doesn’t work so great since the screen layout of the A9 increases the size of the page, and essentially blows it up so its too big to be useable. I’d love it if either ABC or Noontec did something to fix this.

For an overall rating on the device, with ES File Explorer it does do the tasks I purchased it for – play video from the downloads folder on my PC and from websites which use Adobe Flash. The interface is a little clunky on the A9 and could be improved, however it is useable & functional. Compared to Apple TV, the A9 is cheaper and doesn’t have limitations of iTunes software or DRM. Given the clunky UI and the comparison to Apple TV, the price is probably very reasonable.

Christmas was winnah

I got really spoilt this year by my family. My parents paid a few bills for me, that helped out greatly. My partner got me a 32” Vivo Full HD TV, that made a dramatic change to my bedroom and freed up space even though the screen is much larger than my old CRT style TV. My partners parents got me a Noontec A9 Android Smart TV Box, that replaced a very noisy Soltek QBic PC which is now for sale on eBay.

Christmas day was actually quite frustrating though, as I made a mess of my bedroom and frustrated as to why the TV antenna wasn’t working. Sorted all that out though.

I’m still yet to program up the Logitech Harmony 600 remote I have for the new gear so that remote is essentially useless for now. The Noontec didn’t come with any remote at all, except a tiny thing thats very useless with web browsing. Noontec apparently have a remote sold as an optional extra that has a touchpad. So I’m wondering if having the Harmony is even a good idea.

Another issue is that Android out of the box won’t mount SMB shares, which would be a very handy way to play videos on the A9 off my PC. If I root the A9 I can mount SMB shares, but there doesn’t seem to be any documentation about this. So thats something I’ll also have to look at. For now I can play videos I download on a USB flash drive, and I can still hit YouTube.

I was also pleasantly surprised to find the Vivo TV has USB recording built in. While it doesn’t really have timeshifting capability, recording is still very nice to have since Dick Smith never let on it had this feature and instead tried to upsell to different more expensive models. I’ve now plugged in a USB extension cable into the USB port to make it more accessible (its on the rear of the TV?), and I can see that some regular programs like Deal or No Deal will get recorded daily just in case we miss it.