2023 Hackaday Supercon Badge: Welcome To The Vectorscope

This year, the Supercon badge goes analog! (Or at least fakes it pretty convincingly.) Taking inspiration from the phosphor scopes of yesteryear, the 2023 Vectorscope badge is part analog audio playground, part art project, and all about prototyping. Who doesn’t like the warm glow and lovely green fade of an old Tektronix tube scope? That’s what we’re after.

Conceptually, the badge is two separate devices in one. Most obvious is the vectorscope, which takes in voltages in the 0 V – 3 V range and plots them out in X-Y mode in glorious fake-phosphor effect on the lovely round IPS screen. We’ve also tied an audio amplifier to the Y input that plays whatever waveform you’re watching.

But you don’t have to bring your own waveforms with you – the other half of the badge is an arbitrary programmable waveform generator that drives two channels. Off the bat, it’s configurable with the front panel controls, so you’re obviously invited to make Lissajous figures and store them in the program memories.

Combining the two halves lets you draw in voltages and time, but not until you connect them together, naturally. You see, this isn’t an analog simulation – it’s the programmable equivalent of the real deal, courtesy of the AK4619 ADC/DAC. Voltages go out on one set of pins and come back in on the other.

And you get to play around with these voltages in through-hole space too, because we’ve included a very generous prototyping board for your analog explorations. Does this instantly suggest a curve tracer to you? Be our guest! Other forms of analog video-mangling? We want to see what you come up with. Make an audio filter and watch it work on the screen in front of your very eyes.

Of course we’re not leaving you code monkeys out in the cold. MicroPython puts the “programming” in the programmable waveform generator. If you’re not content with the four stock waveforms, you’re invited to write your own. And this is where it gets artsy.

You can upload your own repetitive waveforms to the onboard direct digital synth routine, but why stop there? We’ve left most of the processing power of the underlying RP2040 untouched, for you to use. And four buttons on the front panel let you store and play back your code, so you have space to stash your demos, and a sweet joystick with a custom keycap gives you control.

Inspiration

What can you do with a vectorscope, a joystick, and two times 125 MHz of processing power to drive the beam? Asteroids and Lunar Lander were written with less! On the other end of the complexity spectrum, we’ve included a convenient system tick for writing parametric functions of time. Honestly, floating point math and trigonometric functions are a little slow on the RP2040, but we’re sure you’ll be coding curves in no time. We’d really like to see a Fourier series expansion of the Jolly Wrencher, but that might light the CPU on fire.

Have you seen [Jerrobeam Fenderson]’s exquisite oscilloscope music? That’s the reason that there an audio amplifier on the scope’s Y channel. Or go for [Japhy Riddle]’s comedy version.

And what is a roundup of vector display art without mentioning the vast world of laser shows? We’re sure there has to be a lot of dynamic vector art out there in ILDA format. Anyone know of any good sources?

On the hardware side, we’d like to remind you that echoes, reverb, distortion pedals, and all sorts of sound effects are pretty neat when applied to video signals. Or skip the waveform generator altogether and bring your own oscillators! As long as you keep the voltages in the 0 V – 3 V range, you can do whatever you want. All those synth DIY circuits rattling around in your skull? Time to make them real.

What else is good to do with a vector display? Sound off in the comments and/or start your research now.

Under the Hood

We’d been thinking of doing something analog this year, because we’ve been heavily digital with the 2019 FPGA badge and last year’s virtual retrocomputer. [Sebastian Holzapfel]’s Eurorack FPGA frontend showed us how to abuse the AK4619 ADC/DAC chip for DC voltage purposes, and our path was clearer still. Finally, [Schneider] showed us the prototypes for the flow3r badge for this summer’s Chaos Camp in Berlin, and we needed to make a vintage round-screen scope.

All of the heavy lifting is done behind the scenes using the RP2040’s programmable IO (PIO) blocks and the DMA subsystem. We’ll give a badge talk where we dive into detail once the dust on the code has settled, but the short version is that these funny little machines are chained together to pull in 120,000 bytes per second from the ADCs, trim them down, convert from uint to int, and store them temporarily in memory.

Meanwhile, another DMA takes the sample data, formats it up into pixel commands for the LCD screen, and pushes it out using another custom PIO routine. A timer-driven interrupt also fires off occasionally to feed the DAC and make the voltages. And all of this with essentially 0% CPU usage.

MicroPython is an interesting companion to this kind of system. It provides a live console, a convenient programming language, and all of the niceties you’d expect from a higher-level language. And since most of the grunt work is done on the chip’s hardware, it’s just fine that it’s not quite as fast as a compiled language.

Start Your Engines

What do you want to do with the badge? If you want to make some nice vector art, and you’re already a bit comfortable with Python, then gather up some cool conceptual ideas, and you’re all set! If you’re tempted to play around on the analog side of life, start breadboarding up your distortion or delay circuits now. The expansion board be waiting for you.

If you’ve never worked with MicroPython before, we heartily recommend Thonny for a simple IDE. Just select “Pi Pico” in Tools..Options..Interpreter, plug in a USB cable, and you’re off and running. For transferring files and/or using your own editor in conjunction with the MicroPython system, we use mpremote, which gives you a terminal, lets you mount and copy files to the Pico’s filesystem, and basically makes working on the microcontroller super pleasant.

If you think you want to design some custom hardware to go along with the badge, the signal generator and scope outputs and inputs are nine pins wide at 0.1” spacing. The extra pins broken out in through-holes? We’ll have wire and soldering irons.

With two weeks to go until Supercon, the speakers are all lined up, the catering is ordered, and the tickets are all sold out. (But hop on the waiting list if you’re interested, because someone always cancels.) See you all soon!

PS: The custom-made joystick caps will probably be black by the time you get them, the code might even be finished, and we’ve already taken care of those bodge wires.

48 thoughts on “2023 Hackaday Supercon Badge: Welcome To The Vectorscope

  1. Cool Badge. Seriously, interesting concept.

    Finally we know what you meant when writing: “I’m working on a top-secret project,…” in the july article
    https://hackaday.com/2023/07/08/99-partspriation/ I always wondered if this was a bout a badge project that maybe someday would be presented in some way here on hackaday, today we know. Unless you have another secret project, but then again, you wouldn’t tell us here and now I guess, that would spoil the secret.

        1. Add me to the list. This badge would be a blast to tinker with. It would be great if we could download some of the workshops that take advantage of this sweet piece of tech. It would be a lot of fun.

    1. You absolutely have to wait two weeks! And if we can’t get the firmware in shape, you can wait three weeks. :)

      Seriously, the hardware is well under way, but the software is still a work in progress. Good thing these things flash fast.

      The pretty stuff about the design is on Voja Antonic, BTW.

  2. I would love to buy one (or several) of these beauties. Would be a nice prize to give to the best student project winners of my electronics lab class! Please how can one buy these?

  3. “Honestly, floating point math and trigonometric functions are a little slow on the RP2040…”

    No joke, especially when you program in somrthing as slow as MicroPython on a micro-controller. Pleeeze – graduate beyond the SK (Skrip-Kiddy) phase of evolution!

      1. Fundamentally, I agree. But I’m sure somebody’s going to do something cool enough with fixed-point and the native 32 bits.

        Hell, if it was good enough for the DX7…

        The filter you can build in hardware like nature intended. :) PWM on a free digital pin for voltage control?

    1. The whole point of the badge, however, is to enable the most people to do as much with it, and have as much fun, as possible. Leet posturing and name-calling based on the language used is not welcome in that context.

      Besides, your argument is specious. It’s easy enough to add your own C modules in to micropython. Hell, you can even toss in inline Thumb assembly in critical sections.

      You wouldn’t do neural net training in pure Python either, yet the Python/C/Fortran blend is what powers all of them in the real world.

      It’s really the chip’s lack of native floating point that’s the issue, and that was a hardware choice. I wasn’t worrying so much about the floats at the time. In retrospect, maybe an ESP32 would have been a better fit? But I’m not de-soldering all 550 badges at this point.

  4. The badge looks a little bit like the Pocket Operator drum machine slash synthetiser. I think Eliot mentioned he likes synthetisers, so I’m surprised this option has not been mentioned even on the podcast. The badge has enough of buttons to make weird and wonderful sounds and the add-on board could host even more buttons to make a keyboard-like synth instrument. Possibly link few of the badges together to make a small musical band.

  5. I will add my voice to all those clamoring for this badge to be made available for people who *aren’t* going to Supercon.

    Hackaday has a global audience, most of whom can’t (or won’t – think of the carbon footprint!) just jump on a plane and fly to whatever country Supercon is in this year. And Supercon is sold out for 2023 anyway, so even if you live next door you can’t go.

    Given that Hackaday actively encourages their readers to sell electronics on Tindie, I respectfully submit that Hackaday should do the same, and make these badges available for mail order.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.