Custom PC, Issue 179

Custom PC Issue 179This month’s Hobby Tech column takes a look at an open-source microcontroller-driven hobbyist oscilloscope and a book which aims to document art in video games, while also walking readers through the rather handy trick of setting up a reverse SSH tunnel.

First, the tutorial. Since Code42 announced that CrashPlan Home, my chosen off-site backup solution, was being discontinued, I’ve been looking into alternatives. A Raspberry Pi with a USB hard drive and a copy of Syncthing installed does the job nicely, except for the issue of management: once it’s off-site, I’d have to configure someone else’s router to forward a port so I can SSH into it. An easier alternative: a reverse SSH tunnel.

Where a traditional SSH connection goes from local device to remote host, a reverse tunnel goes from remote device to an intermediary device – in my case, a home server on my own network. Your local device then also connects to said intermediary device, and you have full access to the remote device regardless of whether or not it’s behind one or more firewalls or even whether you know its public-facing IP address.

The first of the reviews, meanwhile, is a little cheeky: while the device on test is based on the JYE Tech DSO138 open-source oscilloscope design and firmware, I’ve been using a clone rather than an original – having spotted it on offer during an Amazon sale and been unable to resist a bargain. While the conclusions I draw on the scope’s functionality and usability apply equally to both, a first-party JYE Tech version is likely to feature better build quality and certainly includes better support.

Finally, my review of the coffee table tome – yes, another one – Push Start: The Art of Video Games is one of those rare occasions where I’ve been disappointed by what should have been a product aiming for a very low bar. While the full-colour hardback publication includes plenty of high-quality pictures, it also includes some extremely low-quality screenshots as well – particularly noticeable at the beginning where vector games are captured as bitmaps using MAME’s default ultra-low resolution, and at the end where tell-tale artefacts show the use of third-party JPEG images rather than first-party captures. Worse still is the limited accompanying text, which is riddled with errors.

The latest Hobby Tech is available now from newsagents, supermarkets, and electronically via Zinio and similar digital distribution services.

Custom PC, Issue 174

Custom PC Issue 174This month’s Hobby Tech column takes a look at a very special eight-byte – not a typo – microcomputer, walks through turning a spare Raspberry Pi into a Nav Coin-mining cryptocurrency machine, and looks forward to the launch of the ZX Spectrum Next with a look at a deep-dive book detailing the original Spectrum’s neat Ferranti Uncommitted Logic Array (ULA) chip.

First, the Mini C88. Designed by the multi-talented Daniel Bailey as a more affordable version of his C88, swapping the field-programmable gate array (FPGA) on which he implemented his own processor core design for an Arduino Zero and the extremely clever Dynamic Binary Translation (DBT) technique, the C88 is designed to be about as simple as a computer can get. Based on a custom instruction set, the C88 has just eight memory locations of eight bits apiece and is programmed by toggling each bit using a series of pleasingly tactile switches while monitoring the process on the 8×8 LED matrix that serves as its display.

For regular readers, this will all sound familiar: the original FPGA-based C88 and its 32-byte bigger brother the C3232 were the subject of an interview back in Issue 155. While Daniel has still not turned the C88 into a kit you can head out and buy, the Mini C88 is definite progress in that direction – and, as always, anyone interested in the project should hassle him about it on Twitter.

For those with a Raspberry Pi and a desire to play with cryptocurrency, meanwhile, this month’s tutorial will be of definite interest: a guide to turning a Pi into a ‘Stake Box’ for the Nav Coin cryptocurrency. Designed as an alternative to Bitcoin, Nav Coin offers those who run network nodes rewards in the form of a five percent return on their coin holdings when locked up in this manner. Taking less than an hour to set up and requiring nothing more than a low-powered computer, it’s a great way to get involved – and the Nav Coin project itself definitely one to follow.

Finally, while waiting impatiently for my ZX Spectrum Next microcomputer to land – which, I’m pleased to say, has since happened – I enjoyed a re-read of Chris Smith’s excellent The ZX Spectrum ULA: How to Design a Microcomputer. Based on interviews and deep-dive analysis, the book investigates the tricks and techniques which allowed Sinclair Computers to build the ZX Spectrum micro at such a bare-bones cost – which, in turn, was thanks to clever use of an Uncommitted Logic Array (ULA) chip from Scottish electronics giant Ferranti. Effectively a write-once version of the modern FPGA, Ferranti’s ULA saw the number of components in the ZX81 drop to a quarter compared to the ZX80 and is key to how the ZX Spectrum does what it does.

For all this, and a bunch of other interesting things by people who aren’t me, pick up a copy of Custom PC Issue 174 from your nearest supermarket, newsagent, or digitally via Zinio and similar services.

Custom PC, Issue 171

Custom PC Issue 171This month’s Custom PC magazine has a bumper crop for fans of Hobby Tech: a four-page shoot-out of do-it-yourself handheld games consoles on top of my usual five-page column, which this time around looks at setting up Syncthing on a Raspberry Pi, building the Haynes Retro Arcade Kit, and my time running a soldering workshop at the Open Source Hardware User Group (OSHUG) UK OSHCamp gathering.

The workshop first: organiser Andrew Back got in touch with me shortly before the OSHCamp workshop day, held in Hebden Bridge as part of the annual Wuthering Bytes technology festival, was due to take place. The scheduled soldering workshop was at risk, he explained, as the person due to run it was no longer available. I was happy to help, and I’m pleased to report a great day was had by all assembling Cuttlefish microcontroller kits – despite the use of some particularly ancient soldering irons with tips which appeared to be made of freshly-hewn coal!

The Haynes Retro Arcade Kit feels like a device which could have been in the DIY console shootout, but it wouldn’t have fared well. Designed by Eight Innovation and slapped with the Haynes brand, the Retro Arcade Kit is a fiddly and distinctly unrewarding soldering kit which ends up as a particularly basic version of Pong. The coin activation system is its only redeeming feature: two pieces of thick solid-core wire sit side by side, and are shorted out by an inserted metal coin to start a fresh game. Not an original trick, but one well implemented – if you ignore the terrible instructions and poor build quality.

Syncthing, meanwhile, has been a mainstay of my toolbox for years. An open-source project designed to keep files on two or more computer systems synchronised, Syncthing is built with security and convenience in mind – and works a treat on the Raspberry Pi. Given that I was needing to find a new home for my off-site backups anyway, as my regular provider CrashPlan is ceasing its cheapest product line, it seemed natural to write up the process of turning a Pi and a USB hard drive into an off-site backup destination.

Finally, the four-page DIY console shoot-out is a reprint of the same feature as it appeared in PC Pro Issue 277 in mid-September. As before, four Arduino-compatible devices are covered: the Gamebuino, MAKERbuino, Creoqode 2048, and Arduboy.

All this, and the usual selection of things written by others, can be found at your nearest newsagent, supermarket, or electronically via Zinio and similar distribution services.

Custom PC, Issue 167

Custom PC Issue 167This month’s Custom PC features a look at the effect of compiler optimisation on applications plus reviews of Google’s AIY Voice Kit for the Raspberry Pi family and Jimmy Wilhelmsson’s Generation 64.

The tutorial, to begin, stemmed from investigations I was carrying out into Google’s Guetzli perceptual JPEG encoder. Having cut my teeth in computing back when every byte – never mind kilobyte – really counted, I have a soft-spot for compression both lossy and lossless. Over the years I’ve toyed with a range of compression algorithms, from LZMA and Robert Jung’s ARJ through to the clever if short-lived Fractal Image Format (FIF). Like most, though, I eventually settled on two popular formats for my image compression needs: JPEG where lossy compression is acceptable and PNG where it isn’t.

Guetzli aims to cut the file size of JPEG files by around a third for no apparent loss in perceived image quality. That was enough to pique my interest, but it comes at a cost: a runtime of minutes per megapixel to recompress each image. As an open-source project, Guetzli is provided in source-code form – so I began to play with the optimisation options available in the GNU Compiler Collection (GCC) to see if I couldn’t speed things up.

As readers of my column will discover, I could indeed speed things up – cutting the time taken to compress the small sample image provided with Guetzli from 14.3 seconds using Google’s precompiled binary version down to just 9.56 seconds. Although not an exhaustive guide to compiler optimisation in general nor even GCC-specific options – a topic which would take a book, rather than a couple of magazine pages, to cover adequately – hopefully the write-up of my experiments will help shine a light on the gains that can be made, the potential pitfalls of excessive optimisation, and the benefits of open-source distribution.

The Google AIY Voice Kit, meanwhile, is something quite special: an add-on for the Raspberry Pi family of microcomputers which, in essence, turns them into a somewhat cut-down version of the company’s Google Home voice-activated assistant platform. Initially distributed with The MagPi Magazine as a cover-mounted giveaway, the kit should soon be available for purchase by the general public – and it’s definitely worth seeking one out.

The kit itself centres around a Hardware Attached on Top (HAT) add-on board, which includes servo and motor control, connectivity for an arcade-style button, and links to a break-out board with a pair of MEMS microphones. Combined with some simple software and a link to Google’s cloud computing platform, the AIY Kit can be made to respond to your natural-language queries or even control external hardware via voice recognition – with some major caveats regarding how often you can use it before you need to start handing over cash for the voice recognition platform.

Finally, Generation 64. Originally written in Swedish by Jimmy Wilhelmsson and with design by Kenneth Grönwall, Generation 64 investigates the influence the Commodore 64 had on the Swedish computing scene – complete with an introduction by the founder of Digital Illusions, also known as DICE, and MOS 6502 creator Chuck Peddle. Translated into English and re-released by Bitmap BooksGeneration 64 is an absolutely fantastic read which I would have otherwise missed had it remained untranslated.

Full details on all of these, plus a bunch more stuff written by people who aren’t me, can be found in Custom PC Issue 167 at your nearest supermarket, newsagent, or digitally via Zinio and rival distribution platforms.

Custom PC, Issue 166

Custom PC Issue 166Readers of my regular Hobby Tech column this month will find a BBC micro:bit-driven tutorial alongside two reviews covering the remarkable Raspberry Pi Zero W microcomputer and the fascinating Delete by Paul Atkinson.

The idea for the tutorial came about while working on a chapter of my upcoming Micro:bit User Guide, and seemed like a perfect fit for the readers of Custom PC Magazine: turning the low-cost yet extremely flexible micro:bit into an addressable USB-connected 5×5 LED matrix and having it display current CPU load in a constantly-updating bar graph. Naturally, the same technique could be used to graph almost anything.

The secret lies in MicroPython’s REPL, an interactive interpreter which can run on the micro:bit and accept commands via the USB serial port. By switching the micro:bit into REPL mode, it can be slaved to another system over USB. The result: the entire program code, written in Python using the serial, time, and psutil libraries, exists purely on the host machine. A quick bit of Blu-tack later, and my monitor was wearing a CPU monitor which worked even when the display was off.

The Pi Zero W, meanwhile, was a device to which I had been looking forward for quite some time. An upgraded version of the original £5 Raspberry Pi Zero microcomputer, the Pi Zero W differs in only one respect: it has a built-in radio module, the same BCM43438 as found on the far larger and more expensive Raspberry Pi 3.

While the addition of the radio module, which offers Bluetooth, Bluetooth Low Energy, and 2.4GHz Wi-FI connectivity, almost doubles the price of the Pi Zero W to £9.60, it’s money well spent. In almost every Pi Zero project I have built, I’ve ended up using a USB OTG adaptor and low-cost USB Wi-Fi dongle to add network connectivity, and having it on-board – even at a slightly higher cost compared to a USB-connected solution – makes life considerably easier.

Finally, Delete. Billed as “a design history of computer vapourware,” Paul Atkinson’s coffee table book is packed with high-quality photographs – and, for the rarer machines, the occasional rescaled JPEG exhibiting unfortunate compression artefacts – covering machines from an upgraded Sinclair QL to a bright yellow IBM that never left the drawing board. Each comes with pages on its history, with interview subjects detailing features and failures alike, and while not all machines were strictly vapourware few are likely to have a place in the average vintage computing collection. In short: if you like old computers you’ll like Delete, which is available now from Amazon and other bookstores under ISBN 978-0857853479.

As always, you can read the whole column and a whole lot more by picking up Custom PC Issue 166 from your nearest supermarket, newsagent, or electronically via Zinio and similar services.

Create, Issue 1

Create Issue 1It’s always nice to see your name in a new publication, and doubly so when it’s the magazine’s very first issue, so imagine my pleasure when Future Publishing’s Create Magazine hit shelves this week and brought my feature on building your own Linux PC along for the ride.

Presently exclusive to North America, Create – styled [email protected] – is billed as offering “adventures in technology” to a mixed audience ranging from those with considerable technical proficiency to relative newcomers. This broad focus can be seen in the content on offer from the launch issue: my relatively technical guide to building a desktop PC from parts sits alongside tutorials on installing Minecraft on an old Apple MacBook and booting up a Raspberry Pi for the first time, along with building your own drone and seeing how camera lenses are made.

The PC-building feature itself was originally written for Imagine Publishing’s Linux User & Developer Magazine and first appeared in Issue 161, alongside my detailed reviews of a number of Steam Machine PCs and my four-page news spread. Written in partnership with Overclockers UK, which kindly provided the parts required for the build, the guide walks the reader through choosing components with an eye on price, performance, and compatibility with the Linux kernel – the latter being a key point that can be overlooked by system builders more used to building Windows-based machines – before putting everything together in an attractive case and installing the operating system.

Those who missed the feature the first time around and are located in North America will find Create Issue 1 on shop shelves now, while international readers can purchase a copy from Future’s web store.

The Official Raspberry Pi Projects Book, Volume 2

The Official Raspberry Pi Projects Book Volume 2The Raspberry Pi Foundation has published the second in its Official Raspberry Pi Projects Book series, and as usually there’s a whole raft of my material to be found within its black-clad pages.

The book begins with practical guides and tutorials, including my guide to adding a physical reset switch to the RUN header on any modern Raspberry Pi Zero. It’s the review section where you’ll find the bulk of my work, however, beginning with a look at a couple of handy tools for makers: the Proster VC99 multimeter and the Tenma 60W Digital Soldering Station.

Further on you’ll find detailed reviews of two microcontroller-based products which can interface with the Raspberry Pi or operate entirely standalone: the Adafruit Gemma Starter Kit and the Bare Conductive Touch Board Starter Kit. The former acts as an introduction to the world of conductive thread, while the latter uses conductive ink to complete the circuits in its bundled guide.

Finally, my contributions to the Projects Book Volume 2 end with a review of the Pimoroni pHAT DAC, a compact add-on for the Raspberry Pi Zero – though mechanically compatible with any other modern Pi model bar the bare Compute Module family – which adds a high-quality digital-to-analogue converter (DAC) and 3.5mm jack. Those looking to wire a Pi into the stereo systems can also solder on optional stereo RCA jacks, which I thought was a particularly nice feature.

As with the previous book in the series, the Official Raspberry Pi Projects Book Volume 2 is available to download free under the Creative Commons licence from the official website.

The Raspberry Pi User Guide, Fourth Edition

Raspberry Pi User Guide Fourth EditionWriting a book on a technical topic is like trying to nail fog. The more popular a topic is the faster it moves and the thinner the fog gets. Nowhere is this more true than the Raspberry Pi, which this month celebrated shipping its ten millionth single-board computer to makers, educators, hackers, tinkerers, and curious types worldwide. Accordingly, The Raspberry Pi User Guide was in need of an overhaul – and an overhaul it has indeed received.

The fourth edition of my best-selling guide to all things Pi now includes coverage of the Raspberry Pi 3 with its Bluetooth and Wi-Fi radios, an entire chapter on choosing and using add-ons including the official Raspberry Pi Touchscreen, Sense HAT, and Wi-Fi adapter, a completely rewritten guide to Raspbian which covers the latest changes to the distribution, and a shift in other chapters to cover more popular software including LibreOffice – now a default install option – and the OSMC media software.

Elsewhere, you’ll find things tweaked, polished, and brought bang-up-to-date. The networking instructions now cover the use of the DHCP configuration file for setting a static IP address, the GPIO chapter is refreshed, and you’ll even find instructions for correctly soldering GPIO headers onto the ultra-low-cost Raspberry Pi Zero.

For UK readers, The Raspberry Pi User Guide Fourth Edition is available to purchase now from Amazon; for international readers, check with your local booksellers or find links to other outlets via the official Wiley book listing.

Custom PC, Issue 157

Custom PC Issue 157This month’s Hobby Tech column demonstrates how to use the Raspberry Pi Camera Module to create smooth timelapse footage and reviews the WeMos D1 R2 ESP8266-based Arduino-alike board and Andrew ‘bunnie’ Huang’s Essential Guide to Electronics in Shenzhen.

Looking to the tutorial, this is far from the first time I’ve covered the use of the Raspberry Pi Camera Module add-on. Since its initial launch, however, the software has come on in leaps and bounds including means of finally addressing a longstanding issue with the board: the difficulty in using the timelapse functionality. Where previously you needed a surprisingly complicated script to control the camera, now timelapse capture is handled entirely within the raspistill software. Coupled with avconv – ffmpeg, which I had previously recommended for the task, having been deleted from the Raspbian software repositories – the two packages are all you need to create high-quality timelapse footage directly on any Raspberry Pi.

The WeMos D1 R2 is one of a range of low-cost devices based on the ESP8266 microcontroller and Wi-Fi radio. While getting on in age, the ESP8266 is extremely popular due to its rock-bottom pricing; the only snag being that its form factor makes it difficult to integrate into hobbyist projects. The WeMos D1 R2 aims to fix that by providing a breakout board for the compact ESP8266 in the familiar Arduino Uno layout. While more feature-packed equivalents exist, the WeMos D1 R2 costs just £3.30 in single units – an absolute bargain for an easy-to-use microcontroller with integrated Wi-Fi connectivity.

Finally, The Essential Guide to Electronics in Shenzhen. Kindly loaned by my friend Aaron at hobbyist electronics specialist oomlout, this latest book from noted hacker Andrew ‘bunnie’ Huang is a major departure from the norm. Rather than a how-to guide or white paper analysis, the book is designed to be used as a functional sourcing tool while visiting the Shenzhen area of China complete with maps, point-to-translate pages covering everything from travelling back to your hotel to enquiring as to the tolerance of resistors and capacitors. A pair of prose sections also provide information on doing business in China, including how to spot fake or missold components and how each could affect your project. Niche, perhaps, but a fascinating read – and an invaluable tool for anyone planning a trip to Shenzhen any time soon.

All this, plus the usual raft of interesting things written by people who aren’t me, can be found at your local newsagent, supermarket, or as a string of zeroes and ones on Zinio and other digital distribution services.

Custom PC, Issue 153

Custom PC Issue 153My regular Hobby Tech column celebrates its third year this month, and I’d like to think it does so in style. As well as a two-page review of the Raspberry Pi 3, the column details how to build a Raspberry Pi Zero-based energy usage graph into a cheap box frame and interviews Raspberry Pi Foundation director of hardware James Adams about his designs and inspiration.

First, the Pi 3. I’ve previously written about the board in a cover feature for The MagPi and in Linux User & Developer, so there should be no major surprises in this review – beyond a focus more on the hobbyist community’s desires and concerns, given the title of the column. The interview, though, is all-new: a small, separate extract of my interview was published in The MagPi’s Raspberry Pi 3 launch issue, but the material used in Hobby Tech is fresh – including detailed information on just how that Wi-Fi and Bluetooth radio module talks to the new BCM2837 SoC and the challenges of conformance testing something that has an intentional radio emitter inside.

The build was a project I worked on after picking up a cheap electricity and gas monitor for my house. While the website works well for viewing live usage and historical graphs, I wanted something that wouldn’t look out of place in the living room and hopefully remind everyone to turn things off when they leave! A cheap Raspberry Pi Zero was the perfect platform, and combine with a Pimoroni Unicorn HAT fits snugly in the back of a wooden box frame. Some paper on the front diffuses the LEDs to prevent glare and make it look less like a hack and more like a piece of furniture – though with the consequence that the photos look a little washed out compared to the bright, colourful display in the flesh – and everything else is a software concern.

All this, and interesting things written by people who aren’t me, is available from your local supermarket, newsagent, or electronically via Zinio and similar services.