Visual Portfolio, Posts & Image Gallery for WordPress

Working from home: a backup Internet connection

Date June 14, 2021
Views 236 Views
Reading Time < 1 Min Read
Working from home has been working well for me for the past year, with a thankfully stable and decently fast Internet connection. However, a recent service issue has led me to try some alternatives and finally set up a backup connection using a Teltonika RUT240 router with a 4G failover. I also cover having a look at the business packages provided by the ISP.

Lamprey

Date February 23, 2020
Views 162 Views
Reading Time 2 Mins Read
During some recent work, I’ve had the need to automate a large number of Google searches for further analysis. Lamprey is the result of that effort and it is shared here in the hope it might be useful for someone else.

Dark Age: Artificing

Date February 14, 2020
Views 165 Views
Reading Time 4 Mins Read
Player guide for Artificing, a new system which I have developed for the Dark Age Ultima Online shard. This expands the previously existing crafting and magic systems to allow players the ability to customise their gear further, as well as providing long-term incentives in the PvE realm.

Kali Linux on the Huawei P10

Date December 4, 2018
Views 176 Views
Reading Time 4 Mins Read
Motivation With my laptop being more of a coffee table which can be moved rather than a portable device (with a comparable battery life), I was wondering if it was possible to get a Linux distribution running on my Android phone, a Huawei P10 with Oreo 8.0.0. This article tries to unify all the various sources I’ve had to use to get this to work and hopefully it will be of use to someone else, either as-is on a Huawei P10 or as a base for a similar device. Backup the device The process we’ll be undergoing will cause the contents of the phone to be wiped, so ensure that you backup your phone. The Huawei backup is more thorough than Google’s, so grab Huawei’s HiSuite, connect your phone to the computer via a USB cable and perform a backup. We’re about to flash the phone and this is not without risk. Don’t proceed if you’re uncomfortable with this and potentially with voiding your warranty. Setting up the Android Debug Bridge (ADB) On the Huawei P10 Go to the Settings application. From there, go to the System submenu and then to About. Tap the Build number option 7 times to enable the Developer Mode. You’ll get asked for your PIN after the 7th tap. Back in the System submenu, at the bottom, you’ll have a new Developer Options. Ensure these options are on: Enable OEM unlock and USB debugging. When asked, allow USB debugging from the PC you’re connected to. On the PC We will need to download the Android Debug Bridge, which you can get from Google’s repository. Once you extract the ZIP file, open a command line and navigate to the extracted folder. You should see your Huawei P10 listed if you run the following command: adb devices Unlocking the bootloader Before we can root the…

Watcher – an introduction

Date November 6, 2018
Views 215 Views
Reading Time 3 Mins Read
This is hardly news: people like to connect stuff to the Internet. The ones I’ve always found the most interesting are IP cameras, which people knowingly or unknowingly have left publicly accessible. For more than 10 years many of these could be found via well-targeted Google queries and nowadays Shodan will do some of the heavy lifting. However, I’ve always wanted to write a program which would automate this search and present the results in an usable way: present a map of Earth, lay down all the cameras and then be able to click on them and begin streaming. There were three important considerations when deciding on how this program would be made: It must run locally rather than being an online service. Needs to run on both Windows and Linux. Must not require elevated privileges to run. Underlying technology C++17 This is being written in C++, more specifically the C++17 variant. This lets me write code which can be (mostly) shared between Windows and Linux, without requiring too many platform-specific implementations. SDL Using SDL provides the basic window creation, OpenGL backed rendering and input handling, without having to deal with the OS implementations. SDL_image A support library for SDL, SDL_image is capable of loading image files. Since I wanted to have a map of Earth, having to store everything as BMPs (supported by the base SDL) would mean a pretty large download. SDL_image allows me to load other image formats, such as PNG or JPG, with a minimum amount of extra code. sqlite3 Given that Watcher needs to scan the internet to find accessible cameras, this information has to go somewhere. To keep the required set up needed in order to be able to run the program, I’ve settled on sqlite3 as a database backend as it just stores…
Work in progress
To top