How to find portable 64-bit VLC builds

You could just use the 32-bit build from the download link, but if you’re reading this that was never an option.

Need 64-bit VLC goodness on a machine you can’t install anything on? Portable VLC to the rescue. Find it by doing the following:

  1. Go to
  2. Scroll to the bottom of the page for the latest (highest) VLC version number and click the corresponding link.
  3. Click the /win64 folder link. This will expose 64-bit VLC builds in .zip and .7z archives.

How to use media cards with the Xbox One

Apparently I’m the first person to try this.

After being unable to get my Subsonic DLNA server to show up reliably in my Xbox One S’ Media Player, I decided to use external storage for video playback instead. I was about to drop $50 on a 128 GB USB stick when I remembered I had a 64 GB Kingston Class 10 UHS-1 microSD card laying around. Buying a USB media card reader seemed like a more efficient solution, so I started looking into doing so.

Apparently – nearly 3 years after Xbox One’s release – no one’s bothered to try this. Or at least they never bothered to write about it, because my Google searches and forum posts turned up nothing definitive.

I wound up having to get a couple readers and try them out myself, and both of them worked. This leads me to conclude that the Xbox One does in fact support media cards via USB readers. That said, you definitely want to get the fasest reader, and the crown for that goes to the Kingston MobileLite G4. This is the only reader I found with USB 3.0 and UHS-II support, which should future-proof you for ultra high bitrate (e.g. 4K) playback given a correspondingly fast microSD card. The G4’s only downfall is it supports SD and microSD only, but when’s the last time you saw any other media card in use in the wild?

You can pick the G4 up for as little as $8.95 online, which is much less than the $50 I mentioned earlier.

A local option is the Insignia NS-CR2021 USB 2.0 SD/MMC Memory Card Reader which, as its name suggests, also supports MMC and MMC+ cards. Unfortunately it’s limited to USB 2.0 only and there’s no mention of UHS support anywhere.

How to remove eBay results from Google Shopping searches

People actually buy from eBay? Gross.

Sick of sifting through hundreds of eBay results in Google Shopping? Append to your search.

There you go, no more questionable eBay garbage when you’re trying to shop from reputable merchants.

Thanks jscher2000 for the tip!

How to rebuild the Samsung Galaxy S5 GPS NVRAM

Of course you want to return to TouchWiz to fix a problem. Ha, no you don’t.

Note: if you’re not running a custom ROM – i.e. you’re running stock TouchWiz – and need to do this, see Phase 4 only. You’ll need to be rooted.

If you’re running a custom ROM on your S5 and GPS can’t get a fix despite rebooting, battery pulling, flashing new builds, and using all of GPS Status & Toolbox‘s tricks, chances are you’ll need to do rebuild the GPS NVRAM. Here’s how.

Phase 1: Backup your current custom ROM installation.

Instructions (which assume you use TWRP) in Phase 9 here.

Phase 2: Wipe the phone in TWRP.

  1. Boot into TWRP.
  2. Tap Wipe.
  3. Swipe to wipe using the default settings.

Phase 2: Flash the latest baseband in Odin.

  1. Find the latest baseband under the “Odin” heading here. If the files there are .tar archives, you’ll need to extract the .bin baseband files (usually called modem.bin and/or NON-HLOS.bin) from them.
  2. Flash it using instructions in Phase 3 here. You will need to do perform this for modem.bin and NON-HLOS.bin separately as ODIN reboots the phone after each individual flash.

Phase 3: Restore your rooted TouchWiz ROM.

If you don’t already have one of those, here’s how to get one. If you’re setting up a rooted TouchWiz ROM for the 1st time then you don’t have to restore anything because it’ll already be running, so you can proceed to the next phase.


  1. Boot into TWRP.
  2. Tap Restore.
  3. Tap Select Storage.
  4. Select the folder containing the backup.
  5. Swipe to restore.

Phase 4: Rebuild the GPS NVRAM.

  1. Boot into TouchWiz.
  2. Install Shotcut Master (Lite).
  3. Follow these instructions starting from “Open ‘Secret Explorer’ menu” onward onto the 3rd to last sentence.

Phase 3: Wipe the phone in TWRP.

Same process as Phase 2.

Phase 4: Restore the backup you made in Phase 1.

Same process as Phase 3, but with the custom ROM backup instead.

GPS should be back to working now. I have no idea what causes this problem, but so far this is the most involved custom ROM-related fix I’ve had to do.

How to make and flash your own rooted stock Lollipop TouchWiz ROM for the Verizon S5

If you’re reading this, you’re probably trying to solve a frustrating problem. Relax, I’m here to help.

The following are prerequisites for this to work:

  • Rooted Verizon Samsung Galaxy S5 (SM-G900V) with unlocked bootloader.
  • TWRP custom recovery installed.
  • 7-Zip installed on your PC.
  • SuperSU downloaded to the top level directory of a USB flash drive.
  • A USB OTG cable.


  1. Download full stock firmware.
  2. From the above archive, extract system.img.ext4, boot.img, modem.bin, NON-HLOS.bin, into a new folder on your PC.
  3. Open 7-Zip.
  4. Navigate to the folder containing the files from Step 2.
  5. Select all files from Step 2.
  6. Click Add.
  7. In the Add to Archive window that pops up, enter a filename and desired path.
  8. Click the Archive Format dropdown.
  9. Click tar.
  10. Click OK to make the files into a .tar archive
  11. Flash the .tar archive from Step 4 in Odin using the AP slot as described here.
  12. Boot into the ROM and set it up as you would a new phone, including updating all the apps on it.
  13. Boot into TWRP.
  14. Connect the USB flash drive containing SuperSU to the S5 using the USB OTG cable.
  15. In TWRP, tap Install.
  16. Tap Select Storage.
  17. Tap USB Storage.
  18. Select the SuperSU .zip file.
  19. Swipe to flash SuperSU.

And that’s it. This will give you a fully stock, rooted Lollipop ROM you can boot right into.

If you run custom ROMs, the stock ROM is pretty useful to keep handy as some troubleshooting methods (especially advanced ones involving the baseband) work on it only. As such, it’s a pretty good idea to back it up so you can restore it as needed. Instructions found in Phase 9 here.


How to use an Xbox 360 headset with the 3.5 mm jack Xbox One controller

Microsoft won’t tell you how; they’d rather you buy a new headset.

Note: I can personally verify this works for the Xbox Wireless Controllers with built-in 3.5 mm stereo headset jack onlyI don’t know how it works with other 1st party controllers, though the post below indicates that it should.

Basically you need a 2.5 mm TRS female to 3.5 mm TRRS male adapter. The headeset microphone does NOT work with regular 2.5 mm female to 3.5 mm male adapters.

Per thornierbird on Reddit:

More background information on headset compatibility with the Xbox One, including different 3.5 mm specs, is available from Xbox Support.

Power cycle – NOT reboot – your PC after a Linux Mint version update

Why write complete documentation when you can just confuse users instead?

If you reboot your PC after a Linux Mint version update (e.g. 17.3 to 18) and find things to be a bit wonky, you’ll need to power cycle the PC. The reason for this is there may have been a kernel version update, and Linux Mint always boots into the latest kernel installed. However, it does this only if the PC is power cycled. If it isn’t, the new Linux Mint build will boot using the old kernel, which causes the problems you may be experiencing.

You’d think this would be in the official version update instructions, but this is Linux, and so caveats are left to unlucky users to discover for themselves.

How to get a radio logcat from the terminal in Android

It’s easier and less complicated than it sounds.

Radio logcats are useful for troubleshooting network connectivity, especially on modded (rooted &/or custom ROM) devices. If you’re reporting such an issue it’s often useful to provide the radio logcat in addition to the regular logcat to help the developer resolve the problem.

That “123456” isn’t supposed to happen; my network provider’s name should be there instead. This is a situation in which a radio logcat would be useful.

There are 3 ways to get a radio logcat:

Using MatLog

This is the easiest method.

  1. Install MatLog.
  2. Tap the Options menu icon.
  3. Tap Settings.
  4. Under Configuration, tap Log Buffer(s).
  5. Tap the logcats you want (Radio in this case, but you can request others too).
  6. Exit Settings.
  7. Tap the Options menu icon again.
  8. Tap File.
  9. Tap Record to start logcat collection.
  10. When you’re done, stop the recording by tapping the corresponding location. The logcat file will be at /catlog in your primary (read: internal or adopted external) user storage.

Using the terminal on your device

  1. Install Terminal Emulator.
  2. Follow these instructions to set Terminal Emulator to start with root permissions.
  3. Start Terminal Emulator.
  4. Enter logcat -b radio > /sdcard/radio_logcat.txt – This dumps the logcat file radio_logcat.txt at the root of your SD card. logcat -b radio works too, but I have no idea where it puts the file and have never tried it myself.
  5. Reproduce this issue you’re getting the logcat for.
  6. When you’re done with Step 5, close Terminal Emulator.
  7. Navigate to the root of your SD card to find the file there.

Using ADB on your PC

While I know this method exists, I’ve never used it. The command to enter is adb logcat -b radio, and adb logcat -b radio > /sdcard/radio_logcat.txt probably works too.

How to change SELinux Mode from Enforcing to Permissive

Alternative title: How to get FlashFire working on CyanogenMod 13

The best app for this is SELinuxModeChanger (SELMC). You can sideload it, but it’s best to get it via the F-Droid marketplace app.

SELMC enables use of apps such as FlashFire – which needs either permissive SELinux or SuperSU – on CyanogenMod (which is incompatible with SuperSU).

Don’t forget to set SELinux back to Enforcing after you’re done using Permissive, as it’s a really important part of Android security.

The above worked on a Samsung SM-G900V running the kltevzw build of CyanogenMod 13.

Stop fooling yourselves: Allo has NO chance

Google’s dogmatic view of how people (should) communicate puts Allo firmly on the path to failure.

Android Central asks:

What if there was an app that had the simple appeal of Apple’s iMessage, but was available for every person using an iPhone or an Android?

My response:

Unfortunately the article’s premise works only if Allo ships pre-installed on devices. Even if Google does that for Android, Apple would never allow it for iOS. This would leave Allo with the same need for manual installation as other 3rd party messengers, except those other messengers are already far more successful.

There’s an existing case of this: Hangouts. Hangouts was preinstalled on Android devices and worked automagically via Android’s Gmail account prerequisite. Yet it never took off on any other platform (except perhaps the desktop) and isn’t even in the top 5 messaging apps.

Facebook handled this challenge in a completely different manner: they simply opened up Facebook Messenger to use by anyone with a phone number. BOOM: Messenger is now the world’s #2 messaging app despite needing manual installation on all platforms.

I think it’s hilarious how every Android (fan)blog conveniently ignores that iMessage also has a desktop component that Allo doesn’t. So does Facebook Messenger and Whatsapp, which are available on all platforms, thus enabling them to span form factors.

Another mistake here is the extreme iMessage tunnelvision. iMessage may be big in the US where iOS rules, but Android rules the rest of the world. If Allo is indeed the anti-iMessage, that would make it a narrow and incomplete solution that addresses only one market.

Even Microsoft haven’t been as disingenuos as Google. Say what you will about Skype, but at least Microsoft haven’t pushed a completely incompatible service that no one has any real reason to use.

The market failure of Google Talk, Google Voice (as a messaging solution), and Hangouts shows that Google still doesn’t fundamentally get how people actually communicate. They think they can sell every feature/application solely on ideological purism. That doesn’t work in the real world.