Simplest Speaker Oscillator, Now Even Simpler

It never fails. Lay down some kind of superlative — fastest, cheapest, smallest — around this place and someone out there says, “Hold my beer” and gets to work. In this case, it’s another, even simpler audio oscillator, this time with just a loudspeaker and a battery.

Attentive readers will recall the previous title holder was indeed pretty simple, consisting only of the mic and speaker from an old landline telephone handset wired in series with a battery. Seeing this reminded [Hydrogen Time] of a lucky childhood accident while experimenting with a loudspeaker, which he recreates in the video below. The BOM for this one is even smaller than the previous one — just a small speaker and a battery, plus a small scrap of solid hookup wire. The wire is the key; rather than connecting directly to the speaker terminal, it connects to the speaker frame on one end while the other is carefully adjusted to just barely touch the flexible wire penetrating the speaker cone on its way to the voice coil.

When power is applied with the correct polarity, current flows through the wire into the voice coil, which moves the cone and breaks the circuit. The speaker’s diaphragm resets the cone, completing the circuit and repeating the whole process. The loudspeaker makes a little click with each cycle, leading to a very rough-sounding oscillator. [Hydrogen Time] doesn’t put a scope on it, but we suspect the waveform would be a ragged square wave whose frequency depends on the voltage, the spring constant of the diaphragm, and the spacing between the fixed wire and the voice coil lead.

Yes, we realize this is stretching the definition of an audio oscillator somewhat, but you’ve got to admit it’s simple. Can you get it even simpler?

Continue reading “Simplest Speaker Oscillator, Now Even Simpler”

A render of the USB Blaster, showing all the major parts

The Cheapest USB Blaster Ever, Thanks To CH552

Here’s a CH552G-based USB Blaster project from [nickchen] in case you needed more CH552G in your life, which you absolutely do. It gives you the expected IDC-10 header ready for JTAG, AS, and PS modes. What’s cool, it fits into the plastic shell of a typical USB Blaster, too!

The PCB is flexible enough, and has all the features you’d expect – a fully-featured side-mounted IDC-10 header, two LEDs, a button for CH552 programming mode, and even a UART header inside the case. There’s an option to add level shifter buffers, too – but you don’t have to populate them if you don’t want to do that for whatever reason! The Hackaday.io page outlines all the features you are getting, though you might have to ask your browser to translate from Chinese.

Sadly, there’s no firmware or PCB sources – just schematics, .hex, BOM, and Gerber .zip, so you can’t fix firmware bugs, or add the missing USB-C pulldowns. Nevertheless, it’s a cool project and having the PCB for it is lovely, because you never know when you might want to poke at a FPGA on a short notice. Which is to say, it’s yet another CH552 PCB you ought to put in your PCB fab’s shopping cart! This is not the only CH552G-based programming dongle that we’ve covered – here’s a recent Arduino programmer that does debugWire, and here’s like a dozen more different CH552G boards, programmers and otherwise.

The board shown in real life, top and bottom, showing the pinout and alternate functions silkscreened.

A CH552G Devboard In Case You Missed It

We might just never get tired of covering cool small cheap MCUs, and CH552G sure fits this description. Just so you know, here’s a Hackaday.io project you should check out – a CH552G devboard that’s as simple as it sufficient, in case you needed a tangible reminder that this chip exists, has a lively community, and is very much an option for your projects.

The devboard design by [Dylan Turner] is so straightforward, it’s almost inspiring – a square of PCB with the chip in the center and plenty of empty space for your mods. Everything is open-source with KiCad sources stored on GitHub. The most lovely aspect of this board, no doubt, is having the pin mapping written on the bottom, with all the alternate pin functions – you won’t have to constantly glance at the datasheet while wiring this one up. Plus, of course, there’s the microUSB port for programming, and the programming mode button that a few CH552 projects tend to lack.

It’s simple, it’s self-documenting, it’s breadboardable, and it’s definitely worth putting into the shopping cart at your PCB fab of choice. Oh, and there are bringup instructions on GitHub, in case you need them. Whether you want to prototype the cheapest macropad or keyboard ever, or perhaps a reflow hotplate, the CH552 delivers. If these CH552 projects aren’t enough to light your fire, here are a dozen more.

The Z80 Is Dead. Long Live The Free Z80!

It’s with a tinge of sadness that we and many others reported on the recent move by Zilog to end-of-life the original Z80 8-bit microprocessor. This was the part that gave so many engineers and programmers their first introduction to a computer of their own. Even though now outdated its presence has been a constant over the decades. Zilog will continue to sell a Z80 derivative in the form of their eZ80, but that’s not the only place the core can be found on silicon. [Rejunity] is bringing us an open-source z80 core on real hardware, thanks of course to the TinyTapeout ASIC project. The classic core will occupy two tiles on the upcoming TinyTapeout 7. While perhaps it’s not quite the same as a real 40-pin DIP in your hands, like all of the open-source custom silicon world, it’s as yet early days.

The core in question is derived from the TV80 open-source core, which we would be very interested to compare when fabricated at TinyTapeout’s 130nm process with an original chip from a much larger 1970s process. While It’s true that this project is more of an interesting demonstration of TinyTapeout than a practical everyday Z80, it does at least serve as a reminder that there may be a future point in which a run of open-source real Z80s or other chips might become possible.

This isn’t the first time we’ve featured a TinyTapeout project.

Chip Mystery: The Case Of The Purloined Pin

Let’s face it — electronics are hard. Difficult concepts, tiny parts, inscrutable datasheets, and a hundred other factors make it easy to screw up in new and exciting ways. Sometimes the Magic Smoke is released, but more often things just don’t work even though they absolutely should, and no amount of banging your head on the bench seems to change things.

It’s at times like this that one questions their sanity, as [Gili Yankovitch] probably did when he discovered that not all CH32V003s are created equal. In an attempt to recreate the Linux-on-a-microcontroller project, [Gili] decided to go with the A4M6 variant of the dirt-cheap RISC-V microcontroller. This variant lives in a SOP16 package, which makes soldering a bit easier than either of the 20-pin versions, which come in either QFN or TSSOP packages.

Wisely checking the datasheet before proceeding, [Gili] was surprised and alarmed that the clock line for the SPI interface didn’t appear to be bonded out to a pin. Not believing his eyes, he turned to the ultimate source of truth and knowledge, where pretty much everyone came to the same conclusion: the vendor done screwed up.

Now, is this a bug, or is this a feature? Opinions will vary, of course. We assume that the company will claim it’s intentional to provide only two of the three pins needed to support a critical interface, while every end user who gets tripped up by this will certainly consider it a mistake. But forewarned is forearmed, as they say, and hats off to [Gili] for taking one for the team and letting the community know.

No Active Components In This Mysterious Audio Oscillator

What’s the simplest audio frequency oscillator you can imagine? There’s the 555, of course, and we can think of a few designs using just two transistors or even a few with just one. But how about an oscillator with no active components? Now there’s a neat trick.

Replicating [Stelian]’s “simplest audio oscillator on the Internet” might take some doing on your part, since it relies on finding an old telephone. Like, really old — you’ll need one with the carbon granule cartridge in the handset, along with the speaker. Other than that, all you’ll need is a couple of 1.5-volt batteries, wiring everything in one big series loop, and placing the microphone and speaker right on top of each other. Apply power and you’re off to the races. [Stelian]’s specific setup yielded a 2.4-kHz tone that could be altered a bit by repositioning the speaker relative to the mic. On the oscilloscope, the waveform is a pretty heavily distorted sine wave.

It’s a bit of a mystery to [Stelian] as to how this works without something to provide at least a little gain. Perhaps the enclosure of the speaker or the mic has a paraboloid shape that amplifies the sound just enough to kick things off? Bah, who knows? Let the hand-waving begin!

Continue reading “No Active Components In This Mysterious Audio Oscillator”

New JEDEC DDR5 Memory Specification: Up To 8800 MT/s, Anti-Rowhammer Features

Rapid row activations (yellow rows) may change the values of bits stored in victim row (purple row).
Row hammer” by DsimicOwn work. Licensed under CC BY-SA 4.0 via Wikimedia Commons.

As DDR SDRAM increases in density and speed, so too do new challenges and opportunities appear. In the recent DDR5 update by JEDEC – as reported by Anandtech – we see not only a big speed increase from the previous maximum of 6800 Mbps to 8800 Mbps, but also the deprecation of Partial Array Self Refresh (PASR) due to security concerns, and the introduction of Per-Row Activation Counting (PRAC), which should help with row hammer-related (security) implications.

Increasing transfer speeds is primarily a matter of timings within the limits set by the overall design of DDR5, while the changes to features like PASR and PRAC are more fundamental. PASR is mostly a power-saving feature, but can apparently be abused for nefarious means, which is why it’s now gone. As for PRAC, this directly addresses the issue of row hammer attacks. Back in the 2014-era of DDR3, row hammer was mostly regarded as a way to corrupt data in RAM, but later it was found to be also a way to compromise security and effect exploits like privilege escalation.

The way PRAC seeks to prevent this is by keeping track of how often a row is being accessed, with a certain limit after which neighboring memory cells get a chance to recover from the bleed-over that is at the core of row hammer attacks. All of which means that theoretically new DDR5 RAM and memory controllers should be even faster and more secure, which is good news all around.