20 FPS On E-Paper Display Without Help

If electronic paper displays have one downside, it’s generally refresh rate. Earlier versions of the tech might only have been able to do single-digit frames per second, while modern, mid-range devices can sometimes manage 10-20 FPS — and that’s not including the frames needed to blank the display. Getting up past that double-digit barrier typically requires higher-end displays, more powerful processors or FPGAs, and more money. On the other hand, [Tony] was recently able to get 20 FPS out of an ESP32-based device without using any extra processing power.

The key to improving e-paper performance is understanding how the display actually works. The “ink” consists of microscopic charged pigment particles that physically move in response to electric fields, making the display much slower than LCD or OLED panels. Rather than fully erasing and redrawing every frame, the software takes advantage of the particles’ existing state by generating optimized driving waveforms that only move the particles needed to produce the next image. On the software side, an MPEG-like encoding is used so only changes between frames are transmitted and converted into these waveforms, reducing unnecessary data transfers and allowing much higher frame rates.

Tony’s method is able to drive 960×540 panels, like those found in the Lilygo or M5PaperS3, to 20 FPS, and these platforms are based on nothing more than the capable but limited ESP32 chip. It’s an impressive push, and worth checking out the video in the linked project page. We assume you’d need a little more to drive something like the massive e-paper display found in this home automation setup, though.

Continue reading “20 FPS On E-Paper Display Without Help”

The Seemingly Impossible Oscillator

Back in the days when an integrated circuit meant a simple but expensive device such as a 741 or a 555, most electronics enthusiasts made do with discrete transistor circuits. The common emitter amplifier and its variants are the most familiar, but the humble 3-legged device can do so much more. A particularly obtuse circuit is the subject of examination by [lcamtuf], the reverse avalanche oscillator. A 2N2222, a capacitor, an LED, and a resistor, the transistor is the wrong way round, and there’s nothing on its base. Yet the LED flashes, what on earth is up!

The answer lies in avalanche breakdown, the behavior of a reverse biased diode junction as the voltage across it increases. Eventually the electric field reaches the point at which an avalanche of electrons crosses the depletion layer, and the junction conducts. When connected across an RC circuit, the voltage in the capacitor slowly rises to the point at which avalanche breakdown occurs, and the capacitor abruptly discharges. As the voltage falls the avalanche conduction stops, and the cycle repeats itself. It’s a relaxation oscillator.

We’re treated to an explanation of why a transistor behaves this way and why a simple diode doesn’t, due to a “hump” in its I/V curve, and why the emitter-base junction has a lower breakdown voltage than the collector-base. It’s one of those circuits which looks as though it shouldn’t work, but never fails to oscillate.

Want to know more about transistors? Do we have the series for you!

Three Different Digital Counters To Remind Us How Good We Have It

Integrated electronic modules like counters and displays are convenient and space-saving, which may also make them easy to take for granted. [Nagy Krisztián] demonstrates this by making three very different digital counter designs, each breadboarded with a 7-segment LED display. Push a button, and the displayed number increments by one for each press. It was a personal project that ended up educational in more ways than one.

The progressively-integrated designs shrink in part count and board space, but the complexity doesn’t disappear. It just moves into software.

The first version uses discrete components only, and even though it handles the counting with CD4026B decade counter ICs instead of building counters from scratch with NAND gates, it’s still by far the largest of the three. The second version simplifies driving the display with an AT28C64B EEPROM acting as a sort of hardware lookup table translating binary counts into 7-segment digit display patterns. The third uses an ATtiny24A microcontroller, and unsurprisingly has the smallest footprint.

All of this highlights two things. One is that implementing even a simple counter and 7-segment LED readout is a nontrivial affair when one gets right down to it, even when taking advantage of purpose-built ICs. The second is that the complexity that is on full display in the first version doesn’t simply disappear as the footprint and component count goes down. Rather, it moves into software and other infrastructure, like the need for compilers and chip programmers.

The whole thing is both educational and a reminder of how good the average hardware hacker has it today. There are so many effective electronic assemblies, available to just about anyone at low cost, that it can be very easy to take it all for granted and forget just how much breadboard space and wires were needed for even simple-seeming things.

[Nagy] is certainly no stranger to dealing with a lot of wires, as we’ve seen when he fooled a 286 processor into thinking it was plugged into a functioning vintage motherboard.

Phone Stand Aims To Fight Addiction

Sometimes, it’s hard to stop picking up your phone every few minutes to check on notifications and scroll endlessly through the slop of the day. [PushpendraC2] has been working on a solution to this problem that would ideally discourage such behavior —  a nifty little smartphone stand!

The concept is straightforward enough—the smartphone stand uses a simple tactile button to determine if your smartphone is sitting on the little 3D printed shelf, or not. However, the smarts inside do a bit more than that, too. An ESP32-S3 is charged with monitoring whether the smartphone is sitting in place, and starts counting “focus time” while it’s there. If the phone is picked up, the OLED display on the shelf starts ticking down a 5-second timer to encourage you to put it back. If you don’t, the focus time is reset and you lose your streak.

It’s also possible to tap a touch sensor on the device which sets a reminder timer, prompting you to put your phone back after a set period of time, between 2 to 30 minutes. A buzzer will then start going off to prompt you to put the phone down. If you want to track the devices impact, you merely need to log in to the web server hosted by the ESP32, which shows your current focus session time, along with a heatmap of your daily productivity.

It’s a simple idea, but one that uses a few neat psychological hooks to encourage compliance and behavioral change. We’ve featured similar projects in this vein before, No surprise, as phone addiction is a problem experienced by many.

Continue reading “Phone Stand Aims To Fight Addiction”

Accurate Split-Flap Display Can Be 3D Printed

Split-flap displays are a great, low-power way to display text to a wide audience. Compared to other display technologies like LCDs they only use energy when the characters change, but have fallen out of favor partially because of their greater mechanical complexity and also because LCD and LED technology has become so inexpensive. They still retain a loyal following though, and [Jason] is demonstrating his version which boasts high accuracy and can be 3D printed.

To get good results, one of the keys is getting the motor positioning just right. The motor sits in the center and spins the flaps around, so stopping at exactly the right point to display a certain character is critical. [Jason]’s system uses a 28BYJ stepper motor with a magnetic encoder to ensure that the correct flap is displayed. The flaps themselves are completely 3D printed, using a method which allows for two colors to be printed even if the printer is only designed for a single color. Once printed, the flaps are installed on the wheel which is the outer ring of a planetary gear set with the stepper motor sitting in the middle.

Each character in the display is housed in a printed enclosure, and for [Jason]’s project he only needs five characters, so to control the entire setup he’s using a Raspberry Pi Pico. For more characters he suggests that it is still possible to use a smaller microcontroller like the Pico but a multiplexer may be needed. Of course, displays like this are not limited to characters alone. Take a look at this display which has custom flaps to display the current weather conditions as well.

Continue reading “Accurate Split-Flap Display Can Be 3D Printed”

Hack Improves Cheap Speed Controllers

[Tony Goacher] has worked with a lot of cheap brushless DC motor controllers built in China. They can be very cost-effective, but sometimes limited in performance or capability, particularly when it comes to low-speed operation. Thus, he’s been working on a project to make cheap controllers more capable.

The prime problems [Tony] has faced are jerkiness, throttle deadspots, and inconsistent torque delivery at low speeds. This is especially the case when running brushless motors on heavier vehicles, where the greater inertia can compound any minor problems to the point things become undriveable. [Tony]’s solution has been to create a signal interceptor that lives in between a throttle and the cheap motor controller to change their overall behavior.

The demo vehicle for this build is TrakTrike, a sort of bicycle-half-track hybrid that [Tony] built for EMF Camp 2022. After blowing up some nicer controllers, [Tony] specced some cheaper parts from AliExpress. Only, the low-speed control was terrible, and the dual motor controllers didn’t respond identically to throttle and would cause the vehicle to steer or crab, making driving difficult. This was fixed by dropping in an Arduino Nano after the throttle, and before the two motor controllers. It allows calibrating the throttle output from the Arduino to eliminate dead spots, while also tuning the throttle output to left and right motors individually so they respond more similarly. There are also custom acceleration and deceleration curves that make the controllers respond more smoothly, and a precise crawling speed for consistent low-speed maneuvering.

Just by doing some fancy throttle smoothing and control, [Tony] was able to greatly improve the usability of these cheap controllers, for the price of an Arduino Nano and little more. Files are on GitHub for those eager to attempt the hack themselves. There are other ways to go about this of course, like diving into field-oriented control, if you’re so inclined. Alternatively, speculate on how you’d tackle this engineering challenge down in the comments.

VFD Clock Runs On A Single AA

There are lots of different ways to build a clock. [Sciter_] came into the possession of some old calculator parts, and decided to reuse them for just such a project.

The heart of the build is an ATmega328P microcontroller, running off of a 32.768 kHz crystal. This allows the chip’s counters to neatly divide down the frequency to get a steady 1 Hz pulse for accurate timekeeping. Time is displayed on a vacuum fluorescent display (VFD) harvested from an old calculator. These displays need rather high voltages to run, which in this case are produced by a HV5812 driver chip and supporting circuitry. The display itself is neatly cradled in a pair of copper pipe elbows for a stylish look, with some addressable RGB LEDs present to provide some charming underglow.

Power for the device comes from a single AA battery, using a transformer-based low voltage converter. Alternatively, it can run off a USB 5 V power supply, which also charges the NiMH AA cell while available with the aid of an LM2576-ADJ buck converter.

Overall, it’s a neat homebrew clock that taught [Sciter_] plenty during its construction, and not the first time we’ve seen somebody put together a clock with second-hand VFDs. If you’re finding fun ways to reuse old display tech, don’t hesitate to let us know on the tipsline.