Lock-In Thermography On A Cheap IR Camera

Seeing the unseen is one of the great things about using an infrared (IR) camera, and even the cheap-ish ones that plug into a smartphone can dramatically improve your hardware debugging game. But even fancy and expensive IR cameras have their limits, and may miss subtle temperature changes that indicate a problem. Luckily, there’s a trick that improves the thermal resolution of even the lowliest IR camera, and all it takes is a little tweak to the device under test and some simple math.

According to [Dmytro], “lock-in thermography” is so simple that his exploration of the topic was just a side quest in a larger project that delved into the innards of a Xinfrared Xtherm II T2S+ camera. The idea is to periodically modulate the heat produced by the device under test, typically by ramping the power supply voltage up and down. IR images are taken in synch with the modulation, with each frame having a sine and cosine scaling factor applied to each pixel. The frames are averaged together over an integration period to create both in-phase and out-of-phase images, which can reveal thermal details that were previously unseen.

With some primary literature in hand, [Dmytro] cobbled together some simple code to automate the entire lock-in process. His first test subject was a de-capped AD9042 ADC, with power to the chip modulated by a MOSFET attached to a Raspberry Pi Pico. Integrating the images over just ten seconds provided remarkably detailed images of the die of the chip, far more detailed than the live view. He also pointed the camera at the Pico itself, programmed it to blink the LED slowly, and was clearly able to see heating in the LED and onboard DC-DC converter.

The potential of lock-in thermography for die-level debugging is pretty exciting, especially given how accessible it seems to be. The process reminds us a little of other “seeing the unseeable” techniques, like those neat acoustic cameras that make diagnosing machine vibrations easier, or even measuring blood pressure by watching the subtle change in color of someone’s skin as the capillaries fill.

Not A Pot, Not An Encoder: Exploring Synchros For Rotational Sensing

We’re all familiar with getting feedback from a rotating shaft, for which we usually employ a potentiometer or encoder. But there’s another device that, while less well-known, has some advantages that just might make it worth figuring out how to include it in hobbyist projects: the synchro.

If you’ve never heard of a synchro, don’t feel bad; as [Glen Akins] explains, it’s an expensive bit of kit most commonly found in avionics gear. It’s in effect a set of coaxial transformers with a three-phase stator coil and a single-phase rotor. When excited by an AC reference voltage, the voltage induced on the rotor coil is proportional to the cosine of the angle between the rotor and stator. It seems simple enough, but the reality is that synchros present some interfacing challenges.

[Glen] chose a surplus altitude alert indicator for his experiments, a formidable-looking piece of avionics. Also formidable was the bench full of electronics needed to drive and decode the synchro inside it — a 26-volt 400-Hz AC reference voltage generator, an industrial data acquisition module to digitize the synchro output, and an ESP32 dev board with a little OLED display to show the results. And those are impressive; as seen in the video below, the whole setup is capable of detecting tenth-of-a-degree differences in rotation.

The blog post has a wealth of detail on using synchros, as does this Retrotechtacular piece from our own [Al Williams]. Are they practical for general hobbyist use? Probably not, but it’s still cool to see them put to use.

Continue reading “Not A Pot, Not An Encoder: Exploring Synchros For Rotational Sensing”

Extreme Espresso, Part 2: An Inductive Water Level Sensor

[Mark Smith] must really, really like his coffee, at least judging by how much effort he’s put into tricking out his espresso machine.

This inductive water tank sensor is part of a series of innovations [Mark] has added to his high-end Rancilio Silvia machine — we assume there are those that would quibble with that characterization, but 800 bucks is a lot to spend for a coffee maker in our books. We recently featured a host of mods he made to the machine as part of the “Espresso Connect” project, which includes a cool Nixie tube bar graph to indicate the water level in the machine. That display is driven by this sensor, the details of which [Mark] has now shared. The sensor straddles the wall of the 1.7-liter water tank, so no penetrations are needed. Inside the tanks is a track that guides a copper and PETG float that’s sealed with food-safe epoxy resin.

Directly adjacent to the float track on the outside of the tank is a long PCB with a couple of long, sinuous traces. These connect to an LX3302A inductive sensor IC, which reads the position of the copper slug inside the float. That simplifies the process greatly; [Mark] goes into great detail about the design and calibration of the sensor board, as well as hooking it into the Raspberry Pi Zero that lies at the heart of “Espresso Connect’. Altogether, the mods make for a precisely measured dose of espresso, as seen in the video below.

We’d say this was maybe a bit far to go for the perfect cup of coffee, but we sure respect the effort. And we think this inductive sensor method has a lot of non-caffeinated applications that probably bear exploration.

Continue reading “Extreme Espresso, Part 2: An Inductive Water Level Sensor”

Apollo 11 Trig Was Brief

In this day and age where a megabyte of memory isn’t a big deal, it is hard to recall when you had to conserve every byte of memory. If you are a student of such things, you might enjoy an annotated view of the Apollo 11 DSKY sine and cosine routines. Want to guess how many lines of code that takes? Try 35 for both.

Figuring out how it works takes a little knowledge of how the DSKY works and the number formats involved. Luckily, the site has a feature where you can click on the instructions and see comments and questions from other reviewers.

Continue reading “Apollo 11 Trig Was Brief”

CORDIC Brings Math To FPGA Designs

We are always excited when we see [Hamster] post an FPGA project, because it is usually something good. His latest post doesn’t disappoint and shows how he uses the CORDIC algorithm to generate very precise sine and cosine waves in VHDL. CORDIC (Coordinate Rotation Digital Computer; sometimes known as Volder’s algorithm) is a standard way to compute hyperbolic and trigonometric functions. What’s nice is that the algorithm only requires addition, subtraction, bit shifts, and a lookup table with an entry for each bit of precision you want. Of course, if you have addition and negative numbers, you already have subtraction. This is perfect for simple CPUs and FPGAs.

[Hamster] not only has the VHDL code but also provides a C version if you find that easier to read. In either case, the angle is scaled so that 360 degrees is a full 24-bit word to allow the most precision. Although it is common to compute the result in a loop, with the FPGA, you can do all the math in parallel and generate a new sample on each clock cycle.

Continue reading “CORDIC Brings Math To FPGA Designs”