Thursday, June 25, 2015

"Fix" your 2012 Nexus 7 slowness on Android 5.0 Lollipop and above.

If you've got a 2012 Nexus 7, then updating it to Android 5.0 Lollipop and over is likely to be the worst mistake you can make in regards to the software on this tablet. If you did not upgrade it yet to Lollipop, I would recommend NOT doing it (yes, I know, update notifications can be annoying). If you updated it, then just keep reading. I will explain to you what you can do in order to relieve yourself from the stress that any 5.0 and above firmware is creating while using the tablet.


There is one single thing that can be done in order to fix the incredibly poor performance of the tablet: to downgrade it to Android 4.4 KitKat or below. Trust me, I have tried almost 10 different ROMs which run from 5.0 all the way to 5.1.1, and I am still trying to understand what is going on through the head of whoever is responsible at Google for providing these updates on the tablet.

Luckily, since it is an Android tablet, downgrading is extremely simple.

  • if you've got a tablet with an unlocked bootloader and a custom recovery, I would recommend following getting this link and getting the provided ROM (it is pre-rooted). I've got the Odexed 1.6 version and it works flawlessly. Since you are downloading this version, I assume you already know how to flash that (gapps are included and do not need to be flashed separately);
  • otherwise, you can follow this official link for the official Factory Images (I would recommend downloading the 4.4.4 image). More detailed instructions are available here, but please make sure you are downloading a pre-Lollipop version and flashing that on the device, not the latest version which is 5.1.1!

The reason for the extremely poor performance of the 2012 Nexus 7 on Lollipop ROMs is not clear. People speculate it might be due to flash wear-out but this is highly unlikely due to the fact that KitKat is running as new once installed. It is true that it has only 1GB of RAM and the pressure for low prices might have forced Asus to put low quality (thus slow) components that provide insufficient IO speed. But that does not explain the fact that a similar device which was also sold cheaply, the Nexus 4 is absolutely flying through Lollipop (the Nexus 4 does have 2GB of RAM, but this is not an excuse for the low memory killer on all Lollipop versions not being much more aggressive in order to keep the tablet usable, this, of course, provided that RAM was the culprit). 

Thank you for reading these and please let me know if downgrading to KitKat managed to help you!

Sunday, July 6, 2014

Previewing Android L on Nexus 7 2012 through MultiROM!

Disclaimer: Before you start anything, you must know that I take no liability for anything that would happen to your device as a result of you following this guide and/or any of the instructions from the links that will follow.

The new Android L (5.0) has been recently announced by Google, and if you own a Nexus 7 2012 tablet, than this is your chance to try the newest version of Android on your device. Please note that this is nothing official, it is just an port from the Android L emulator with the proper Android 4.4 binaries included. Therefore, you should expect frequent force closes, poor performance overall and lots of other problems.


Here are the general steps you need to follow:

1) First of all, the tablet must have an unlocked bootloader, with a custom recovery installed on it. This is a great guide that'll help you achieve that: link.

2) Then, you must install MultiROM, it will allow you to boot multiple ROMs on your tablet so that if you feel Android L is too unstable, you can easily boot the other ROM: link.

3) Finally, download the Android L files and gapps, and flash everything in MultiROM by following these instructions: link.


If you see a .zip file named repacked-something (repacked4.zip at the time of writing this article), then it needs to be flashed in MultiROM, unless the last link states otherwise. Do not follow what other websites or articles say (they are not even giving direct links to the original authors, which is unfair), some of them advise to flash repacked4.zip directly through recovery, that will not work and you risk bricking your device that way.

So that was all I had to say. I am currently running Android L myself, it is unexpectedly stable, I've seen relatively few force closes, but performs poor in terms of speed. There is probably barely any acceleration whatsoever (YouTube videos won't start at all). The animations are probably accelerated at less than even 30 frames per second and with more than several programs in the multitasking menu, you are going to see huge performance issues.

For the apps that are not available (Chrome, Facebook etc): go on Google, and search, for example, "Chrome apk". It will give you the apk for that app, which can be easily installed. Yes, it can be altered/have malicious code injected but.. this is the only way you can get these apps.

Good luck!

Wednesday, June 4, 2014

HP Chromebook 14 - 6 months into using it.

I've now had the HP Chromebook 14 for about 6 months, and I think it's time that I give it a fair review and explain why this is not only my first HP review, but quite possibly, the last one.


Performance. 

In the performance department, you should expect nothing but to be impressed. True, it's not the best processor available and so on, but it performs remarkably well no matter what I throw at it (I don't play games or use intensive video processing applications for example, and these will probably get it into trouble, but for the coding I need at university, for listening to music, word processing, browsing the web a lot, it works just fine). I have 16 tabs open in Chrome at the moment, a YouTube song playing in one of the tabs, Skype running in the background and a few terminal windows opened, and it doesn't have any issue handling all these. It moves like it had only one thing opened at a time. And for the battery life, it expects about 6 hours with all these opened, so it that is really fine.

Build quality, ports.

I love its design, it does really look good in my opinion. The build quality is quite good, the rubberized finished on feels absolutely great, and handles usage quite well. True, there are some light marks on the edges caused by the case I was using with it, but I can't attribute that as a fault to HP.  And there is a thing on the top of the screen which I will show in the pictures, but I can only assume they used insufficient glue to use the parts together. The ports on the machine behave outstandingly well, and the HDMI port it comes with proved of great use so far. The plastic the palm rest is made of (which also goes around the keyboard) proved to be quite impressive in quality.

Screen.

The screen is OKish. It is definitely not the best screen available, but it serves its purpose acceptably, and the colors it manages to produce are reasonable. Despite the common concerns, the resolution is just fine (especially in this price range), but the viewing angles are quite bad. Overall, I am satisfied with the screen, but would have definitely paid more for a Full HD one for example.

Touchpad and keyboard.

The touchpad is the best one I have ever used. I can't say it's better than the ones from newer MacBooks, but it is definitely on a par with them. I can only laud HP for it.

Regarding the keyboard, I have very mixed feelings about it. It behaves extraordinarily well, it is spaced enough and it feels great. But it has a huge issue, and that is, some keys tend to color in the worst possible color, pink. 

There will be some photos posted at the end of this article about this, but I had to change the saturation and improve textures for the images as a whole in order for this to be apparent in photos. It looks bad, especially in the powerful sun light or the light emitted by fluorescent tubes. The keys having this issue are probably the ones which are used more often, but this is a 6 months old machine. I began seeing this when it was only 3 months old, and it's getting worse as the time goes by.

The HP customer service (I am impressed they even bothered answering to my email) claims that this is normal, and it "is not due to a manufacturing issue, it is due to the regular usage of the computer". How on earth can a 3 months old computer have its keyboard turning pink due to regular usage? How can HP, in the first place, permit something so badly designed to get out of their factory gates (or their contractor's gates)? This keyboard should have been made in another color.. or in some other way which would have prevented this from happening. 

I was not born yesterday. I have been using lots of computers over the time, and I've rarely seen such an issue. My other Chromebook (the first Samsung one ever released) is over 2,5 years old now, and it never had such an issue with it's keyboard. That one still looks like new, while this one starting looking bad after only 3 months.

Conclusion.

In the end, I still do like the machine. It's just that HP has a customer support which treats customers like they were all born yesterday and they don't know what should expect from a computer. Would you buy a car whose color would start washing out in areas which are most often exposed to usage (the doors near the door handles?) after just 3 months? Most probably not.

For the same reason, I do recommend staying away from this laptop. Too bad it has the large 14" screen and the beautiful design, which I really like.

A serious alternative is the 13" Samsung Chromebook 2, which has just been released in the US. Samsung proved to offer much more reliable machines so far (at least when compared to HP), and I see no reason why that wouldn't go on. It has also a good design, and it has a Full HD screen (which will really smoke the one from this HP). The only potential problem with that machine? Samsung has put a ARM processor into it. I use Ubuntu for my day to day activities, and though there is stuff compiled for ARM, not anything will work on that processor.

At the end of the day, it is mostly up to you which computer would you go for, and though I agree that the HP Chromebook 14 is faster than the 13" Samsung Chromebook 2, I tend to say that the latter one would be better overall. If you need to use Linux, please be careful and check that things you'll need are compatible with the processor from the Samsung Chromebook





You can see here the navigation keys (ignore other anomalies
introduced by editing, e.g. what you're seeing on Shift).


Here you can compare "a", "s" and "d" with "z" and "x".


You can see here that the bezel of the screen is not completely
glued to the back part of the screen. Probably just insufficient
glue used.

Sunday, May 12, 2013

Ubuntu Linux on Chromebook: Crouton vs ChrUbuntu, or installing over Chrome OS or dual booting.

For the end of the term at the University, I've decided to bring with me my Chromebook (Samsung Series 5). I am on a computer science degree, so I must sometimes act like I am a power user or at least, have access to ssh, plus a X client. Therefore, it seemed obvious that I sometimes needed to have a desktop environment able to run native applications (e.g java), plus the X thing via ssh. Okay, Chrome OS is somehow able to do ssh and some sort of X server-client thing, because it's still a Linux operating system underneath, but it's not brilliant at that. 

Before starting anything, I need to say that I am not responsible for anything that happens to your computer by following what I will say. You are doing everything on your own responsibility. Everything is specifically designed for Samsung Chromebook Series 5. It might apply to other machines, or it might not. Please check the sources carefully before doing anything.


One vs. another.

Just to make everything clear: 
  • ChrUbuntu is installed on a removable storage, so it doesn't touch the internal storage or alter it.
  • crouton is installed on the internal storage, so it *might* touch the internal storage.

My recommendation is crouton, for a number of reasons I will enumerate in the section designed to it. ChrUbuntu is probably easier to install, and easier to use, but it has some fundamental drawbacks which make it a bit annoying. For crouton, you'll probably need to use the terminal a little bit, but it's really not that much to be afraid of.

However, because ChrUbuntu is installed on a removable storage, all you have to do in order to get rid of it is to format that storage. This is rather easy, and won't affect the existing Chrome OS installation from the internal storage at all. For crouton, there are some commands to run in Chrome OS in order to remove it, because it installed on the internal storage of the Chromebook. This can get risky sometimes, and if something goes wrong, the only way to recover is to get back to the original state of the storage, and that is to wipe everything and set-up as a new Chromebook.

Fortunately, on Samsung Series 5, there is a hardware switch which just turns off developer mode, and so it wipes the internal storage completely. It might be this easy on other Chromebooks also, but I am not sure about this matter. I advise you to search a little more on recovery for your Chromebook before doing anything.


ChrUbuntu.

First off, I tried to install ChrUbuntu. ChrUbuntu is a quite nice thing, it runs, as I have already told, on a USB flash drive or on a SD card, and you basically dual-boot in order to be able to get into Ubuntu. Yes, you need to reboot for that, so you don't have both running on the same time. 

Installation. 

Technically, to get anything working you need to follow everything from (this is the official ChrUbuntu website) (here), except that at point number 4, you MUST replace the command with the one you get from (here), according to your device and according to where you are installing it (USB flash or SD card). That is all.

Note: turning on developer mode will remove everything from the internal storage!

Luckily, it's not a very hard process (even though at first sight is seems so), and it should be easily reversible in most cases. Unfortunately, after a month, my USB drive stopped working (applications were reporting I/O errors when it happened), and after a reboot it failed to boot anymore in ChrUbuntu. I've seen some other people complaining about this, I don't know if it's only the flash drive which has been broken, if it's related to ChrUbuntu, or if something from the operating system got broken. Anyway, Chrome OS was just fine. 

Booting it up.

What I should mention here is how ChrUbuntu is supposed to start. When you first start the Chromebook, you'll get a warning screen with a "scary" face. At this point, you have three options:
  • Wait for about 30 seconds and it will beep two times, and boot Chrome OS.
  • Hit Ctrl + D -> instantly boot Chrome OS.
  • Hit Ctrl + U -> boot Ubuntu.
Nothing that complicated at all. If you hit Ctrl + U and the installation of Ubuntu is not present, than it will beep so that you know that it can't boot.

Good and bad points.

+ Ubuntu runs exactly like on a regular computer.
+ so you can do (almost, look below) anything you would do on any other machine running Ubuntu.
+ the guy who created ChrUbuntu took care of the drivers, everything is working fine (on my machine at least).
+ little or no maintenance to involved, so might be suitable for people not willing to touch the terminal at all.
+ nothing really altered on the internal storage (except when you first turn on developer mode).

- it's only Ubuntu 12.04, not one of the latest versions.
- because it's installed on a USB drive (2.0 is supported only), or on a SD card, it's deadly slow.
- limited to the maximum speed of the medium it's installed on.
- requires a medium of at least 8 GB, about 2 GB will be free after installation.
- has no swap partition, so when you get out RAM...well, Chrome and other applications will eventually crash, or lag being very bad.


Crouton.  

It's a bit more complicated, but the huge advantage is that it runs on top of Chrome OS, and in the same time with Chrome OS. Therefore, it uses the kernel provided by Chrome OS, all the drivers from Chrome OS, and everything else that is provided by Chrome OS, and so everything should be working just fine and it's extremely fast. When I say extremely fast, I mean that it's one of the fastest experiences I've seen to date on a computer running Ubuntu (this is on just 2 GB of RAM and a dual-core Intel Atom processor running at just 1.6GHz!). 

Important here: just don't do the silly thing of installing Xfce instead of Unity. Xfce is just awful. It has the worst interface I've seen, it's not attractive at all, half of the icons are broken etc etc etc. Go for Unity from the beginning. I did the silly thing, and it seems that there are some "traces" from Xfce on my installation of Unity, and it's sometimes annoying, but I can still do whatever I want because I have the terminal available. 

Actually, forget what I said above. Xfce works actually quite well, and it is worth to give it a try. It will be significantly faster than with Unity, but I still think that Unity will give higher productivity. It's really up to you. Please note that you must use "xfce" wherever you see "unity" in this guide, and start it using "sudo startxfce4" after installation.

Installation.

For the installation, follow the first point from ChrUbuntu for your own Chromebook, that is, just to turn on developer mode. I repeat, from (here), follow just the first point!

Then, from (here), download the package provided. 

Afterwards, follow the guide from (here, same as before but at another heading), but for the point 2, type "unity" instead of "xfce". This will install Unity. For point 4), type "sudo startunity", and Unity will start. Everything else is the same.


Note: logging off does not work for me, for some reason. If this is the case for you, to close Unity, just hit Ctrl + Alt + Back to get back to Chrome OS, and then, in the crosh window in which Unity is running, hit Ctrl + C. This is not a very elegant way of closing it, but it should kill it pretty okay.

Starting it up.

Just as with ChrUbuntu, when you power up your Chromebook, you will get the "scary" face warning. But now, you can wait for 30 seconds and Chrome OS will boot automatically, or you can hit Ctrl + D and it will boot Chrome OS at that moment.

When you want to start unity from now on, hit Ctrl + Alt + T. This will open a crosh window on Chrome OS. There, type "shell". Afterwards, type "sudo startunity", just as before, and it should start.

To close it, try to click logoff. If it doesn't work, then go to Chrome OS, and in the crosh window, hit Ctrl + C.

Good points and bad points of this method.

+ it runs on top of Chrome OS, in the same time with it.
+ easily switch between them.
+ everything is guaranteed to work.
+ performance is absolutely astonishing, as everything is optimized for Chrome OS.
+ Unity + my apps apps add up to about 2 GB, leaving around 8 GB of free storage.
+ unified storage, so each OS can easily manage the files.

- it's only Ubuntu 12.04.
- can be a bit too technical for some users.
- in my experience, I had to use the terminal quite a little bit.
- uses internal storage (not excessively much).
- resources are shared, but I could not notice any difference.


Conclusion.

I've seen a lot of people complaining about the Chrome OS not being a complete operating system, about not knowing to do that and that, about being too minimalist and so on. With the possibility of having Linux working on a Chromebook, this completely vanishes. It's definitely not a solution which satisfies anyone, at least not on my machine. I am expecting it to work much better on the Series 5 550, the newer generation of Chromebooks that has the Celeron processor and double the amount of RAM.

However, it transforms the Chromebook into a computer that is capable of handling almost all the tasks a home or a power user would need to perform.


If you have any kind of questions, I will answer them here. I will try to look regularly for this on this particular post. I think that almost anything you would need can be found just by searching on Google, but if you still need help, I am here and I will try to provide it. 

Friday, February 8, 2013

Congratulations to Microsoft for buying Skype. They simply destroyed the compatibility with Linux.

Update: I actually seems to be working now. However, it's not brilliant at all, the quality is unacceptable for any standard, in my opinion. The sound tends to be very unnatural, and it gets stuck for a few times every single second, so you must sometimes guess what the person at the other end is saying. Furthermore, the video gets behind for about 7-10 seconds after just a few minutes of talking. I talked with a lot of  friends from twitter, and they all complain about Skype. I have no idea where Microsoft is heading towards. 

 Who has not heard of Skype? It's probably one of the most known and popular service for voice and video chatting over the web, and it's been a wonderful product a few years ago. The times in which the quality of both sound and video were great have disappeared a long time ago, and all that's left today is a poor service, with quality which is below any acceptable level and disastrous compatibility (given the fact that mobile and Linux usage have significantly increased over the last few years).

Skype's decay has actually started before it getting acquired by Microsoft, but Microsoft only made everything worse. Before the Microsoft story, Skype was somehow working for me. I am using Linux most of the time, because not only I enjoy it the most, but my University courseworks and tasks require me to use Linux for almost every single module I have on my course. So I had to use Skype under Linux, which used to work quite decent, I might say.

However, over the last few months, it's been getting worse and worse, and now it is completely unusable under Ubuntu 12.04 LTS (after being bought by Microsoft, coincidence?) . From the very beginning, video quality was a total mess under Linux, as the colors were completely out of their place and I always had a lot of shadows of different colors going on in the place where my image should have been (my image was still in the background, with all that going on on top of it). But recently, it started to crash frequently, mostly when I was trying to answer a call (calling worked just fine). And it still used to be decent, even like that!

But now, it reached the point when it signs in, and that's virtually all it can do. There are no connections going on at all between me and the other contacts, no matter what device/OS they use. All contacts appear as offline, I appear offline to them, I can't call, they can't call, so it's completely useless, and this has been happening for about a month now.

I gave up any chance that Microsoft will even think about fixing something, the last update they launched has done nothing good (it seems to have broken anything which was working), except bringing compatibility with MSN (which by the way, I heard they are planning to close and use Skype as their main messaging service). I just suppose they are probably trying to close down the compatibility with Linux because their recently-launched Windows 8 seems to be a flop, and Linux seems to be gaining more and more market share (or simply "users", because it doesn't really have market share as it's open source).

Therefore, the only chance of getting a Skype conversation is through Windows, but the situation is not exceptionally good even there, while doing Windows-to-Windows video calls (but this is another story). Microsoft's own software doesn't work good on their own operating system, so there is nothing new here. They simply deserve their Windows 8 to fail so bad that they will be motivated to do much better software, which works exceptionally at least on their own software!

Don't get me wrong, I am not asking for a flawless product from them for Linux. All I want is one which just does its job, on software it used work on.

The best alternative out there: Google hangouts. Unfortunately, its interface is sometimes confusing for some users, but quality and compatibility wise, it is absolutely perfect. Recommended trying.

Monday, August 13, 2012

PGM Nexus is an application which makes you forget of the power button.

PGM Nexus is a great kernel module (or an app, if you prefer it in simple terms), designed for rooted Galaxy Nexus phones which allows you to turn your screen on or off using just swipe gestures. For example, on my Nexus I just swipe from left to right across the screen, and it powers on. If I do the same thing but on the other direction at the bottom of the screen (where the navigation buttons are located), screen just turns of. It takes a bit of time to get used to it, but after you start enjoying it, it'll be the exclusive mode you turn the screen on and off.

If your power button fails and you are afraid of that, this is exactly what you need. I still can't figure out how it actually works (the screen is off, it doesn't use any power but it still recognizes the swipes), but it's a great idea which is well implemented. It's really great, but because of the kernel thing, it will automatically turn off (if set to start on boot) when a kernel is flashed, but selecting that option again seems to stick through reboots afterwards.

Only drawback: it's $3. There's a free version available, but people complain that it completely stops working after a week. So you decide on which way to go. 

Thursday, August 9, 2012

Jailbreaking Apple's iOS 5.1.1 proves not to be an easy task, you might run into trouble.

I've owned an iPhone 3G when it came out and after my experience with it, I will be never going to buy any iThing again: waiting for new exploits for jailbreak, waiting for new unlock solutions, for every and each iOS version. On Android it is much more simple, and on Nexus particularly, everything is done using Google's own software (and the unlock, if needed, can be realized through a simple PIN code). But I'm not going to compare these aspects, because it's clear who is the winner here.

The idea is that two days ago I've updated my brother's iPod Touch 4G to the latest iOS version (was running an antique one), promising that I'll jailbreak it again (he run into trouble when he was not allowed to install apps that were designed for newer versions of iOS).

So, I simply updated it without any problems, but afterwards I found myself into a stupid situation. No matter what I was doing, I couldn't jailbreak that iPod. I tried several applications of this kind, knowing they are supposed to work properly and to do untethered jailbreak on iPod Touch 4G. None of them finished their job, Absinthe for example started the jailbreak and seemed to do everything needed, but just after rebooting the iPod, it kept returning an error saying something went wrong. After a couple of reboots while trying to run it in different ways, it started to crash even before starting. I wasn't luckier at all with redsn0w, which sometimes seemed to start doing the jailbreak but crashed at the end (iPod still untouched), while other times it even refused to start the jailbreak. And I tried everything, even in Recovery Mode or in DFU, but with no avail.

The solution came with sn0wbreeze (I really recommend you trying with this one), which basically downloads the iOS version and modifies it, adding everything required for jailbreak (including Cyadia and everything else). By using iTunes (Shift + click on Restore, and selecting the modified iOS), I was able to jailbreak that iPod. Of course, this happened after having to apply something else first because I ran into another problem (failed to restore with an error code), but I fixed that easily with a search on Google.

I'm not here to criticize Apple or the guys who take care of jailbreak solutions, but I'm saying that everything is way too complicated and the only loser here is exactly Apple, because the fact that there are so many jailbreak options (4 at a first sight), translates into the following: there is a high demand for this kind of solutions, and iOS is more vulnerable than ever.

I'm not going to post here any links, but you can easily find everything you need with a search on Google. Good luck if you are trying to jailbreak an iDevice and...be patient. :)