Friday, June 24, 2016

HP Deskjet 3520 Won't Print Black - Solved

The other day I noticed that my black printouts are getting fainter and fainter. So I switched to printing in colour, while I want for the replacement cartridge to arrive. I installed the new ink cartridge, and my first black printout turns out blank. Not faded or faint - the page is totally blank. I thought maybe it takes a while for the ink to go through the system, so I printed a few more sheets - still blank. Printed a few test pages with colour and grayscale. They all came out fine, except for the parts where there's supposed to be black ink.

A quick Google search tells me this is quite a common problem. Some suggestions:
 - Reseat the cartridge as it might not be installed properly.
 - Run multiple passes of "clean printhead" as it might be clogged.
 - Check the vent of the cartridge as it might be clogged. In my case, I noticed that the whole upper sticker/label on the cartridge was peeling off, so I taped it back on to provide a better seal/suction.

As part of my troubleshooting, I put back the old cartridge as it should be good for at least one or two pages. Still blank, so definitely nothing to do with the cartridge. At this point, I'm thinking the firmware/software must've decided NOT to allow black and white printing for some reason. Did a partial reset using this procedure from YouTube, then did a couple of "print status report", "print qualit test report". At one stage, I started getting black print again. Then the printer said ink is low and cartridge requires replacement. Put back the new cartridge I bought, and everything is good from then on.

Monday, June 6, 2016

MD5 Checksum

Lots of ways to generate md5 checksum for a file. Easier to do on Linux than Windows. Just run md5sum.
Normally, I would download and install software like:

If your system is locked down with no admin rights to install new software, try the built-in CertUtil utility in Windows.
Syntax: certUtil -hashfile pathToFileToCheck [HashAlgorithm], where HashAlgorith can be MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512

Sunday, April 10, 2016

Recipe 2016.04.10 - Scrambled Eggs

I hear you saying, surely everyone knows how to make scrambled eggs. Anybody can make scrambled eggs, but not everyone can make great scrambled eggs.

Ingredients:
  • 4 eggs
  • 1/4 cup milk
  • salt and pepper
  • 2 tsp. butter
  • shredded cheese
Steps:
  • Beat eggs, milk, salt and pepper until thoroughly mixed.
  • Heat butter in non-stick skillet over medium heat. Pour in egg mixture. Sprinkle some shredded cheese.
  • As egg mixture begins to set, gently pull the egg across the pan with a wooden spatula. Continue pulling, lifting, and folding eggs, until no visible liquid egg remains. Remove from heat. Serve immediately.

Pro-tips:
  • Do not allow the butter to burn, or this will discolour the egg.
  • Do not stir the egg mixture for the first 20 seconds. Lift and fold every 10 seconds afterwards.
  • Pull the cooked  outer edges IN towards the center. Uncooked eggs will flood the area you just pulled back.
  • Never leave a surface in contact too long with the skillet or it will become overcooked.
  • Don't overcook. Remove pan from heat when egg softly set and slightly runny. The retained heat in the pan will continue to cook and firm up.

Saturday, April 2, 2016

Cyanogenmod on Samsung Galaxy Tab GT-P1000

Picked up a stock Samsung Galaxy Tab (GT-P1000) still running Froyo. That's a quite a novelty nowadays. Quick check on the Cyanogen website shows that KitKat nightlies are being built for this tablet. There's even a Marshmallow-based OmniROM for it on xda developers, but I don't it's stable enough to run on the tablet. So KitKat it is.

CyanogenMod installation instructions here:
https://wiki.cyanogenmod.org/w/Install_CM_for_p1

First thing to do is to get the Froyo device updated to Gingergead. For the complete instructions, check out this YouTube video:
https://www.youtube.com/watch?v=iI79j97R4qw
Basically, you install the Samsung USB drivers, so your tablet will be recognized by your PC. Download Odin and the Gingerbread image, and flash it to the tablet. In detail:
  1. Download the Samsung USB drivers from here: http://www.androidrootguide.com/download-samsung-usb-driver-samsung-device-drivers, and install on PC.
  2. Download the Odin flasher and stock Gingerbread 2.3.3 ROM from here: https://docs.google.com/open?id=0BzJut_BZm8NTUjc1OVl6VzRsa0U, and unpack on PC. (Archive password is vio)
  3. Put the tablet in download mode by holding the VolDown button when powering up the tablet.
  4. Run Odin. Use gt-p1000_mr.pit as the PIT file. Use GB_Stock_Safe_v5.tar as the PDA file. In my case, I used the modem.bin file under JPZ modem as the Phone file.
  5. Once everything is set up, connect the tablet to the PC. If the USB drivers are installed properly, Odin should detect the tablet automatically, with the correct COM port.
  6. Click on Start.
  7. Once flash process is complete, Odin will indicate PASS, and device will reboot automatically. Disconnect tablet from the PC. Power down the tablet.
  8. This time, go into recovery mode by holding the VolUp button while powering up the tablet.
  9. Using the volume buttons, go to the "wipe data/factory reset" option and press the Home button to select.
  10. Then, select "wipe cache partition" option.
  11. Then, select "reboot system now".
First boot takes a relatively long time. Once done, you now have a stock Gingerbread Galaxy Tab.

For the second part, we'll be installing ClockworkMod Recovery on the tablet. Full instructions here: http://theunlockr.com/2012/05/07/how-to-root-and-flash-the-clockworkmod-recovery-on-the-galaxy-tab-p1000-running-gingerbread/.

Pretty straightforward after we've gone through the first part though. Download the ClockworkMod Recovery tar file from here: http://www.mediafire.com/?q8s0wnj1s6109gc, then flash it to the tablet using Odin, while the tablet is in download mode. Make sure the Re-Partition tickbox is unchecked. Use the downloaded CF-Root-TAB7_XX_OXA_JQ1-v3.3-CWM3RFS.tar file as PDA.

Third part is to install CM11.
  1. Download the latest p1 nightly build from here: https://download.cyanogenmod.org/?type=nightly&device=p1
  2. Download the OpenGapps Android 4.4 pico package from here: http://opengapps.org/?download=true&arch=arm&api=4.4&variant=pico (Don't bother getting the bigger packages like micro or even nano because they won't fit on the P1000's system partition.)
  3. Set up the tablet to use the USB connection for mass storage, instead of Samsung Kies.
  4. Transfer the nightly build and the gapps package to the tablet.
  5. Boot into recovery mode using the VolUp + Power buttons.
  6. Select the option to "wipe data/factory reset".
  7. Select "install zip from sdcard".
  8. Select "choose zip from sdcard".
  9. Select the CM11 file you transferred and confirm to flash.
  10. Repeat above steps starting from step 7 to flash the gapps package.
  11. Select option to reboot system.
In my case, I ran into a bit of issue. After step 11, the system keeps going back to the recovery menu. After some headscratching, I realized that Step 9 was happening too fast. What's happening was, the first flash actually installs a newer version of the CWM recovery, but didn't actually flash CM11. So, when I did the second flash for gapps, CM11 wasn't even there. What I did then is, once presented with the newer CWM recovery after step 9, I had to flash the CM11 file again, before proceeding to step 10.

Once done, you now have CM11 KitKat running on your Samsung Galaxy Tab.

Saturday, March 19, 2016

Booting to Sony Vaio's BIOS

So the wife's Sony Vaio VPCSD has been running Windows 8.1 for a few years now and it's getting a bit long in the tooth. About time to upgrade to the latest and greatest Windows 10. I already have the installer on a USB stick. All I have to do now is to change the boot order to USB.

For the life of me, I can't remember how to get into the BIOS. Some quick Googling tells me to press the Assist button instead of the power button when booting up. Didn't help - went straight to Windows. What I noticed is that after restart, Windows 8.1 boots up very quickly. There's seemingly no time for you to press any of the function keys. I didn't even see any type of splash screen which would normally tell you which button to press to access the BIOS or the startup boot menu.

The Internet forums say to try holding F2 during bootup, or F8, or F11. I must've restarted the laptop more than 30 times, and using all of the function keys to no avail. Boot from DVD drive definitely works, but the Windows 10 won't fit on the standard 4.7GB DVD disk, so no point.

After hours of experimentation, I finally nailed it. Restart the laptop, then quickly press Esc. Once the Insyde H2O logo pops up, press F2 to access the BIOS setup pages.

Thursday, February 18, 2016

Movie 2016.02.18 - The Perks of Being a Wallflower

Read the book, now watched the movie. As usual, I prefer the book over the movie, as it has more content. As the story is being narrated by an introvert through letters to an anonymous friend, I feel the book's the better medium. Nothing wrong with the movie version though. It's a faithful adaptation of the book, given it was written and directed by the author (Stephen Chbosky). A few portions were removed here and there, but that didn't alter the main story much. For readers of the book, like me, the feeling is that Chbosky merely translated the book to the big screen, and left it at that, which is a bit of a letdown. Not sure what I was expecting, but I was hoping for more.

Story is about an introverted loner with mental issues going through his freshman year. He made a few good senior friends who helped him come out of his shell. First high, first girlfriend, first theatre performance, first dance, first kiss from a girl, first kiss from a guy, first breakup. Ended the year with an epiphany of what's the likely cause of his mental problems, so hopefully it's all smooth sailing from then on.

Some choice quotes from the book/movie:
  • We accept the love we think we deserve.
  • You see things. You keep quiet about them. And you understand. You're a wallflower.
  • But because things change. And friends leave. And life doesn't stop for anybody.
  • You can't just sit there and put everybody's lives ahead of yours and think it counts as love.
  • And in that moment, I swear we were infinite.
  • So I guess we are who we are for a lot of reasons. And maybe we'll never know most of them.
  • Try to be a filter, not a sponge.
  • Nobody felt sad as long as we could postpone tomorrow with more nostalgia.
  • It's nice to have things to look forward to.
  • I don't know the significance of this, but I find it very interesting.
  • And I closed my eyes because I wanted to know nothing but her arms.
  • And I guess I realized at that moment that I really did love her. Because there was nothing to gain, and that didn't matter.

Thursday, February 11, 2016

Passwordless SSH Login

There comes a time when you're managing so many servers and you're typing in the passwords every time you log on, and the passwords keep on changing, and you think, wouldn't it be nice if you can log on to all your hosts securely without typing in passwords?

With SSH keys you can. Basically you use a key generator to generate a key pair - a public key and a private key. The public key is copied/installed on the remote host. The private key you keep on your local client. You then configure your SSH client to use public-key authentication, based on your private key, instead of passwords. As passwords are never sent across the network, this method is more secure (and convenient).

On Linux systems, you'd be generating the keypair using ssh-keygen. On Windows, I used PuTTYgen. By default, PuTTYgen will save the private key using its native format. There is an option to export the private key in OpenSSH and ssh.com formats though, so they can be used with other applications. I tried the OpenSSH private key generated by PuTTYgen, and it does work with another SSH client like SecureCRT. On SecureCRT, go to Options --> Global Options. Click on SSH2, then under "Public key", select "Use identity or certificate file", and enter the file location of your private key. To start using public-key authentication, go to session properties. Under SSH2, escalate PublicKey to be the first authentication method. (Interestingly, the PuTTY private key works with SecureCRT v7.x, but not with v6.x. Go figure.)

For PuTTY, load your saved session, then go to Connection --> SSH --> Auth. Configure "Private key file for authentication", then save your session. Obviously, you have to do this for all your saved sessions.

SecureCRT also has the capability to generate SSH keypairs (under Tools). The key generation wizard gives you the option of two private-key formats: VanDyke Private Key format or OpenSSH Key format. If you plan to use the OpenSSH private key generated by SecureCRT with PuTTY, you'll have to convert this first to the proprietary PPK format using PuTTYgen.

Friday, January 15, 2016

Lunch at Shiki

That's Shiki, the Japanese restaurant in Circular Quay; not Shakey's. With 31 years in the business, it must be good. For Japanese food, we normally go to our usual haunt - Manmaruya. However, since we received a voucher from the SIL, we decided to give Shiki a try.

Got there 15 minutes after opening. We were the first customers. Got a nice little table near the windows, which offered a great view of The Rocks and the food stalls. An hour later, the restaurant started to fill up, but still not full. I reckon the price of the dishes had something to do with that. The "lunch time special", which is a three-course meal costs $65. The deluxe lunch box, which comes with two mains, costs $38, so we went for the latter. The wife chose wagyu beef yakiniku (extra $7.50) and tempura prawn and vege. I had the ocean trout teriyaki and chicken kara-age. Deluxe lunch box also includes 2 kinds of sashimi (salmon and tuna), soft-shell crab, 3 pieces of spicy rolls, salad, fruits, and miso soup.

Specialty of the house is the pink salt BBQ. Basically, a slab of Himalayan pink salt is heated atop a burner, and that's what you use to grill your beef or seafood. $48 gets you 100 grams of premium wagyu beef slices, which you cook on your own. I must say this is the best-tasting beef I've had - soft, tender, juicy, a little salty, melts in your mouth.

In summary, accessible location, great views, excellent service, great food, albeit a bit expensive. I was so full, I decided to walk back to the office, instead of taking the bus.

Monday, December 21, 2015

2015 Vacation Day 4 - Singapore

Today we're having breakfast with the orangutans. Singapore Zoo has an ongoing promotion where you can have buffet breakfast at Ah Meng Restaurant and have pictures taken with the orangutans. The zoo opens at 8:30am, and breakfast starts at 9am. Animal appearance is only from 9:30 - 10am.

Took the 138 bus from AMK Hub to the zoo. Protip for you. Once you clear the zoo entrance, head straight for Ah Meng Restaurant and start queueing up. This is how you get the best seats in the house (terrace, actually), right in front of the stage where the orangutans make their appearance. In our case, we took a leisurely stroll, looking at this and that. By the time we got to the restaurant, there's already a long queue of people.

The food is nothing to write home about - typical fare you'd get from a hotel breakfast spread. There's your scrambled eggs, ham, bacon, sausages, roti, steamed veggies, dimsum, hash brown, breads, pastries, fruits, fruit juices, brewed coffee, tea, ice cream, etc. Food aside, I guess most of the people are here for the orangutans. On cue, they came swinging down the trees, and walked across the branches towards a raised wooden log, which serves as the "stage". Some of the staff were on hand to prevent the visitors from getting too close. The orangutans started having their breakfast, while people line up for picture-taking. Another staff is holding a snake for people to pet and to put on their necks. More photo opportunities.

By 10am, almost everyone has left the restaurant to explore the zoo. By the time we got to the Shaw Foundation Amphitheatre for the Splash Safari Show, the show was almost finished. A volunteer from the audience was asked to throw a frisbee for the sea lion to catch. The guy kept messing it up; to the delight of the audience. The sea lion performed a few more tricks and splashed the audience with water as farewell. For the elephant show, we got to the venue half an hour early, allowing us to choose the best spot - under the shade and near the exits. Noticed that the emcee for both shows is the same lady who hosted the breakfast. Must be a demanding job. Last show for the day is the Rainforest Fights Back Show featuring lemurs, spider monkeys, otters, macaws, etc. The shows are pretty entertaining, humorous, sometimes informative.

Visited a few more animals' habitats before calling a day. The heat was just overbearing. Cooled off a bit at KFC nearby, then took the 138 bus back to the AMK Interchange.