Category Archives: How To

How to recover from a 6-beep BIOS error on a HP Z600 / Z800 Workstation

Funny story: I was setting browsing through the Z600 BIOS today trying to optimise an issue I was investigating, when I came across an interesting option I thought I’d fiddle with: the PCI-e compute option. You can find it under Advanced PCI options I believe. I thought perhaps it’ll turn my two GPUs on the system into even faster devices… but sadly that wasn’t the case. Instead I apparently BRICKED the whole system!

So my Z600 is beeping 6 times upon startup, which indicates a pre-video startup error (in other words, the system can’t communicate with an available graphics card). Turns out that when I enabled the PCI-e compute option on every slot, the BIOS disabled the ability to use said slots for graphics. Bit of a design flaw there, HP…

The Solution

Naturally I did this on both GPU slots, and sadly a regular CMOS reset does not switch these options back. What does work however is to use a regular PCI slot with an older graphics card to let us boot into the BIOS and change the settings back (i.e. disable compute option). The short top slot is ideal for that, because to my astonishment it’s open at the back. This means longer cards fit in without problems, and most GPUs can communicate on the front contacts.

I whipped out an ATI Radeon 2800 that’s been collecting dust in a box, slipped it in as my THIRD graphics card, attached a monitor and booted into my Z600. All went well, I could change the settings in the BIOS to non-compute, and the whole thing was solved.

I was even able to boot straight into Windows with the Radeon 2800 and the short slot, even thought the refresh rate wasn’t great (perhaps 20 Hz at best at 1920×1080), but at least I could fix the issue of the bricked workstation.

It goes to show that it’s always good to keep older graphics cards around! This works on both Z600 and Z800 workstations.

Further Reading

Here’s a list of links that helped get me to this solution:

If you have any questions, leave a comment below.

How to get the URL to your next Live Stream on YouTube (stream now)

YouTube’s Studio “forever Beta” interface is in a continuous state of disarray. At the time of writing, and since 2018, we’re seeing a partially upgraded interface with plenty of deep links into the older YouTube Classic experience. 2020 is almost half over, and YouTube have upgraded half of the Live Streaming experience (Events). However, the Stream Now option is still Classic, and as such has a few issues that won’t be fixed (until we see the rest of YouTube’s upgrade… at some point in the indeterminate future).

The issue that I sometimes have is to find the URL to my new Stream Now live stream. With events it’s not a problem, but Stream Live Classic will often show us the generic live URL to our channel (say https://youtube.com/TheWPguru/live) rather than a direct URL with an ID. It entirely depends on the channel. On some you’ll see this (generic):

where you’d really like to see this (direct ID):

The latter is preferred because you can start chatting with people before you go live, and you can give out this link before the event begins. Although the generic live URL will work, the event will not be accessible when you start streaming the next time.

Thankfully, there is a way to extract the correct direct URL from the new YouTube Studio interface, but it’s not entirely obvious. Here’s how to grab it:

Continue reading How to get the URL to your next Live Stream on YouTube (stream now)

SVN Command Line Basics

I keep forgetting SubVersion basics from the command line, and thought this quick little cheat sheet might come in handy. I’ll cover the basics:

  • checking out
  • updating your local copy
  • checking current file status
  • committing a change
  • adding a file
  • removing a file

Checkout Out

To make an initial copy of an online repository, we use the checkout command. It’ll create a new folder with the name of the online repo in the current directory and copy all its contents into it. Checkout can be abbreviated with co:

Updating your Local Copy

If you’ve already checkout out a repository, and you’re not sure if changes have been made on the remote, you can update your local copy using the update command. It can be abbreviated with up:

A list of updated files will be displayed, as well as the revision of the current commit. If no files are displayed, your local copy is up to date. Check svn help update for details.

Checking the status of current files

SVN let’s you display a status of all current files. This lets us decide what has been changed locally before a commit has been made. We use the status command for this, or its abbreviation stat:

A list of files and their status appears, or nothing if all files in your local copy match the online repository. Check svn help status for details.

Committing a change

When one or more files have been changed, it’s time to submit this change to the online repository. We do that with the commit command, abbreviated with ci (short for checkin). It’s customary to leave a small comment as to what this change does, using the -m switch:

Commit will store changes across multiple files. There’s no need to submit each file individually. The commit command is designed to make all changes final, such as updates, additions and deletions. It’s usually used at the end of all changes that have been make, as a final synchronisation step.

Adding a file

Add will add a new file to the repository. It’s necessary to add files to put them under version control, otherwise they’ll be designated with the ? parameter (as unknown state). The same goes for directories.

Removing a file

If you delete a file from the local directory, we must tell SVN about it. Otherwise it will assume the file still in the online repo is out of sync and should be downloaded to your local copy first (being obviously missing and all). Delete will remove a file for us. The command can be abbreviated with del, remove or rm:

Further Reading

How to add your Twitch URL to Reddit

I’ve been meaning to join Reddit about 20 years ago and never got round to it. Sadly my last name and site name are gone by now, but I finally managed to sign up – new for 2020 and all that. While I was there, I accidentally stumbled upon the option that lets you add your Twitch URL next to your user name. I had read how to do it recently, but it didn’t mean anything until I saw it.

Here’s how it works.

The option is not set on your user profile, but on the community, i.e. the Twitch Subreddit. You must join it first, head to its main page, then click the little pencil icon next to the option “Use Flair Preview”.

This will give you the option to edit your flair and show it on this community.

Hit apply and that’s it! Anytime you make a post or comment in the Twitch Subreddit, your link will be shown.

How to redirect a URL in NGINX

I’m a fan of easy to remember URLs, rather than long cryptic ones. For things I give our verbally or in chat I sometimes setup redirects using one of my domains and NGINX directives.

So when I’d like to point users to my 3D Shenanigans channel, I can tell them to go to https://3ds.wpguru.tv rather than https://www.youtube.com/channel/UCmBV6fLZMzCaIEXzF1SSJuQ/ (because which human in their right mind could possibly remember the latter).

Thing is, I can never remember what the exact syntax is, so I thought I’d write myself a note for such future redirection setup. Here’s what the above example looks like when added as a directive to the subdomain:

Note the use of the semicolon at the end of the line and the curly braces. I’m not that versed in NGINX, but every time I look at it I think “that’s easy”, and promptly forget only seconds later. I hope this helps both you and me to remember next time.

How to setup Loop Recording on the GoPro HERO 8

Loop Recording has been fairly intuitive to setup up until the GoPro HERO 7. The option is still available on the HERO 8, but it wasn’t obvious to me how to enable it. Now that I’ve found out how to do it, I thought I’d share it with you.

The trick is that any of the new settings presets (i.e. Standard, Cinematic and Activity) cannot enable Loop Recording. You have to create a fourth (custom) preset with which you can activate it.

Continue reading How to setup Loop Recording on the GoPro HERO 8

How to setup AirPods (1st generation) with a MacBook Pro (2011)

I really like my first generation AirPods. I use them on my 2012-2018 devices all the time, but I had never tried them on my old MacBook Pro from 2011. I had always assumed they probably use some low-energy version of Bluetooth 4 or whatnot, expecting they won’t work. But I was wrong! They DO work – it’s just that the setup process is slightly different than on my other devices.

Here’s how I could connected them successfully.

What usually happens

Ordinarily, iCloud seems to take care of spreading the connection love. That is, AirPods connected to my iPhone will automatically be “seen as available” by my iPad and my Desktop Mac. All I have to do is to head over to the little speaker icon on the Mac, then select my AirPods from the list.

On my MacBook Pro 2011 that doesn’t work. There’s no AirPods entry. I had to pair them manually.

Make the 2011 MacBook see the AirPods

So what we need to do then is this:

  • switch Bluetooth on (obviously)
  • put the AirPods in their case
  • open the lid
  • press the pairing button on the lid and leave it open
  • take the AirPods out (but leave the case open)
  • wait a moment to hear the connection beep

Now we can close the case and listen to the AirPods. The pairing process takes a little longer, and oddly enough there’s no AirPods entry to select in the list of audio devices. Be that as it may, they are indeed connected and can be used to listen to audio now.

Why that is I do not know – and perhaps I don’t need to either. All I know is that they’re working fine under macOS High Sierra. Hope this helps!

UPDATE: After restarting my MacBook, the AirPods did indeed show up in the Bluetooth menu, so now it behaves just like my Mac Mini. Even Macs need restarting every once in a while.

How to pause recordings in OBS 24

A wonderful new feature in OBS 24 is the ability to pause you recordings. This can come in handy if you want to create a quick and rough recording, without taking multiple files into a video editor. It’ll speed up your workflow and increase quality for files you want to send away “as is”.

Question is: HOW do we pause recordings in OBS 24 and above?

If you’ve been looking for a pause button but can’t find it, let me give you some pointers on how to make it magically appear. First of all, OBS can’t pause live streams. Those have to be delivered continuously. By default, the encoder for recordings is the same that’s used for live streaming. It’s efficient and reduces processing overheads.

Under Settings – Output – Recording you’ll see an option that’s set to “Use Stream Encoder”. If you change that, it means OBS will open up different settings that can be configured independently of those used for streaming (for example, you could use a software encoder instead of a hardware encoder, or use a different bitrate).

As soon as we change this, and then press the big RECORD button in the main interface, we’ll see that it has a PAUSE option next to it.

Now we can either stop the recording as usual (closing the file), or pause the recording and then un-pause it so that OBS keeps recoding at the end of same file.

And there you have it! You can download OBS 24 from the official website or the GitHub Repo (past versions are available under the Releases Section).

PS: OBS 24.0.1 was the 100th release by the team 🎂 I’ve even made a video to celebrate:

How to play XIII (Classic) – PC Keyboard Layout

Back in the days when I had a physical copy of XIII, I never had that problem with the console versions of the game. There are only so many buttons to press on a controller, and there’s an in-game tutorial that tells you.

Surprisingly, the current GOG.com version comes with a manual, but it does not mention the keyboard layout. Neither did the original manual for the physical game if I remember correctly. When I wanted to map the PC kets to my controller using Xpadder, I quickly realised that aside from walking and basic shooting, I had no idea how to use the scope of the grappling hook.

I’ve compiled this handy list to remind me how it works for next time, might come in handy if you’re in the mood for some retro comic type FPS action:

  • WASD keys – walk around, rather fast
  • hold the left SHIFT key – in addition to WASD to walk slowly
  • SPACE – Jump
  • MOUSE – look around
  • Left Mouse – Fire
  • Right Mouse – Alternative Fire (like throw grenades, or stab with a knife)
  • Q – use Quick Heal, i.e. take next available med kit
  • E – Action (i.e. open doors, pick up items, etc)
  • G – Throw hand grenade
  • R – Reload Weapon
  • Right ALT – use the Sniper Scope
  • C – Crouch down (toggle between standing and crouching)
  • Page UP / Page DOWN – cycle through weapons

UMLAUTBOARD: Easy access to Umlaut Characters from anywhere

I’ve just released UMLAUTBOARD, a super simple single-page mobile friendly website that allows anyone to copy German Umlaut characters to their clipboard. Let me tell you a little about why I made this, how it works, and how ya’ll can expand it if you want. And here’s what it looks like:

What is UMLAUTBOARD?

The idea is very simple: it’s a fixed page with umlaut characters at the bottom. Click on one, and the respective character is copied into the current device’s clipboard. Now navigate to where you need that character and paste it in. This works irrespective of your operating system, mobile/desktop device or keyboard/language settings.

All you need to remember is this short URL ub.wpguru.co.uk. Works on any OS, anytime and anywhere.

Continue reading UMLAUTBOARD: Easy access to Umlaut Characters from anywhere