A microwave imaging setup. On the left is a monitor displaying a monochrome GUI. In the center is the RP2040-based positioning and measurement system, and on the right is a vector network analyzer.

Precise Positioning With The RP2040

Microwave imaging is similar to CT imaging, but instead of X-rays, the microwaves are used to probe the structure and composition of an object. To facilitate experimentation with microwave imaging, [Zehao Li] and [Kapil Gangwar] developed a system based on the RP2040 to control the height and rotation of a test object.

Their control system has a refreshingly physical user interface—a keypad. The keypad is used to configure the object’s position and the scanning step size, while user menus and the sample position are displayed in a clean and uncluttered interface over VGA. The RP2040 runs a multi-threaded program to handle user input, VGA display, and precise driving of two stepper motors for sample positioning.

The microwave imaging was performed by measuring the RF transmission over 2.5-8 GHz between two Vivaldi antennas on either side of the sample at a variety of angles. 2D cross-sections of the test object were reconstructed in Matlab using filtered back-projection. In this proof-of-concept demonstration, a commercial vector network analyzer was used to collect the data, but one could imagine migrating to a software defined radio (SDR) in the future.

A video demonstrating the system is embedded below the break. If you’re interested in DIY radio imaging, you might be interested in this guide to building your own synthetic aperture radar setup, or this analysis of an automotive radar chip.

Continue reading “Precise Positioning With The RP2040”

A Deep Dive Into Quadcopter Controls

In the old days, building a quadcopter or drone required a lot of hacking together of various components from the motors to the batteries and even the control software. Not so much anymore, with quadcopters of all sizes ready to go literally out-of-the-box. While this has resulted in a number of knock-on effects such as FAA regulations for drone pilots, it’s also let us disconnect a little bit from the more interesting control systems these unique aircraft have. A group at Cornell wanted to take a closer look into the control systems for drones and built this one-dimensional quadcopter to experiment with.

The drone is only capable of flying in one dimension to allow the project to more easily fit into the four-week schedule of the class, so it’s restricted to travel along a vertical rod (which also improves the safety of the lab).  The drone knows its current position using an on-board IMU and can be commanded to move to a different position, but it first has to calculate the movements it needs to make as well as making use of a PID control system to make its movements as smooth as possible. The movements are translated into commands to the individual propellers which get their power from a circuit designed from scratch for this build.

All of the components of the project were built specifically for this drone, including the drone platform itself which was 3D printed to hold the microcontroller, motors, and accommodate the rod that allows it to travel up and down. There were some challenges such as having to move the microcontroller off of the platform and boosting the current-handling capacity of the power supply to the motors. Controlling quadcopters, even in just one dimension, is a complex topic when building everything from the ground up, but this guide goes some more of the details of PID controllers and how they help quadcopters maintain their position.

Continue reading “A Deep Dive Into Quadcopter Controls”

Wii-Inspired Controller Built Using Raspberry Pi Pico

We all thought Nintendo was going to change the world of gaming when it released the Wii all those years ago. In the end, it was interesting but not really fundamentally life-changing for most of us. In any case, [Sebastian] and [Gabriel] decided to build a Wii-like controller for their microcontroller class at Cornell.

The build uses a pair of Raspberry Pi Pico microcontrollers, communicating over HC-05 Bluetooth modules. One Pico acts as a controller akin to a Wiimote, while the other runs a basic game and displays it on a screen via VGA output. The controller senses motion thanks to a MPU6050 inertial measurement unit, combining both gyros and accelerometers in all three axes.

The duo demonstrate the hardware by using it as a pointer to play a simple Tic-Tac-Toe game. It’s in no way going to light up the Steam charts, but the project page does go into plenty of useful detail on how everything was implemented. If you want to create your own motion gaming controller, you could do worse than reading up on their work.

We’ve seen some other great examples of motion controls put to good use, like this VR bowling game. Video after the break.

Continue reading “Wii-Inspired Controller Built Using Raspberry Pi Pico”

A red circuit board with four wires running from an IMU to a Pi Pico W. This is all attached to a clear plastic baton.

An Electronic Orchestra Baton

The conductor of an orchestra may look unassuming on the street, but once they step onto their podium, they are all powerful. If you’ve ever wanted to go mad with power in the comfort of your own home, try this electronic orchestra baton by [Larry Lu] and [Kathryn Zhang].

The wireless baton “peripheral” part of the system uses a Pico W and an IMU to detect the speed of conducting a 4/4 measure. That information is then transmitted to the “central” Pico W access point which plays a .wav at the speed corresponding to the conductor’s specified beats per minute (BPM). Setting the baton down will pause the visualizer and audio playback.

The “central” Pico W uses direct memory access (DMA) and SPI communication to control the audio output and VGA visualization. Since most .wav files have a sample rate of 44.1 kHz, this gave the students a reference to increase or decrease the DMA audio channel timer to control the playback.

Want some more musical hacks? Checkout this auto-glockenspiel or how the original iPod was hacked.

Continue reading “An Electronic Orchestra Baton”

Raspberry Pi Pico Becomes Emotionally-Aware Music Visualizer

Back in the late 1990s and early 2000s, the nascent world of digital music was incredibly exciting. We all cultivated huge MP3 collections and spent hours staring at the best visualizers Winamp and Windows Media Player had to offer. [Rafael] and [Eric] decided to bring back those glory days with their music visualizer that runs on the Raspberry Pi Pico.

The design is quite interesting, going beyond the usual simplistic display of waveforms and spectrograms. Instead, the Pi Pico uses a Fast Fourier Transform analysis to determine the frequencies of the music, ideally then to determine the key, and thus the mood, of the tune.  Then, the visualizer uses different colors to represent those moods, such as green for happy music in a major key, or deeper blues for a sad piece in a minor key. The output of the visualizer is via Bruce Land’s 8-bit color VGA library, which allows the Pi Pico to drive a monitor directly.

Whether the visualizer really gets the music is up for debate.  The visuals simply don’t look sad and depressing enough when listening to Hallelujah, but maybe that’s just the lack of Jeff Buckley’s vocals in the instrumental. Furthermore, getting an FFT analysis to pull out reliable musical information from an audio recording is finicky to say the least. In any case, the blocky and colorful animations are nice to watch nonetheless. They’d make an excellent basis for visuals at your next underground chiptune show, that much is for certain. Video after the break.

Continue reading “Raspberry Pi Pico Becomes Emotionally-Aware Music Visualizer”

Sound-Reactive Light Saber Flips Allegiance Via Vowel Sounds

Students [Berk Gokmen] and [Justin Green] developed an RP2040-based LED-illuminated lightsaber as a final project with a bit of a twist. It has two unusual sound-reactive modes: disco mode, and vowel detection mode.

Switching allegiances (or saber color, at least) is only a sound away.

Disco mode alters the color of the saber dynamically in response to incoming sounds. Color and brightness are altered in response to incoming frequencies picked up by the on-board microphone, making a dynamic light show that responds particularly well to music.

The second mode is vowel detection, and changes the lightsaber’s color depending on spoken sounds. The “ee” sound makes the saber red, and the “ah” sound turns it blue. This method requires a lot of processing and filtering, and in the end it works, but is quite dependent on individual speakers for calibration.

The sound functionality centers around FFTs (Fast Fourier Transforms) which are fundamental to processing signals like audio in a meaningful way, and is a method accessible to embedded devices like microcontrollers with ADCs.

The lightsaber is battery-powered and wireless, and there are loads of details about the finer points of the design (including challenges and tradeoffs) on the project page, and the source code is available on GitHub. A video demonstration and walkthrough is embedded below.

Continue reading “Sound-Reactive Light Saber Flips Allegiance Via Vowel Sounds”

CoreXY On The Pi Pico

There are enough off-the-shelf CoreXY mechanisms out there that for the cost of an AliExpress order it’s possible to quickly and cheaply make yourself a plotter. But [Koushani Das], [Mahathi Andavolu] and [Dengyu Tu] are completing their project for Cornell University’s ECE 5730 course, so of course they have designed one from the ground up. Happily for us it seems to be fairly easy to replicate, so you can build one too if it takes your fancy.

The write-up makes for an interesting dive into the nitty-gritty of design, for which we hope they managed to secure a decent grade. The hardware itself seems pretty straightforward as does the pair of stepper controllers and RP2040 they use to run the thing, and their explanation of the math behind the CoreXY coordinate system is genuinely interesting for those of us who’ve never taken the time to consider it.

All the good stuff can be found in a GitHub repository if you’d like to take this further, and meanwhile they’ve also put up a demo video which you can see below the break. We like this little plotter, and we hope others will take its design and run with it.

Want more CoreXY explanation? We’re happy to oblige.

Continue reading “CoreXY On The Pi Pico”