So, where were we? So, that is the theorem we stated last time and I had a problem with this which is right this should be continuous the partial derivatives need to be continuous for this equal as to hold. So, the proof of this theorem I am going to leave up to you to work out and see and convince yourself. As I said that we are going to be interested in functions which are at least differentiable on the complex plane and therefore, this is a very critical or important theorem for us. Now, let me put define specifically the given name to the functions of the kind we are going to be interested in before that I need to define domain. So, this is the kind the type of sets we will be interested in D is a domain on complex plane if it D is an open set and such that any two points in D can be connected by a curve with descending formal way of saying something very simple that D is a region on the complex plane which is not which does not consist of disjoint parts. It may have some holes in it which is fine. So, this is the most general kind of sets we are going to sets of points we are going to be working on. In fact, more specifically we can rule out some funny boundaries also one can have boundaries which are not continuous or happen behave in a bizarre way. So, let me write that down as well. So, we are going to be interested only in the domains of the kind whose boundary now a boundary of a domain is this outer curve as well as things inside which throw out the piece the points inside. So, the boundary of a domain consist of a finitely many piecewise differentiable curve. So, this is one curve this is another curve this is another curve and they are differentiable. So, they do not behave in any funny way one could have things like this which is fine only finitely many. So, whenever I say domain I would mean a set of points of this kind. Now, let us come to our main definition we call function f to be an analytic function on the domain D if it is differentiable everywhere on D and this derivative is continuous. Now, this condition is actually superfluous as long as if f is differentiable on the everywhere on the domain D it actually follows that f prime is continuous, but we will not worry too much about it let us assume that this is the case I will not even going to prove why this is superfluous because it is not important. So, it is the analytic functions that will be our objective interest and study. Now, the reason I have defined an analytic function on a domain instead of on the whole complex plane is that the many of the functions that we will study are not analytic over the entire domain over the all the over the entire complex plane, but they are sort of piecewise analytic on different regions of the complex plane. A simple example is let us just take f z to be one word and let us see if it is analytic. One thing is clear in any domain which contains the point 0 this is not analytic because diverges at point 0 what about other points at least it does not diverge. So, it may be analytic how do we show that this is going to be analytic we have to verify that f is differentiable and verify that f prime is continuous and to verify is differentiable we have to use this theorem. So, let us say so we can write f z in this form this is my the reason for writing it in this form is that this is going I can write take this to be the function u and minus of this to be the function v and I need to verify the Cauchy Riemann equations for this. So, what is del u by del x and del v by del y. So, are these two equal they are equal and similarly let us look at del u by del y that is going to be and del v by del x that is going to be and this is negative of this. And so, what is f prime it is differentiable. So, that is good to know that then what is the derivative of f it is a usual derivative yes, but one has to actually justify that over reals yes we know how derivative how to calculate derivatives whether the same laws apply over complex numbers also is something that needs to be actually verified and that process I will lead to you it actually turns out that all the laws of differentiation which hold over reals just carry over to the complex numbers. And at some point later we will see a general principle why that happens, but for now let us just continue using the usual laws of derivative differentiation. So, therefore f prime z is minus 1 by z square and we need to just verify one more thing that this is continuous which is of course, the case for all points except z equals 0 this is continuous. And the second order the partial derivative these are also continuous as long as x and y both are not 0 which is something we are ruling out anyway. So, this together implies. So, take the complex plane and take out the point 0 this is a domain it is an open set with one boundary inside and this function is analytic let us look at another example is this analytic and if yes over what domain. So, we do the same thing this is u this is v and with this we can verify actually almost directly del u by del x is 2 x del v by del y is 2 x. So, they are equal del u by del y is minus 2 y del v by del x is 2 y. So, that is negative of this both are continuous functions over the entire complex plane. Therefore, f is differentiable over the entire complex plane is derivative again following the same principle is 2 z which is continuous function over the entire complex plane. And therefore, in fact, there is a name for this property functions which are analytic over the entire complex plane are called entire. So, you would naturally expect entire functions to be a simpler kind of function which do not behave strangely at any point. And that is indeed the case and there is a very nice theory of entire functions which tells us a lot of properties about of these. We will not know, but when we go into zeta functions that at some point we will have to touch upon entire functions also and at that point we will see some of the interesting properties of this. Well, so some should we look at more examples that is going to be somewhat time wasting. One should expect there are some general theorems one can prove about what kind of functions are analytic which is true. And one of the real basic ones which allows us to construct more and more analytic function is this theorem. So, if two functions f and g are analytic over some domain d then all their arithmetic combinations are also analytic except there one has to be careful when looking at f by g that g should not become 0 so that it diverges. So, as long as that does not happen f by g is also analytic.  So, I keep giving this assignment problem and at some point I will ask for you to submit those assignment solutions to those assignment problems. So, do not postpone solving these problems because if you do that you will probably even forget what were the assignment problems and if you come and ask me I will also would have forgotten. So, do not take that risk because I will remember while looking at at least one of you who would remember the problem.  So, now with these we are in good shape what immediately follows from this is that all polynomials are analytic. In fact, all rational functions are analytic over the domain where the denominator does not vanish. So, pick a domain in which q does not vanish at any point and then p by q is analytic over that domain well this is good to know, but if we keep our goal in mind the zeta function that is not a rational function it is an infinite power series actually. So, we will need ability to talk about powers infinite power series in order to analyze the zeta function. So, we will very soon come to analyzing whether a function given as an infinite power series is analytic or not. Well it is not you are right actually the way it was given is not even a power series it is an exponential it is an exponential series which we can write in terms of power series. Yes, so there is still lot of work to be done before we start discussing properties of zeta function. Now, very brief detour here look at an analytic function it is differentiable everywhere and not only that its derivative is continuous which means that if you think of the take the analytic function and look at its derivatives at every point on the complex plane. And so let us say this is some domain and you look at the look at the derivative take any point and look at the derivative of the point at that derivative of the function at that point and think of that derivative as giving you a vector which is what derivative does is a tangent vector right. So, at and look at the derivatives at the neighboring points again as a tangent vector. So, what the analyticity of f implies that as you move from any neighboring points towards this particular point and look at the way the derivatives of these tangent vectors evolve they change very smoothly and converge to the derivative value at this point. So, this has a very direct connection with the flows on a two-dimensional plane which I mentioned somewhere else earlier also that when a fluid flows on a plane then the with every point you can associate a derivative which is the velocity of the fluid at that point it has a direction as well. Now, if it is a flow without any turbulence or source or sink then this flow derivatives will we have this form where you can smoothly going from one point to another. So, that is the correspondence between flows in two dimension with analytic functions. In fact, analytic functions are heavily used to study these flows. Now, we come to perhaps the most important theorem on analytic functions almost everything subsequently follows from this theorem. If D is a domain and function f analytic over D then if you look at the integral of f over along the boundary of. So, delta D represents the boundary of the domain. So, here should say bounded otherwise this does not make sense it is a bounded domain not going to infinity anywhere then it has a boundary well defined you integrate f over this boundary you get 0 on function f to be defined on boundary yes that is root point that is a good point. So, I should write and suppose not only we want f to be defined on the boundary you want its extension to be smooth because D is an open set. So, you can with staying by staying within D you can reach closer and closer to the boundary and in the limit you will hit the boundary and there the function of f the value of f should be what the limit tells you. So, then this integral over the boundary is 0 this is on one hand very remarkable theorem that it does not as long as it is saying that f is analytic does not matter what other properties f has its integral is going to be 0. On the other hand it is if you think change your perspective it is not so surprising because what this is saying essentially again if let us take a simple example suppose D is in domain like this then what this theorem this so this is the boundary of D what this theorem is saying is that if you integrate f along this let us pick two points on this and you say integrate f along this path or integrate f along this path the resulting values will be the same because this is equivalent to the statement because it is if the two integrals are same then the integral of f along this boundary is this plus negative of this and that cancels out. So, essentially this theorem is saying is that along the boundary it does not matter which path I for take I take can take any two points and I can follow any path along the boundary to reach from one point to another the integral value is the same. In fact, since f is analytic over this entire domain we can say take fix these two points and take any path from this point to this within the domain D this integral value is going to be the same in respective of this path and this is not surprising because we have when we define the fact that f is differentiable we said that it does not matter which direction you approach f is going you are still going to end up with the same value. So, there is a direction invariance inbuilt in the definition and so it this theorem just extends that invariance to longer paths instead of localized invariance which is what the differentiability implies this is saying you know on a long longer scales there is an invariance. So, this is such an important theorem that we will prove it this also gives a sense of the type of proofs which are used in complex analysis. So, we start with the domain D and triangulate it. So, which means that and like this basically you make lots of triangles covering the entire domain of course, you cannot cover the entire domain with this because the boundaries particularly they will be curved they are not straight lines. So, in the boundaries you might have a situation where what you get is not a triangle, but something which has at least one of the sides being a curve that is something we will accept. What basically I want is division of this entire domain into small pieces still finitely many which have only three sides and as far as possible these sides are straight line, but if not then they can be curves. So, that is the meaning of triangulate for us here it that is yes we need to prove, but that is easy because this is a connected domain by definition domain is connected and it is bounded that is given by the in fact you do not even need connectedness for this because as long as if it is not connected it since it is bounded it will only have finitely many disjoint regions. So, for each region you can do this triangulation. So, this triangulation basically implies that breaking. So, what I am going to do is to look at each one of this triangle you know triangle in the sense of this and integrate f over the boundary of it and what I will show is that f on each one of this boundary integration is 0 and that is going to be sufficient to prove this because once you add up all these integrals of course, I have to fix an orientation of traversing these regions triangles as well and by convention we always traverse in the counter clockwise. So, that is considered positive traversal of a region of a boundary clockwise traversal is also used at times that is considered as a negative traversal. So, we will traverse all of them in counter clockwise and so when you have a neighboring triangle here this will also be traverse counter clockwise and if you look at this particular curve or edge it is once traverse in one direction second time is traverse in the other direction. Therefore, the integral some of the integrals along this will be 0. So, if each integral along each of this boundaries is 0 when you add them all up the resulting integral is of course, 0 and the boundary that you get of the resulting integral is precisely the boundary of this everything else cancels out. So, therefore, all that I need to show is for take any of such region this triangle in this general sense the integral along the boundary of this triangle of f is 0. So, for that we will start with something a very simple actual triangle and we will show that so let us say this is a point 0 0 this is a 0 and this is and we will show that that integral is 0. Notice that I have also given the coordinates of the corner points that is also something we will take care of later. So, let us call this t and what is delta t of f z. So, delta t is a boundary of t traverse counter clockwise there are three edges defining this boundary. So, we can break this integral down into three pieces integral going from. So, now I have to first transfer let us say yeah let us just say delta t this is our complex sense. So, let us translate this to the two dimensional real structure.  So, let us write it u plus iv and dz is dx plus i dy. So, just collect the real and imaginary parts separately this becomes u dx minus v dy plus i u dy plus and since this is all real and this is all real we need to show that this is 0 as well as this is 0. So, let us consider the first one now we can talk about the three this as a two dimensional plane and break delta t into three parts in the first part only x varies it goes from 0 to a y does not vary in the first part. So, dy is 0. So, for the first part we only get u of x 0 dx in the first part y is 0 what do you get in the second part where make it even simpler let us make it 0 1 in the second part we go from 1 0 to 0 1. So, that is the line x plus y equals 1 or y equals 1 minus x that we need to follow. So, x goes from x goes from 1 to 0 and you get u x and what is y? y is 1 minus x dx minus what about y? y goes from 0 to 1 and you get v 1 minus y y dy and what about the third region in third region x is 0. So, dx vanishes minus y goes from 0 to 1 sorry 1 to 0 and you get v 0 y just rewriting it now look at this expression inside this this is u x 0 minus u x 1 minus x I can write this as there is just a trivial rewrite partial derivative with respect to y dy integrate from 0 y this is of course, u x y going from 0 to 1 minus x. So, that is just the difference I can see where we are going this problem with sign somewhere there is a problem with sign del u by del y this should be del v by del x. So, just interchange the order of integrals here. So, 0 to 1 x 0 to 1 minus y y same as 0 to 1 y and 0 to 1 minus x. So, this integral is same as this integral the limits there is just swap this and add this you get this this is 0 because f is analytic therefore, it satisfies Cauchy Riemann equations and according to one of those this is negative of this. So, this is 0 and therefore, the whole exactly the same proof works here except that here you will be using the other Cauchy Riemann equation. So, that shows that at least along the boundaries of this specific triangle is one unique triangle 0 0 1 0 0 1 the integral is 0. So, we will continue this analysis next time no it is a integral see this was a this was a area integral double integral x going from 0 to 1 and y going from 0 to 1 minus x. So, you basically are integrating inside the region, but you do need that the limit in the limit they should not some funny things should not happen, but that is already guaranteed by the fact that f extends smoothly over the boundary.


folks, welcome back to another 3D Hangouts. My name is Noor O'Has, I'm a designer here at Adafruit, join me every week with my brother Pedro. Good morning everybody, I'm Pedro, creative tech here at Adafruit and every week we're here to share three independent projects featuring electronics from Adafruit. That's right, this is where we combine 3D printing and DIY electronics to make inspirational projects for you folks. Hello everybody hanging out in the Discord chat room, we're gonna do the show. We want to welcome everyone, thank you so much for joining us. We hope everybody's doing safe, being safe, feeling good, getting ready for the holidays or a nice break. So if you are hanging out in the Discord chat room, you can hit us up with any questions, comments, shoutouts, we'll check in throughout the show. Shoutouts real quick to everybody hanging out in the chat rooms, real quick question on a gift card purchase, yes you can buy it and have it be sent to you. Just put your address in the shipping info. Okay, sweet, we'll run through. I actually think it's a digital one, so you should get like a coupon code that will be able to discount it that way. Cool. All right, shoutouts to everybody else hanging out in all of the chat rooms, we are over at discord.gg slash Adafruit, come hang out with, I forget how many thousands are hanging out in there, 32, 33,000, many thousands. Lots of fun, come hang out, let's go ahead and run through some of the housekeeping items on our list. Freebies, we spent some money with Adafruit, you can get some free stuff, this has been updated throughout the weeks and months, it gets updated as we go, so let's take a look for orders that are $99 or more, you're going to get a free pink Adafruit limited edition feather RP2040. Wow, cool. For only $99, that's the first tier, that's pretty good. All right, well supplies last. For orders that are $149 or more, you get that free pink feather RP2040 and a randomly selected STEMIQT breakout board. If you have an account with us, we'll make sure you don't get the same one twice. For orders that are $200 or more, you get the STEMIQT board, the pink feather plus free ground shipping for UPS, US continental only. And for orders that are $299 or more, you get the free shipping, the STEMIQT board, the pink feather and a circuit playground, blue fruit. Blue tooth low energy. So we're going to take a look at that actually in close detail today. How many freebies can you get as many as you want? Read up the things if you want them. Be very wary of the holiday approaching holiday shipping deadlines. If you click right here on the top of the website, there is some things here about what are the deadlines for shipping, the deadlines this year. Take a look at them, they're broken up as different tiers. So UPS ground three day, two day next day and USPS first class priority. So you check those out. We also have international orders. Yeah. So if you're trying to get these orders in at a certain time, be sure to check out this. Again, the link is accessible throughout the website at the top banner there. There's the picture. All right. Adabot does not hand deliver any of the packages. But Adabot's looking for help. Help wanted. Adabot's helping out. If you go to the jobs board jobs.adbot.com, you can see all the different job postings and listings that are available there. Circuit Python program are needed. The latest one in the Buffalo, New York area from Xander creation. There's some other ones up there. So be sure to check them out. Make your resume if you haven't already. And if you're looking for folks, it's a great place to find them. So check it out at jobs.adbot.com. Okay. Newsletters. We have a whole slew of them. Once a week, you do a product focus newsletter. If you want to subscribe to that, Adabot.com slash newsletter. Daily doses of newsletters. You can go to AdabotDaily.com and subscribe to the many categories that might peak your fancy. Thank you everybody for subscribing to the micro. Thank you for subscribing to the Python on microcontrollers newsletter. There's probably more than 9,000 folks. But hey, if you got your Python related project and you are looking to advertise it or promote it, hit up, what is it? CSP. Adabot.com. And I think that is all the morning ramblings housekeeping that we do. So I'm going to head back over to Discord. See if anybody's saying hello. Andy Callaway's checking in. Hey, greetings everybody. Okay. What? We also got a StemSpeak2. It's cool. All right. Well, we're ready to buggy. Anybody on YouTube saying anything? It looks like I did not answer John's question. I'm pretty sure I said that you can address it to yourself to get that gift card. Maybe it reads differently. What's precious gift card, but want it to come to me and not the recipient? Is that possible? Yeah, you address it to yourself. Sure. You could also hit up customer service at Adafruit.com in the email. They'll quickly respond to you. So check them out if you want a really quick response. They'll be able to actually actionably do things. We're just running the show. But good morning, Gary Z, hanging out in Discord chat room. Yes, people with that may not know shipping and all the products and all that stuff. It's in New York. We are in Florida, so we can't. Yeah, we don't have the controls to do it, but yes. All right. Let's go ahead and jump into this week's overview video that can allow you to make projects. Super cool launch of these two super awesome apps. It is PyLeap and Glider. These have been talked about in the Circuit Python meeting for quite a while. They've been in development for even longer. This is a really good way to edit code and send project files along with all the libraries and dependencies over to Bluetooth enabled devices using Circuit Python, specifically 7.0. Super cool way to navigate the directory of your CircuitPy drive. And the most important thing is you're able to edit code. You can transfer files over. And with PyLeap, you're able to select from a gallery of a bunch of the Bundlefly enabled guides on the learning system to quickly get everything over to your device without having to need a desktop computer. Perfect for educational environments.  Very cool way to do that. So one of the cool examples that we're showing in the video is how you can grab an audio file off of whatever directory we're using dropbox and then we're just copying and pasting it into your device here. So the other cool examples would be, especially with the holidays coming up, there is this ornament you can get that allows you to record, say, grandpa's voice and have it saved as legacy. And you can quickly transfer that over. A couple of weeks ago, we made this Spider-Man ornament. Yeah, the Green Goblins, Pumpkin Goblin, Green Goblins, Pumpkin Bomb ornament. So a really cool way to have audio in that, change colors around and all that. And what you're seeing here is all the code that is living on this sort of pie drive. So you have access to your directory. And one of the things we've got to post in the video, one of the first world quests from after posting is, where is the pie glider? Link for that. Let me go ahead and post that in there. Yeah, sure. You guys have not seen it. I'd like to say some words too. All right. So there's two apps, right? Pie glider. That's going to let you edit and modify move files. The Pie Leap is a way to just quickly test out demo code on your circuit playground device. We're going to support other boards. But for now, it's particularly for the circuit playground blue fruit as noted by, you know, the thumbnails and things in each of those little things. Glider does have the ability to access and transfer them over to them. We just needed a way to kind of feather demos over Bluetooth. How do you send a project bundle over Bluetooth? That was really like the core thing of why we needed Pie Leap to be a thing. Is that, okay, we can upload these premade file or these premade project files to the circuit playground blue fruit. There's a slew of them. I think there's like a dozen. And each one of those actually has a learn guide. So if you look, each one of these demos is a learn guide. And that's kind of the way the back end is working. It's pulling all that data from these individual learn guides. So as you click on one of these, this is Pie Leap. Remember Pie Leap is the one that has the code that's premade for you, just to kind of, and these little purple titles just kind of give you an idea of what the project is doing. There's so many sensors on the circuit playground. It just makes sense to have variable different ones. You can see here even the eye lights. So the eye lights is like the second hardware that is supported. But which one do you want to do? Or should we, if you tap on one, you can kind of get an idea of what it is. There's a button there that says send bundle. This is really important too. I'm just noticing that the serial terminal lets you know what hardware it sees right now. It is connected to the circuit playground blue fruit. And it tells you exactly what version of circuit Python you're running here through the serial terminal. So this connection is already established. Here are some things that it will download to your device, right? Dependencies and library. So you get a really good list of what you're actually pushing over to the device. Very, very cool. But if you didn't want to send this premade code and you have your own code, that is where the Glider app is necessary. So this is the peripheral, the board, the circuit py drive shows up as a unique identifier up there. And then these are all the files that are on board the thing right now. So you have an MP3 file, you have your code.py file. So let's say you have multiple code.py files and you want to rename them and stuff. This is the latest thing. You can do this and rename the code if you wanted to swap out your demo code. So that's really helpful. And then if you wanted to edit it, what do you click on? Just tap right on it. Just tap on it. The other option is to move it to a different directory. This is bare bones like tax editor. It's just an input box. But I think at some point it'll make sense to have color coding and all that sort of stuff. But right now just be aware that this is just your rudimentary text editor, you know, from iOS. So you hit the save button and it would update the code. But let's see if it works in this orientation. Maybe you get even less room. But that's just the way, you know, it's it it hopefully will get some some better text editing. But just be aware that is how you would edit it. Right. So there's a lot of situations where folks in educational settings have a Chromebook and USB just it just isn't a thing. It doesn't work or it's locked down. So being able to edit and send code via Bluetooth is is the workflow that we're we're trying to tackle here. So that is just a quick little demo. I mean, Peter's going to do some actual modifying and editing. I just wanted to get out my version of awards. Yeah.  And it's a good demo. It's in terms of being able to quickly see the change for it. So here we go. You can see that it starts off with a pretty default sensitivity of it's pretty high. So you'd have to like scream into it or tap onto it really loud. Not following the whole tenant LEDs. So you can see here, I'm just going to click onto the code.py file, scroll down to where the color values are for this. And it's nicely commented. So you can see the way that the RGB colors are all set up. So if I do like zero for that one, and because it's so bright, do like just a 10 right there. So it's going to be green. And what about the sensitivity? And you can see just how fast that updates everything. And then we'll go down to the sensitivity and we'll drop that down from 1500 to just 500. And that should be able to fill up the entire Neopixel little ring there. You get a notificator and it's updating. And there you go. It's going to white, but it's green here. One, two, three. One, two, three.  Make it brighter. Make it 255. It'll look white now. No, I think it'll be fine with green. Let me see. I think when I was testing it out, 100 is where it... 100 is a good number, huh? Yeah. But let's go ahead and blow it out to see. Yeah, perfect. I like the illumination coming out of your fingers there. Nice and green. Green is good. And you can take a look at what the code looks like and all that. And one of the cool things is that if you are transferring between different projects, some of the files like the waves will stay on there. It's just overwriting the code.py file and the stuff that's inside the library. So one of the other things you could do is save out your code. If you get it to where you like, you can actually use the built-in files app for iOS to save your favorite code. So one of the things I have on here is the touch one that we're just using, because the thing that we're geared towards is getting the kids comfortable to be able to read what the code is and apply new things to it. So for example, with the Wave playback, it's just set up to do buttons, but you can also have it set up to do the touch pads. So what we were showing out earlier, and that's a really cool way to get them comfortable with what the code is to that and then add to it. So it's a super cool way to quickly modify code on your devices and back up, save any of those codes if you want to have those duplicated into other boards as well. It's a nice really simple way to do that. All right. If anybody had any comments, questions, suggestions, let's see. Let's know. Yes, lovely. A72 is asking, is that blue fruit? Yes. So any of the Bluetooth boards, we're hopefully going to start supporting. For starters, this is the Circuit Playground blue fruit. The NRF52840 is the chipset that we really adore for all BLE devices. So another one would be the clue board. That one has the NRF52840. Hopefully that will get supported soon. It has a screen. It's got temperature sensors all over it, touch pads as well in that micro bit format. What's another NRF? The other one that we were testing this one was the Feather NRF52840. Yes. So the Feather NRF52840 doesn't have any onboard sensors. So you'll have to have some things connected to it. Just be aware of that. That's why we're really focusing on this one. Because Neopixels, buzzer, temperature sensor, touch pad, it's got everything. It's really what it's for. It's like a playground of sensors. The other thing that works as well is the eyeglice, the LED glasses. The LED glasses was another one. That'll work with that as well. Yeah. Just a little lipo battery right there. So if you want to know how it's being powered, you just got a little lipo battery. So if you want to have this as a pendant or something, you can do so many different things with the circuit playground. So we have a little magnetic backing that just attaches there. It's a simple way to make a little wearable. Right. Right, I did. Of course, Iron Man. First thing that comes to mind is to have it right in the center and change that around. Yeah. That's really cool. That's really cool that you don't need to worry about USB cables and all this stuff. You're just going to worry about Bluetooth. Hopefully. Yes, they are questions or just comments in the Discord. Do I still say that? Yep. A lot of people waiting on the Android version. They're getting all the foundations of getting CircuitPython to be able to read the types of connections that are required for Bluetooth and the mobile devices. So as soon as they get all of that down, they will start working on the Android version. Yeah. Shout out to Trevor, who's lead developer on the iOS side for the PyLeap app. We got a learn guide as well. If you want some more documentation on PyLeap, this kind of walks you through it. Yeah. So you just want to make sure you have the latest version of CircuitPython. That's what's so cool about this. You just drive and drop. Nothing special. Like, there's not a, like a special. A special you have too. Yeah. It's just baked into the core of CircuitPython. Yes. So that's what we really wanted to make it an easy transition for folks. Whether you want Bluetooth, or you just wanted to get through it USB, you can both refine in Dandy. And now this one just walks you through a little bit of like setting up, hitting the reset button, and just some LED notifications to let you know when the app is searching to pair. So the app kind of does a good job of on-screen instructions on how to pair. It's pretty straightforward. Yeah. And each CircuitPython device has a unique identifier. So that's how you can tell if it's the right, if it's the right border or not. The modules are the projects themselves, right? Yes. Modules are the projects themselves. So you can take a look at each individual one and see how these are structured up. Yeah. So if you wanted the wave playback one, click on that, and it'll take you to that individual learn guide that walks you through the code. So that's kind of how the structure is set up for these demo codes in PyLeap. Here's your project card. Yeah. So definitely check it out. If you have yourself an iOS device and a blue fruit, start your playground. Definitely check it out. Let us know what you think and get your feet wet. Other ways to let us know what you think. Lovely, A72 is asking, is it open source? Yes, this is available on GitHub. Yeah, you should be able to see all of the latest pushes that were sent out, I think, this morning. So check those out. Just search on GitHub's Adafruit and then just search for PyLeap. You should be able to find it there. Yes. Please file any issues on the GitHub as well. If you see any bugs, we are ready to fix. That's not bad. That's the gist of it. This is public beta, right? Public beta was submitted to the App Store, so it is in processing as we speak. So it should be live any day now. Yeah, we'll let you folks know when it comes up live. Oh yeah, we'll be posting all about it. But for now, I did post links if you want to get the test flight betas for that. It's super easy. I think it just sends an email and you immediately get the link to download the latest. Let's try to remember if there's anything else we wanted to cover. I think that's pretty much it. It's nice compact. Program wirelessly, so fangirls. It's needed to happen and it's happening. Very cool. All right, there'll be more chatter about this as it gets released to wider audience. All right, let's go ahead and jump into this week's what are we prototyping? All right, this week we are prototyping 3D printing and CNC milling. We have a little bit of a fun festive lamp project. So we cut up some pieces of acrylic and 3D printed a little holder for a strip of neopixels.  We thought it'd be fun to kind of make each piece of an acrylic kind of a different engraving. So it kind of makes this animation. Using the LED animation library for Circuit Python, you can do some fun LED chase animations. That way you get this cool kind of step by step frame by frame animation that's happening here.   But you could laser cut it if you got yourself a glow forge or something. You could cut these out no problem and do all sorts of fun different designs. But the 3D printed case here houses this little gray piece that has those slots. These are swappable. So if you want to pull this out you can see they're just little pieces and you can do different shapes or whatever. But inside there that's where the strip is. The design just takes a 60 meter neopixel strip and then just spaces them out and holds the strip in place with this little kind of a little groove that just kind of slides in there and locks it in place. For the microcontroller itself it's the QT Pi RP2040. It's my favorite little Circuit Python board right now. It's inside here. I have a pretty nice snap fit going on here. So that's why I don't want to take it apart because it's got a nice snap fit. But the idea is to be parametric. So if you want more LEDs, if you want this to be a long you know thing of acrylic you could make it as long as you want. And infusion I set it up so that the user parameters you could just give it a pixel count and it'll grow the design and scale everything to it. But I thought eight so there's eight of these. I thought eight was a good number. You could you could do as little as like three or four just to get that you know. There's a lot of designs to acrylic things that have like just two frames and it makes kind of like a fun animation. And it kind of reminds me of like those Las Vegas neon signs that kind of have like two frames. So that's kind of the idea of going for. But it was really easy to set up the code using the LED animation library. The LED chase animation works really well here because you can specify how many LEDs you want. And then the speed of which and I had to kind of slow down the speed a little bit so that you can kind of appreciate each frame. And sometimes it skips a little bit because of the way the the timing is set up. But that's kind of how I have it. So this will be next week's project. Hopefully we can get out a learn guide and a video. This will be the last this will be the last project of the year from us. I think I might make another sign that says like happy 2020 or something. Happy holidays and then 2020 at the end or something. But that's kind of what I got going on. So new pixel strip 2D pi circuit Python some acrylic and 3D printing. Right. So that is the thing that I've been working on. Okay. We're quest from DAO 20 asking if you can hold it with the camera pointing directly at the end. So it cycles through one piece. Yeah. It's kind of hard to to see it. Yeah. The effect is a lot better. The effect is a little bit weird when you look straight on because of the way they overlap. So there's one of those things. It's not like this thing's too big. So it's kind of like and the focus is odd as well because of just the better in the video and we're not constrained to the right where the cameras are here. Yeah. I don't know how else to. Yeah. And because this room is so lit it's not the effect is way better at night. I'm sure you had a demo video or the darker. Yeah. And it looks really cool when you when you're it's in the dark. It looks really really stellar. Yeah. So you can see I have some snowflakes coming in there. I engrave some snowflakes. But some folks had some fun ideas on Instagram. They're saying like you can do like a scene like from Super Mario from your favorite game. You can do like a nice scene. Yeah. I've seen a lot of lithopains that are multi layered lithopains. Think about that in this way or some geometric animations like some seamless loop gifts. Like imagine those etched out in here and yeah. If you wanted to bring them tighter together you would use a different neopixel strip. This is just the 60 meter one which is like a medium density. You can see it right in there inside that little groove there. And then here's like a I've been working on the CAD animation because I'm working on the learn guide. So here gives you an idea of all the pieces. The green piece is what actually holds the acrylic. The black piece is what holds the neopixel strip. The brown cover is what allows them to be housed in place. And then the bottom cover snap fits into the into the case. And the new and the cutie pie snaps into the built-in holder on the end of the bottom cover. So that's a bit of what the what the pieces all look like when they're sandwiched together. Well I can say about it. People want us to turn off our lights so they can see it. Like we can if you want to hit that one. See how good we can get it. Let's see if the uh. Oh snap.  There you go. Happy holidays. Yeah so I'm going to syncing it to music would be pretty cool too. Yeah. I wish this was a blue two thing so then I can edit the code because I keep getting some glitchy. Like I need to update the timing so it goes through the whole thing right now because sometimes it skips it you see that.  If I just had one animation sequence I could time it better. But you can see that I'm getting a little bit of a skip here so. But man those are really coming out nice and clear. Another thing just as a tip I always forget to do this but when you're engraving acrylic always flip and mirror your stuff because on the other side it always looks better. It just looks more clear and clean as opposed to like the actual etched side. At least for milling that's what I found. Maybe laser cutting is a bit different but for me I always forget to flip my artwork mirror the artwork so that it actually looks better on the opposite side. Yeah and I really like the ed you know the shape could be growing or changing its shape as it's animating back so if you want to play around with the different shapes like I think folks can make some cool I don't know like a walking cycle or something of a ball animating. I tried to do a little bit of a wave thing but I think this festive version is works okay. Another thing is like because of the way these are all stacked in front of each other layering them on top of each other kind of kills the effect a little bit so be wary of that like. Um yeah so that's that's it right there. Should we hit the lights? All right quite the difference. Yeah it really really changes it up there. Cool and that is what we're prototyping. Yeah if they were closer together so the the spacing is defined literally by the the spacing in the neopixel if you wanted to do something really really close change out the um you know change out the neopixel strip for a neopixel stick but even then like they might be too close up together and because we're 3D printing we kind of wanted this gap here because otherwise you would just have you wouldn't have any way to separate them but the little black piece actually isolates the light from leaking into each other so you have to think about that when like the light has to it's very much like one of these neopixel grids you need to set you need a divider in order to stop the light from leaking into the next frame so and yeah so that's why I picked the 60 neopixel strip it's like 20 bucks for a strip of a of a one meter and that's 60 pixels and this is only eight so you could do a custom one where you like wire each individual neopixel I didn't want to do that because I kind of did that with the menorah and it's a lot of work so just leveraging an already existing strip was kind of my jam was like okay that that'd be a good idea that way don't have to worry about wiring each individual neopixel there was the compromise of the buildability yep yep the way that the existing parts are uh ujia is asking can you control the speed of the lights absolutely can um so this is pretty much the sweet spot so you can actually get an appreciation for each frame without it going by too fast you know I do not have usba yeah this is where we wish we had a bluetooth cutie pie because I if I plug it into my to this machine it will definitely break it because I it's very fragile right now with the usb drives um but yeah page is going to go get an adapter so we can change up the code you know right at the point where everything is going to switch over to usb c yeah so we need more of those little two hikis all right fire up uh mu and then um we'll uh change up the whoops the speed oh hey look at that new computer I don't have mu on here really you've never used new nope because I've been programming everything through bluetooth that's cool how funny huh yeah all right let me uh we have a little bit of time so let me we're just gonna we're just gonna try it I'm gonna try it I hope I don't break the uh the wire cast set up here but I'm opening up mu now I'm downloading mu okay this is a live show we gotta do it huh how hilarious all right let me switch cameras to the uh the full side effect here did I get rid of it yeah oh nope I got it here all right so here's mu um I'm just gonna change up these speeds to one and it'll just run through it real quick but you can see here you have a couple of of things to parameters to play around with with the uh the chase uh animation module you can reverse it you can change the spacing and the size right now the size is set to one that's telling me that I'm gonna light up one pixel uh per animation cycle so I've updated the speed to just point one of a second let's see what that looks like in the overhead and there you just have another speedier look and you can see why now I just slowed it down um just so you have some time to process to process what it's saying so that's why I kind of slowed it down but if you had a walk if you had a per you know a walking and if you want that speed to go there the walking animation or if you just had um like these little uh wing wing bats or whatever then that would look cool but when it comes to words and messages you kind of want to slow it down a little bit um but yeah and what is the thinnest that the acrylic acrylic can be at and get something yeah ooh whatever I guess I guess an eighth of an inch so an h an eighth inch that was three millimeters that's half the thickness of this but again this is a quarter inch which is about six millimeters thick I really like the six millimeter stuff because you have you just have this really nice thickness of it and because these pieces are kind of relatively small um it makes them look a little bit more thicker than they really are I think yeah but that is the speed update there all preference yeah and you can orient it in different ways if you wanted to have it on the wall and just be a bunch of different shapes you don't have to do engraving you can kind of get this kind of neat effect if it was like hanging on the wall or something um yeah or if it was like curved or something you would have to wire them individually but lots of fun different ideas depending on how how do you want to wire it up and lay out your acrylics but yeah it's like a cool let me see if I can um if I turn the size let's do like four by four and then four of them will light up at the same time see what happens here there you go so you have more of like more trails there oh yeah they're a little bit more blended but maybe depending on the artwork it'll look a little bit better and of course you have like the rainbow chase that you could do as well if you wanted to do rainbow chase let me see what that looks like uh let's do rainbow chase the uh switch over so you can see what I'm coding here just instead of using the animation sequence I'm just going to tell it to do one and there's sort of this nice rainbow cycle that's going on there they are stacked yes I believe they would leak into the next yeah like I said like the behind the strip is that little black bar and that has you really can't see it but that just isolates them so that's why those little slots are like that to really keep the light isolated and that's how that is the very principle of how uh this guy over here is working oh that one's frozen holy crap hold on wow it's been it's been like months dude this is a nrf too sort of python crashed down for two months but there's the principle for this thing here is that the grid is what's isolating each one of those pixels so they don't leak into each other yeesh but yeah all cool effects it's so fun to play with circuit pythons led animations because you just mess around with the the spacing and the in the speed and you just get a completely different effect colors and all that fun but yeah that's a cool one cool any other fun suggestions uh let's see just some comments yeah definitely lots of potential for different design options yeah what if it was a wave file and it was like saying like a word or something like I love you or happy holiday you know that'd be really cool some sort of uh yeah it'd be cool like do like a heart thing like if it's growing every frame it's like be really cool so this is up to the artist your creative brain how create like I I wish I spent more time on the creative idea aspect of it I getting the getting the pieces and then like what am I gonna cut like I had to commit to something so hopefully someone else or more artistic can do just some stellar animation or like hand hand drawl something you know like maybe Sophie does something fun um sorry let's see what I want cool tweet yeah yeah definitely yay people it thanks though 20 all right good idea all right well we are that was what we're prototyping we're gonna try to come out with this next week um so yay all right let's go ahead and jump into this week's community makes yeah community makes this week is something fun it's fun and doubles the storage if you got yourself a Nintendo switch and you got all these little game cartridges and you're looking for a better place to store them all I know I was this is a really nice one so this little design here held 16 of them and the little slots are nice and tolerant loose so they don't they just kind of fit in there with a little bit of a loose fitting which I like I don't want them to be too tight because the last one I had was too tight but let's take a look at the time lapse um this was printed in some real cool marble filament PLA filament you can get this stuff off amazon relatively small print probably takes a few hours what like four hours or so 11 hours no no no if you're not time lapsing yeah it'll take two days but if you're not time lapsing like just half of that five hours five hours or so yeah there's some support you need because of the shape of thwomp but thwomp I didn't even mention is this not even really the character it's a bit of an obstacle yeah in this Mario franchise yeah he's just the angry looking stone that wants to murder Mario but it looks really great in this marble PLA so if you're looking for something to do with marble PLA and you got some Nintendo switch stuff check this one out has it looped yet and this is from Jeremy default default perfect uh Christmas it's a remix actually like stock stock stocking stuff for to go along with any games or Nintendo switch that you are gifting at this holiday season you you show that off while I pull up the thing over his page yeah so the only thing that you do have to remember to do is enable the supports I did print one before and all of the overhang unfortunately just because of the weight design you could have added like some drafts or something like all around the lips and the eyelid areas but yeah you're definitely going to need the support material enabled for that I just use the whatever cure decided to generate at I think 70 for the degrees and that should do a pretty good job of being able to pull everything up is it completely flat or does it not nice and flat that's cool has a 45 degree angle so you get that nice texture yeah they did it there but you can do it to having like a draft like right underneath there would have helped immensely in terms of having that lifted up with no supports but other than that yeah double-sided um like you were saying nice loose yeah that's on there now let's give let's give credit to the original designer as well because this is a remix oh the remix added more cartridges uh so uh jet duff on thing over says um I just made it instead of six it now has 16 so it's just bigger but the original design is from is right here that's why I like Thingiverse they have really nice weighted so handy dance 3d prints is who who pushed this up there um the original has six oh wow what are these locks looks like it's sd cards oh sd okay so that's cool so if you wanted to remix it and put compact lash cards you could very cool you could kind of remix the design as well is this a remix of a remix of a remix no looks like it's all right and we got oh and there's other designs of the thwomp so very cool yeah it's a great idea um yeah i feel like i've printed this before that was uh something else different yeah maybe sd cards i think so yeah well yeah i like it very very cool so if you want to get your own you can use the link in the description of the time lapse print it out and it's a little bit of supports so this week's we need to make yeah i think we have a couple more but real quick uh question from mike p new question about the acrylic where can i get some acrylic yeah i get mine from um the amazon i get mine from no i get mine from the ventables i'll just show you where i get it shop they got some real nice acrylic i think that's some tools too didn't they they might um yeah so they have done a bunch of different colors uh i click on the half inch and then this right here light guide acrylic sheet they come in this thickness and they have different sheets so eight by 12 or 12 by 24 i tend to pick this one i got a small cnc so i have to cut these up and into pieces um that are like 100 by 100 millimeters but this stuff is great this is what i use um they're always nice and flat and uh there's some examples of look at this martini you should have done a martini huh oh that's cool a google home indicator yeah there's so many fun things you can do acrylic once you're done with the project is when all the ideas come because it took so much time to get the base and everything else working so the other idea too was like having ate a bot like say stuff like his ears this this project really makes me want to get a freaking glow forge because like i do not like milling um unless you had like a dust collection system like i'm cleaning more than i am milling and that's just the thing i broke tools i've i've damaged acrylic pieces yeah so it's just the thing it's that that's the that's the name of the game with the cnc get away so we can clean out our garage yeah get a glow forge and then and it's easier to in my opinion i think it's easier to uh to laser cut graphics because like you can just give it an svg yes the the software i'm using doesn't play each path yeah you can have to program each path which is time consuming but hey this is a good place to get acrylic is invincible they also sell um and mills if you are doing the the engraving the cnc engraving now now so that's a nice new year's resolution right there laser yeah all i want for christmas is five sheets of acrylic that's fun all right any other cool comments um oh your local hardware store says acrylic now be careful of that because i did that way long ago in the acrylic i got had uv protection and it messed up my tool bit oh so uh just be aware that there are some acrylics after that has like special coating that might not fare well with your end mill laser cutting might be different but with my end mill i remember messing one up because i got like this this smoky black acrylic and it had built in you know uv protection so i guess that's what messed up my tool bit or maybe i didn't maybe i was stepping down it was the early days of milling so i don't know just a random thought i remembered the local hardware store but yeah we got a couple more community makes there was that from last week um we got time so i guess we went through them there were from last week but we didn't share them because like we were always running out of time all right so let's take a look at some other community makes i don't know what this is oh this is a watch band apple watch band ninja flex it doesn't have to be an apple watch because that's not an apple watch yeah the um whatever the connector is pretty standard ender five prints out ninja flex really good my first print with the dove adiva ninja flex like it nice very cool yeah definitely print your own watch band and ninja flex i think it's really cool really good test of getting your settings down and you get a nice little wearable out of it for sure and you can change out the colors you put your own designs very very fun this one is specifically designed so you can swap out the filament and have the top be a different color shout out to uh w cells chop for posting that up all right here's another one this is a make of our 16 by 16 new pixel square display that we have here in the back super cool mario design a little clock action modified it to work on something else this is a whole blown pie or something very very cool i'm i'm glad people can uh you know take the frame because that is really what i'm contributing here and then just make it work with whatever um you've got a linux board you have a microcontroller and arduino uno use whatever yeah this is great so this is by uh salin who posted this up with a bit of a remix and the last bit one here is one of the old ibergoody the talking d20 a collab project we did back in the day 2015 with uh phil b painter dragon this is a uh a d20 that's three printed two halves that fit together with magnets and has an accelerometer um so it knows uh what face it's on and it'll actually say it'll play back wave files it's a really intense build um totally worth it totally yeah it's it's an it's it's just one of the still to this day it's an amazing project that it knows and tells you what side it's on yeah um printed on the ender three with a point four nozzle point one eight layer height notice some filament sagging recess the numbers printed with tree supports it helps a little but they're still not as clean as i'd like makes me wonder if it's time to upgrade from my stock cooling fan using a krill t ender three nice very very nice it looks really really good there definitely add that extra cooling it will all these are magnet posts and thing boards you needed three or four boards you need a lipo charger the trinket the accelerometer i think that's a lipo board oh and the sound effects take a look at it oh crap we should probably do this with any of the overhead okay so here's what it looks like if i can get the really strong man it's just gonna fall apart let me go oh there's wires yeah oh there's a speaker daughter it's a circuit sandwich for sure i think it's a sound effects board this is all done in arduino by the way remember this is 2015 where you plug in the battery's dead okay then you do that's phil b paint your dragon how amazing uh 10 you even have a dot there to tell you what's the orientation of nine i can't believe it's five three sad three that's a monday python all right we're gonna play with this for the rest of the day now i think i remember charging it one good day sir it has jokes so shoot shout out to build it just for all the puns that phil b has in there r 22 thanks for posting that up i hope you build it i haven't seen too many builds of this one the ultimate uh gift for you know the 20 games and all that i like a really big one that would be a lot easier for some of that's funny andy callaway's got some jokes where's the lawnmowers not today not today oh man our grass is gonna grow out of control all right boy well that was super fun blast from the past what happens when you roll uh 20 it knows you're cheating it knows a good show excellent all right well with that we're gonna close the show i guess any last comments and questions let us know um but we're gonna uh start closing up the show i guess get ready for uh i hope everybody has a wonderful time off for the holidays uh the last one go we're crashing circuit python long term buffer overflow or spike electricity also shouldn't know what day we're gonna catch that yeah i don't know what when do we crash circuit python oh for the for them oh but there yeah yeah i don't know what happened over there i just hit the reset button it seems to be working now maybe i'll reset the button again and on cool thank you as well duester we're gonna close up the show don't forget later tonight we invite you to come on show and tell that's gonna start at 7 30 p.m with special host j.p himself john park hitting it up and then asking engineer has returned to the wednesdays that's going to be at eight p.m use your time coupon codes um new products new products sneak peak staff uh ion mpi every time you go to that segment uh i want t-shirts makes me want to see what is in interfered.com slash new t-shirts looks like that's an accelerometers some buda speaker boxes to buda and she goes and pick up this rework station with the uh magnets on it that thing is so cool hold on let me pull that out here oh i'm gonna stop though yeah here's some new products what did you want the the re-roll this thing yeah yeah we got so cool that's pretty neat yeah doc octu doc doc doc all right well tonight it's showing tell i hope to see you there again special host jp we hosted last week thanks for everybody for showing on um but uh it's jp's turn this week jp's on tomorrow as well he's got a thursday show every 4 p.m eastern time scott's doing up the uh friday livestreams deep dive the scott's at 2 p.m pacific that's 5 p.m eastern we're wrapping around the sundays from the desk late eighties on saturday sundays you know fridays yeah she did one on friday once so very cool just make sure they should subscribe you'll get notified right away we don't even know that's the only way we know get the notifications even until they do it jp's on tuesdays um you can get uh some fit up to 50 percent off products select products insane if you check that out live during the show is when those discounts are available yeah this week was the cricket feather very very fun piece of hardware and then on mondays i kind of skip monday but we do the circuit python meeting it happens at 2 p.m eastern time every monday we exceptionally use holidays but that's pretty much the whole week of the shows we do the show every wednesday at 11 a.m eastern time same bat channel same bat time and with that yep one last look at the chat room before we see but you know how like the uh hosted by the lars the lars yes lars all right lars everybody stay healthy and make sure to make a great day bye folks see you later tonight