Designing Electronics That Work

[Hunter Scott] who has graced these pages a fair few times, has been working on electronics startups for the past ten years or so, and has picked up a fair bit of experience with designing and building hardware. Those of us in this business seem to learn the same lessons, quite often the hard way; we call it experience. Wouldn’t it be nice to get up that learning curve a little quicker, get our hardware out there working sooner with less pain, due to not falling into the same old traps those before us already know about? The problem with the less experienced engineer is not their lack of talent, how quickly they can learn, nor how much work they can get done in a day, but simply that they don’t know what they don’t know. There’s no shame in that, it’s just a fact of life. [Hunter] presents for us, the Guide to Designing Electronics that Work.

The book starts at the beginning. The beginning of the engineering process that is; requirements capturing, specifications, test planning and schedule prediction. This part is hard to do right, and this is where the real experience shows. The next section moves onto component selection and prototyping advice, with some great practical advice to sidestep some annoying production issues. Next there’s the obvious section on schematic and layout with plenty of handy tips to help you to that all important final layout. Do not underestimate how hard this latter part is, there is plenty of difficulty in getting a good performing, minimal sized layout, especially if RF applications are involved.

The last few sections cover costing, fabrication and testing. These are difficult topics to learn, if up till now all you’ve done is build prototypes and one-offs. These are the areas where many a kickstarter engineer has fallen flat.

Designing Electronics That Work doesn’t profess to be totally complete, nor have the answer to everything, but as the basis for deeper learning and getting the young engineer on their way to a manufacturable product, it is a very good starting point in our opinion.

The book has been around a little while, and the latest version is available for download right now, on a pay what-you-want basis, so give it a read and you might learn a thing or two, we’re pretty confident it won’t be time wasted!

Flipper Zero tool reading bank card, displaying data on LCD

What’s On Your Bank Card? Hacker Tool Teaches All About NFC And RFID

The Flipper Zero is a multipurpose hacker tool that aims to make the world of hardware hacking more accessible with a slick design, wide array of capabilities, and a fantastic looking UI. They are struggling with manufacturing delays like everyone else right now, but there’s a silver lining: the team’s updates are genuinely informative and in-depth. The latest update is all about RFID and NFC, and how the Flipper Zero can interact with a variety of contactless protocols.

Drawing of Flipper Zero and a variety of RFID tags
Popular 125 kHz protocols: EM-Marin, HID Prox II, and Indala

Contactless tags are broadly separated into low-frequency (125 kHz) and high-frequency tags (13.56 MHz), and it’s not really possible to identify which is which just by looking at the outside. Flipper Zero can interface with both, but the update at the link above goes into considerable detail about how these tags are used in the real world, and what they look like from both the outside and inside.

For example, 125 kHz tags have an antenna made from many turns of very fine wire, with no visible space between the loops. High-frequency tags on the other hand will have antennas with fewer loops, and visible space between them. To tell them apart, a bright light is often enough to see the antenna structure through thin plastic.

Low-frequency tags are “dumb” and incapable of encryption or two-way communication, but what about high-frequency (often referred to as NFC) like bank cards and applications like Apple Pay? One thing demonstrated is that mobile payment methods offer up considerably less information on demand than a physical bank or credit card. With a physical contactless card it’s possible to read the full card number, expiry date, and in some cases the name as well as recent transactions. Mobile payment systems (like Apple or Google Pay) don’t do that.

Like many others, we’re looking forward to it becoming available, sadly there is just no getting around component shortages that seem to be affecting everyone.

Two hands on a book labeled "hardware crowdfunding"

Successfully Crowdfunded Hardware: Everything Behind The Scenes

Crowdfunding hardware has its own unique challenges, and [Uri Shaked] wrote a fascinating report that goes into excellent detail about his experience bringing a crowdfunded hardware project to life.

A skull-shaped PCB with two red eyes[Uri]’s project was The Skull CTF, an electronic hardware puzzle that came in the shape of a PCB skull, and his detailed look behind the scenes covers just about every angle, from original concept to final wrap-up, along with his thoughts and feedback at every stage. His project reached its funding goal, got manufactured and shipped, and in the end was a success.

[Uri] started with a working project, but beyond that was virtually a complete novice when it came to crowdfunding. He eventually settled on using Crowd Supply to make his idea happen, and his writeup explains in great detail every stage of that process, including dollar amounts. What’s great to see is that not only does [Uri] explain the steps and decisions involved, but explains the research that went into each, and how he feels each of them ended up working out.

The entire thing is worth a read, but [Uri] summarizes the experience of crowdfunding a hardware project thus: an excellent way to test out the demand for an idea and bring a product into existence, but be aware that unless a project is a runaway success it probably won’t be much of an income generator at that stage. It was a great learning experience, but involved a lot of time and effort on his part as well.

[Uri] really knows his stuff, and considering his skill at hunting down pesky bugs, it’s probably no surprise that this wasn’t his first hardware puzzle.

Custom RISC-V Processor Built In VHDL

While ARM continues to make inroads into the personal computing market against traditional chip makers like Intel and AMD, it’s not a perfect architecture and does have some disadvantages. While it’s a great step on the road to software and hardware freedom, it’s not completely free as it requires a license to build. There is one completely open-source and free architecture though, known as RISC-V, and its design and philosophy allow anyone to build and experiment with it, like this build which implements a RISC-V processor in VHDL.

Since the processor is built in VHDL, a language which allows the design and simulation of integrated circuits, it is possible to download the code for the processor and then program it into virtually any FPGA. The processor itself, called NEORV32, is designed as a system-on-chip complete with GPIO capabilities and of course the full RISC-V processor implementation. The project’s creator, [Stephan], also struggled when first learning about RISC-V so he went to great lengths to make sure that this project is fully documented, easy to set up, and that it would work out-of-the-box.

Of course, since it’s completely open-source and requires no pesky licensing agreements like an ARM platform might, it is capable of being easily modified or augmented in any way that one might need. All of the code and documentation is available on the project’s GitHub page. This is the real benefit of fully open-source hardware (or software) which we can all get behind, even if there are still limited options available for RISC-V personal computers for the time being.

How does this compare to VexRISC or PicoSOC? We don’t know yet, but we’re always psyched to have choices.

Adding In-Game Reset To Classic Playstations

The first Playstation is quickly approaching three decades since its release, and while this might make some of us who were around for that event feel a little aged, the hardware inside these machines isn’t getting any younger either. Plenty of people are replacing the optical drive in the original hardware with an optical drive emulator as they begin to fail, and with that comes the option for several other modifications to the hardware like this in-game reset mod.

In-game reset is a function that allows a console to be reset via a controller button combination rather than pressing the console’s reset button directly. Especially for devices modified with either the XStation or PSIO drive emulators, this can be a handy feature to have as this method can more easily take the user back to the emulator menu as well as physically reset the device. The modification is a small PCB which attaches to the controller port and, unlike previous versions, only requires a single pin to be soldered to the Playstation’s control board.

If you’re someone who enjoys playing games on original hardware rather than a patchwork of emulators, this could be an excellent addition to your PS1 that still allows most of the original feel and experience the PS1 offered. The drive emulator can greatly expand the range of the hardware as well, much like this NES cartridge which similarly expands the capabilities of that much older system.

DOOM On A Bootloader Is The Ultimate Cheat Code

Porting DOOM to run on hardware never meant to run it is a tradition as old as time. Getting it to run on embedded devices, ancient computers, virtual computers, and antique video game consoles are all classic hacks, but what DOOM ports have been waiting for is something with universal applicability that don’t need a bespoke solution for each piece of hardware. Something like DOOM running within a bootloader.

The bootloader that [Ahmad] works with is called Barebox and is focused on embedded systems, often those running Linux. This is the perfect environment for direct hardware access, since the bootloader doubles as a bare metal hardware bring-up toolkit. Now that DOOM runs on this bootloader, it effectively can run anywhere from embedded devices to laptops with minimal work, and although running it in a bootloader takes away a lot of the hard work that would normally need to be done during a port, it may still need some tweaking for specific hardware not otherwise supported.

For those already running Barebox, the bareDOOM code can be found on [Ahmad]’s GitHub page. For those not running Barebox, it does have a number of benefits compared to other bootloaders, even apart from its new ability to play classic FPS games. For those who prefer a more custom DOOM setup, though, we are always fans of DOOM running within an NES cartridge.

Photo: AntonioMDA, CC BY-SA 4.0 via Wikimedia Commons

Orphaned IoT Sleep Tracker Resurrected As An Air Quality Monitor

If you have a Hello Sense sleep tracking device lying around somewhere in your drawer of discards, it can be brought back to life in a new avatar. Just follow [Alexander Gee]’s instructions to resurrect the Hello Sense as an IoT air quality data-logger.

In 2014, startup “Hello” introduced the Sense, an IoT sleep tracking device with a host of embedded sensors, all wrapped up in a slick, injection molded spherical enclosure. The device was quite nice, and by 2015, they had managed to raise $21M in funding. But their business model didn’t seem sustainable, and in 2017, Hello shut shop. Leaving all the Sense devices orphaned, sitting dormant in beautifully designed enclosures with no home to dial back to.

The original Sense included six sensors: illumination, humidity, temperature, sound, dust / particulate matter on the main device, and motion sensing via a separate Bluetooth dongle called the Pill. [Alexander] was interested in air quality measurements, so only needed to get data from the humidity/temperature and dust sensors. Thankfully for [Alexander], a detailed Hello Sense Teardown by [Lindsay Williams] was useful in getting started.

The hardware consisted of four separate PCB’s — power conditioning, LED ring, processor, and sensor board. This ensured that everything could be fit inside the orb shaped enclosure. Getting rid of the LED ring and processor board made space for a new NodeMCU ESP8266 brain which could be hooked up to the sensors. Connecting the NodeMCU to the I2C interface of the humidity/temperature sensor required some bodge wire artistry. Interfacing the PM sensor was a bit more easier since it already had a dedicated cable connected to the original processor board which could be reconnected to the new processor board. The NodeMCU board runs a simple Arduino sketch, available on his Git repo, to gather data and push it online.

For the online data display dashboard, [Alexander] found a nice solution by [Nilhcem] for home monitoring using MQTT, InfluxDB, and Grafana. It could be deployed via a docker compose file and have it up and running quickly. Unfortunately, such projects don’t usually succeed without causing some heartburn, so [Alexander] has got you covered with a bunch of troubleshooting tips and suggestions should you get entangled.

If you have an old Sense device lying around, then this would be a good way to put it some use. But If you’d rather build an air-quality monitor from scratch, then try “Building a Full-Fat Air-Quality Monitor” or “An Air-quality Monitor That Leverages the Cloud“.