back
94 comments
TB-303 owner here. If my TB-303 sounded this bad I'd set fire to it ;-)

Really this is just an implementation of a basic oscillator, filter and envelope. No harm in that all and it's more than I could manage - it's fun and nice, but it's nothing like a 303. "Building an acid synth" would be fairer.

The accent and glide are core components of the sound, as is the really quite unique sequencer control - from the strange bendy growls to the classic acid bark the accent brings out. Would have been nice to see a deeper dive into why that is and why it's different from implementing a normal portamento-style glide as many other synths do, like the SH-101 - which cannot sound that close to a 303 due to that glide. Well it's also got a different oscillator and filter, with no accent either, but I don't want that to ruin the story ;-)

My project over the last week was to get the robots to train a neural net to learn the "303 thing", hasn't gone well at all.

The first one sounded like it was being played on a blown out speaker after it got run over and the second attempt sounded like it was going through a $20 pawn shop guitar pedal that got left in the rain which lead to the 'oh, you wanted the neural net to learn the 303's filter section? My bad, I just made some random stuff up as an approximation...'

The worse part is there's still compute credits left over from the initial ten bucks so we just have to try again...

> TB-303 owner here. If my TB-303 sounded this bad I'd set fire to it ;-)

Fellow TB-303 owner here. I concur.

they should have referenced Rebirth - that one was spot on (i never owned a 303 though, just got access to one occasionally)
What do you think about mine implementation? https://drumpatterns.onether.com/drumkit/roland-tb-303/
I'd love to see a deep dive into the 303 CPU and their replicas like https://www.sonic-potions.com/re303 and https://socialentropy.com/pages/product_qs303

sonic potions has an analysis of the cpu timings here https://sonic-potions.com/Documentation/Analysis_of_the_D650...

Theres also some nice articles about the diode ladder filter in the 303, similar to the one in the vcs3 https://www.timstinchcombe.co.uk/index.php?pge=diode2

There was a lot of work done on the RE_303 and the Pixie CPU (303/606) - I don't know much about it but it might give you another more recent vector to explore: https://github.com/sunflowr/recpu?tab=readme-ov-file

(I built one and as far as I know the Pixie CPU was the 303 code + MIDI)

I remember playing with Rebirth in the late '90s and then actually finding a real, TB-303, albeit with a bunch of drawn on crap. But it was very functional. Keeping it in a box for my daughter. She will either think it's cool or sell it after I'm gone. If she sells it, hopefully she gets some decent coin.

I'm kinda tempted to give it to my neighbor's son though. He knows about all this stuff and loves it. He'd appreciate it more. He’d also love my Roland D-50. He also comes by the garage to help out with stuff. Like the son I never had.

My daughter, though, does not appreciate this tech stuff whatsoever. Calls my gear room the ‘junk room’ .

Maybe he could borrow the D-50 to start! I wish someone had introduced me to hardware synths when I was younger; it took me years to find my way with no guidance.
The web programmer is a handy thing for the D-50

https://data.dynareg.se/breadandbutter/D05.html

You could always invite him over to check it out, just to see how he reacts to it, and if he's interested more in the tech aspect or the music aspect. Due to the increased rarity of the device, you'd probably want to find out if he would actually use the device, or try taking it apart to see how it works. I'm not sure how old your daughter is, but you could try asking her if she would be upset if you allowed the neighbor to play with the device, just to avoid any ill feelings.

It sounds like you've got some great options either way. I wish I had a neighbor growing up that had cool music gear (although I did get to grow up with a dad that got me into computers before I could read, so that definitely built my love for technology). Sounds like you're the kind of dad more kids these days need in their lives.

The TB-303 of reference to me is still Jeskola TB-303 :)

Back in my day of the demoscene and Buzz...

demo. https://www.youtube.com/watch?v=n2kl-CW9snU

Jeskola Buzz has a pretty interesting back story:

>The development of the core program, buzz.exe, was halted on October 5, 2000, when the developer lost the source code to the program. It was announced in June 2008 that development would begin again, eventually regaining much of the functionality.

The plugin in that demo isn't by Jeskola, it's by HD (Haldreamer) who I believe is a Russian audio developer who made some nice Buzz plugins in the early 2000's. Source: I have it installed and I just checked the "about" box.
What a blast from the past! Thanks for that. I remember Jeskola Buzz. It was a big part of my teenage years. The ethos of building things on top of an old, clunky, but otherwise amazing platform. People really created some amazing synthesizers for it.
This brings back memories. Buzz is how I got my start. And I've been producing electronic music as a hobbyist ever since.
My first real soldering project (aside from just making cables) was a x0xb0x TB-303 clone. I somehow built it with a $10 radioshack iron and nail-clippers as flush cutters in an un-air conditioned Boston studio apartment over a summer. Probably not the first deep electronics project, but somehow it worked!
How much are you building 'from Scratch' when your language has primitives like diodeLadder(). :)

I'm just joshing - it's very cool!

In his defense, he built the entire language :-)
Once you hear analog perfect imperfection, it is hard to go back to emulators.

No words can describe the feeling of original Yamaha cs-80.

It is very unfortunate as there is no true alternative to a 80kg, age issues ridden, ultra expensive antique device.

Well, Deckards Dream comes pretty close to attaining a modern analog manifestation of the CS80 ideal:

https://black-corporation.com/shop/

And, well, its a lot more feasible to gig with, by comparison.

my high school had a cs-70 and it poisoned me for life. that being said, theres a pretty big leap in terms of accessibility vs a browser based synth and you dont need $10,000 to play it so that's nice
I think “simulate” would’ve been a more accurate word than “build”.
I also expected hardware to be involved. But in the context of a list of tutorials on how to use this live coding tool the title makes sense though.
They miss out how not-square the "square wave" is for a start. Its pulsewidth varies wildly across the compass.
I built one for 303 Day! https://tnn1t1s.github.io/day-303/303.html ... comparing notes.
this is awesome, thank you for sharing!
"...in software" should have been appended to the title.

Back in the day, I was quite heavy into the x0xb0x. (https://www.ladyada.net/make/x0xb0x/) It's an open hardware 303 clone by Ladyada and was designed to use as many of the original 303 components as possible. According to those who own both, the sounds are essentially identical. (But the x0x is much easier to use.)

Somewhere in 2006, I was too late the to party to snag one of the original kits, but a little cottage industry formed on the x0xb0x forums to support the community of people who wanted to build and mod their own. Adafruit provided the PCBs, the common components came from DigiKey and Mouser, the rarer components from eBay or other forum members.

I ended up buying enough components to build six, but only ended up building three. The first one I kept, the other two I sold. I recouped my cost with those so I also ended up selling the rest of the components later as my interest in building them waned. I should have held onto those and built the rest with my kids when they got older, since even the replacement components are hard to come by these days and they are still a fun project to build.

It’s a nice demonstration of this software but it really sounds very little like a 303
The fun thing was the Roland Sync. You could sync up all the TB-303, TB-909 and all the others with a 5-pole DIN cable. The sync was badly implemented. It lagged, it had latency.

However!

As soon as you cabled all together their imperfections added up and they started to groove like nothing that has been heard before.

I was expecting a hardware project, not software. I don't have a real TB-303, just the Behringer clone, and it'd be fun to build something from scratch that sounds similar.

That aside, I've been wanting to play with this kind of music making via code, this is a useful write-up.

It's interesting I briefly thought about getting into "live coding" or Strudel (or Sonic Pi), this kind of thing where you write code to produce music

But as a non-music person and developer I'd rather use an interface like Ableton where you see separate tracks/times line up kind of thing... but aside from that I ended up just getting a music subscription service that you can use in your YT videos which is what I was after.

Everything is a time sink it seems, gotta choose where you put your time into if 40 hrs of your life is taken up by day job already.

This is cool, but I would personally find an og iMac and install rebirth.
The UI for loopmaster looks really good. The color scheme is really pleasing to look at and it is easy to jump right in and start editing stuff.

I've owned a bunch of different synthesizers and used a bunch of DAWs over the years and it was clear to me where I needed to make my edits to affect the signal chain.

We do real-time client-side audio processing in Emurse, and there were definitely a bunch of challenges to overcome there, so it would be interesting to hear more about what went into building the tool.

303 heads won't be fooled for a second, but it sounds quite cool regardless.

edit: This is, without a doubt, the best soft-synth emulation I know of these days and it's a hell of a lot of fun: https://apps.apple.com/gb/app/pure-acid/id1481283602

Sounds like a softsynth.

Without having the source to the WASM diodeLadder(), the following is just a guess: they implemented it exactly like every other "Diode Ladder" on GitHub, rather than a true SPICE simulation. Some evidence for that: the CPU usage would explode.

A couple of months ago i did my own TB-303 implementation - https://drumpatterns.onether.com/drumkit/roland-tb-303/
Even though I'm not that familiar with the synth world, I always found it a really interesting field. Websites like this that helps me exploring and learning are amazing :)
Not an accurate 303 emulation but definitely a good acid line :)
I can't get over how cool the UI is for playing back the examples. The more complex ones are wild to watch loop.
I don't know what this website is made off but not being able to use pgup/pgdown to move around is super annoying.
It warms my heart to see the 303 getting a renaissance
"If you've ever heard the word "acid" in a song, it's probably a reference to the sound of the TB-303"

Ummmm, what? If you've heard the word "acid" in a song, it was definitely not a reference to the 303 and definitely the other use of "acid" like its use on the dancefloor. If you've heard someone describe a song as "acid", maybe it could be a reference to the 303.

sounds nothing like a tb-303
well by building 303, I would really expect building, something this guy do[1], not just simply using a filter in some shitty web app.

[1]https://www.youtube.com/@MoritzKlein0/