Lately I'm really enamored of these RV112-FF dual 360-degree potentiometers from Taiwan Alpha. Really they are analog rotary encoders; they give a really precise and subtle finger interface to digital instruments. Most rotary encoders this precise cost a lot more and are big complicated weird components. These look just like normal pots, and they almost are. Each unit has two separate potentiometers arranged 180 degrees apart. By combining A/D readings from those two pots with a bit of trigonometry, you can calculate the absolute angle of the shaft around a complete rotation. (If you hate trig, don't worry; my AI intern Claude has just written a nice Arduino library for reading the RV112-FF.) Just like a standard rotary encoder -- but unlike a standard potentiometer -- you can spin the RV112-FF around and around forever. No matter where you twist it, the reading is reported as an absolute floating-point angle from 0 to 360 degrees.
To show off these nifty knobs I made TWEACMAN, a two knob pocket-sized sample scrubbing toy. Like an old-school reel-to-reel tape deck TWEACMAN plays WAV files from a SD card speeds from 0.001x to 1000x, forward or backward, or you can twist a knob to scrub your recording back and forth across a virtual play head. There's a few other audio tricks available as well, and a handy Bluetooth interface you can use from your phone.
I built this project around SparkFun's ThingPlus RA6M5 board, which features a Renesas RA6M5 MCU. In 2026 we've got a crazy number of options for miniature ARM-based dev boards! The Think Plus RA6M5 has a handy feature set for the kinds of musical toys I like to make: the board exposes six of the RA6M5's 12-bit A/D converters, with which I can read up to three RV112-FF knobs. (An ESP32 can only read one RV112-FF with its two A/D channels.) The RA6M5 also has two 12-bit D/A converters with their own integrated output amplifiers; together they make a respectable medium-fi stereo audio output. It's also got an onboard capacitive touch controller, with two touch pins exposed on this board so I can give my circuit board two buttons without extra parts. There's a FPU so I can do all my audio work in floating-point with no performance penalty. And there's another Renesas chip on this Thing Plus board, THE BLE ONE WHATS IT CALLED, with which I can serve up a more sophisticated wireless interface. The board also includes a complete battery management system so my device can be powered by a single 3.7v LiPo cell, rechargable by a standard USB cable.
Renesas provides a complete development kit for the RA6M5, but I often prefer the Arduino environment for my MCU projects because of its vast set of open-source libraries and its great online community. SparkFun provides a port of the official Arduino Renesas core that adds support for this particular board. All my code from this project is open-source and Arduino-compatible.
But the truth is, I can't really call this "my" code because my AI intern Claude did all the heavy lifting. I mainly wrote specs, reviewed Claude's work, made the major decisions and did QA. Working this way is a profound change from how I've developed technology for most of my life. It's both humbling and empowering. Claude and I are doing work in days that used to take me months to complete by myself. It's a rush!
Mykle