HOWTO: Back up your Android device with native rsync

Android
Recently, one of my Android devices stopped reading the memory card. Opening the device, the microSD card was so hot I couldn’t hold it in my hand. The battery on that corner of the device had started to swell slightly. I’ve used this device every day for 3+ years without any issues. Until this week.

I also use TitaniumBackup to back up my Android to this external memory card, but since the device can’t read the card, I can’t back it up to the card.

The card is fine, and works in my other devices, as well as being seen from the desktop. Other, blank microSD card can’t be read in the device and similarly overheat within seconds. It’s bad.

Enter rsync, the Swiss-Army Knife of power, to back up my Android device!

Here’s how:

Read the rest of this entry »

HOWTO: Fix missing mouse clicks in VMware with Linux guests

This was a bugger to find out, and required installing and reinstalling Linux a dozen times in different ways, to narrow down on the actual cause.

If you run VMware Workstation on your Linux host, and are also trying to run Linux guests, you may run into a situation where your mouse cursor in the guest moves and tracks as you would expect, but any attempt to right-click or left-click is ignored entirely.

During my tests, I noticed that this happens 100% of the time with Ubuntu 14.04.4, does not happen with Ubuntu 14.04.2, and does not happen with Ubuntu 16.04.

But it is reproducible.

Originally, I thought this was due to having the wrong “mouse” vs. “vmmouse” driver in my Xorg configuration. That didn’t prove to be true.

Next, I tried doing some VMX file hacks, which also failed. I also tried disabling the “Drag and Drop” and “Cut and Paste” options in the VMware options. That also, did not solve the problem.

To fix the problem, go into your Guest settings and under the Processor sub-section, you want to uncheck the “Virtualize CPU performance counters” option. You can leave the rest as-is.

The option should look like this:

VMware disable CPU counters

That’s it! Hopefully that helps someone else out there running into the same problem!

HOWTO: Purge Amazon Echo History with iMacros

Amazon Echo IoT Companion

This one is quick and easy… Have you ever wanted to go back into your Amazon Echo device and delete the history of all commands you asked Alexa to do for you? All the searches? All the weather requests?

Well, you can… manually from the mobile app, or from the Amazon Alexa Configuration page, but that can take hours, because each card you wan to remove is a minimum of two taps or clicks.

But there’s an even easier way… iMacros!

Load up the iMacros browser extension (Chrome version) (Firefox version) and create a new macro. You can edit it ‘raw’, if you wish, but you want only these lines in your macro:

VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=http://alexa.amazon.com/spa/index.html#cards
TAG POS=1 TYPE=BUTTON ATTR=TXT:More
TAG POS=1 TYPE=SPAN ATTR=TXT:Removecard

Now when you load up the Amazon Alexa Configuration page, you can just launch your macro from iMacros and play it in a loop to progressively delete each and every one of those cards in seconds.

I personally wiped out over 5,000 cards in under 2 minutes with this approach. It works great!

Comment below if you have any luck with it, or modify it in a way that becomes more useful to others.

2015: The Christmas I received nothing, but gained everything!

Christmas is typically a dark time for me, and is usually spent alone, even when I’m in the company of others. I’ve never felt at-ease during the Christmas holiday and I never quite know how others receive me in their lives this time of year. I have no real family here to speak of, no cousins, no uncles, no sisters or brothers. It’s just me and my daughter and friends that pop in and out around the holidays.

But this year, a week before Christmas, my employer decided to let me go, after 8 years of dedication to the company, citing “location and budget” as the primary reasons. They assured me that the reasons were not Personal or Performance related. I can’t publicly say any more about this at the moment, but their decision was very unexpected, and drastically truncated my intended plans for the holiday break.

Three days after I was released from my employment, I came down with a very rapid and unexpected bout of nausea. It had me emptying my stomach every hour for the next 18 hours that Thursday. I lost 10 pounds vomiting and making dozens of trips to the bathroom. At one point I got up to vomit, blacked out and fell to the floor in the bathroom in my very weakened state. I woke up about 20 minutes later sprawled on the floor of the bathroom with the contents of the bathroom garbage scattered all around me on the floor. My lip was swollen and bloody, my head hurt and it felt like Bruce Lee punched me in the shoulder.

The New England weather over this holiday is unseasonably warm, peaking all the way up to 70-degrees. In my 4 decades on this orbiting rock, I can never remember a single Christmas where it’s been this warm, with no snow. There have been Christmas’ where we’ve not had snow, and others where we had snow and it warmed up over freezing to melt off the snow, but never, ever has it been in the upper 60’s for a solid week.

This year, the week prior to Christmas, Seryn was with her mother for the week, while our schedule this year rotates and she’ll be with me the week following, starting on Christmas Day. This meant that I was left in a house full of echoes and silence.

This is nothing out of the norm, just an unexpected series of events that all conspired together to make the week before Christmas and leading up to Christmas to be a bit of a heavy burden this year over previous years.

This year, I received no Christmas cards in the mail, no gifts, no calls and no greetings from others in my close and extended circle of friends. It was remarkably quiet, serene, peaceful… and alone. I lost my job, I lost a chunk of my health and I seem to have lost everything that Christmas was supposed to stand for: friends, family, tasty foods and in the company of great and dear loved ones.

It allowed me to mentally reset where I wanted to be in my life, as a father, as a contributor to the community, as an engineer, and as a friend to others. I was able to release a lot of negative energy about the unexpected termination, and while the fall in the bathroom took months to recover from, it was worth it to set me on a new path.

I wouldn’t give up these choices for the world, and it was one of the best, most-serene, life-changing Christmas holidays of many that I can remember.

No more criminals for president. Not this time. Never again.

No more Hillary Clinton - no more fraudI rarely speak out on specific presidential candidates, but I’ve pretty much had enough of this comedy unfolding that we call our political process. With Trump making a complete arse of himself, Ted Cruz saying “we need another war president” and other candidates flat-out lying, making up facts and paying third-party companies to create false campaigns and disinformation on their competition, I’ve had it.

The worst offender? That’s right… Hillary Rodham Clinton. A felon, admittedly breaking dozens of federal laws, and trying to use her fame to erase the legality of those laws. Her campaign continues to build on its own corruption, greed and malice.

Now, after openly admitting she had classified information in the form of emails and attachments, on her own private email server in her home, the State Department is trying to delay the release of those emails until after the Iowa caucus, because the release would be so utterly damaging to her campaign, that she would lose that caucus and have to forego the general election.

But we’re not talking about a few classified emails, we’re talking about 50,000 classified emails. The first wave is to release 9,000 of them, but her campaign wants a 1-month extension, until just after the Iowa numbers are counted, before releasing them. They have the emails now, they’re not going anywhere, so why the delay?

Read the rest of this entry »

HOWTO: Run multiple Zwift sessions on the same PC (Windows only)

Zwift LogoMany people have asked me to write this up and I’m happy to be the first person to push Zwift this far with multiple, simultaneous sessions.

I can say with confidence that up to this point, I’m actually the only person who has this working correctly without overwriting or clobbering critical logs and data files. Others have tried some hacky methods, but they all result in instability and data loss (see “What does NOT work, and why” below).

I started this quest because I am working on a product design (“Secret Sauce” to be withheld in this HOWTO) that involves running multiple Zwift sessions on a single, 100% wireless PC, with the only wire being the single power cable to the wall. No USB cables, no video cables, no HDMI cables, no network cables.

Let’s get some general housekeeping out of the way first…

Read the rest of this entry »

HOWTO: Correct and avoid clock skew on Windows and OS X platforms

ntpd-server-statsThis has come up a lot recently in the context of Zwift rides and races, becasue many rider’s PC and Mac gaming rigs are suffering clock skew. In short, it can be defined as:

“Clock skew is when the clock arrives at different points of the circuit at different times due to the distance, capacitance etc which may cause it to malfunction.”

If you want more detailed set of diagrams and explanations describing clock skew, there’s a great discussion on the StackExchange electronics forum about it.

When your machine is suffering from clock skew, you can inadvertently enter a ride or race earlier or later than you meant to do, and your overall finish time can be later than you expect. For races where the winner is separated from the other podium places by mere seconds or less, having an accurate clock matters!

Here’s how to fix it for both Microsoft Windows and Mac OS X platforms!
Read the rest of this entry »

HOWTO: Fully automated Zwift login on Mac OS X

Zwift LogoQuite a few riders on the Facebook Zwift Riders group have expressed an interest in this, so I decided to take a couple of hours, learn AppleScript and knock this out. Done! (if you’re on Windows, you want this other HOWTO instead)

What this code does, is allows you to create a single icon that will log you into Zwift, with no human interaction needed. It will put in your email, password, click the “Start Ride” button and away you go!

This also leverages the OS X Keychain to store your Zwift email address and password, so it’s secure, not leaked into the filesystem and is able to be called on by any other apps that might need it (ahem, like… Zwift itself!) :D

So here’s how to get it working…

First, we need to create a separate keychain to store the Zwift credentials. You could store them in the main keychain, but I’m a fan of credential separation, so let’s use that.

Read the rest of this entry »

HOWTO: Configure Windows to remember Zwift application passwords

Zwift Virtual Gaming Environnent
This will be a quick-n-dirty post to solve a very tactical problem. (if you’re a Mac user, use this other HOWTO I wrote for OS X instead)

This topic has been talked about dozens to hundreds of times in the Zwift Riders Facebook group and on the Zwift Support area through their Feature Request tracker. It’s become enough of an itch, that I decided to write up this post to detail how to “fix” the “problem” (not a Zwift bug, however).

First, make sure you’re using the latest available launcher from the Zwift website. Even if you have Zwift installed and it’s updating itself regularly, the launcher itself does not yet auto-update, so you need to go back to the website from time to time to pull a new version and update that.

Once installed, launch Zwift, and you’ll see a familiar dialog:
Zwift Application Login Dialog

Read the rest of this entry »

2015 Tour de France Stages Mapped and Ready


The 2015 Tour de France is almost here! I did some searching and noticed there aren’t a lot of detailed maps and routes for this year’s Tour yet, as it’s still pretty early. Sooo I decided to start putting the routes together, road by road, turn by turn, lane change by lane change, as close to accurate as I could find them.

I’ll continue to update this blog post with detailed route maps, commentary, links to stage videos and more as more details come in. They’re still early and not 100% locked-down yet, so it’s unclear exactly which roads might be used for some of the later stages (as of 2015-07-01).

Here are the stages for the 2015 Tour de France, the 102nd tour:

July 4, Stage 1: Utrecht, individual time trial, 13.7km

July 5, Stage 2: Utrecht – Zélande, 166km

July 6, Stage 3: Anvers – Huy, 154km

July 7, Stage 4: Seriang – Cambrai, 221km

July 8, Stage 5: Arras – Amiens Métropole, 189km

July 9, Stage 6: Abbeville – Le Havre, 191km

July 10, Stage 7: Livarot – Fougères, 190km

July 11, Stage 8: Rennes – Mûr-de-Bretagne, 719km

July 12, Stage 9: Vannes – Plumelec, team time trial, 28km

July 13, rest day: Pau

July 14, Stage 10: Tarbes – La Pierre Saint-Martin, 167km

July 15, Stage 11: Pau – Cauterets-Vallée de Saint-Savin, 188km

July 16, Stage 12: Lannemazen – Plateau de Beille, 195km

July 17, Stage 13: Muret – Rodez, 200km

July 18, Stage 14: Rodez – Mende – Montée Laurent Jalabert, 178km

July 19, Stage 15: Mende – Valence, 182km

July 20, Stage 16: Bourg-de-Péage – Gap, 201km

July 21, Rest day: Gap/Digne-les-Bains

July 22, Stage 17: Digne-les-Bains – Pra-Loup, 161km

July 23, Stage 18: Gap – Saint-Jean-de-Maurienne, 185km

July 24, Stage 19: Saint-Jean-de-Maurienne – La Toussuire – Les Sybelles, 138km

July 25, Stage 20: Modane Valfréjus – Alpe d’Huez, 110km

July 26, Stage 21: Sèvres – Grand Paris Seine Ouest – Paris Champs-Élysées, 107km

Bad Behavior has blocked 1256 access attempts in the last 7 days.