 Rwy'n gweld i'n mynd i'w gwaith, yna'r ysgolwyddiad mwych. A'r ysgolwyddiad yn y gwaith ffyrdd, rydych chi'n ddangos ei chyddiad o'r bach, gallwch yn ddifent y gwaith y gyrdd yma fydd wedi gwneud. Ond rydyn ni'n elio'n ddifent i'r ysgolwyddiad i'r ysgolwyddiad ar y gymryd. Rydyn ni'n ymgyrch i'r gwaith, ydw i'n gweithio. Ddweud. Rydyn ni'n gweithio. Ychydig ar ôl yn ffrwng. Cymru o'r ffordd ar y cyd-diol yn ffwrdd. I'r ffordd ychydig, rydym yn ymgyrch am y gyfyrdd. Roeddwn i'n rhaid i gael adnodd y cyfgareddau工作au a'r holl ac o'r holl o'r holl gynnal arall eich ganodd, a'r holl i'r holl i'r holl i'r holl i'r holl i'r holl, Menerント premium om ma dressing is not so good but bare with me. I go around the world giving workshops and talks and I love washing workshops and talks. I give little ones and big ones. I teach soldering and I like teaching soldering. When people come together and solder everyone just seems to be happy. I've been like I look happy, right? Iel y cydweithio ar y dyfodol yn y hwyl hwnnw, yn gweithio ar y ddweud i'r ddweud. Mae'n gwneud hynny o'r holl ddweud o'r cyfnodd, dwi'n ddweud yn ymdweud i'r cyfrifio. Roeddwn i'r cwmwch o'r ddweud yma. Rydym yn ddweud i ddweudio'r ddweud. Rwy'n ddweudio'r ddweud i ddweudio'r ddweud. Mae'r ddweud i ddweudio'r ddweud. Dwi'r cyfreidio'r troi amdano. Mae'r iweithio'r cyfreidio eitem ei hwn cyfyniadau. Mae'r cwennu cyfyniadau cyfnodol, ac mae'r gynghoru unihonau 600 o'r hwnnw i gyfynodol arnyn noblegol am y cyfrath. Mae'r holl hwnnw hwyl'r cyfrathau a dweud yw hwnnw. Mae hi'w hwnnw i'ch gyfrathau a dwy wedi amgueddfa wedi ffodol. Mae gweithio'r cyfrathau o'r holl hyn yn ddorol. Dyna'r gyda'r sgwrs sydd wedi'i gweinio'r kit. Mae'n gweinio'r kitau yng Nghymddur RGU Mwysig Synthesizer, ac mae wedi'i gweinio'r kitau mewn i'r llun o'r cyntaf. Mae'r prim ymddur iddyn nhw yma, oherwydd y gweinio'r kitau, Ond mae'r cwyrd yn gorfod yn y bwysig, mae'r gwybod sydd yn gweinio ar y cwyrnod, a'r cyllid yma yn unrhywun o'r partyn o'r meddwl. Mae'n gweinio'r un o'r bwysig, a phobl o dyfod iawn yn y ddweudio ar y cwrnod, yn y ddweudio ar y ddweudio, a'r hwn o'r ddweudio ar y ddweudio amweld, bydd y ddweudio ar gweithio a gweithio ar y ddweudio. Mae hwn o'r ddweudio yw gweithio, ac mae oedd nhw'n ddweudio ar ardu wrth gwrs mae'n ddweudio ar ardu wedi ddweudio. Mae'r ffordd o bwrth gweithio yn ddweudio. A yna, ydw i'n dweudio ar y ddweudio ar y dyfodol the controlling program, and that's the hard part. And I'll talk about some of that. It's just some pictures of workshops I've been doing over the last couple of years with the earlier version. It's totally mature now though. But it's still a work in progress, I'm still making it a lot better along with the help of my friend Bill Alessi, who is a brilliant firmware engineer. My motivation for doing R.D. Touch was to make something that makes sound. You can learn to solder with it, you put it together, and it just works and it makes a cool synthesizer because I didn't really see many kits that make really cool sound and music and noise and I like sound and music and noise. Noise is great. So when you make this, it just works. And it's easy to debug if it doesn't because it's a simple kit as far as the hardware goes and if you want to, you can learn a little bit about Arduino or if you already know about Arduino, then you can reprogram it to use any of my synthesizers and reprogram it to some way cool variety of different music, sound and noise. And if you want to learn even more, then you can read the documentation and follow some examples and learn to make your own synthesizers. And if you want to learn even more, then you can read my documentation, which I've been proving all the time to learn digital signal processing, which is a fancy phrase for how to manipulate things with a computer to do cool things in the world. So here's just one demo video. This is the one it comes with. It's called THICC. It's for sawtooth waves and you can manipulate it and make a variety of different sounds with portamento gliding between notes and a couple of sounds otherwise. It's kind of cool. This is what happens when you hear when you build the Ardu touch and it just works. It's fun. But just to put this in some context, not that my project matches up to these other peoples, but I've been fascinated with electronic music all my life and people have been playing with electronic music for a long, long time. One of the earlier people who's one of my musical heroes is Theramin. He made the thing which is best known for really bad Hollywood sci-fi movies or the original season, first season of Star Trek with a human-like voice going, ooh, ooh, ooh, ooh. That's a Theramin. And when I went to university, I turned out that my advisor, one of my advisors had been playing with music synthesis since he was a kid and the black and white photo is his PhD thesis. It's a whole bunch of oscillators that mix together to make lots of super-interesting noises. And I was just at the University of Illinois as hacker in residence earlier this year and met up with him and there he is looking a bit older than when I remember him as an advisor, but he's still doing great. And here he's playing an emulator of his original synthesizer that was from 1964. As a little kid, I was fascinated with Switched On Bach by then Walter, now Wendy Carlos, and like wouldn't it be cool to have a wall of things like that that you could plug things into and whatever? So Switched On Bach was one of my favorite records as a kid and when it started becoming part of all rock and roll music, I had another musical hero with Keith Emerson. He could even play this synthesizer upside down on a stage, kind of acrobatics, but it was fun. And later in the 70s was the first one you could actually buy for affordable. This was like 80 bucks in the U.S. and it made cheesy sounds, but you could buy it and it worked. And later there was one that I got used that made all sorts of crazy noises, dx7. Oh, that captions wrong. That's a dx7 by Yamaha. And I've been making synthesizers since I was in middle school, simple ones, and then through high school getting more and more complex and it turned into my masters thesis to have a digital synthesizer. And that cost a lot of money, but our lab had a million dollars worth of microcontrollers that were donated by Intel, which helped me in my music quite a bit. Now it's much easier to do things and the RG Touch Music synthesizer is just 30 bucks and U.S. and it's really easy to play with. You don't have to study manuals for months and months like a dx7. Music synthesis has two major kinds of approaches. There's analog and there's digital. And analog is, like in the real world, everything's analog. Everything's smooth. Everything's connected to everything else. There aren't major jumps unless you're talking about quantum and really, really smaller, really, really big things, much bigger than our day-to-day lives or much smaller, but in our real world it's all analog. And doing digital means you've got to muck with the analog world, get it into a digital form and then muck with it some more interesting things happen and then turn it back into analog. And there's a lot available nowadays. These people, teenage engineering, make lots of interesting little modules that do fantastic things and they're super inexpensive and there's also, of course, fantastic performing musical instruments that are still analog and digital. Analog I still think is the greatest, but you can do so much with digital on your own that's hard to do with analog on your own. So with analog, quite often it's just some simple waveforms, these smooth up and down called a sine wave, just on, off, on, off, on, off, the square wave, the triangle wave, or a sawtooth wave, which is shaped like a teeth of a saw, which is why it's called that. And they all have different sounds and they're all interesting and if you mix them together in different combinations in different pitches and then muck with it in certain ways with filters, you can get amazing sounds and great noise. So with digital, you can try to just emulate an analog synthesizer, like the old mini-mogue, which actually had a roommate in university, you had a mini-mogue and we made lots of sounds and annoyed the hell of our neighbors, which is always a fun thing to do. But with digital, you can emulate an analog synthesizer and it'll never be quite as good, but you can get quite, quite good. But with digital, you've got to take whatever's in the real world, break it up into little bits because that's what computers use, is bits, bytes, words, and then mess with it in certain ways, either through calculations or real time with knobs and buttons and you can use all sorts of interesting math to muck with it as well and then put it back together again to put it out into our world where you can hear music, sound and noise. And to do that digital signal processing really, really helps, that fancy phrase. But it's really not that difficult to be able to play with this stuff and I'll talk about that. There's various forms of digital synthesis and my Argy Touch music synthesizer makes use of all of these. The easiest one to talk about is coming later, but additive is a really interesting way to make sounds and my advisor from the University of Illinois back in 64 did additive synthesis to create all the sounds he makes with his gear. It's just a bunch of sine waves, some dead French mathematician named Fourier figured this out if you have a bunch of sine waves at different volume amplitude and different frequencies and add them together, you can add them together in a form you want. And here's just a few pictures which show how to add a few sine waves together to get a square wave. If you do 13 of them it's pretty much indistinguishable from a square wave. Here we just have four of them showing how to get really close to a square wave. We can also have FM. FM is a sine wave, a frequency that, the frequency is changing over time and it's a sine of a sine function and this is what the DX7 used very effectively in the first very popular FM synthesizer and this makes just totally nutty sounds but it can make really beautiful sounds as well like a bell or a trumpet that was very difficult to do earlier with analog synthesizers. But to get into this form wavetable, you can think about a tape loop. So it's a tape loop, it's kind of like with a vinyl record. Old vinyl records, if you turn the motor off and you can spin it with your finger you can make it go slow or fast and people who scratch make use of this they also go backwards. The sound is recorded in the grooves of the record. A tape loop, though, the sound is recorded in a continuous loop of sound and you can make it go faster, you can make it go slower with a motor controller and if you have a record head you can put new sounds into it and it just repeats and repeats and a wavetable is kind of like that except the sound is put into a form that a computer can understand, digitized and then we can play it back from memory or slower but we can also do lots and lots of things that are more difficult to do with a tape loop like do mathematical formulas on it and all sorts of interesting filtering techniques and muck with it in lots of ways. For digital we start off usually with the analog world and then convert that into a form computers understand. So we can take just a simple sine wave, there's one cycle of a sine wave and to make it into a form that a computer can understand and then slice it up into chunks. This is called sampling that's the fancy digital signal processing word sampling so here I cut up a sine wave into 10 slices and each slice has a value we can put a dot where it crosses the waveform and each of those dots has a value we can put the values on like this and then record those values in a table it can be a piece of paper that's not so useful but if it's memory now we have it in a computer where we can use it and muck with it and do all sorts of interesting things with that so this is a sampled sine waves with 10 samples usually we use much more and I'll show you why soon so these samples are stored in memory it can be a simple one waveform but it can also be a very complex waveform that's several seconds or even longer like this is sort of a simplified version of a piano-like sound part of a piano-like sound and those values are stored in memory in order to get from a waveform in our real world the analog world into memory that process is called analog to digital conversion and here's a little diagram of that we can take the waveform put it through an analog to digital converter that's just a black box and then outcomes values that are stored in memory people in the field call this A slash D A to D conversion but how do you do that? what is that black box? well that black box can be a chip and see how all that works would take more than I can go over in this talk but it's not all that bad so by the chip you can just set it up according to the schematic in the data sheet and it just works but nowadays even inexpensive microcontrollers have them built in and they're basically free and once you have it you probably want to play it back you won't want to play it back exactly as it is or you might want to muck with it first and then play it back but in order to do that you do the opposite and that's digital to analog conversion so it's just the same thing but reversed we have a different black box now called digital to analog converter and outcomes the waveform ideally and then from there you can put it into an amplifier and rock and roll so that's the idea so D slash A is the fancy professional way of saying it but that's really what it is and so what's in this black box well again you can have a chip which is really expensive actually to get a good one or you can use PWM and I'll say what PWM actually means after I go through a few more slides so you can understand that PWM works with basically square waves so a square wave though is on, off, on, off, on, off and it's half on, half time it's on, half off same time on, off, on, off, on, off and so with a square wave it's basically half the amount of energy of if it's on all the time because it's off half the time as well rather than have just square where it's 50% on, 50% off we can have different ratios of on, off time like a pulse wave and analog synthesizers make use of pulse waves just to make interesting sounds as well but here's one that's 25% on and 75% off and that ratio is called a duty cycle so 25% that means there's 25% of the energy coming out compared to just on all the time and we can have various ratios it doesn't have to be even numbers either it can be a fixed point down to as many decimal places as you want it can be on for 37.4644 whatever it can be any value and you can vary the amount of energy coming out by varying the width of these pulses and when you vary the width when you change something over time in electronics that's called modulating it and what we're modulating here changing over time is the width of the pulse wave so pulse width modulation PWM and this is the way that you can make all sorts of amazingly beautiful and nasty noises out of a microcontroller and it's free because all microcontrollers have output pins and many of them have timers which are designed for PWM make it easy for you so the same diagram before except the black box is labeled PWM so we have values in memory we feed the first value into our D to A converter digital to analog converter outcomes the first little bit of our waveform then feed it the next memory location outcomes the next part and you go through the whole table byte by byte or word by word waveform and you can put an amplifier and rock and roll and it's totally cool you can make really cool, nasty and wonderful and beautiful sound music and noise so that's the theory in practice however there's a bunch of gotchas so this is what we want we want a table full of values that's our waveform in digital computer form feed it through our black box digital to analog converter and out comes a perfect waveform in this case a sine wave in actuality however we get this because computers don't have all the values in between we only have samples each memory location is just one point of the waveform and that value stays there until you put the next point in and the next point in the next point and this sounds nasty that might be a good thing but if you don't want that and you do the wonderful sine wave you're out of luck so in order to fix that according to theory all we need is a perfect low pass filter a low pass filter lets low pitches through but not high a perfect one you pick a frequency everything below comes out perfect everything above doesn't come out at all and if you have a perfect one of those then you get a perfect sine wave out but of course perfect doesn't exist in our real world but we can use a really cheap one so perfect doesn't exist but we can use a really cheap low pass filter which on my RGTouch is just one capacitor and one resistor for each channel and I've got two channels at stereo and from this if you put it through my cheap low pass filter you don't get a perfect sine wave out you get this kind of messy-ish sine wave out and that actually sounds okay-ish to fix that what we do is we have more than 10 samples for a waveform we have like 256 and if you have 256 with this cheap one you get pretty much a perfect sine wave out not quite, our ear is more sensitive than our eyes it looks like a perfect sine wave but it sounds a little bit scratchy but I pulled some other tricks and some waveforms that I wanted to be really smooth I have way more values than 256 it also helps if the values are more than 8 bits if the values are 16 bit words or even 32 bit words rather than 8 bit bytes then the values are much more accurate so that's really all there is to it to get from the analog world to computer ease and then from computer ease into the analog back to the analog world where we can make music but that's just showing how to get the waveform what we really want to do is change the pitch a lot because we're playing a keyboard or playing with a breath controller or all sorts of things or just with knobs we want to get all sorts of frequencies lots of different pitches to make crazy sounds in music and all sorts of things so how do you get different pitches well in order to explain this I'm afraid I've got to do a little bit of maths hope that's okay sorry about that but it's cool maths so if we have 256 memory locations to describe a waveform and we send one value out at a time to the digital to analog converter and out comes our waveform what is the frequency of it well if we send one every second then we can have the complete waveform in 256 seconds that is way too slow for human hearing for human hearing we've got to have a 20th of a second minimum to do a waveform and that's a really really low note and we want all the way up to a 20 thousandth of a second so one hurts that's the way of saying one per second isn't fast enough and this again is called the sample rate the rate at which we play the memory locations through our D to A converter to get the sound out so let's instead of one second in the argy touch I use 15,000 oh it went over that we use 15,000 samples per second 15 kilohertz sample rate and when we do that we can get much more interesting things but still it's rather limited if we just do the 256 samples in our memory and play them one at a time 15,000th of a second later we get 15,000 divided by 256 memory location samples and we get 58.6 hertz 58.6 cycles per second that is basically the frequency we get out and that is a pitch near a sharp the lowest a sharp on the keyboard that's not a very useful pitch especially if it's the only pitch we can make no one else can play with us unless they go off tune on a violin or a slide flute so what we want to do is get any pitch we want if you have a keyboard you want to get every note on the keyboard if you have a knob you want to get every sound you can hear in range of human hearing 20 times a second to 20,000 times a second so we can do that in two ways one way is really hard and that's like a tape loop change the speed of the tape going around or change the rate of all of the memory locations feeding them in the D to A converter faster or slower we can only get 58.6 hertz max so that's not really a good way to do it and slowing it down is complicated in code so the one way to do it is to skip memory locations and if we skip them then we can get a faster sounding we can get a higher sounding pitch and skipping them is in quotes because what we're really going to call that is interpolating and let me show you how that works so let's say we want an A and in music A 440 is defined as 440.000 times a second hertz that's the definition of A, middle A on a keyboard in all instruments so if we want to get 440 hertz and we've got samples coming out every 15 thousandth of a second we divide 440 into that and we get 34.09 steps so that means we skip 34.09 memory locations every time we do an output of a sample how do you get a 0.09 memory location well you can't you have locations 0, 1, 2, 3 only integers you can't go to location one and a half that doesn't exist or 34.09 that doesn't exist but we can interpolate between location 34 and location 35 so we'll skip 34.09 every sample and I have some pictures to show how that works so we start off with just the first one location 0 and whatever values in there goes into our D to A converter and that's the first slice of our waveform then we go to location 34.09 we can't do that but we can go to weighted value between location 34 and 35 it'll be really close to the value in 34 and then we add 34.09 to that to get 68.18 and then we have another weighted value between 68 and 69 and then we get to the next one 102.27 etc etc and then in the 7th value we get 238.68 it's still in our table but the next one it will go to the memory locations that we have so we wrap around to the top so this would have been 272.72 but we wrap around by subtracting 256 from it and now we're back in our table and now we have locations 16.72 a weighted value between 16 and 17 and we just keep going around and around and around and we do that at that rate and out comes a perfect waveform through our cheap low pass filter at 440 Hz A middle A on the keyboard and it can be the sound of a normal piano, it can be a sound of a sine wave, a square wave, a violin like sound, a trumpet sound, whatever it just depends what's stored in the memory and that's really all there is to it to do it conceptually maybe you didn't follow all that absolutely perfect but hopefully we have a feel that I went through and to code that is kind of complicated but I already did it and if you want to hack on my code feel free it's totally open source but I made it really easy by putting all that low level stuff in a file and having all of these functions in an Arduino library so that no one really has to do that unless they want to hack on my code and feel free and if you come up with something cool let me know because I'll share it with other people then but my Argy Touch makes it really easy to do all these things and that's part of the idea to make it easy on the highest level but make it so that it's totally hackable so people can do all sorts of more interesting things that I've come up with so the Argy Touch library makes it really easy to create oscillators and those are the various waveforms they can be the simple ones like sine waves square wave triangle etc we have a whole bunch of really interesting very complex beautiful and nasty noisy waveforms as well but if it's just an oscillator even if it's a beautiful or nasty whatever kind of waveform it's kind of boring because it's not changing over time any actual instrument analog instrument mechanical instrument it changes over time a great deal and it sounds much more interesting than just on with the static sound and then off so for doing that we have dynamics and I'll have some explanation of dynamics in a bit but that is what makes the sound super interesting the oscillators like I said can be the simple waveforms or more complicated ones and dynamics can be some of these and other things ADSR is what happens when you play a note like on a piano keyboard when you press the key it goes and then it decay that's the attack and then it decays quickly and then as long as you're pushing the button it sustains and slowly goes down and then when you let go of the button it goes down to zero rather rapidly and that's one waveform for attack decay sustained release and this is called an envelope for the waveform you can do much more interesting things with envelopes than that especially if you want to get nasty noises but you can muck with the attack decay sustained release and RG Touch makes that easy tremolo is really another wave envelope generator except it's usually constant tremolo is changing the volume over time and you can change it sinusoidally so it's like that wasn't very good so the volume gets higher and lower you can also do it in a square wave so it's just on, off and you can do other waveforms too and if you do it really really fast faster than the pitch then you can get super crazy sounds and that's really what FM is all about and it's pretty interesting portamento is somewhat similar to tremolo except it's changing the frequency over time and it can go much faster or much slower and if you do it super fast then you get lots of interesting things too actually I'm sorry tremolo isn't FM changing the portamento quickly is what FM is and then envelopes you can do lots of very interesting things beyond just ADSR and tremolo you can do all sorts of very interesting waveforms to change the envelope and then filters like base and treble control people know what those are those are high pass and low pass filters we can also have band pass filters only let frequencies through in the middle and you can mess with those over time fast or slow and you can also have a filter in digital that you can't do an analog which is just taking values and randomly changing them and then you get really cool totally horrible wonderful noises and you can tell I like noise I like noise and then effects you can add all of these together and you can have all sorts of interesting effects that ones that correlate with the analog world like guitar effects pedals or ones that you just make up on your own and without you touch I have a bunch of stuff like that and I make it really easy to add these dynamics just by calling a function I wanted to go over how the keyboard works the keyboard is just pads on the board these are just pieces of copper from the board and I coated them with a very thin layer of gold so they wouldn't oxidize but you just touch it and it plays the note you can also use the keyboard if you program it as a controller rather than playing sounds you can use it for changing the dynamics of the sound but the way this works is through capacitance and capacitance are like little teeny very teeny batteries that charge up really quick and discharge really quick everything has capacitance the pads on the board these pieces of metal on the board have capacitance very little but it has some so we can charge those capacitors up these little teeny batteries charge them up they'll charge up really fast and then we can discharge them fast if we touch the key that adds capacitance to the key you're touching and so that's a bigger slightly bigger battery and it charges up a little slower and we can measure the difference between the charge times and here's a graph of that the green one is charging up with just the piece of metal on the board the red one is charging up with you touching a key there's a difference and we can detect that with a microcontroller so we know which keys we're pressing right now I just have it only one key at a time but I could change that and I want to change it so we can play polyphonic the synthesizer itself underneath all of this is polyphonic we can have lots and lots of voices at once before the microcontroller which is actually quite low powered microcontroller for such a low powered microcontroller and then the other part of the board is the amplifier and speaker and this also has the cheap low pass filter which is one capacitor and one resistor per channel but the chip in here is a really old but still working chip called the LM386 it's a half watt amplifier chip and I use the least number of parts possible for it and I also have a headphone jack so we can have a line out and I have line in quotes because it's actually too too high an amplitude too much volume for line to do it for real I'd have to add another chip in there and op amp and I wanted this to be as inexpensive as possible so but it does work you can plug that into a nice amplifier and get super nice sound and the example I played earlier is from line out so the Arduino library that I made for RGTouch has lots of examples if you go through examples 0 through 9 then you can learn how to make your own synthesizers with my library and for example you can make really easily a sawtooth keyboard so this one this is the complete synthesizer including the comments that's the complete code it's looks quite simple and following the examples you can do this and you can have sawtooth output just by playing the keyboard you can change octaves with the buttons make it higher lower octave and you can change the volume you can from there if you want to add dynamics you know all the things I talked about for tremolo portamento etc and here's another demo and I do want to say you don't need my board to use my code this will work on any Arduino at all mine looks like an Arduino Uno but if you have a more powerful one then you have more input output pins it'll work on anything it doesn't come of course a regular Arduino doesn't come with a touch keyboard and a little amplifier but here's a couple more demos here's one that's totally different than the one it comes with all you need to do to get this one in is using the Arduino environment macOS windows or linux and download one of mine or create one of your own synthesizers and program it in takes a few seconds here's a demo called this mantra it plays a drone with a drone and an Indian-like scale so that you can't play any wrong notes because every note fits with every other note and all those voices are just played in real time calculated from wavetables and it's kind of cool here's one that's totally different this one's called ZOID for you noise lovers in the audience and it can make lots of different noises and the knobs change the noises and it goes on for a while and you can play it for a bit press into keys make different noises there's also presets to make very different sounds noises and you can just jam with this it's pretty crazy so that gives you an idea of some of that and you can't do this with digital so this is purely with analog you can't do this or you can do all sorts of crazy things like this but like this sounds almost bell-like and it's really an accident because I'm just like doing weird things to the bits to change the sound kind of randomly and um yeah so that gives you some idea The RG Touch has a lot of limitations because it's only a $30 little board with a very low powered microcontroller there aren't many input-output pins so I can't I only have two LEDs and I can only have two knobs and two buttons if I had more input-output pins I can do lots of things like add MIDI I can add a display I can add a bunch of things and I want to do that I have one file in the library which is for the Arduino Uno if I use a much more powerful microcontroller I can just change that one file and add lots more functionality and I'm working on that now there's also not much memory the microcontroller only goes at 16 MHz it only has 32K of program memory so the synthesizers can't be too big and it only has 2K of RAM so these are all limitations but if I use something like an STM32 or any kind of ARM core built in USB it won't be a kit anymore because the parts are too small for beginners to do so I can do lots of things with more RAM and built in USB and have some cooler library functions and have MIDI and all these other things so look out for that as I have time between travels all this is available on my github so if you do anything cool definitely let me know like I said earlier I'll share it with other people and it's all free go for it do you want soldering or want any kits I'm going to be over in the hardware hacking area doing more soldering and I can teach anyone to solder really well for the rest of your life so come on by if you want to until they kick us out today so that's it for my little rant thanks okay we have time for questions if anybody has any questions what was the purpose of the LEDs on the board? the LEDs so the LEDs there's for programming an Arduino it programs through serial and so there's an LED for serial in and an LED for serial out if you're not using the serial for your synthesizer which some synthesizers I made you can and you can control it with just a dumb terminal and do interesting things or your own like controller through serial but if you're not using that then the indicators can tell you what mode you're in like there's only very few controls on the RGTouch two knobs and two buttons so I can put the knobs in a different mode so instead of doing attack and decay I can have it do change the timbre of the sound and change the volume for instance and red light will turn on when you're like that blue light will turn on when you're in another mode both of them are blinking when you're in a third mode and things like that it's not the best user interface but I make use of what I have with an inexpensive low power microcontroller more questions how do you plan to tackle polyphony? polyphony? so with the low power microcontroller the max I can have at any given time for independent voices before the speed of the microcontroller is a limitation and then you get glitches which sometimes are kind of cool if you like noise but not if you don't want them more interested in the detection of pressing multiple buttons ah right so I just go through each one and I look at this key is it being pressed? yes no look at the next key is it being pressed? yes no and they can be put in a small table and that's going much much quicker than our human timing and you won't be able to tell there's any lag at all so that's rather really really slow compared to all the processing going on for generating all the sounds so that shouldn't be too hard but I didn't really design the interface with all my Arduino library functions to be able to handle that so there's going to be some a bunch of rearranging things to make that happen that's the hard part how is it to import your I'll do touch library in something like MicroPython import to what? import to something like MicroPython I think the badgers have got MicroPython on them all our EMF badgers so I haven't had time to look much at the EMF badge unfortunately so I don't know what processor it has if it's Arduino compatible and there's a board file you can download for the Arduino environment then it would be trivial because you just might have to change a few things I think in 2016 we had MicroPython running on it instead of the I assume it was on top of the Arduino thing but a lot of people might want to keep MicroPython on there so just wondering whether you can import a a C include file into MicroPython I don't know MicroPython well enough I really don't know Python too much for me C is a high level language but this is written in C++ so if there's a way to interface C++ with MicroPython then you can have MicroPython shells a layer on top of it then you can do lots of interesting things for user interface the board's microcontroller definitely has a lot more input output pins and a lot more memory and a lot more speed so it could be able to do lots of interesting things and I did notice as our Harold pointed out there's a synthesizer on the badge but it says it's not working please check later so if anyone works on that and gets it working I'd like to play with it but that one I presume is written in Python Any more questions? Comments? Comments, yeah The synthesizer does work on the badge but it makes an awful noise I enjoyed it but it was a I want to just do one more example here This one's called Arpology and it does arpeggios can change the attack and decay and you can go up and down octaves and then you can change here's another mode and you can see the red light turns on now I can use the pots to do change the pattern and I can change the speed make it slow or fast and then you can just play with it and if you want to you can tell it to play itself and it has a random number generator in it so it will never repeat and it has Bach-like modulations modulation in this case meaning changing key and musical so that's one of the many synthesizer examples that I have available on my website oh yeah let me show you where to get the website as far as my website if you go to the projects tab then you get my long horrible page of lots of projects all open hardware and there's this one and there's lots of stuff including really good assembly instructions lots of demo videos and each synthesizer you can download the instructions on how to use it or there including this one and the others I showed plus some others got a question? yeah I just wonder how easy would it be to hook up a clock input into it with other instruments perhaps or was that a modification that could be there? that would need another input-output pin and I'm using all of them at the moment but if you take away some of the functionality that frees up an input-output pin one thing that a friend did in Croatia actually is he took away the touch keyboard which needs one input pin per key and did a bunch of buttons and with a bunch of buttons you can do that with way fewer input-output pins and that freed up some input-output pins to do other things and then you can have that sync up to another argy touch or another synthesizer just following on from that last question I was thinking if you do have the serial header exposed so you've got the serial input could you not take a midi clock in through that without having to free up any other pins? well that's an interesting midi really is just rs232 but this is an rs232 it's TTL level so with just a little bit of circuitry on the outside converting plus or minus 12V into 0 to 5V we should be able to add some of that functionality in that's an interesting idea and also it's a weird baud rate but this is programmable baud rate so it's not a problem okay cool with a number of questions just quick reminders music amplifies off by 11 tonight and volunteers for the bar would be greatly appreciated tonight especially and feedback on emfcamp.org slash feedback I think but thanks again, thanks very much to Mitch