Computer Has One Instruction, Many Transistors

There’s always some debate around what style of architecture is best for certain computing applications, with some on the RISC side citing performance per watt and some on the CISC side citing performance per line of code. But when looking at instruction sets it’s actually possible to eliminate every instruction except one and still have a working, Turing-complete computer. This instruction is called subleq or “subtract and branch if less-than or equal to zero“. [Michael] has built a computer that does this out of discrete components from scratch.

We’ll save a lot of the details of the computer science for [Michael] or others to explain, but at its core this is a computer running with a 1 kHz clock with around 700 transistors total. Since the goal of a single-instruction computer like this is simplicity, the tradeoff is that many more instructions need to be executed for equivalent operations. For this computer it takes six clock cycles to execute one instruction, for a total of about 170 instructions per second. [Michael] also created an assembler for this computer, so with an LCD screen connected and mapped to memory he can write and execute a simple “hello world” program just like any other computer.

[Michael] does note that since he was building this from Logisim directly he doesn’t have a circuit schematic, but due to some intermittent wiring issues might have something in the future if he decides to make PCBs for this instead of using wire on a cardboard substrate. There’s plenty of other information on his GitHub page though. It’s a unique project that gets to the core of what’s truly needed for a working computer. There are a few programming languages out there that are built on a similar idea.

Continue reading “Computer Has One Instruction, Many Transistors”

“Simplest” Oscilloscope Is A Cunning Vector Display

Superlatives are tricky things. [mircemk]’s guide “How to make Simplest ever Oscilloscope Clock” falls into that category. It’s that word, simplest. Certainly, this is an oscilloscope clock, and a nice one. But is it simple?

There’s a nice oscilloscope circuit with a cute 2″ 5LO38I CRT and EF80 tubes for horizontal and vertical deflection that we’d say is pretty simple. (It’s based on an earlier DIY oscilloscope project [mircemk] did.) The bill of materials is remarkably sparse– but it’s modules that do it. One entry is a DC-DC step up supply to get the needed HV. Another is a LM317 to get 6.3 V to heat the tubes. The modules make for a very simple BOM, but on another level, there’s quite a bit of complex engineering in those little modules.

When we get to the “clock” part of the oscilloscope clock, that quandary goes into overdrive. There’s only one line on the BOM, so that’s very simple. On the other hand, it’s an ESP32. Depending on your perspective, that’s not simple at all. It’s a microcomputer, or at least something that can play at emulating one.

Oh, in the ways that matter to a maker — parts count, time, and effort, this oscilloscope clock is very simple. The fact that its actually a vector display for a powerful little micro just adds to the versatility of the build. We absolutely love it, to be honest. Still, the idea that you can have millions of transistors in a simple project — never mind the “simplest ever” — well, it just seems weird on some level when you think about it.

It all comes back to what counts as “simple”. If we’re taking lines on a BOM, arguably this would be even simpler if you used an existing oscilloscope. 

Fnirsi IPS3608: A Bench Power Supply With Serious Flaws

Fnirsi is one of those brands that seem to pop up more and more often, usually for portable oscilloscopes and kin. Their IPS3608 bench power supply is a bit of a departure from that, offering a mains-powered PSU that can deliver up to 36 VDC and 8 A in a fairly compact, metal enclosure. Recently [Joftec] purchased one of these units in order to review it and ended up finding a few worrying flaws in the process.

One of the claims made on the product page is that it is ‘much more intelligent than traditional power supplies’, which is quite something to start off with. The visual impression of this PSU is that it’s somewhat compromised already, with no earth point on the front next to the positive and negative banana plug points, along with a tilting screen that has trouble staying put. The USB-C and -A ports on the front support USB-PD 3.0 and a range of fast charge protocols

The ‘intelligence’ claim seems to come mostly from the rather extensive user interface, including a graphing function. Where things begin to fall apart is when the unit locks up during load testing presumably due to an overheating event. After hooking up an oscilloscope, the ripple at 1 VDC was determined to be about 200 mV peak-to-peak at 91 kHz. Ripple increased at higher voltages, belying the ’10 mV ultra-low ripple’ claim.

A quick teardown revealed the cause for the most egregious flaw of the unit struggling to maintain even 144 Watt output: a very undersized heatsink on the SMPS board. The retention issues with the tilting issue seemed to be due to a design choice that prevents the screen from rotating without breaking plastic. While this latter issue could be fixed, the buggy firmware and high ripple on the DC output make this €124 ‘285 Watt’ into a hard pass.

Continue reading “Fnirsi IPS3608: A Bench Power Supply With Serious Flaws”

Fire Extinguishers, Optical Density Ratings And Safely Using Home Lasers

Ski goggle type laser safety lenses may look dorky, but they leave no gaps and fit around glasses. (Credit: FauxHammer, YouTube)
Ski goggle type laser safety lenses may look dorky, but they leave no gaps and fit around glasses. (Credit: FauxHammer, YouTube)

After [Ross] from FauxHammer miniature model fame got lured into reviewing laser engravers and similar via the Bambu Lab H2D’s laser module, he found himself getting slightly nervous about the whole ‘safety’ aspect of these lasers. After all, lasers can not only light stuff on fire, but it’s a well-known fact that even reflected laser light can be sufficient to cause permanent damage to your retinas. Or worse.

Since your eyes generally do not regenerate, it makes sense to get caught up on laser safety before turning on one of those plentiful-and-increasingly-affordable home laser systems for engraving and/or cutting.

While the issue of stuff catching on fire is readily solved by having a good CO2 extinguisher – and plan B options – at the ready, for safety glasses it’s significantly more complex. There’s not just the issue of finding glasses that block the wavelength of the laser system that you are using, but also with the right optical density (OD) rating. Every mm of the safety lens material can attenuate a certain amount of laser light at the given wavelength, so the OD rating of your laser safety goggles need to match the laser’s power output level, or you might be living with a false sense of security.

Finally, there is the issue of the smoke and fumes produced by these lasers as they obliterate the target material. Much of what is in this smoke you do not want to breathe in, even ignoring long-term dust and VOC exposure issues, so having a solid fume extraction setup and PPE as necessary are absolute necessities. As [Ross] puts it, you don’t want to breathe in the smell of regret today, for your future self to reflect on a decade from now.

Work safe, work smart, don’t become the subject of a laser safety PSA.

Continue reading “Fire Extinguishers, Optical Density Ratings And Safely Using Home Lasers”

BCacheFS Is Now A DKMS Module After Exile From The Linux Kernel

It’s been a tense few months for users of the BCacheFS filesystem, as amidst the occasional terse arguments and flowery self-praise on the Linux Kernel mailing list the future of this filesystem within the Linux kernel hung very much in the balance. After some initial confusion about what ‘externally maintained’ means in Linux parlance, it’s now clear that this means that BCacheFS has effectively been kicked out of the kernel as [Linus] promised and will ship as a DKMS module instead. The gory details of this change are discussed in a recent video by [Brodie Robertson].

We covered the BCacheFS controversy in the Linux world a few months ago, amidst reports of data loss and filesystem corruption among its users. Its lead developer, [Kent Overstreet], came to blows with [Linus Torvalds] on the LKML after [Kent] insisted on repeatedly pushing new features into kernel release candidate branches along with rather haughty statements on why he should be able to do this.

To make a long story short, [Linus] didn’t like this and froze BCacheFS support in the current kernel release with all future in-kernel development ceased. Distributions like SuSE have initially said that will disable BCacheFS starting in kernel version 6.17, meaning that users of BCacheFS may now have to install the DKMS module themselves. Some distributions like Arch are likely to include this DKMS module by default, which is something you want to check if you use this filesystem.

Continue reading “BCacheFS Is Now A DKMS Module After Exile From The Linux Kernel”

Test Pattern Generator For SCART And RGB TVs

CRTs don’t last forever, and neither do the electronics that drive them. When you have a screen starting to go wonky, then you need a way to troubleshoot which is at fault. A great tool for that is a pattern generator, but they’re not the easiest to come by these days. [baritonomarchetto] needed a pattern generator to help repair his favourite arcade machine, and decided to make his own DIY Portable RGB CRT Test Pattern Generator.

One of the test patterns available from the device. This TV appears to be in good working order.

While he does cite [Nicholas Murray]’s RP2040 test pattern generator as a starting point (which itself builds on the PicoVGA library once featured here), he couldn’t just build one. That worthy project only outputs VGA and because [baritonomarchetto] is in Europe, he needed a SCART connector. Since he’s working on arcade machines, he needed non-SCART RGB signals, too. The arcade signals need to be at higher voltages (TLL level) than the RGB signal you’d find in SCART and VGA.

The upshot is while he’s using [Nicholas]’s code for the RP2040, he’s rolled his own PCB, including a different resistor ladders to provide the correct voltages depending on if he’s dealing with a home TV or arcade CRT. To make life easier, the whole thing runs off a 9V battery.

If you’re wondering what the point of these test patterns is, check out this 1981-vintage pattern generator for some context from the era. If a digital replica doesn’t float your boat, it is possible to recreate the original analog circuitry that generated these patterns back when the CRT was king.

Photo of the Haasoscope Pro

Haasoscope Pro: Open-Everything 2 GHz USB Oscilloscope

Our hacker [haas] is at it again with the Haasoscope Pro, a full redesign of the original Haasoscope, which was a successful Crowd Supply campaign back in 2018.

This new Pro version was funded on Crowd Supply in April this year and increases the bandwidth from 60 MHz to 2 GHz, the vertical resolution from 8 to 12 bits, and the sample rate from 125 MS/s to 3.2 GS/s. Selling for $999 it claims to be the first open-everything, affordable, high-bandwidth, real-time sampling USB oscilloscope.

The firmware and software are under active development and a new version was released yesterday.

Continue reading “Haasoscope Pro: Open-Everything 2 GHz USB Oscilloscope”