Thanks again - this was a bit of a surprise!
If I may submit an extremely pedantic music nerd bug report: at 46s in the video demo (https://www.youtube.com/watch?v=qboig3a0YS0&t=46s), the display should read Bb instead of A#, as the key of C minor is written with flats :)
(The precise rule is that a diatonic scale must use each letter name for exactly one note, e.g. you can't have both G and G# in the same key, and you can't skip B. This has many important properties that make music easier to read and reason about, such as allowing written music to specify "all the E's, A's, and B's are flat" once at the start of the piece instead of having to clutter the page with redundant sharps or flats everywhere.)
Regarding flats and sharps: one could ignore the Pythagorean stuff and go full well-tempered dodecaphonic, thinking purely in terms of semitones in the intervals. This toy sort of nudges towards this. It would be fun to add 12 small LEDs along the faders, and show the number of semitones with them, relative to the previous fader's position.
On one hand, the fact that the same sound can be named A# and Bb may be puzzling for a kid (they could differ on a violin, I suppose); OTOH if the kid later learns formal music notation, this becomes helpful, so your comment holds.
I think that, given the toy is (currently) diatonic, and doesn't really have any ability to visualize the chromatic scale (like a piano keyboard does), using the formally correct note names is more intuitive. That way, only the accidentals change when you change modes ("when I change it to C minor, the B becomes a Bb"). This naturally teaches a simple and correct mental model: "the slider chooses a letter and pushing the orange knob makes letters flat or sharp".
If you only ever use sharps instead of sticking to the correct notation, then the notes change inconsistently between different keys ("changing from C major to C minor turns the B into an A#, but changing from C# major to C# minor changes the F into an E"). This is incomprehensible unless you've already memorized the piano keyboard layout.
The OP's choice of restricting to the diatonic scale seems sensible to me -- it helps the kid learn the vocabulary of Western music (if that's your goal!) and it benefits the parents as well by making it hard to create something that sounds bad.
Have you come across soft tooling for injection moulding? It's a lower cost, short run approach using much less durable moulds from various materials.
I didn't know that was a thing - I'm going to look into it.
I’ve got some experience with small batch production and I’ve written an email. Check your spam!
https://www.reddit.com/r/DIY/comments/8g8pce/fiberoptic_star...
> Could be an only child
In which case, odds are that they're also the first child ;)
> or the spouse is stay-at-home
Which is a full-time job in itself
> or the author has family wealth and doesn't need a full time job.
which is far far less likely than the assumption you're rebuttelling
Regarding discovering functionality: The author mentions Montessori stuff, and the philosophy there is unguided discovery, "let them figure out by themselves". Not sure if that's how the author is planning to use this too, though.
For kid-friendly toys, yes. But for older users not necessarily:
Maybe buy one and if it is not for you be ok reselling it at a loss…framing it as renting an instrument helps me.
The Pocket Operators are musical and inexpensive for musical instruments.
Like any musical instrument practice hours are how you get amazing results and whether the instrument gels with you is the biggest influence of whether you put in the hours.
For me, the Pocket Operators haven’t gelled…I just don’t enjoy them enough to put in the time. But other people find them great and I can see why (not-for-me != bad).
I especially like the bardcore one: https://teenage.engineering/products/ep-1320
Edit: Because they don't make it totally clear- whichever one you buy, you can clear all the stock sounds and make any genre of music, regardless of the theming.
https://www.youtube.com/watch?v=TBo8Rd7HxdU <- a friend that creates a lot of music on small "affordable" pieces of gear.
Each one does a pretty limited set of things and combining them can be annoying.
But you get a lot for the money you spend on them.
The strong design opinions about how the Pocket Operators interact with other musical gear are a big part of why I haven’t had high enthusiasm for using the small PO’s when I’ve had small PO’s.
For me, Volca’s are a similar ecosystem but to a lesser extent…maybe because the Monotrons sit lower in Korg’s product portfolio while the PO’s are rock bottom of TE’s product line.
But neither injection molding nor carpentry will protect a synth from a child dunking it in a puddle of water.
One has a silicon case and is nicer to use though.
I am only speaking for myself, but I have a drawer of small musical electronics that I use occasionally. I bought them because I was curious.. I keep them because they are musical and not worth selling.
I don’t use them often because I’m not a great musician. I think they were worth the money, for sure.
The hardware's very cheap and easy. The "default" synthesis is pretty simple but also pretty hackable (in Rust) if you want to customize it.
I did some similar playing around with an ESP32 and I2S a few years ago (lockdowns were an odd time). Where I seem to remember getting stuck was how to get the phase to line up, so that each sample looped at a zero-crossing point (which is different for each frequency).
For the lazy, what did you do?
https://gitlab.com/afandian/melodicornamuse/-/blob/main/melo...
Edit: Ok I glanced at your code, if I read it right it seems like you're writing sin waves into buffers at "init" time then copying the appropriate buffer at "run" time. Which is not what I'd do, but then I'm used to more luxurious devices. Maybe try using a fast sin approximation rather than the precomputed buffer table?
https://bmtechjournal.wordpress.com/2020/05/27/super-fast-qu... might be helpful there.
- the necessary basic electronics;
- PCB design;
- 3D CAD;
- your particular iterative process,
among other things? I get the impression you built things incrementally, observed what happens and learnt via that feedback loop? Maybe others could share their own feedback loops, too.
I therefore focused initially on simply getting readings from a single potentiometer; if I could do that then I felt pretty confident I could read from four of them. If I could generate a midi message I was pretty confident I could send it to something that could read it etc.
When I started on the PCB design I had a simple circuit already so it was a case of translating that onto a board.
I didn't get too deep into any of the various parts but I found that it gave me a birds-eye view of the whole process and I now feel confident in isolating parts of them and 'zooming in' to them and refining them, building on the foundation I've developed.
And then when I have one designed, how much would it cost to get made and sent to me if I was okay if it took a month?
But most importantly: how do I build personal confidence that I'm not shipping a potato off to be printed? Is there a community I could ask for a review from?
Printing is way cheaper than I initially thought it would be - I paid £35 or so, including delivery and 5 of them arrived in 5 days. You can get cheaper delivery though. Also most of that cost is shipping and the setup fee - the marginal cost for each additional PCB print in the order is on the order of low single digit dollars.
Tbh my circuit was fairly simple so I just took a bit of a chance (and some extra care wiring things up). I think there’s a subreddit where people give feedback though I haven’t submitted anything.
Regarding your mental model, it's more like a 2-step process. First, you draw the netlist, which is the electrical circuit diagram. It's this stage you ensure there are no short-circuits, etc. Then in the second stage, you drag-drop the components to the physical layout you want. The software then has an auto-router that references the netlist and automatically generates the first pass of PCB traces. You can tweak them if you wish. The EDA software also has a rules engine that checks for correct trace spacing, vias, etc.
For a "baby's first PCB", I bet you have more skills than you realize and I would encourage you to just give it a shot. Also, if you make a small mistake, you can manually "bodge" the board by cutting wrong traces with an exacto knife and/or soldering wires to the pads.
Everything else just comes from experience! If you're staying in the sub-kHz (audio) range, you probably won't need the crazy high-frequency tricks/trace capacitance/trace-length-matching concerns.
Re help: I asked for some help on libera ##electronics. I think there are larger communities on reddit that would also take a pass over designs.
My impression is that for straightforward circuits (not very high frequency or high power) you can get away with almost anything as far as layout goes. You punch in some generous setting for spacing of traces etc in the CAD software and it does some basic validation. (Are all the parts connected, not too close?).
I used KiCAD. It works well, though for assembly EasyEDA is probably lower friction. I had to dig around to find the right footprints for certain parts.
This project is something that should be easy for someone with basic CAD experience. However many projects require a lot more complexity, so don't think that because most people could figure this PCB out in a day make you think anyone can do more complex PCBs, things get complex fast.
As for actually designing, it’s a little more complicated than that but not by much. I did my first pcbs with KiCAD ~5 years ago by pretty much just guessing and googling where things were. Completely feasible if you have 0 background experience.
For designing it I’d check out a kicad 9 tutorial playlist. You don’t need to know everything but it helps to know the right things, like how to run the design rules checker to make sure your PCB layout conforms to your schematic. There are a bunch to choose from but this one seems good: https://youtu.be/4YSZwcUSgJo
I haven’t done this but you can also try submitting your PCB design to /r/PrintedCircuitBoard subreddit for review, and they can also answer questions there.
- incredibly powerful and cheap microprocessors (esp-32) - Fast, high precision desktop 3d printers - Affordable small batch PCB manufacturing - LLM's to advise on circuit design and help with embedded programming
Would you have any interest selling a non-comm license to the PCB, f3d files and source code? My 1.5yo son would absolutely love this!
I also bought a Bambu A1 3D Printer and it is unexpectedly way more fun and useful than I thought it would be. I designed the toy in TinkerCAD and it printed out beautifully (I also have been printing out lots of other toys and yes, useful things for around the house and for other projects).
Next steps are learning Fusion 360 and figuring out PCBs -- That also seemed daunting to me but its nice to see other amateur hobbyists are seemingly picking it up with not much difficulty.
I had the same problem back then: injection molding is quite expensive to start. But you could consider a more creative approach: using a PCB directly as the panel, such as a TE's Pocket Operator. Korg also has this solution for some educational products. Alternatively, you could use 3D printing; there are many inexpensive services in China. CNC doesn't have the mold-making issue, but it's more expensive and doesn't seem suitable for children.
Another interesting point: after my child was born, I didn't have much time for my sound work. But recently, I was surprised to find that I spend most of my time playing white noise on Glicol (http://glicol.org/) and it works great for my kid.
``` o: noise 42 >> lpf ~mod 1 >> mul ~mod3
~mod: sin ~mod2 >> mul 200 >> add 1000
~mod2: sin 0.1 >> mul 0.04 >> add 0.1
~mod3: sin 0.04 >> mul 0.3 >> add 0.8 ```
Good luck with kickstarter!
Reminds me of the Dato Duo I have.
The "Dato Duo" is also a synth aimed at kids. It allows 2 kids to play together. it is made by a Dutch company called Dato (https://dato.mu). Their latest musical invention the "Dato Drum" had a successful Kickstarter and is shipping now. This drum machine allows even more kids to play together.
PS: As the owner of a Dato Duo I can share you a little secret: it's also fun for adults :)
I bought a Baby Einstein Magic Touch Guitar for a friend’s daughter a couple of years ago, and while it was okay as a toy, it was disappointing as a musical instrument because the chords it plays are badly chosen. It’s basically impossible to play along with most songs.
I’ve had the back burnered idea to buy another and improve it; maybe I will now, following a variation on your approach.
So why not go all in with a full set of acoustic drums?
Maybe try Facebook Marketplace, Craigslist, etc. because drum sets take up space quality drum sets and other large instruments are often priced where moving the gear is part of the payment.
He builds beautiful, colorful, retro-futuristic audio-visual art pieces Many are synths.
My son and I are also fascinated by the sweet, sweet synth sound, but as I have no discernible talent, we went this route:
https://www.sweetwater.com/store/detail/Nts1Mk2--korg-nutekt...
Which, unfortunately, has a HUGE learning curve in terms of operation.
What kind of hardware would you suggest (preferably something with Rust!bindings). Is the one used in the original post a good starting point?
I've minimal to no experience with embedded.
https://www.youtube.com/watch?v=i6M_KrZByz4
MFOS Weird Sound Generator
https://musicfromouterspace.com/index.php?CATPARTNO=WSG001&P...
Best of luck with your Kickstarter!
The advantage is that it's limited, so it greatly reduces the wall of difficulty to manage to get some 'nice-sounding' music (mostly the restriction to the pentatonic scale). However, kids still manage to find the most horrible-sounding settings, and insist on keeping them as is...
Kids music toys are often just purely toys tap a button, make a sound... But the skill ceiling could be so much higher, offering the ability to learn and express themselves more. Awesome work.
You can usually get them on eBay for USD$60 - 70. You do need to bring your own speakers, but a pair of cheap PC speakers are good enough, and it's a good start on creating a whole synth + effects chain.
Speaking of which, there is also the Mini Kaos Pad, which is a dynamic effects processor: https://www.korg.com/us/products/dj/mini_kaoss_pad2/
This one is a little more difficult to figure out for the kids as it is a "modifier" in the chain and they haven't quite wrapped their head around that concept yet. But still, it works great, has lots of features, and is really inexpensive for such a thing.
And finally, they have a number of these mini-synths that are in the USD$30 - 50 range that are a ton of fun: https://www.korg.com/us/products/dj/monotron_duo/
love the fact that your step sequencer even has a display to tell you what note you are adjusting to and from. i've always found that tuning synths and sequencers both analog and digital can be a pain because you can forget the note (or you don't have a good set of ears or perfect pitch) even if the result sounds good.
Jamming with other people can be a life changing experience, and to do that as a child would be a great privilege to have.
I used Chroma Cap knobs: https://store.djtechtools.com/products/chroma-caps-knobs-and...
That said modern 3D printers are good at producing pretty nice parts these days, especially if you print with small layer heights. You might be underestimating the possible quality of 3d printed objects.
We experimented with ironing, but you can't see it in those views. The A1 is a pretty good printer OOTB. There were a few iterations on the case design though to optimise the edges.
Yes, I'm splitting hairs about semantics.
At a lower levels you find modules like sequencer, oscillator, etc. They are generally not used by themselves: you plug a sequencer into an oscillator to make use of it, just like a standalone oscillator by itself simply makes a continuous noise that gets old quickly. A synth does that connection for you and exposes the controls.
(To make things even more fun, the lines between lower-level audio modules are often blurred. For example, the difference between a sequencer and an oscillator can be best summed up as: the former is commonly designed for unipolar control rate signal change where you can specify exact level per step, while the latter is designed for bipolar audio rate signal change between two predetermined extremes—however, as the “designed for” hints, you could configure some sequencers to output a bipolar signal changing so fast it is audible, just like you could run a square wave oscillator so slowly that it becomes a 2-step sequencer.)
It is a synthesiser AND it is a step sequencer.
It's two of these 4-note step sequencers with some fun timing randomness. Similar to the OP's synth it uses knobs to set pitches but the knobs are picking notes from a specific key so they always sound good together. It's a lot of fun to play and doesn't require any musical knowledge!
A more grown-up version of this would be 16 notes, with variable length patterns (4-16?), and a "swing" function. A little bit of I/O mux under the hood and I bet this design could be expanded in that way. Or maybe you just daisy-chain multiple sequencers?
For your sake, I hope you built a heaphone jack.
(In a tablet, I had to secretly add some transparent tape between the speaker and the plastic cover case.)
On a serious note: https://www.ericasynths.lv/shop/standalone-instruments-1/bul...