Teensy 4 Pushed To The Limit With 1 GHz Overclock

Do you need a microcontroller that runs at 1 GHz? No, probably not. But that didn’t stop [Visual Micro] from trying, and the results are pretty interesting. Not only did the plucky little chip not cook itself, it actually seemed to run fairly well; with the already powerful microcontroller getting a considerable boost in performance.

According to [Visual Micro] the Teensy 4.1, which normally has its ARM Cortex-M7 clocked at 600 MHz, can run at up to 800 MHz without any additional cooling. But beyond that, you’ll want to invite some extra surface area to the party. It’s easy enough to cut a chunk out of an old CPU/GPU cooler and stick it on with a dab of thermal compound, but of course there’s no shortage of commercially available heatsinks at this size that you could pick up cheap.

Cutting a custom heatsink.

With the heatsink installed, [Visual Micro] shows the Teensy running at around 62 °C during a benchmark. If that’s a little hot for your liking, they also experimented with an old laptop cooler which knocked the chip down to an impressive 38 °C while under load. It doesn’t look like a particularly practical setup to us, but at least the option is there.

[Visual Micro] unfortunately doesn’t go into a lot of detail about the benchmark results, but from what’s shown, it appears the overclock netted considerable gains. A chart shows that in the time it took a stock Teensy to calculate 15.2 million prime numbers, the overclocked chip managed to blow through 21.1 million. The timescale for this test is not immediately clear, but the improvement is obvious.

Even at the stock 600 MHz, the Teensy 4 is a very powerful MCU. Especially after the 4.1 refresh brought in support for additional peripherals and more RAM. But we suppose some people are never satisfied. Got a project in mind that could benefit from an overclocked Teensy? We’d love to hear about it.

Continue reading “Teensy 4 Pushed To The Limit With 1 GHz Overclock”

An image showing a water cooler PCB on the desk, with probes and jumper wires connected to it.

Taking Water Cooler UX Into Your Own Hands With Ghidra

Readers not aware of what Ghidra is might imagine some kind of aftermarket water cooler firmware or mainboard – a usual hacker practice with reflow ovens. What [Robbe Derks] did is no less impressive and inspiring:  A water cooler firmware mod that adds hands-free water dispensing, without requiring any hardware mods or writing an alternative firmware from scratch.

Having disassembled the cooler, [Robbe] found a PIC18F6527 on the mainboard, and surprisingly, it didn’t have firmware readback protection. Even lack of a PICkit didn’t stop him – he just used an Arduino to dump the firmware, with the dumper code shared for us to reuse, and the resulting dumps available in the same repository.

From there, he involved Ghidra to disassemble the code, while documenting the process in a way we can all learn from, and showing off the nifty tricks Ghidra has up its sleeves. Careful planning had to be done to decide which functions to hook and when, where to locate all the extra logic so that there’s no undesirable interference between it and the main firmware, and an extra step taken to decompile the freshly-patched binary to verify that it looks workable before actually flashing the cooler with it.

The end result is a water cooler that works exactly as it ought to have worked, perhaps, if the people defining its user interaction principles were allowed to make it complex enough. We could argue whether this should have been a stock function at all, but either way, it is nice to know that we the hackers still have some of the power to make our appliances friendly — even when they don’t come with an OS. Certainly, every single one of us can think of an appliance long overdue for a usability boost like this. What are your examples?

We’ve covered quite a few Ghidra-involving hacks, but it never feels like we’ve had enough. What about patching an air quality meter to use Fahrenheit? Or another highly educational write-up on cracking GBA games? Perhaps, liberating a Linux-powered 4G router to reconfigure it beyond vendor-defined boundaries? If you have your own goal in mind and are looking to start your firmware reverse-engineering journey, we can say with certainty that you can’t go wrong with our HackadayU course on Ghidra.

An OpenSCAD Library For All Your CNC Cutting Needs

While there’s always the edge case, there’s a strong likelihood that if you’re using OpenSCAD, you’re probably working on a CAD model that you intend to 3D print at some point. Of course that’s not to say this is all you can do in OpenSCAD, but it’s arguably what it does best. If you wanted to make artistic models, or maybe render what your new kitchen will look like, there are other tools better suited to such tasks.

But thanks to lasercut.scad, a library that [Brendan Sleight] has been working on for the last several years, we might have to reconsider our preconceived dimensional notions. Instead of designing parts for 3D printing, his library is all about creating parts intended for subtractive manufacturing. Originally (as the name implies) it was geared towards laser cutting, but the project has since evolved to support CNC routers, vinyl cutters, and pretty much anything else that can follow a DXF file.

This “clip” joint is great for acrylic.

The library has functions for creating the standard tricks used to build things from laser-cut pieces, like finger joints, captive nuts, and assembly tabs. If it was something you once saw holding together an old wooden 3D printer kit back in the day, you can probably recreate it with lasercut.scad. It even supports a pretty wild piece of rotational joinery, courtesy of [Martin Raynsford].

Don’t have a way of concentrating a sufficient number of angry photons at your workpiece? No worries. The library has since been adapted to take into account a parametric kerf width, which lets you dial in how much of a bite your particular tool will take from the material when it does the business. There are even special functions for dealing with very thin cuts, which [Brendan] demonstrates by assembling a box from sheet vinyl.

Of course, those who’ve used OpenSCAD will know there’s not an “Export for CNC” button anywhere in the stock interface. So to actually take your design and produce a file your cutter can understand, [Brendan] has included a Bash script that will run the necessary OpenSCAD incantations to produce a 2D DXF file.

[Brendan] decided to send this one in after he saw the aluminum enclosure OpenSCAD library we covered recently. If you’ve got your own pet project that bends some piece of hardware or software to your will, don’t be shy to let us know.

Astronomical clock

An Astronomical Mechanical Clock, In More Ways Than One

If the workings of a mechanical timepiece give you a thrill, prepare to be blown away by this over-the-top astronomical clock.

The horological masterpiece, which was designed by [Mark Frank] as his “dream clock”, is a riot of brass, bronze, and steel — 1,200 pounds (544 kg) of it, in fact, at least in the raw materials pile. Work on the timepiece began in 2006, with a full-scale mockup executed in wood by Buchannan of Chelmsford, the Australian fabricator that [Mark] commissioned to make his design a reality. We have a hard time explaining the design, which has just about every horological trick incorporated into it.

[Mark] describes the clock as “a four train, quarter striking movement with the fourth train driving the astronomical systems,” which sounds far simpler than the finished product is. It includes 52 “complications,” including a 400-year perpetual calendar, tide clock, solar and lunar eclipse prediction, a planisphere to show the constellations, and even a thermometer. And, as if those weren’t enough, the clock sports both a tellurion to keep track of the Sun-Earth-Moon system and a full orrery out to the orbit of Saturn, including all the major moons. The video below shows the only recently finished masterpiece in operation.

[Mark]’s dream clock has been under construction for the better part of two decades, and we applaud not just his design but his patience. The skeletonized construction reminds us of the Clickspring clock from a few years back; now seems like a great time to go back and binge-watch that whole series again.

Continue reading “An Astronomical Mechanical Clock, In More Ways Than One”

Teaching A DC Servo Motor To Act Like A Stepper

[Frank Herrmann] had an interesting idea to turn a geared DC motor into a servo motor assembly, but with a stepper motor-like interface. By stacking some small PCBs behind the motor body, it was possible to squeeze a DRV8837 DC motor driver and a pair of hall effect sensors on the first PCB layer, with the magnetic encoder nestled tightly behind it. Pin headers at the edge of the PCB connect to a second PCB bearing the microcontroller, which is based on the cheap STM32L432. The second PCB also holds an associated LDO and debug LED. Together, this handful of parts provide all that is needed to read the encoder, control the motor rotation and listen on the ‘stepper motor driver’ interface pins hooked up to the motion controller upstream. The Arduino source for this can be found on the project GitHub.

Whilst [Frank] mentions that this assembly has a weight and torque advantage over a NEMA 17 sized stepper motor, but we see no hard data on accuracy and repeatability which would be important for precise operations like 3D printing.

This project is part of a larger goal to make a complete 3D printer based around these ‘DC motor stepper motors’ which we will watch with interest.

While we’re on the subject of closed-loop control of DC motors, here’s another attempt to do the same, without the integration. If these are too small for you, then you always repurpose some windscreen washer motors.

Continue reading “Teaching A DC Servo Motor To Act Like A Stepper”

A NeoPixel Punk Console

NeoPixel Punk Console Drives WS2812s Using 555 Timers

NeoPixels, a type of LED strip with individually addressable pixels, are a firm favorite among creators of intricate light effects. They are popular for their versatility and the ease with which you can daisy-chain them. Although the protocol to drive these little LEDs can be rather tricky to implement due to tight signal timing constraints.

However, [Adrian Studer] proved that driving WS2812-based LED strips like the NeoPixel series doesn’t necessarily require hand-optimized assembly code. In fact, it doesn’t require any code at all. He built the NeoPixel Punk Console, a device that creates a light show without even using a microcontroller. Just a handful of 555 timers and some 74HC series logic work together to produce pulses with approximately correct timings.

Operating the device is as easy as tweaking a few potentiometers, just like its namesake the Atari Punk Console. It’s quite a random process though, and it might be impossible to re-create a pattern that you liked. Also, the LEDs mostly light up in primary colors at full power, though [Adrian] plans to make an improved version that drives the red, green, and blue subpixels separately. But the fact that all of this is implemented by just a bunch of 555 timers makes it a rather impressive hack by any standard.

We’ve seen more than a few ways of driving NeoPixels or similar WS2812-based LED strips, though all of them use a microprocessor of some sort; you can fire up a classic 6502, use SPI and DMA on a PIC32, or just plug in a single ARM Cortex M0+.

Continue reading “NeoPixel Punk Console Drives WS2812s Using 555 Timers”

Ski lift in at a European ski resort

Ski Lift Design Does The Impossible

Tis The Season, for those who are so inclined, to loft themselves to the top of a steep snow-covered hill and then go downhill, really fast. And if something gets in their way, turn. Whether they be on skis, a snowboard, or some other means, getting down usually involves using gravity. Getting up, on the other hand, usually involves a ski lift. And in the video by [kalsan15] after the break, we learn how technology has stepped in to make even the most inaccessible slopes just a lift ride away.

Ski lift in at a European ski resort
A ski lift that can only turn left.

In its most simple form, a ski lift is two pulleys connected by a steel cable. The pulley at the bottom of the hill is powered, and the pulley at the top of the hill serves as an idler. Attached to the steel cable are some means for a person to either sit down or grab a handle and be hoisted to the top of the hill.

Such a simple arrangement works fine if the geography allows for it, but what if there are turns, or there need to be multiple idlers to keep the wire taut but also close to the ground? Again, the most basic ski lifts have limitations. If the cable turns left around the idler, then the attachment for the handle or chair has to be on the right, making a right turn around the idler an impossibility.

How then can this problem be solved? We won’t spoil the outcome, but we recommend checking out [kalsan15]’s video for an excellent description of the problem and the solution that’ll leave you wondering “Why didn’t I think of that!?”

If you don’t find this hacky enough, then take a moment to learn how you too can not just make a gas-powered ski lift for your cabin in the woods, but then ride your slope down on your DIY Ski Bike!

Continue reading “Ski Lift Design Does The Impossible”