Wednesday, November 12, 2014

Xiaomi Redmi 1S

So I was itching to get a new cell phone. My three year old Samsung was just not cutting it. And the temporary zte was too slow. So I needed a powerful and at the same time cheap phone.
So after considering a no of smart phones I finally decided that what I'm trying to achieve is difficult and only a Chinese vendor can get me such a handset. Going for Micromax/Karbon/Xolo etc Indian vendors was out of the question because of service woes and poor hardware quality. E.g. I remember the Karbon S1 phone I bought for my sister. Back in 2013 it cost me INR 7.5k. Came with JellyBean and 1GB ram. But the phone had slightly faulty touchscreen. But I didn't want to face Karbonns poor service so I showed my sister how to work around to that. Thankfully the phone has not died and its been a year.
Anyway, finally I decided to take a chance with Xiaomi. The price was right and the hardware quality of xiaomi's handsets has been great. So I registered for the flipkart sale and dutifully bought the phone on the sale day.
Unpacking: The handset comes in a normal looking box made of recycled paper. Its nice little box and holds the handset, battery and a 2A power adapter and a microusb cable. The handset looks neat. It feels heavy but then you are looking at 4.7 inches of screen estate and a 2000 mAh battery plus dragon trail glass protection. The charger and USB cable are good quality. The handset looks like premium quality handset and is solidly put. There are no squeaks or loose spots anywhere. The battery fits snugly and the power/volume rocker keys are well put together. In fact I feel like they are better than my three year old omnia w's keys. The front is clean with those special red capacitive buttons. The HD screen is sharp and bright. You get about 6GB of available storage out of 8GB provided. The handset has clean lines and the design is practical yet appealing. There is a notification LED right below home key which glows with various colours depending on the action going on. The front camera of 1.6MP is in top left corner and the earpiece is cantered and latched to top edge. The grill looks great. On side as I said earlier we have power/lock key and the volume rockers. At bottom there is a micro USB port. On top right we have 3.5mm volume jack. At back we have 8MP secondary camera with LED flash. The flash looks okay as far as I have checked it. The light spread is tight though so you need to practise taking pictures in dark otherwise you may miss things at edge of photo to darkness. There is a speaker grill to right of the camera at back.
MIUI: The handset came with v36 of MiUI and there was already an update available which took it to v45. I went ahead and got the update. Its supposed to fix RAM issues and heating issues. Though I am not as heavy user of a phone, so I don't think I'll even encounter these issues. ( I game on PC and use the phone mostly for calls, chatting on WhatsApp, mails, music and internet.) So after downloading the 511MB zip, I updated the phone. After rebooting I configured my gmail account. Then installed all the apps. Updated the internal apps too. Then spent some time spring cleaning stuff that I don't need anymore. After that I used the handset for last one week as my primary handset with two SIMS. I used an old 512MB SD card as temporary storage. The first thing that you notice about MiUI is that its very smooth and responsive. Apps open quickly and the general feeling is of smooth UI. The MiUI colors are pleasant, wallpaper and theme customisations are good. Plus xiaomi has baked in extra settings as well as toggles that help with stuff. Overall I felt like I could keep MiUI going and won't need to tinker with the phone to make it better in any way than what it already is.
Everyday Usage: My everyday usage is simple. I make a few calls. WhatsApp is on throughout the day. In fact WhatsApp and the browser followed by gmail are the three most used things on my phone. I expect the phone to last more than 24hrs with this use. Preferably 36hours at least. There I found the Redmi 1S to be slightly lacking. I could not get more than 24 hrs on one full charge with moderate use. So I went about and tuned it a bit to handle minimum WiFi by turning it off while sleeping and turning off automatic sync as well as auto updates. These have helped and now I am getting about 30hrs of runtime. That's good enough for me. But there are reports of people getting way more. So I'll need to investigate this further. Going ahead, the camera is snappy and worth a praise. The photos are crisp, and the flash more than adequate although with a tight spread that I mentioned earlier. The front camera is more than enough. The touch response is very good and screen provides very good colours. MiUI provides calibration settings so you can adjust the color temperature and saturation. The UI has been stable with almost no occurrences of apps crashing etc. The multi-color notification LED works fine and is helpful. The camera UI is intuitive and the overall feeling is of a smooth snappy phone.
Conclusion: for INR 6000/- there is no other vendor that is giving such hardware and such phone experience. And for me coming off a Samsung Omnia W, the Xiaomi Redmi 1S truly feels like an upgrade. The screen is not OLED, but is even better. The phone is snappy and a pleasure to use, just like the Omnia has been. For couple of months in between I have been tinkering with a Zte Blade C that I got for a cheap INR 4000/-. But for such an entry level phone it had its fair share of problems and limitations. The internal partition structure, the older android version and absence of updates from Zte. ( not total absence, because there was an update but I couldn't download it off their site 'cause of broken download link). So I had to root it and put a custom ROM on that. And after that use a shady app to change partition structure to make System partition as 2GB. Only after all this it became marginally useful. Its a good phone but it was a middling smartphone. Now its an average smartphone. So comparing all this to Redmi 1S, I know I have gotten a great deal with Redmi 1S. And my smartphone search is over.

Saturday, October 18, 2014

AMD Radeon official driver experience

For the Radeon 8330 GPU inside Lenovo g405 powered by AMD A4-5000 APU, I tried out the official driver on Ubuntu 14.04.
The situation is somewhat obscure. The official driver listed on AMD support page doesn't support Ubuntu 14.04. So I had to drop it.
There is one beta driver that supports Ubuntu 14.04 though. So I downloaded it and thought to try it. Took me some efforts to install it though, it just would not install in GUI Mode, problem shown as missing language packs.
Anyway I went ahead with text mode install. After rebooting though, no desktop. Only background with mouse cursor.
So I reverted to open source driver. Later I had another idea, so I went ahead and tried out the official driver available in jocky (proprietary drivers) tool. And after installing that one, I did get a desktop, but the brightness handles were gone.
After searching for a while and not finding anything anywhere, I again reverted to open source driver.
Thankfully that one works okay with my brightness handling script which ensures proper brightness value from Lenovo backlight class is passed to radeon-bl0 backlight class.

Saturday, October 11, 2014

Script for maintaining brightness on Lenovo G405

I observed that the this AMD A4 powered laptop has two backlight classes names idepad and radeon-bl0. Pressing the brightness keys changes brightness values in idepad class while values in radeon-bl0 needs to be changed.
So I wrote a script which will keep the two files in sync and help me get the brightness working.

syncBrightness.sh

#!/bin/bash
# Script to sync brightness from sys/classes/idepad to /sys/classes/radeon-bl0
# Task: run in a loop executed every second,  modify radeon  brightness acccording to ideapad brightness
# ideapad brightness from 1 to 16 in steps of 1;
# Radeon brightness 1 to 255 in steps of 1;
while [ 1 -eq 1 ]
do
IBRIGHTNESS=`cat /sys/class/backlight/ideapad/brightness`
if [ $IBRIGHTNESS -le 1 ]
then
IBRIGHTNESS=1
fi
echo "Ideapad Brightness: $IBRIGHTNESS"
let RBRIGHTNESS=$IBRIGHTNESS*16-1
echo "Radeon Brightness to be set: $RBRIGHTNESS"
echo $RBRIGHTNESS>/sys/class/backlight/radeon_bl0/brightness
sleep 1
done