LED Flame Illuminates The Beauty Of Noise

Have you ever wrapped up a nice blinky project only to be disappointed by the predictability of the light or the color patterns? When it came to lighting this LED candle, so was [fungus amungus]. But there’s a better way, and it involves noise.

Perlin noise was created in the early 80s by Ken Perlin while he was working on the movie Tron. Frustrated by the current state of computer graphics and too limited on space to use images, he devised an algorithm for generating natural-looking textures. Basically, you generate a bunch of numbers between 0 and 1, then assign values to those numbers, such as a range of greyscale values from black (0) to white (1), or the values from the color wheel. The result is much prettier than random numbers because the neighboring values for any given number aren’t radically different. You get nice randomness with hardly any overhead.

[fungus amungus] is using the FastLED’s noise function to generate the numbers, but there’s a whole lot more going on here. As he explains in the excellent video after the break, if you want to animate these values, you just add another dimension of them. Although [fungus amungus] is using a Trinket Pro and a NeoPixel ring, we think a simplified version could be done with a Circuit Playground Express using the built-in LEDs.

If you want to do it the hard way, start by making your own NeoPixel ring.

Continue reading “LED Flame Illuminates The Beauty Of Noise”

A Pocket-Sized Terminal For Mobile Python Hacking

Inspired by the good old days when your computer would boot directly into BASIC, [Le Roux Bodenstein] has created a handheld device he calls “DumbDumb” that can drop you into a MicroPython environment at a moment’s notice. If that doesn’t interest you, think of it this way: it’s a (relatively) VT100 compatible serial terminal with a physical keyboard that can fit in your pocket.

Being essentially just a dumb terminal (hence the name), there’s actually not a lot of hardware on the board. Beyond the 320×240 NewHaven 2.4 inch LCD, there’s just an STM32G071R8 microcontroller and a handful of passives. Plus the 57 tactile buttons that make up the keyboard, of course.

The MicroPython part comes in thanks to the spot on the back of the board that accepts an Adafruit Feather Wing. In this case, it’s the HUZZAH32 with an ESP32 on board, but it could work with other variants as well. With the wide array of Feather boards available, this terminal could actually be used for an array of applications.

So even if fiddling around with MicroPython isn’t your idea of a good time, there’s almost certainly some interesting software you could come up with for a tiny network-attached terminal like this. For example, it might be just what you need to start working on that LoRa pager system.

Peek Inside These Same-But-Different Power Supplies

When [Kerry Wong] found an Amrel PPS 35-2 Programmable Power Supply from the late 90s on eBay, he recognized it as the single-channel version of another unit he owned, the dual-channel Amrel PPS-2322. Naturally, he purchased it and did a compare and contrast of the two models.

From the outside, they look fairly different but weigh about the same. But the similarities on the inside make it quite clear that they share a common design. There are a few things that grab your eye and the 35-2 doesn’t seem quite as well thought out, with some components being soldered into awkward-looking places. Capacitors bristle like barnacles where they are soldered directly to a connector, and a blob of hot glue anchors two resistors that rise up out of the board like a couple of weeds.

The link above shows some high resolution side-by-side photos between the two models, and [Kerry] thoughtfully provides a link to the manual for the PPS series as well as a dump of the firmware (.zip) for the 35-2. A teardown video is embedded below.

Benchtop power supplies are important tools, but we’ve also seen how modern breadboard power supplies are remarkably full-featured.

Continue reading “Peek Inside These Same-But-Different Power Supplies”

Stronger 3D Prints — Glue Or Carbon Fiber?

[CNCKitchen], like many others, is looking to make strong 3D prints. Using a high tech PLA bio copolyester compound, he printed a bunch of hooks in two different orientations. He used several different types of glue including epoxy and superglue. You can see the video of his results, below.

In addition to the glue, he used epoxy and bulk carbon fiber, again, in two different orientations. After several days of curing, he was ready to test.

Continue reading “Stronger 3D Prints — Glue Or Carbon Fiber?”

A VFD Wall Thermometer

Want to build something using VFD tubes, but don’t need yet another clock project? In that case, this wall mounted temperature and humidity display created by [commanderkull] might be exactly what you’re looking for. With six IV-11 tubes, this display is a practical way to add some of that gorgeous blue-green glow to your home or office.

The USB powered display uses a XL6009 and an XL7015 to provide the 24 V and 1.8 V needed by the IV-11 tubes, respectively. Both of which can be disconnected with jumpers to shut down the tubes without powering off the entire device, a useful feature when programming and debugging the display’s ATmega328P microcontroller. Each tube is connected to the ATmega with an 74HC595 shift register and a UDN2981 driver. Temperature and humidity data is provided, perhaps unsurprisingly, by the exceptionally common DHT22 sensor.

If you are looking to build another clock with these style tubes, there’s certainly enough prior art out there to get you started. We’ve also seen faux VFDs that you could use for either project, just in case you aren’t looking to deal with the voltage requirements and relative rarity of the real thing.

[Ben Krasnow]’s Take On DIY Air Bearings

We’ve got to admit that watching [Ben Krasnow]’s new video on air bearings is tough. We found our eyes constantly checking the spherical air bearing in the foreground, which for the first eight minutes of the video just kept going. It was strangely hypnotic, and made it hard to concentrate on all the other cool stuff [Ben] was up to.

If the topic of air bearings seems familiar, it might be because we recently reported on DIY air bearings made from used EDM electrodes. [Ben] saw that too, and dusted off his old air bearing project. Literally, as it turns out, because the graphite blocks whose porosity and softness make them the perfect material for air bearings also makes for a dusty workshop. We’d recommend breathing protection of some sort while machining graphite. In addition to simple puck bearings, [Ben] came up with more complicated designs, including the aforementioned spherical bearing. He used the steel ball itself as a precision tool to grind the graphite out, first by coating it with abrasive and then by cutting grooves in it to act like a file. A cylindrical bearing was also cut, this time with sandpaper glued directly to the ground steel rod that would seat in the bearing.

[Ben]’s other innovation is vacuum preloading, where he applies both vacuum and pressure to the bearing plenum. The vacuum provides the force needed to capture the moving element while the pressure bears the load. It’s a careful balancing act, but it works well enough to capture the large steel ball and keep it turning effortlessly.

We really liked [Ben]’s take on air bearings, especially his thoughts on creating fully enclosed cylindrical bearings. Those could be useful for low-friction linear drives, and we look forward to seeing more on those.

Continue reading “[Ben Krasnow]’s Take On DIY Air Bearings”

FPGA 6800 Uses Python Toolbox

Usually, when you think of designing — or recreating — a CPU on an FPGA, you assume you’ll have to use Verilog or VHDL. There are other options, as well, but those are the biggest two players in FPGA configuration. [Robert Baruch] has a multipart series where he uses nMigen — a Python toolbox — to recreate a 6800 CPU like the one used in many vintage video games and pinball machines.

Unlike some tools that try to convert software written in some language to an FPGA configuration, nMigen uses Python as a scripting language to create code in FHDL. This is similar in concept to VHDL or Verilog, but gives up the event-driven paradigm, opting instead to allow designers to explicitly call out synchronous and combinatorial logic.

Continue reading “FPGA 6800 Uses Python Toolbox”