Saturday, December 22, 2012

[SOLVED] Unfortunately, Clock has stopped

This solution was published on the hajma blog. Pavel Heimlich deserves full credit here, but I am reposting it for convenience as it was an extremely simple fix for my Galaxy S2 running Cyanogenmod 10. Incidentally, the reason I had an error was that I lost my data connection due to some update and didn't have a recent backup, so I had to go back to a stock install of the OS. When I was restoring programs with Titanium Backup I noticed that, for some reason, Clock was not installed, so I installed it too. Then I got the above error. I use my phone as an alarm and really needed this back, hence the search for the procedure I've posted below.

When I upgraded my xperia ray from CM7 to CM9(FXP128), I was greeted by the message 'Unfortunately, Clock has stopped' whenever the phone started and anytime I touched the Clock widget. Apart from being annoying it meant I couldn't set my alarms so this became a priority one issue :-)

I opened the Terminal Emulator and typed:


$ su 
# logcat

Then I held 'Volume down' (a.k.a. Ctrl) and 'c' to stop the output. I scrolled a bit up in the output and found a line that said:

E/SQLiteOpenHelper( 5231): Couldn't open alarms.db for writing (will try read-only): E/SQLiteOpenHelper( 5231): android.database.sqlite.SQLiteException: Can't downgrade database from version 7 to 5

OK, so this is where it's breaking. I wasn't really interested in finding out what should the proper combination of ownership/permissions for the file as I didn't really trust it would end just here, downgrading database version offers a range of situations that can go wrong. And since I don't really care for my past alarm clock times, I got rid of the old database:

# cd /data/data/com.android.deskclock/databases 
# mv alarms.db alarms.db.bak 

Problem solved.


Thanks Pavel!

Thursday, March 29, 2012

Workaround for Finger Sensing Pad on ASUS laptops

History:

I love my ASUS G74Sx laptop, it rocks in so many ways, except... The godawful, horrible, annoying, PITA trackpad.

Let me explain for those who are not yet plagued with the nasty bit of software attached to this otherwise decent hardware. It is my understanding that the Sentelic Finger Sensing Pad is actually very similar to the ones found on Mac laptops and are in fact made by the same company. However, the software to drive them is entirely different. The Mac software is impeccable, smooth scrolling in all directions, almost no lag, perfect execution of acceleration and speed, etc. The Windows software is laggy, inconsistent, and buggy. Most of the time, I use an external mouse with my laptop. I expect the system to disable the trackpad when an external mouse is plugged in, but it doesn't keep that setting for long. The trackpad is very sensitive to the point where a slight touch activates it. Where this becomes a problem is that I'll be happy-go-luckily typing away on my blog, letter, or essay when all of the sudden the trackpad wakes up and moves my cursor to a whole different part of the document. I type faster than my eyes can see (or my brain registers, not sure which) such that it takes a few words before I realize what happened. Then I get mad, I end up deleting some very important text. In any case, this is unacceptable. I've checked to see that the Fn+f9 option to disable the trackpad was still on, and it was. The system tray indicates the trackpad should not be working, but there it is, in all its glory, taking over my mouse movements. Not to mention, there isn't a disable option in device manager. I've scoured the internet for better drivers and software to no avail.

At one point, I thought it might be related to my existing USB mouse. I decided to use a different mouse and thought for a moment that the problem went away, but it just took a random amount of time to show up.

So, what can I do?

If you don't want to bother with reading all the stupid problems I discovered along the way to a resolution, then just click here to go to the solution to this problem. However, it would benefit anyone to read the rest just to learn how Logitech, Windows, and ASUS all work (or rather, don't work) together to create a seemingly impossible problem.

Things to consider:

One thing I had to consider is what happens when I move my laptop and disconnect the external mouse. Sure, I could uninstall the trackpad and reinstall it before moving my computer to a location where I would need the trackpad, then uninstall it when done. That seems like a hassle to me, and I don't want to keep going to device manager to do this either. Plus, the install requires a reboot to work, apparently.

Another weird thing is that the trackpad is treated like a PS/2 mouse rather than a USB mouse. I find this to be very odd, I thought everything was USB these days, including internal mice and keyboards.

I decided to revert to a simple PS/2 mouse driver instead, but the option to disable never showed up. I'm guessing it's because the system doesn't truly allow one to disable a PS/2 device and I believe this to be a BIOS setting since the OS in no way controls or assigns IRQs.

Worse still, Windows will not simply allow me to uninstall the device without a reboot.

Back in the early days of A+ I recall that some computers had APIC (advanced programmable interrupt controller) support. That is, the OS could control IRQ settings. This had to be enabled in the BIOS as to whether the BIOS handled hardware IRQ assignments with or without the option for the OS to change them. On a laptop, it makes little sense for BIOS to give this option to the OS since there is no room for changes. However, we can see that my dilemma requires that I do have this functionality.


An attempted resolution:

Since I've done all this evaluation, I thought it meant that I could purchase one of the new wireless trackball mice with the really small USB receiver. With this, I could simply disable the trackpad in the BIOS and use the wireless mouse all the time.

However, I discovered a new and even more shocking outcome. When I reboot my computer with the trackpad disabled, my keyboard is also disabled. That's right, I have to use the onscreen keyboard just to log in. At first I wasn't sure why this happened and so I reverted back to the way things were previously by re-enabling the trackpad in the BIOS, and then the keyboard worked.

I'm not sure who is at fault here, the BIOS or Logitech? I think it is a combination in that disabling the trackpad might also disable the keyboard, although it didn't do this with my other USB mouse. I noticed when I installed the new mouse that it also installed a keyboard driver, and when I booted into the system with the trackpad and keyboard now disabled, there was only the driver for the non-existent Logitech keyboard. My thought here is that Windows can use multiple mice, but only wants one active keyboard. Since it thinks that there is one based on the new mouse and some BIOS setting, it doesn't see the built in keyboard any longer. With the trackpad enabled, there must be some change in the BIOS in assigning the IRQ so that Windows does not ignore the built in keyboard. I am only guessing at all of this, but it's all really annoying.

I also thought I might have found a workaround. I thought, "what if I uninstall the trackpad, it will disable it until the next boot?" So I tried this. Unfortunately, it doesn't disable it, Windows used a generic PS/2 mouse driver instead, without the option to disable it with the external mouse, thus making this even more annoying, not better.


The Solution!

I thought all was lost and I had one more idea. Why it took me so long to think of this, I can't imagine. Couldn't I just force Windows to use a fake driver? I started looking around the 'net for a fake driver when it dawned on me that I can use any unsupported driver already in Windows. So, I updated the driver to one I selected from a list, I made sure to uncheck the show compatible drivers and selected a generic Logitech Serial mouse.




I rebooted just to make sure it would stay that way, now I don't have any issues, the trackpad doesn't work any more. Eureeka! I only worked on this resolution for a week, it's no big thing ;-)


A request was made to break this down a bit more for the less tech savvy, so I will attempt to do that.

To get to the above screen, go to Start >  Control Panel > Device Manager. You'll have a list similar to the following:



From here look for "Mice and other pointing devices" where you will see "Finger Sensing Pad". Right click on this and go to Properties, then select update driver.



From here, click the button that says to "Let me pick..." and it will pop up a new screen. On this screen you have to uncheck the box that says "Show compatible hardware" and you'll see the following: 


At this point, it's easy, just pick the same manufacturer as I did in my original screenshot and then pick the same model I did and now you have a completely useless trackpad :-)



Wednesday, March 28, 2012

There are no good streaming options and here's why...

Netflix:

In the last 3 or 4 weeks, Netflix's selection has drastically changed. Of course, we all know that they lost Starz. But did you know they lost Sony as well? Look for almost any movie and you won't find it. Sure, they have a lot of old movies and random foreign films, as well as their own selection of movies created by Netflix. I don't care about any of that. I want to watch a blockbuster film. Not only that, but I also dislike how long it takes them to add a season of a show. Hulu has the latest episodes of all the shows I want to watch, as does iTunes. There are problems with those as well, which I will address later. The fact is, I'm beginning to feel like Netflix just isn't worth it. Although, at $7.99/month who can really argue. As we'll see, there are no better options.


Hulu:

Hulu has the most updated shows of any streaming service. And it would be totally worth the price, except for commercials. Netflix doesn't have commercials, neither does Amazon Prime, or Crackle (except at the beginning). So why would I pay $8.00/month to watch a 30 minute show that is in 8 pieces due to commercials? I do want the latest of certain shows, but to be honest, I'm also tempted to "acquire" them commercial free.


Amazon Prime:

Amazon Prime has probably the largest selection available, now that Netflix is limited to mediocre bottom-shelf titles. The problem with Amazon is that most of them you have to either buy or rent. The actual "free" streaming part of Amazon Prime is limited. On the bright side, I've been able to find a lot of movies that I could stream, even if for a small rental fee. Small is a relative term, however. Most TV shows charge per episode, why would I want to pay almost $3 for a 20 minute episode of Ugly Americans?. Otherwise, the selection on Amazon Prime is quite similar to Netflix, particularly with TV shows. Unfortunately, Amazon doesn't have the latest episodes either. My biggest complaint is the complete lack of a personal library of what you watched, ratings, recommendations, or a queue. I resorted to a wishlist I called "Streaming" in order to save all the titles I wanted to watch in the future.


iTunes:

iTunes doesn't offer a subscription, so you'll have to pay for everything. However, one thing I did notice was a fairly decent selection. Everything I found in Amazon, I found in iTunes, but it wasn't the reverse. iTunes was kind enough to include the more recent seasons of some shows. One really special offer was to purchase a "Season Pass" of currently airing seasons. If what you want is a good selection and to rent a movie without leaving the house, iTunes is great. Other than that, it would be way too expensive as a replacement to cable.


The Others:

There are a number of services out there, although none have the selection yet to compare to the above. Cable companies such as Comcast, Cox, and Dish have their own services now, some in conjunction with other popular names such as Walmart, Blockbuster, and Redbox. Each could stand to be a contender in the online Video on Demand (VoD) realm in the future.


What I want:

I'm sure there's tons of red tape, contracts to be made, security measures to be taken, all necessary to deliver the content the world desires while protecting the digital rights of the labels. Do I care about that? No. What I want is to find a company that offers everything, any movie I want, every episode of a TV show right up to the one aired last night, and I want it commercial free. I want it at a reasonable price, but I fully expect it to cost much more than 8 bucks a month. Granted, I can't afford $80 either just to watch shows on my computer. So, there should be various offers and plans, much like cell phones. You can purchase plans by the minute, even have rollover, you can elect to have TV shows only and no movies or vice versa. And if you don't mind ads or commercials, a reduced price option all around. Right now, I believe the industry has no intention of giving us this kind of deal. I feel as if the lack of such a plan is by design, an arbitrary demand created by a deliberately limited supply and that all these companies are a part of it. iTunes has the content, yet they don't offer a subscription. Those with subscriptions don't have the content. This is no different than the troubles faced by streaming music services. Spotify has a lot of good music, but consistently lacks in major names such as the Beatles, Metallica, etc. Yet, you can find them in iTunes.


Temporary Solutions:

If I remain optimistic, I can assume that some day we'll be over those hurdles and my dream will come true for both video and music. This vision is a long way off  though, so what are the best alternatives?

To start, you could invest in several of the services. Amazon has the largest selection, and I'm sure anyone can handle the commercials in Hulu if they really must see the most recent episode. Netflix has the absolute best queue management, but iTunes isn't bad either. Netflix has more shows that don't require a per-episode rental fee and Hulu is really only good for the last season or two of a show.

I found an interesting website that just might make this all work out. SideReel offers the ability to manage a queue of TV and Web shows. As of this writing, there is a "Movies" tab and you can search movies, but nothing more. Here's the clincher, SideReel can show you anything if it's available online to watch, paid or free. Although, I did find a bit of a bug in that it doesn't show Netflix results despite the fact that the option is there to include Netflix results in searches. Even so, I can do a search on Ugly Americans and it will list the episodes. I can select the season or an individual episode and it will show me where I can watch it. Currently, it shows Hulu and iTunes because Amazon doesn't have anything after season 1, neither does Netflix. So, at the very least, it offers a way to FIND stuff. If what you're looking for can't be found on the major services, the "Search Links" button just might find it elsewhere. I can't say whether I trust the links it provides, I did visit a few and wasn't all too trusting of the site, especially one asking for information. But hey, it's an option if you REALLY must see that episode. Another nice feature is the tracker. You can track your shows and week by week it can show you when the next one airs. This can be especially nice if you are addicted to a bunch of shows and they are all using different services. It's a little bit of one stop shopping in a way. Although, more like one stop searching, you'll still have to link to your service of choice to see the video.

Thursday, January 19, 2012

Screensaver as desktop background in Windows 7

Steps to follow:

1. Determine the name of the screen saver you want to use. Click “Start,” then “Control Panel.” In the search box, enter “screen saver.” When the results appear, click “Change Screen Saver.” Scroll through the list that appears to find the correct one, and write down the exact name.

2. Click the “Start” icon. In the search bar, type “cmd” and hit “Enter.” This opens the command prompt.

3. Enter the exact name of the desired screen saver in the command prompt box, followed by “/p65552.” For instance, if the screen saver is named “waterfalls,” you must type “waterfalls.scr/p65552.” Hit “Enter” when you are finished.

4. Hit “Ctrl,” “Alt” and “Delete” together to open Task Manager, which allows you to regain control over your desktop. Click on the Task Manager if your task bar at the bottom of the screen disappears.

5. Remove the screen saver from the desktop by pressing “Alt” and “F4″ together.

Obtained from: http://windows7net.com/windows-7-guides/how-to-set-screensaver-as-desktop-wallpaper/