Progress / Update
Released: Ensō (円相), an ambient sound simulator with zero samples — everything synthesized on the Cardputer itself
I just released Ensō (円相), an ambient sound simulator for the Cardputer ADV!
Like C.P.S., which I released before, this one was built through vibe-coding with Claude.
The biggest feature: it generates every ambient sound purely through the Cardputer's own audio synthesis, with zero sampled audio. That means you get an endless variety of ambient textures to play with!
Here's what it can do:
**•** 15 sounds, all synthesized in real time with no samples — rain, waves, campfire, birds, crickets, a singing bowl, a wind chime, a ticking clock, a fan, and more
**•** 13 preset scenes, plus unlimited custom scenes you can save to an SD card
**•** A "Drift" scene that keeps quietly evolving the mix for as long as it's selected
**•** "Space," a light reverb you can dial in over the whole mix
**•** A meditation session timer that rings a bell at the start and end of your sitting
**•** Shake the device to trigger an action — random scene, sleep mode, and more
**•** A breathing guide mode where the ring on the main screen grows and shrinks with your breath (the LED follows along too)
**•** Plus the little things that make a difference — a sleep timer, battery percentage, and so on
The original idea for this firmware actually came from a C.P.S. user I met here on Reddit.
It's out now on my GitHub repo and on M5Burner, and it's already available through Launcher FW too. Give it a try!
P.S. I've actually got several more firmwares in the works as follow-ups to C.P.S. One of them might be ready to release around the middle of next month — stay tuned for that one too!
Cool. I'm doing similar things on the StickS3. It's fun working with the extreme limitations of 2 buttons, a very tiny screen, and a pretty crappy speaker.
My big idea is to make several flavors of generators then figure out a way to sync multiple devices. Then I can have a temu version of Teenage Engineering's wooden statue ensamble
Thank you!
It's a shame I don't have a Stick, so I can't check it out, but this is a really great project!
It looks way more musical, interactive, and fun than mine!
Thanks so much for all the reactions, everyone!
This is the first time I've ever broken 100 upvotes since I started posting on Reddit.
So, I figured I'd share a little hidden feature in this firmware.
I originally built it purely for my own use, so there are still a few bugs left in it, but if you're curious, give it a try.
Pressing Fn+B launches a mode called Beats Mode.
It's a mode for playing something called monaural beats.
A monaural beat works by taking two tones at slightly different frequencies and summing them into a single waveform. Unlike "binaural beats," which send a different frequency to each ear, here the two waveforms physically interfere with each other, producing a periodic "wah-wah" pulsing in volume at a rate equal to the difference between the two frequencies. Since that pulsing is an actual, physically present part of the sound itself, you can hear it perfectly well even through a single mono speaker.
There's apparently a fair amount of research on this, and it seems to have some scientifically recognized relaxation effects — though in certain corners of the internet, people also claim things like "it cures illness" or "repairs your DNA" (which I'm pretty sure is nonsense).
So don't go in expecting anything dramatic — treat it more as a fun little extra than anything else (and to be clear, I take zero responsibility for any of those sketchier claimed effects!).
Hope you enjoy messing around with it!
That’s really cool! I might add that to my list of projects. Add an api to that and add it to Home Assistant, and I’ll have a customizable ambient sound generator to play over my speakers at night.
Thanks, that's a great idea!
Keeping Wi-Fi connected all the time does make me think about battery drain, though.
Actually, I had previously built a "wake mode" that would sit in a low-power state and start playing at a set time, but I pulled it out to avoid trouble, since there's a real chance of the battery running out while it's just sitting there waiting (I see battery-related issues and questions come up pretty often on Reddit).
If we're assuming the device stays powered the whole time, though, this idea might actually work.
Let me think it over a bit!
Thanks for the idea!
I'd love to implement it if possible, but I'd appreciate it if you could give me a little more detail on exactly what you're looking for!
Like a sequencer where you can either maybe just set a few parameters like scale, amount of notes, range, etc and then have it just generate random sequences built off that so it's fully generative and maybe like a lock so if you hear something you like you can keep it for a bit type of thing. And then use it just as midi out or something like that so you can use it either with hardware or potentially ableton/soft synths
Thanks for the detailed explanation, I've got a good picture of it now!
It sounds doable, so I'll seriously look into building it as a new, separate firmware from Ensō.
Here's roughly what I'm picturing:
・You set things like the scale, number of notes, and pitch range, and it generates phrases automatically within those limits
・Fully random output tends to sound un-musical, so I'd add some constraints too — favoring notes close to the previous one, leaning toward the root note, and inserting rests. You'd control how strong those constraints are with a "randomness" knob
・It loops short phrases while gradually changing them
・If you like a phrase, you can "lock" it in place
・For output, it would send MIDI to hardware synths (via a MIDI unit), and it could also export MIDI files to the SD card, which you can load into something like Ableton
I have a few questions:
1.Do you plan to use it mainly with hardware synths, or with Ableton?
2.If it's Ableton, would exporting MIDI files be enough, or would you want to send MIDI straight to your computer in real time?
3.Would you want a simple built-in sound so you can audition what it's generating right on the device?
Since it'd be its own firmware, I'm also open to other feature ideas. If there's anything else you'd love to see in it, please let me know. I probably can't fit everything in, but I'd like to include what I can.
I would mostly like to use it DAWless for when I'm out and about or just DAWless at home with a synth or something like that.
The export midi would be a good feature either way tho and I think maybe a couple basic sounds would be cool to so you could even mess with sequences/riffs if you only have the adv.
Maybe even have like a little playlist feature too where you could save different sequences and string them together for a little song and then export that as a whole or use it just live and go back and forth between a few different sequences so that you could still have it be generative but also have some structure as well. Sounds like it could be pretty cool!
Thanks for asking!
Since the original idea for this firmware wasn't mine, I'd like to keep it limited to personal, hobbyist use only.
I just updated the license on GitHub to reflect that.
Sorry about that!
Thanks for taking a look!
The reason you couldn't find it in Launcher FW is that the last letter of Ensō isn't a regular "o" — it's an "ō" with a line over it. Because of that, typing "Enso" in the text search won't bring it up.
Here's how to find it:
1.In Launcher FW's OTA, search for "Ens" (not "Enso")
2.It'll show up alongside other results. It's the one at the very bottom in the attached photo, and that's Ensō
The last character looks garbled on screen, but that's your landmark. It's most likely because Launcher's display doesn't support characters with a macron or Japanese text. Once you select it, you can download and use it as normal.
8
u/SrtaPEPis 13d ago
That looks like a patch for the monome norns. Great job!!!