This KiCAD Plugin Enables Breadboarding

Some people learning the noble art of electronics find the jump from simpler tools like Fritzing to more complex ones, such as KiCAD, a little daunting, especially since they need to learn at least two tools. Fritzing is great for visualising your breadboard layout, but what if you want to start from a proper schematic, make a prototype on a breadboard and then design a custom PCB? Well, with the Kicad-breadboard plugin for (you guessed it!) KiCAD, you can now do all of this in the same tool.

A simple dual-rail oscillator schematic corresponding to the featured image above

Originally designed to support EE students at the University of Antwerp, the tool presents you with a virtual breadboard with configurable size and style, along with a list of components and tools that can be placed. A few clicks and parts can be placed on the virtual breadboard with ease. Adding wires is the next logical step to make those connections that operate in the horizontal dimension. Finally, assigning power supplies and probe connections completes the process. It’s a simple enough tool to draw stuff, but drawing a layout is no use if you can’t verify it’s correctness. This is where this plugin shines: it can perform an ERC (check) between the schematic and the breadboard and flag up what you missed. Add to this that you can also perform an ERC at the schematic level, before even thinking about layout, and it’s pretty hard to make an error. Now, you can transfer this directly to a real breadboard, or even a veroboard, for more permanence once you have confidence in correctness. This will definitely save time correcting errors and help keep the magic smoke safely contained within those mysterious black rectangles.

Continue reading “This KiCAD Plugin Enables Breadboarding”

Cooking With Plasma (Not Fire)

Cooking food with fire is arguably the technology that propelled humans to become the dominant species on Earth. It’s pretty straightforward to achieve, just requiring a fuel source, a supply of oxygen from the air, and a way to initiate the reaction; then it self-sustains. You wouldn’t think there’s much to improve, but what about cooking with plasma? [Jay] from the plasma channel is no stranger here, and he thinks that there may be something in this idea, certainly enough to actually build something.

Now, let’s be straight with you, this isn’t a new concept, and you can buy a plasma-based cooking appliance right now. But they are all AC-powered devices. What if you want to go camping? [Jay] attempts (and succeeds) in building a portable, rechargeable 600W plasma cooking device that can actually cook food, but it was not all plain sailing.

The existing off-the-shelf ZVS driver modules available were a bit weak and unreliable, and the required flyback coils were hard to find with the right specs, so he needed to get down to work building custom parts. First off, the coils. Custom formers were resin-printed and machine-wound with 4000 turns of fine wire, and then resin-sealed into the former. [Jay] takes care to explain that it is crucial to get all the air out of the windings, or else local flashover breakdown will occur and wreck the coil in a short time. We reckon the resulting coils look amazing in their own right!

Continue reading “Cooking With Plasma (Not Fire)”

Don’t Trust Password Managers? HIPPO May Be The Answer!

The modern web is a major pain to use without a password manager app. However, using such a service requires you to entrust your precious secrets to a third party. They could also be compromised, then you really are in trouble. You could manage passwords with local software or even a notebook, but that adds cognitive load. You could use the same password across multiple sites to reduce the load, but that would be unwise. Now, however, with the HIPPO system, there is another way.

HIPPO is implemented as a browser extension paired with a central server. The idea is not to store any password anywhere, but to compute them on the fly from a set of secrets. One secret at the server end, and one the user supplies as a passphrase. This works via an oblivious pseudorandom function (OPRF) protocol. Details from the linked site are sparse, but we think we’ve figured it out from other sources.

First, the user-supplied master password is hashed with the site identifier (i.e., the domain), blinded with a random number, and then processed using an OPRF, likely built on an elliptic-curve cryptographic scheme. This ensures the server never receives the raw password. Next, the server applies its own secret key via a Pseudorandom Function (PRF) and sends it back to the client. Obviously, its private key is also never sent raw. Next, the client removes the blinding factor (using the same random number it used when sending) from the original key, producing a site-specific high-entropy secret value that the extension passes to a Key Derivation Function (KDF), which formats it into a suitable form for use as a password. Finally, the extension auto-fills the password into the website form, ready to send to the site you want to access. This password is still unique per site and deterministic, which is how this whole scheme can replace a password database. Neat stuff!

This advantage to this whole scheme means there’s no vault to compromise, no storage requirements, and it generates a strong password for each unique site, meaning no password reuse and a low chance of brute-force cracking. The obvious flaw is that it creates a single point of failure (the HIPPO service) and shifts the risk of compromise from vault cracking the master password, infiltrating the server, or compromising its secret key. It’s an interesting idea for sure, but it doesn’t directly manage 2FA, which is a layer you’d want adding on top to ensure adequate security overall, and of course, it’s not a real, live service yet, but when (or if) it becomes one, we’ll be sure to report back.

Confused by all this? Why not dig into this article first? Or maybe you fancy a DIYable hardware solution?

Original PlayStation Brought Up To Date

In a satisfying blend of classic console restoration and modern modding, [Elliot] from the Retro Future channel has transformed a broken, dirty PlayStation into what they call the “ultimate PS1.”

PicoStation ZeroWire. Note the wire.

The first step was to deal with the really grungy case. The shell was soaked in dish soap and given a good brushing before being packed and sent to a collaborator. Upon inspection of the internals, several unknown modifications to the PCB were evident. These were likely to support playing home-burned copies of pirated games, as well as an NTSC region hack (for this PAL version of the console), courtesy of a dodgy-looking crystal oscillator hanging on the end of some wires.

Luckily, the PS1 product design is highly modular, giving excellent repairability, which made reversing this a doddle. The mod wiring was removed by simply desoldering it, but the cut traces needed to be cleaned up and reconnected to return it to stock condition.

Continue reading “Original PlayStation Brought Up To Date”

EnderSpark: Convert Your Broken Creality FDM Printer Into An EDM Machine!

EDM (Electrical Discharge Machining) is one of those specialised manufacturing processes that are traditionally expensive and therefore somewhat underrepresented in the DIY and hacker scenes. It’s with great delight that we present EnderSpark, a solution to not one but two problems. The first problem is how to perform CNC operations on hard-to-machine materials such as hardened metals (without breaking the bank). The second problem is what to do with all those broken and forgotten previous-generation Creality Ender 3D printers we know you have stashed away.

To be honest, there isn’t much to a cheap 3D printer, and once you ditch the bed and extruder assembly, you aren’t left with a lot. Anyway, the first job was to add a 51:1 reduction gearbox between the NEMA 17 motors and the drive pullies, giving the much-needed boost to positional accuracy. Next, the X and Y axes were beefed up with a pair of inexpensive MGN12H linear rails to help them cope with the weight of the water bath.

Continue reading “EnderSpark: Convert Your Broken Creality FDM Printer Into An EDM Machine!”

Building A DIY Ryzen-Based PC!

This project gives a whole new meaning to DIY PC. We don’t know how capable you were as a teenager, but could you have designed your own Ryzen-based mini PC?

Whilst making repairs to laptop internals, [Dominik Baroński] was busy taking notes. Modern super-integrated laptop PCs have reached the point where all the functions of a complete PC are embedded in a single chip. But it’s a big, complicated chip with very specific feeding and care needs. Once you’ve figured out what it needs, it ‘merely’ remains to supply it power, hook up some DDR4 RAM, PCIe storage, and some USB ports, and you’re away. It sounds easy when you say it like that, but do not underestimate how difficult it is to create such a board—or even to populate it by hand—yet that’s precisely what [Dominik] has achieved.

Continue reading “Building A DIY Ryzen-Based PC!”

World’s Cheapest ARM Debugger Is Actually RISC-V

[bogdanthegeek] has a lot of experience with the ARM platform, and their latest escapade into working with cheap ARM chips recovered from disposable vapes involved a realization that it was just plain wrong to debug such recovered silicon with something as expensive as a Pi Pico. No, they needed to build a debugger using the super cheap CH32V003.

What follows is an interesting tour around ARM Debug Access Port (DAP) programmers and creating a practical USB-connected device that actually works with modern toolchains. The first problem to be solved was that of host connectivity. These days, it’s USB or go home, which immediately limits the microcontrollers you can choose. Luckily for [Bogdan], they were aware of the excellent work by [cnlohr] on wedging low-speed USB support onto the RISC-V CH32v003 with the software-only bit-banging rv003usb, which provided a starting point. The next issue was to check for interrupt-driven endpoint support (needed for low-speed USB) in the Mac OS X kernel, which they knew was being dropped at an alarming rate (well, at least for full-speed). Luckily, the CMSIS-DAP standard required support for interrupt-driven USB endpoints, so kernel support was likely intact.

Next, [Bogdan] noticed that the DAPLink project had been ported to the bigger, native-USB WCH chips like the CH32V203, so it was a matter of porting this code to the diminutive CH32V003 using the rv003usb stack for the USB support using [cnlohr]’s ch32fun toolchain. There were a few bumps along the way with a lack of clarity in the DAPLink code, and some inconsistencies (across platforms) with the USB library dependencies of the upstream tool pyOCD, but they did get some tools working on at least Mac OS and some others on Linux. Which was nice.

We’ve covered the CH32V003 a fair bit, with people trying to give it all kinds of big-CPU tricks, such as speech recognition (of sorts) or even building a supercluster.