Failing at reporting Android bugs


Android logo.

I try to write good bug reports, I really do. I fill out templates when asked. I try to include reproducible proof of the bug. I'll even give a screenshot or screen recording to prove I'm not making things up. If I'm familiar enough with the programming language, I'll also attempt to say roughly where…

Continue reading →

Reboot and launch an Android app via ADB


Android logo.

I'm using an old Android phone as a webcam. The camera lens is great, the DroidCam software is nifty, but the Android OS behind it is old and dying. My phone often needs rebooting. Which means that the app also needs restarting. The phone's screen faces away from me, so I can't interact with it.…

Continue reading →

LG killed its 360 camera after only 4 years - here's how to get it back


Screenshot of an Android device with lots of debug options.

Four years ago, I reviewed the LG-R105 360 Camera. It's a pretty nifty bit of hardware. Sadly, LG have decided that they don't want to support it any more. They already got your money, so fuck you for expecting any further updates. Here's their message: We express a sincere gratitude for your patronage to LG…

Continue reading →

Notes on using an Android phone as a Webcam on Linux


A settings screen with options to stream over WiFi or USB.

(Written mostly for myself) Install DroidCam I use DroidCam - which converts your Android into a wired or wireless webcam. Set the resolution nano /etc/modprobe.d/droidcam.conf Add the following text: options v4l2loopback_dc width=1280 height=720 Most video call services are limited to 720p, and streaming 1080p and higher via USB isn't always possible. Interact with the Android…

Continue reading →

Gadget Review: Seek Thermal Compact Infrared Camera


A small camera with a big lens.

Winter is coming! And, as such, I want to check which parts of my house are leaking heat. So, the natural solution is to buy an Infrared Camera and point it at things! The Seek Thermal is a curious beast. While you can buy Android phones with built in thermal cameras, and dedicated devices, this…

Continue reading →

New Batteries Make Everything Better


Graph showing 5% battery left after 28 hours.

It has been 4 years since I got my OnePlus 5T. For a mobile geek like me, that's unbearably long! In recent months, the phone has become temperamental and the battery barely made it through the day without a couple of charges. Using the OnePlus Diagnostic Tool, I could see that battery health had fallen…

Continue reading →

Check your battery stats with the OnePlus Diagnostic Tool


App showing healthcheck app.

My OnePlus 5T is 3.5 years old and, after daily abuse, its battery life is starting to fade. But how bad is it? OnePlus have a diagnostic tool which, annoyingly, isn't available in the Google Play store. And is a bit of a pain to run. So here's a quick tutorial. Download the app APK…

Continue reading →

Removing features is a shitty move


Lots of reviews with people complaining.

I've worked on some big product launches. Every time there's a major update, developers have to think about which features to port over and which to drop. Sometimes it is easy. Analytics show no one is using this feature? Drop it. Sometimes it is hard. It's a moderately well used feature, but complicated to get…

Continue reading →

Using SipGate to set up a BANANAPHONE!


A developer console.

Like many of you, I'm inundated with spam calls. I've suffered endless car accidents, my National Insurance Number has been suspended multiple times, and my broadband will be cut off imminently. Wouldn't be nice to screen out all the fraudsters? So I've set up a Bananaphone. When people ring me, they get 30 seconds of…

Continue reading →

Emoji Passwords and BitWarden


Let me start by saying that Emoji Passwords are probably a really daft idea. I want to use emoji in my passwords. They're easy to type on a mobile keyboard, easy to remember, and a lot more fun than boring ASCII characters. Let's go with ✅🐎🔋📎 (As close as possible to Correct Horse Battery Staple)…

Continue reading →