[HN Gopher] Building a TB-303 from Scratch
___________________________________________________________________
Building a TB-303 from Scratch
Author : stagas
Score : 203 points
Date : 2026-03-07 21:18 UTC (4 days ago)
(HTM) web link (loopmaster.xyz)
(TXT) w3m dump (loopmaster.xyz)
| keyle wrote:
| 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
| lagniappe wrote:
| 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.
| djmips wrote:
| Sounds like a real bad day.
| skrebbel wrote:
| Yeah it was pretty spectacular. The author was a bit
| paranoid, had never shared his sources with anyone or
| backed them up anywhere or version controlled them to a
| remote SVN server or anything like that. And then his hard
| drive failed and Buzz development was over. IIRC there even
| was a community-organized crowdfunding campaign to fund
| some fancy data recovery company to try and revive the hard
| drive so he could get the sources back (not sure if this
| ever turned out happening).
| dylan604 wrote:
| Would someone be able to use any of the modern reversing
| programs on the exe to get something?
| runjake wrote:
| Some of that was done at the time to build the new Buzz.
|
| (I was around at that time and a heavy Buzz user)
| creativeembassy wrote:
| This brings back memories. Buzz is how I got my start. And I've
| been producing electronic music as a hobbyist ever since.
| pierrec wrote:
| 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.
| rollulus wrote:
| I think "simulate" would've been a more accurate word than
| "build".
| tobr wrote:
| 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.
| ErroneousBosh wrote:
| They miss out how not-square the "square wave" is for a start.
| Its pulsewidth varies wildly across the compass.
| stagas wrote:
| I think you're right. We have a `pwm(hz,width)`[0] but I
| didn't try it. Was more focused on the ramp/sawtooth. Can't
| decide which one sounds better.
|
| [0]: https://loopmaster.xyz/docs/generators/pwm
| squigg wrote:
| Always the square for classic acid house - the saw is
| better for more modern (and worse ;-) distorted acid techno
| bandrami wrote:
| It warms my heart to see the 303 getting a renaissance
| hnlmorg wrote:
| I don't recall it ever falling out of fashion.
|
| It's easily the most used and copied sound. Like the Amen Break
| of synths.
| poisonarena wrote:
| its been getting a renaissance since 2006 i think
| hnlmorg wrote:
| I have a huge stack of records that prove it was used heavily
| throughout the 00s. And the 90s too
| Supernaut wrote:
| It's amusing to see comments implying that the TB-303 is
| some kind of neglected classic. In reality, it can only be
| considered to have been forgotten for perhaps the two years
| after Roland ended production in 1984.
|
| "Acid Tracks" came out in 1987 and I genuinely feel like
| I've been reading endlessly about the 303 ever since.
| hdb2 wrote:
| I love seeing so many brilliant creatives throwing their
| talents at the 303 - hardware hackers, software writers, etc.
| wrennes wrote:
| I think the release of the TR-1000 has brought it back around a
| bit. Not that it ever went completely away as was stated
| previously. Side by side, they are an effective combo.
| kennyloginz wrote:
| This is cool, but I would personally find an og iMac and install
| rebirth.
| 1313ed01 wrote:
| The Windows version (a legal, non-cracked, copy, even) runs
| well in QEMU. Pretty sure I managed to get it working in WINE
| as well at some point, but I prefer to have software running in
| QEMU as that tend to be much more install-and-forget rather
| than having to fiddle with settings or/and reinstall stuff
| every time there is an upgrade or I move to new hardware.
| ErroneousBosh wrote:
| OG iMac for the retro coolth of the project, or for ease of
| installation?
|
| Because the Windows version works perfectly under Wine.
| bowsamic wrote:
| It's a nice demonstration of this software but it really sounds
| very little like a 303
| stagas wrote:
| Try tweaking the accent multiplier to .1 from .5 - you can get
| there but it requires a lot of value tweaking. There's no
| singular TB-303 sound, but the components are there.
| torusle wrote:
| 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.
| Applejinx wrote:
| This I don't understand. DINsync is raw trigger outputs/inputs
| like you'd have in a modular synth, in contrast to MIDI that
| has to send serial messages over a 1k data bus.
|
| Perhaps this take has something to do with calling a five-pin
| DIN plug '5-pole'? Something's wrong and backwards here.
|
| Again, I guess this is where we are now? I remember reality,
| but here we are.
| svantana wrote:
| No, this is different from pure CV. Each device has its own
| (digital) sequencer that can synchronize with others using
| pulse trains over DIN cable. Lots of places where latency and
| instability can occur!
|
| https://en.wikipedia.org/wiki/DIN_sync
| windowliker wrote:
| DIN sync is not trigger based, it's a full clock protocol
| invented by Roland that has various different states. The
| fact is that not all DIN sync capable machines implement it
| the correct way, leading to slight differences in
| synchronisation, even between devices made by Roland.
| squigg wrote:
| Owner of all (ALL!!) the classic Roland x0x boxes here, which
| are connected together using DIN Sync - the sync was not badly
| implemented at all - they sync together perfectly.
|
| The sequencers in each of the machines have a bit of nuance,
| which is where that famous groove comes from!
|
| You might be confusing this with the sometimes hilarious midi
| timing of the 909 and 707.
| dylan604 wrote:
| > 5-pole DIN cable. The sync was badly implemented. It lagged,
| it had latency.
|
| Sounds like you are describing MIDI
| cocodill wrote:
| 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/
| sambapa wrote:
| Shitty? Why so harsh? That web app IMO is great, like
| supercollider running in a browser.
|
| At least it isn't some ai slop
| vjekm wrote:
| It's a neat idea but it all sounds like trash.
| efdee wrote:
| The guy built the "shitty web app" (that's actually pretty
| cool, not shitty) from scratch.
| Subdivide8452 wrote:
| While I agree that I'd like to know the more esoteric concepts
| of the 303, you could have worded it differently.
| c-c-c-c-c wrote:
| 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
| bloke_zero wrote:
| 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)
| djmips wrote:
| How much are you building 'from Scratch' when your language has
| primitives like diodeLadder(). :)
|
| I'm just joshing - it's very cool!
| efdee wrote:
| In his defense, he built the entire language :-)
| llm_nerd wrote:
| "If you wish to make an apple pie from scratch, you must
| first invent the universe" - Sagan
| prmoustache wrote:
| I don't know what this website is made off but not being able to
| use pgup/pgdown to move around is super annoying.
| stagas wrote:
| What's your OS/browser? On Chrome/Linux it works fine. If
| you're focused on an editor it can capture the page keys so you
| have to click outside first.
| drcongo wrote:
| 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
| Applejinx wrote:
| Confirmed. I wondered if it was a hardware hacker, as I've
| built a couple x0xb0xes from kits, but it was not. I guess this
| is where we are? I mean, 'we' that doesn't include me, 'cos I
| have x0xes and can do stuff with them.
|
| As a reference for what 303s are actually like, early
| Plastikman acid/minimal tracks often have really intense 303
| elements. The filter's characteristic and can have enormous
| resonance and sonority, but the ability to combine that with
| accents and produce wild dynamic effects is something you don't
| find in other synths.
| drcongo wrote:
| I've got 3 hardware versions in my studio - ranked from best
| to worst for emulation: a T-8, a TD-3, and a TB-3. The TB-3
| is rubbish, the T-8 is excellent, but I still most often
| reach for Pure Acid - it seems to have that variability in
| the filter that a real 303 has.
| Applejinx wrote:
| Yeah, the Aira is clearly a softsynth. What makes a 303
| distinct (and this is to some extent mirrored by a x0x) is
| the brutal simplicity of the circuit. These things are very
| very primitive and there are sonic qualities gained by the
| lack of complication. Here's a video of parallel 303 and
| x0x, both of which are from an era where circuitry was
| through-hole components on a larger scale than we do
| currently. https://www.youtube.com/watch?v=wkJk_BpqHzQ
|
| There's also a modern version called x0xheart which is more
| SMD components, and it has yet another sound: sort of more
| surgical and pristine than the older through-hole builds,
| but still distinctly NOT a softsynth. This is a x0xheart:
| https://www.youtube.com/watch?v=lgBa2d7gsPo
|
| Hardware hackers who like acid music are heartily
| encouraged to explore this sort of thing! If nothing else,
| the modding scene around 303s is great fun :)
| tnn1t1s wrote:
| I built one for 303 Day!
| https://tnn1t1s.github.io/day-303/303.html ... comparing notes.
| hdb2 wrote:
| this is awesome, thank you for sharing!
| tnn1t1s wrote:
| thanks - it was really fun to build. I (well claude and I)
| focused on being very accurate.
| https://tnn1t1s.github.io/day-303/about.html
| juleiie wrote:
| 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.
| aa-jv wrote:
| 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.
| juleiie wrote:
| It sounds different but it is great in its own right and
| priced adequately to how amazing it sounds. Maybe
| 'alternative' is a wrong word. I think I meant 1:1 replica.
|
| Also it doesn't come with ring modulator nor ribbon. I think
| black corp synthesizers are inspired by the original vintage
| devices and are great on their own but there are justified
| reasons to also avoid them mostly because of common issues
| that arise when you buy a niche product from a tiny company
| thousands of kilometers away.
| aa-jv wrote:
| >common issues that arise when you buy a niche product from
| a tiny company thousands of kilometers away.
|
| Sorry, this is just negative - but anyway, have you played
| with both?
|
| I have. There are differences but they are minor and you
| can very definitely accomplish an approximation of the CS80
| 'sound' with the DD. It sold out for a reason.
|
| Either way though, if you have an opportunity to have a
| real CS80 in the studio, as I do, you are very right in
| saying that it is an amazing beast.
| bxguff wrote:
| 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
| emursebrian wrote:
| 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.
| stagas wrote:
| Thank you!
|
| Challenging would be an understatement. Had to create an editor
| from scratch in canvas to support the inline visuals, then a
| DSL that generates the code for each permutation of audio and
| scalar parameters, then the language itself which is Turing
| complete and controls the whole thing in a VM, choosing the
| optimal permutation for each case, and all the
| edits/recompilation be done in few ms to not distrupt the
| experience, all across a thread (the WebAudio AudioWorklet).
| The audio engine is in WebAssembly as it was the only way to
| get the performance needed. You can check out the code[0], the
| project is open-source!
|
| [0]: https://github.com/loopmaster-xyz
| squigg wrote:
| 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 ;-)
| UncleEntity wrote:
| 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...
| louthy wrote:
| > TB-303 owner here. If my TB-303 sounded this bad I'd set fire
| to it ;-)
|
| Fellow TB-303 owner here. I concur.
| goatforce5 wrote:
| I, too, have a TB-303.
|
| It seems like there might be a disproportionate number of 303
| owners here on HN.
| Computer0 wrote:
| me too, and many clones...
| nekooooo wrote:
| they should have referenced Rebirth - that one was spot on (i
| never owned a 303 though, just got access to one occasionally)
| wesz wrote:
| What do you think about mine implementation?
| https://drumpatterns.onether.com/drumkit/roland-tb-303/
| Archit3ch wrote:
| 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.
| tibbon wrote:
| 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!
| dylan604 wrote:
| "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.
| hnlmorg wrote:
| That's the same point the author was making. And it's not just
| limited to descriptions. Record labels, track names, genre
| names, sometimes even DJ / artist names have taken their "acid"
| name from the distinctive sound of the TB-303.
|
| Obviously it will depend on the era and scene too. Eg if people
| talk about acid in the 70s Prog Rock scene then it's not going
| to be about a hardware synthesiser built a decade later. But if
| you're talking about dance music, then "acid" refers to 303
| more often than it does the drug.
| angelmm wrote:
| 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 :)
| hluska wrote:
| There's a book by Albert Glinsky about Bob Moog called Switched
| On. If you haven't read it, I highly recommend it. It's
| definitely reverential but does one of the best jobs of
| explaining the dilemma between innovation and business that
| I've read.
| ge96 wrote:
| 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.
| exitb wrote:
| Ultimately I prefer Ableton too, as it's just much more
| polished, but there is merit to music-as-code. Traditional
| DAWs, which are based on traditional instrument interfaces,
| have incredible amount of state, which is so easy to get lost
| in. It's so much easier to learn something new from a code
| snippet, than from a YouTube tutorial which shows a series of
| state changes via clicks and keyboard shortcuts.
| ge96 wrote:
| Yeah I'm not a musician either so even if you give me a great
| tool I'd still probably produce garbage, but yeah good to
| have options
| antonyh wrote:
| 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.
| JodieBenitez wrote:
| Not an accurate 303 emulation but definitely a good acid line :)
| bityard wrote:
| "...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.
| olelele wrote:
| I built a xox as my first real project. Got the kit in person
| from an older man in a nice but simple studio in deep east
| berlin, 2012 or so. Great machine, learned tons.
| thr0waway001 wrote:
| 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' .
| asdhtjkujh wrote:
| 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.
| racl101 wrote:
| Yeah, same here. This stuff is cool. Wish I'd had a mentor.
| progmetaldev wrote:
| 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.
| wesz wrote:
| A couple of months ago i did my own TB-303 implementation -
| https://drumpatterns.onether.com/drumkit/roland-tb-303/
___________________________________________________________________
(page generated 2026-03-11 23:01 UTC)