Posts with «hardware-hacking» label

Cheap stereo line out I2S DAC for CircuitPython / Arduino synths

I am a big fan of these PCM5102A I2S DAC boards (3 for $15! affilliate) for playing around with audio synthesis, for example in this video about new `synthio` CircuitPython library or this repository about Mozzi Arduino synthesis. They have pretty high-quality audio output up to at least 16-bit @ 44.1kHz and separate out all …

Continue reading "Cheap stereo line out I2S DAC for CircuitPython / Arduino synths"

Todbot 16 May 22:41

Speed up CircuitPython LED animations 10x!

In many LED animations, you need to apply an operation to all LEDs as fast as possible. Often this is “fadeToBlackBy”, i.e. “dim all LEDs by some amount”. There are some common effects that you can easily get back using that and one other action. For example: the Cylon effect is “Turn an LED on, [...]

CircuitPython in 2022

CircuitPython is an amazing microcontroller programming platform, running on many different chips and boards while providing a consistent API. I’m pretty experienced with embedded development and Arduino, but have little Python knowledge. So for the last few years I’ve been using CircuitPython to teach myself Python. The results I’ve been logging via my QTPy Tricks [...]
Todbot 29 Jan 05:52

More Mozzi Experiments

Over on github, I’ve been extending my experiments with the Arduino Mozzi synth library. Mostly I’ve been focussing on SAMD21 chips (QT Py M0, Trinket M0) and the RP2040 chip (QT Py RP2040, KB2040, etc) because SAMD21 support is in the official Mozzi repo and there’s a RP2040 Mozzi port. The SAMD21 has a built-in [...]
Todbot 28 Jan 23:00

Mozzi Arduino synth lib on Oskitone Scout

Mozzi is an audio synthesis library for Arduino that can do multi-oscillator synthesis with filters and modulation on even an Arduino Uno. Oskitone Scout is an adorable tiny keyboard kit, based on an Arduino Uno and entirely open source. I’ve been playing with Mozzi recently after first hearing about it many years ago. The Scout seems like [...]
Todbot 27 Dec 06:53

Two-Wire NeoPixel WS2812 LEDs

Neopixel LEDs with only two wires?! Just data & ground? What kind of magic is this? This is my take on this hack that Parallax Propeller forum user “Tubular” posted about in 2014 (!) The trick is that the data line is carrying power, and a capacitor and Schottky diode are on the strip to [...]
Todbot 19 Nov 19:46

QTPy-knob: Simple USB knob w/ CircuitPython

I like minimal solutions to problems. I was playing with a CircuitPython-enabled QT Py on a breadboard with and a rotary encoder and I ended up making a USB knob, like many others have done before. But I realized: waitaminute, I can literally just plug the encoder directly onto the QT Py… Thus was born [...]
Todbot 26 Feb 01:10
hardware-hacking  hid  knob  neopixel  qtpy  usb  

DIY Neopixel / WS2812 Development Kit

If you are like me, you play around with Neopixel / WS2812-style LEDs a lot. Normally I solder my own custom-connectors and don’t use the ones that come with the reels I buy. But since we’ve been playing around with WS2812-compatible Xmas lights, I decided to make a “Neopixel Dev Kit” for easier experimenting with [...]
Todbot 08 Jan 21:09

WS2812-compatible “fairy light” LEDs that know their address

I’ve not done much on our plotter Xmas tree this week because, well… if you follow me on Twitter, it’s likely you’ve seen me ramble on about these crazy new Christmas Tree lights we got for our tree (first tree ever!). They appeared to maybe be WS2812 / Neopixel compatible and yup, they were! But [...]
Todbot 01 Jan 21:49

More Spoooky CircuitPython Circuits

Here’s two more “Spoooky CircuitPython Circuits” using the QT Py board and purposefully small programs, part of my QT Py Tricks series. Go there for the source code. The first circuit is a pair of OLED displays arranged like eyes. Behind a mask it looks really good! The second circuit is the old trick of [...]
Todbot 16 Oct 21:52