10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. 10, 9, 8, 7, 6, 5, 4, 3, 2, 1. Friend and country man! Ollie, how's the light look? The balance. This side is dark. Okay, but it's... The sign was blowing out. When you look at the... They got a white card on the podium there, so... You see what I mean? You want... I'll... I'll stay here. Spencer, can you hear me? Are you behaving okay? I don't know, I'm on my toes. I'm trying to be Phil Scott, but I'm not. I'm still not tall enough. Be careful what you wish for, Spencer. I feel stronger. Are you putting the race car sign? Yeah, I got... Yeah, this will definitely feel stronger now for sure. You see the difference, Joe? Yeah, I don't... Well, they're just making them, so... But they're going to be in the middle of the table, probably. Okay. Well, this one definitely... Yeah, it's stronger than it was, yes. Does it look better? When you compare the podium, signs here and my face? Not that it's not a good face, I understand that. I'm not trying to... How is it, Joe? Pretty even? Yeah. No, I don't. But it's better than it was, right? It feels stronger than it was, okay? Are you good? You want to check it? Yeah. On my right or your right? Oh, wait, there's a balloon in the way, wait. Yeah. How's it now? There was a balloon diffusing our light. How am I now? I can like... This? I know, they're very white, so... Are you okay, Joe? So far? You can, like, get up there and tilt it down. You just tilt it down a little? Yeah. Right? You had a ladder there? How do you check that? How do you check that? So, it looks wonderful. Alright. Check, check, check. Ten, nine, eight, seven, six, five, four, three, two, one. Ten, nine, eight, seven, six, five, four, three, two, one. One, two, three, four, five, six, seven, eight, nine, ten. Check, check, check. Where else is that? I think we're sat. Yep. Test of the emergence. I want to use the other microphone, so I want to just put that in, so I have a mistake. I'm going to change mics. Check one, two, test. Test of the emergency broadcast system. Ten, nine, eight, seven, six, five, four, three, two, one. This is the real one. Okay. Sounds good. Okay. Thank you so much. Alright. Sorry.  It was working the whole time. Stop. So, he wants us to get a two-minute interview. Do you have someone for you? No. Like when? Just any time. For what? For soon. For 525. For that 525, 530. Yes. So now, as soon as we can, and if there's no one here, he said just do like an intro thing. Let's just do a generic one. Okay. And should I go and get that count? Yes. Okay. Five, four, three. It's Matt Kelly. We're live here at Vermont GOP. I'm here to talk to you about town meeting from G. O. P. Headquarters in south Burlington for election 2018. It's the calm before the storm, if you will. Pretty much throughout the room. Camera crews are setting up, awaiting the night's festivities. Before long, we expect Governor Scott to appear and work the crowd a little bit. Also, Don Turner is expected here as well as other Republican luminaries who we expect to have some interviews with throughout the night. So stay here at Channel 17 Town Meeting coverage 2018 from GOP headquarters in South Burlington. I'm Matt Kelly for Channel 17, back to you in the studio. Great.


Hello, is this thing on? Is this working? Oh my gosh, I think it is. Hello everyone and thanks for coming by to the live stream. Here we are, it's John Park's workshop and I'm fixing things on the fly here because that's not the name of today's show. Today's show is Halloween prop tear down, down, down. There we go, how's that? That should appear on your screens. Yeah, almost automatically. So yeah, I had the audio system go completely silent on me right before the show.  So I'm glad it seems to be working now. I won't, I'll try not to curse it by saying it's actually working. But hey, thanks everyone for stopping by. We've got Gary T. and Connor McCarter and shuttle pod one and Dave Odessa over in the YouTube chat. Thank you for coming on over and then we got a whole slew of people in our Discord chat. If you're wondering where that is, you can head to the Adafruit Discord. It is, you can go to adafruit.it slash discord to get an instant link in to join up. And then this is the live broadcast chat channel that we're in here. And I am one of the things I'm testing mostly new. I tested it last night during the live stream for the unboxing is I am running some of my applications in their browser versions today rather than their stand-alones based on a suggestion from Todd Kurt. I was running Discord as the standalone app. I was running Slack as the standalone app. I was running Basecamp as the standalone app. And there's a decent possibility that those were causing trouble all being opened. So I've got the browser versions of those running today instead and we'll cross fingers. So what else have we got going on? Thanks everyone for stopping by the unboxing for Adabox 20 last night for those of you who did. That was a lot of fun to do. If you are curious, you can go back and watch it. We have the live stream archive up on our YouTube. And if you are like most people you probably haven't gotten your Adabox yet. Those are all in process either parts are still heading over here to get assembled and boxed up and shipped. Some of them have been put together and we're waiting to ship them. Some of them have been shipped. I show hands, has anyone gotten theirs yet? I'm curious. I think some maybe have gotten out. We've probably had some real shipping going on for a week or so now. So again, we thank you for your patience with that. It's the world we're living in right now. And if you are patient, I think it'll pay off cause it's a really fun Adabox. And there's gonna be one in the winter. So if you didn't get involved in this one and you're looking to do Adabox, it's now possible to sign up for Adabox 21, which will be the winter one. Rich Sad says, it's the worst thing that ever happened to me. Just kidding. Yeah. Yeah, if that is as Felix to say, if having a delayed Adabox is really gonna cause you a bunch of Adjida, then you may wanna consider pausing your subscription and someone else will be able to jump in on that. So let's see, what else? I don't have a recap for the product pick of the week show this week. Cause I did not do the product pick of the week show. I was busy with some editing and prepping and stuff for the unboxing. This is what the prior weeks one looked like when I did the haptic motor driver. And there's plenty more from where that came from. So I have a cool product pick lined up for next week. I won't tell you what it is. So that'll be some more exercise in patience and anticipation. And I am sorry I didn't dress up for Halloween today. I did a little bit of dress up last night and then over the past few days as I filmed and edited the unboxing. So I've got some of my stuff that I used out there, there's that great devil seer mask back there. You can probably see him wearing some glasses. And this was the very cool, let me get this out. Giant head for the to serve man alien. It's a great mask right there.   Look at all the foam they put in the top of this. It rests on top of your head. It doesn't cave in. So that was fun. What else? I do have one sort of Halloween prop costume themed thing that I'll show during the Circuit Python today. Sorry, the Circuit Python Parsec today where I go over some cool tips and tricks in Circuit Python. I will mention we've got the jobs board. So anytime you want to go and post for a position if you're looking to hire someone or if you are looking to get hired, head on over to jobs.datafruit.com. All you need is a login. It doesn't cost anything. It's free and you can post a position. It will be reviewed by Phil and Lamor. They'll take a look at it and see if it's a good fit for our audience. And you'll know it's been gone over and should be something that some of our viewers would be interested in. Let's see, what else? So we're gonna do a Halloween prop tear down today. That was my sort of, hey, I don't have a real project because we've been consumed by Adabox stuff where I'm not building anything from scratch, but I can take something that someone else built and hack it apart and have a look at it and maybe some considerations for hacking it further or modifying it if we want. So that should be a lot of fun. And I think we'll get on with it. So how about time for the Circuit Python Parsec? Let me get prepped and ready. Here we go. Yes, Circuit Python. Right, here we go. So let me turn this on so that we have a little idea of what we have to look forward to. For the Circuit Python Parsec today, I wanted to talk about using a microcontroller to control two separate strips or rings of neopixels. And as you can see by my code, this is a little demo example from my good friend, Todd Kurt, Todd Bot as the internet knows him. He shared this with me and I wanted to share it with you. It's perfect for this type of goggles project. You can see I've got a couple of prop goggles and I've got a Gemma with a little lipo battery. It's kind of tucked in there. And this is running two 16 neopixel strips, I believe it is. Yeah, the code there says 12, but these are actually 16. It's on a different pin. So in fact, let's edit that right now real time. These are on, I believe, D1. Whoops. Oh, I just confused. Hold on. I just used a keyboard shortcut by accident. Is that gonna happen again? Is it listening? It is. Oh, that's new. I can't type one and two. Wirecast is listening to my keyboard shortcuts even when I'm not on Wirecast. Okay, so I'll be careful with typing. This doesn't, yeah, watch this, this'll break it too maybe. Yep, and okay, so let's go fix some things. Let's get that out of the way. All right, that looks good. We'll start with some scratch. For the circuit python part sake today, I wanted to talk about controlling a pair of neopixel rings from a single microcontroller. So this is a pair of prop goggles that I have and I have two 16 neopixel rings. It's being controlled by a Gemma, which is an M0 based microcontroller and I have a little lipo battery tucked inside of there. This code from our good friend, Todd Bot, allows us to do a very succinct bit of code that gives us this nice spinning neopixel effect on two separate neopixel rings and you can see they're going in opposite directions. So the key things are, we're importing some libraries, board, time, neopixel and random. And then I'm setting up, we're used to setting up a neopixel strip. Here we got one called leds L for left and the command there is neopixel.neopixel on board D1. 16 is the number of neopixels and a base brightness. Then I have a second one. So this one here, leds R is neopixels on, I've said board D2 here. I think it's actually on D0. And I've got 16 neopixels on that one as well. Then we have a variable called I, which is used to step through each neopixel and we have a value to dim each subsequent neopixel. So this is what allows us to have this nice sort of glowing trail. Then we have an I color to start with and then in the main loop, we actually have a pair of these sort of multi-bracketed. It's like a for loop inside of a for loop. And what this does is it says for the left leds, we go from zero to a maximum of I, which is our starting variable, minus that dimming by amount. And that is inside of this max loop, so we never go lower than zero. So we start at 255, then we're gonna subtract 50 from it, subtract 50 from it, subtract 50 from it for each neopixel until we get to zero. We are also iterating through all of the 16 neopixels in this case. And then we're doing a slight change in the code here. It says J is the length of the neopixel strip, minus I minus one. That's what allows us to go backwards on that other strip. Iterate through that, change it to whatever the I color is, which is dimming with each pass through, and then show the neopixels. We then pause for a 100th of a second and continue on. And so this is how you can control two separate neopixels from a single microcontroller inside of CircuitPython. And that is your CircuitPython Parsec. And a big thank you goes out to Todd for the code on that. My longtime collaborator and friend, he does the coolest stuff, so thanks Todd. And thanks for your patience with my Wirecast session. That's a new one on me. I did not, I've never had it. I wonder if there was an update to the version that I was unaware of, because normally it has to have focus for keyboard shortcuts to do anything. And now it's acting otherwise. So that's pretty bizarre. Yeah, these are actually some goggles I had made a couple of years ago. My daughter used them in a prop, a costume situation. She wore them on top of a steampunk hat. So these are great to put on top of something. You could even put them on top of our LED glasses if you want. You can see through, I can see through that one right there that's got a little lens there. This one has the battery and the microcontroller in the way, so we don't see through that. I don't really want a lipo right on my eyeball, so better to wear that kind of as a headband I think. And also speaking of Halloween blasts from the past, the model that was modeling our delightful goggles is one of my milk jug skulls. So I started with a prop skull, and then I used a milk jug and a heat gun and a wet sponge to melt and conform to that shape, which is a nice way to create some basically free other than your time skulls. You can create a lot of them, have a little skull melting party and build up an array of skulls for almost nothing. And let's see, looking in the chat here we've got some people, John Ose's pending is the status of their AidaBox 20. Got some Beastie Boy fans out there too, excellent. Let's see, let me pop the discord on there. What else is going on? Let's see pictures, what's, oh, very cute. Lots of neopixels, guitars, baby Yodas. What's he called now, Grogu? Is that his name? I have not seen the second season of Mandalorian, I really need to catch up on that. But I think his name is Baby Grogu, something like that. You can tell me in the chat, who's this Yoda guy? Yeah, speaking of FFT visualizations, if you see Slappy back there, I think he's hidden in this view, but if I jump over to the main cam view and hide my discord, you'll see, Slappy's back there running, hey, oh, hey. You can see he's got that nice little sound visualizer running on his glasses there. All right, well, hey, I think it's time, in fact, to jump on over to the workbench and let's dive into this tear down of a Halloween prop. So, let's see if my camera switcher is still working. I'll jump to that view right there. Yeah, that should do it. There I am, okay, so you can see well enough, I'll get this off to the side. So, this is an animated eyeball doorbell. I just bought it, I walked down to a Halloween store. We actually have those and it's a year round Halloween store, but these, you can get them at drug stores, hardware stores, they carry them at the big box, hardware stores, I know you can get them online. They usually cost around $15 or so, sometimes a little more, sometimes a little less. And it is a battery powered prop doorbell. Check it out, it is animated and it is visual and it is loud. So, here we go, I'm gonna push this to ring, very cool. And you get random phrases. Oh, that's a pretty good you rang. I haven't played with it long enough to know if they're gonna go in an order or if you can get the same one twice or what the randomness is like. This is great, so this is meant to go on your door or a wall or a post or something like that. And it's pretty cool, I wanted to get a look inside of it and see what we can see. It has a mechanical eyelids that open up when you press it and they have a spring return on them that's pretty strong. So some cam on a motor I think is involved in pulling that open. And then it's got a eyeball, it feels kind of like a large ping pong ball material, it's painted and it has the LED. It always glows the same color if you look. It is bright green and it blows out a bit on the camera here. I can just for a moment try to bring down that exposure. So basically just a steady glow from an LED there. Sorry about the camera wheeling. And let's get to it. So one thing, by the way, I was looking at there, there are a few different props like this that have a tryout button at the store and the tryout button is kind of cool because it's usually a little button on a tag hanging off the side that says try me with a wire and it is plugged into the device with a little like PicoBlade connector and it's meant to be unplugged and not used because there's usually some other way that the thing triggers if it's motion activated or some other button or if it's on a timer but they put these little buttons on at the store that are kind of cool. And those look like a neat thing that you could hack with a transistor or a relay to have the thing go off when you want it to based on some microcontroller based event if you want or other circuit. But this one has the button right on it. So let's get in here and start poking around and see what's what. So I'm gonna get some cutters and screwdrivers and things to get in there. There's a big zip tie holding the device to the card. This by the way, I looked it up just briefly, Jemi, sorry, G-E-M-M-Y is the company behind this. They are the ones who came to market with this a number of years ago. In fact, I'll show you a website dedicated to it. And then I believe they're also knockoffs but this was the original one according to internet research. And so this is, if you look up eyeball doorbell, this is a fandom, jemi.fandom.com page. And so this talks about the different versions of them, the phrases that are on them. So it says this series of animated Halloween decorations made from 2015 to the present. They come in different colors and they have an eye within them, hidden with the eyelid push button underneath. And there's some different colors. It tells you what phrases are on them. There are also some other products such as crystal balls and other things that share the same phrases with some of these. And there's a number of designs. So the one I have is there's sort of standard one, I think, but then there are some pretty cool other shapes. So Frankenstein one, I've seen that one at Lowe's before, I didn't get it. I think that one actually has a cool switch, knife switch on it, it's a Ouija board one. So kind of a cool thing that it has this sort of longevity and it's been around for a few years now. And but yeah, I didn't find any teardowns or hacks of them online. So I thought that would be fun to dig into this one. That was, that's in stock. I'm checking my, I've got my discord on the iPad over here so I can keep up with the conversation. So first thing we'll do is, let's take a look at the battery situation. Like a lot of these types of gizmos, there's a little Phillips screw to unscrew to get to the battery, little battery door comes out and then those some triple A alkalines, three of them. And sometimes it's fun to see what weird brand of cheap alkalines are given to you for free. So these ones, focus that in, these are called ultra alkaline alkaline. And they went with both the K and the C spelling. GFS is the brand. They're not as light as some cheap ones I've experienced before but you may wanna replace those with some higher quality ones or maybe even some rechargeables or just use those until they run out. But take them out after Halloween if you're not leaving this thing up because these will leak. They love to do that. So now we've got four, let me get a bigger bit on here. We've got four Phillips screws. It looks like to take apart. Where is my larger Phillips bit? And I've lost a large Phillips bit. That's okay, we'll grab a flathead instead. That usually works better on these because these are sort of self-tapping screws that just tap into the plastic and they've got some bite on them. Of course you don't wanna do this too many times because they won't, after a while, survive multiple screwings and unscrewings. And, oh, that one doesn't wanna come out. Let's try that again. Nice paint job on this. They did like a little metallic or woodgrain kind of brush look in a silvery bronze paint. Shoulda gently tug on that. I actually do like to use a little spudger to pry those up if I have one on hand. Let's see, I may have brought those inside. No, here's, these iFixit kits, by the way, I have a couple of these now. My mom got me one last year and I've had one that they gave me. iFixit gave me many years ago. Kyle did, thanks Kyle. Got a lot of good different little spudgery things that are good for prying up plastic without breaking tabs. Okay, so we've got the speaker on the back and that's held captive with a couple of screws and some hot glue on the wiring, which is nice. How nice of them to do that. Probably just keep it out of the way of the mechanism and there's the battery pack back here. And then we've got the guts on this. So, looks like there's two motors. Got one here that's on a little belt and pulley. And I think that's used with this little cam to move the i side to side. So, as this goes, it looks like it turns really slowly but you can see that moving this right here. So I can get the light in there better. You can see that as I turn that is very slowly moving that eyeball like that side to side. This other one is what just yanks open and closed the eyelid. So actually it yanks it open and what it has is a big sort of semi-circular cam and a string and it pulls on both of these to yank the eyeball open and closed. So as those strings pull, you get eyeball open and close. It pulls both of them at the same time, which is a little hard for me to do with my fingers. And so we'll take a look at how that works. Same sort of thing. There's a little pulley with a belt. If you run across one that's not working, I would say there's a good chance that the belt has gone. So that maybe if you find one at a thrift store for a buck and it doesn't seem to open, that could be worth getting and trying to fix that with a small belt. Let's see, we've got capacitors soldered directly to the motors to prevent all the noise from messing with things. All right, well, let's run it a couple of times with it open and then we'll start taking things apart a little further. How about, I'm gonna guess there's an epoxy blob hiding whatever microcontroller, if there is one should be, that's handling the playback of the audio and motors telling them when to go and light up the LED. This, by the way, I think is the LED here, this green and white wire. I think the LED is just in the end of the mechanism that tilts this eyeball side to side. So here we go, a little closer. You can see these motors do their thing. Yeah, so interesting, you can see they actually are moving the motor in both directions. Sometimes these things will work, the mechanism will be such that it just spins in one direction and that is handled by the gearing, but this is spinning one revolution in each direction and then heading back. The other one for pulling this, maybe I should detach the audio, how about? So one trick in here in these cases is that hot glue usually will come off really easily with a little bit of isopropyl rubbing alcohol. I think I have no Q-tips in here, but I can just use a little tool to drip some on there. So that's usually gonna just pop the glue off so you're not picking it off and risking damaging things. So you can see here, see that. Just putting a little alcohol on this little spatula. Spudger has loosened it right off of that. There you go, look at that, there's the hole. Grab that like a surgeon with my forceps. You can see that just popped it right off. So this, I'm gonna take a picture of this so I can get it back together later. A recommended step if you're pulling stuff apart. So now I can disconnect the speaker, which will make life a little easier for talking to you and not losing my sanity. So that little connector right there was the speaker. So now we can press this and get just the motor action and look at that. Okay, so you can see when we press the button for the eyelids to go, it just pulls it and holds it there, which is impressive because that's probably drawing quite a bit of current to just hold that thing back like that. I don't see it like latching mechanically, so it's just yanking that thing down. And there's a good bit of tension on that because the springs are pretty strong that it's fighting. The springs, by the way, are actually these, it's kind of a coil in the center and straightened legs, kind of like a right in there. You'll see a little metal coil. So that's the spring that wants to push those back. So let's see, what else? So yeah, there's the opener. Let's unplug everything. So I'm gonna go at it with some more rubbing alcohol, which is also a mostly electronics-friendly way to probably gonna ruin anything in there or short it out or anything, just let the rubbing alcohol dry. So there, yeah, it just pops right off. So the orange and gray wired motor goes here on the bottom right. I'm gonna see if I have a something that'll make it a little easier to pull that out than fingers. The yellow, I'm guessing is the button. Yeah, so I just tried pressing the button with that yellow wire unplugged and it will no longer work. So this is the batteries up here and then at the bottom we have our eyeball motor that goes side to side. That was a pretty tight fit wiring-wise. Okay, now I got the back door off of there. Let's see, further disassembly to get, I'm kind of curious to look at this PCB here. There's one screw here. Let's see if that's all that's holding it in place. And good to have a little tray for your, or something to hold your screws while you're doing this. And grab one of these snazzy county cam parts trays. And let's see if that wants to come out yet. It does not, let's see. I don't think there's screws from the front. So what's holding it? It's possible that, I think this is one piece. I was gonna say it's possible they screwed it and then added a layer. That looks like a single piece. All right, well, there's a number of these screws that are holding things in mechanically. Let's attack them, why don't we? Maybe a little tricky to get things back together at the end, but let's go for it. Yeah, so these are these little Phillips screws with, I forget what these are called, with the built-in essentially a washer that are being used to hold things down. Someone tell me in the chat if you know, I can never remember. Todd Bot says, huh, quite a lot of hand assembly for something like this. Yeah, this machine isn't gonna build this. So someone's doing a lot of hand assembly on the line to make these things. I know there were a lot of shortages of Halloween stuff this year. If you looked at a big box store like Target, they just didn't have much and it went away pretty quickly.  So now we can see what the, that's all that does to move the eyeballs side to side. You can hand actuate that now. And you know, one of the interesting things with something like this is that you can graft your own motor controller, any of the, like the motor wing shield or the motor feather wing to drive these DC motors and you can do, or the Cricut for example, you can do reversing forward and reverse on them with those controller boards. Ew, a lot of weird grime on that side of it. Gross. Yeah, I guess that's probably some grease stripped there, but also just some grime. So let's see about this next guy. Get a little more rubbing alcohol because they lobbed on some hot glue there too. Goodbye hot glue. Yeah, you can see here, they've also used some of the hot glue as sort of strain relief on the solder joints, which is smart, just even vibration from shipping on some of these tiny solder joints. They wanna avoid failure there. So this one is gonna probably be the trickiest thing to put back together because I think this motor and its cam that are attached by this little string might need to come out as one unit, so I'm not trying to re-thread things. So I can't just pull this motor out here because it's attachment to that string. So maybe time to try to pull the whole eyeball out. So let's take out some of these. Y'all are gonna help me get this back together at the end, right? Also, you like me where you go a certain level deep into unscrewing things, thinking I can just remember where those screws go or figure it out later and then you reach a point where you're like, that's, I'm doomed. And I really wish I had laid out the screws in order. Okay, so I think that holds the whole eye mechanism, just those two screws. So I don't need to take the eye mechanism any further apart and now, let's see, probably, the only issue we'll have is the, there was no connector for the LED. It's wrapped around this board and soldered in hot glued. So let's just take a bunch of things out. We'll take the motor assembly and the eyeball, like so. Let me zoom out just a little bit. So there's that guy and there's not an easy way to get the LED out. It's pressed in from the front and then these wires come down here, wrap around and they're soldered. So I kinda need now to really figure out how this board is held in because it is held in place. These two screws, they're kinda hard to get at and I think they're holding the button assembly in place.  That's all it was. So let's, maybe it's time to pull the eyeball out. Is an unsettling phrase, you're right. Me, pop that off, blob of hot glue and now we can get the board off. Okay, it was not as, I outsmarted myself. It was not that tricky. The old screw under the hot glue trick. Works every time. That was one of those. I'm kinda keeping the screws in little clusters so I hopefully remember who's who. Doomed. Okay, so I can leave the button in, in place there. There's no reason to take that out, but we just gotta like a little in there. And now we can see what's what on here. So let's get our fullest available zoom. We are at our fullest available zoom, okay. And what do we see? We got three, four, five unsoldered pads. These seem to probably just be on the ground plane. Yeah, there's four unsoldered pads for ground. We have a microcontroller that's sitting under that blob there. So no real chance of knowing what it is or what it does.  I'm guessing this is power boosting here for whatever it needs. Nothing is marked as far as any functions or anything other than just telling you the components on here, resistor values and so on. So yeah, your best bet I think with a lot of these, if you wanna try to do things to them is really to attack that button right there. So essentially put your own transistor or resist or relay in line with what this button was or cut this button out of the system essentially and then you can turn it on and off at will. You're not gonna be able to, I know a lot of people ask, oh, I'd like to put my own phrases on here. If you're gonna try something like that, you're again essentially gonna ignore the entire microcontroller board at that point and instead use something like the Cricut or some of our, maybe like the prop feather, the prop maker feather which has feather wing which has, you can do circuit Python MP3 playback and it has a little amplifier built in so you could run to this existing speaker that is in here. So you can transplant essentially the brain and use the mechanism and the motors yourself, drive the two motors. You could drive the LED with some PWM so that it has a little bit more of a trick than just turning on which I think is what this one does. I think this just turns on. Let's see, should we, I guess it's always fun to try it out while it's unplugged or pulled out of the system so if I can pull up my photo of what plugs in where, let's see the mess of my phone, hey Lars. There we go. We can follow, I've got a little picture here, follow that to see what's what. And so that's the orientation of things, LED is already in, this is the battery power up top. Let's just do that and the, I can just bridge this for the momentary switch rather than connect that because it's pretty short and inconvenient. Or let's see, can we jam a couple of, see if we can jam a couple of wires in line with that if I have too appropriate, not you. Sorry, just sorting through wires on my bench here. And these are all, none of these are gonna work. All right, hold on. Okay, so I'll just bridge this. So what we should see here is just the LED go. That is the, oh, wrong one, there we go. There we go, so there's the LED doing its thing. It's a bright one, pull the eye out of there. So that does its whole timer thing, it would go motor, audio, all that at once. So let's take a look at this little mechanism a little closer. So trying to be careful not to ruin it. I think that just rests there and there inside of the mold of the plastic. So here's our motor, we can simulate eyeball opening by pulling on those two strings. And then that is our eyeball motion there. That I won't run that while it's out because it'll probably do bad things. Let's take a look at this one though. If we plug, who are you? You were the far one. They even did a bit of color coding, not perfect but useful. So, how was this guy? I think like that. Yeah, it's in there like that. So this is what is cammed onto there. So if we, let's see, is this thing ferrous or conductive? Yeah. Yeah, so it does these little kind of half steps and then continues them on for most of them. The first one, it goes just a half step and then back and then other way and back other way. And if we hold up the eye there, you can see that's how that turns. Pretty cool. And audio wise, this is our speaker port up here. Is that another go? It's quite loud. I'm impressed by how loud it is. And you can see here it's bolted down really seriously so you get some resonant effect too of the plastic backing there. It's probably not anywhere near as loud if you pull that out. But really cool. So let's see if we can get it back together. I'm not gonna try to do a microcontroller hack on this right now. I might try to do that before trigger treaters come. Anyone doing any, in the chat, anyone doing any Halloween prop building, decoration hacking, that kind of stuff? We'd love to hear about it. All right, let's see. Let's get this board back in the right way and then proceed with the other parts. Ham's lab says right now I'm working on using EO wire to make a lightening effect. If you pair white and blue or white and purple and flash them really fast, white 20 milliseconds, the other one 20 milliseconds. It looks really like lighting. Oh, that's cool. SparkFind has a shield to control eight EO wires and I got a Metro ESP32S2 from Adafruit and wires, EO wires where I could find them. I'm putting it together after this. Oh, that's very cool. We'd love to see that. Please show those off in the show and tell. All right, so I think this will go in like so and what's this yellow one? That's the switch. Yeah, we'll leave that like that. All right, I don't know how interested you're seeing in the put back together, but it's at least put some pressure on me. Can I get this thing back together? This is why I got into this business in the first places because I spent a lot of time as a kid basically doing this. Like I'm sure many of you did, taking things apart and then being amazed if they went back together. Those are the wrong screws. I did it already. These are the ones I need. Those could use a smaller screwdriver tip. Interesting too, they've got a guide, I think for polarity of the LED on here that's this silk screen, I think that's showing anode and cathode in a way I haven't seen it, that sort of circle with the lines in it. Is that what I'm seeing there? Usually you see the circle with one flat side. It's also got the plus and minus on there. Okay, our board is back. Our switch we can plug in. Our iMotor goes in like this. I think the trickiest part, if I had to guess, for me to get this thing incorrectly is the cam for the eyeball left and right, getting that situated properly. Does this look right? Was this at an angle like that? Is that at all where that was? Yeah, it is at a little bit of an angle, okay. So that's held down with one of these here. You know what, I should probably put the i in first and get a sense that it's gonna continue to move as intended. Does that look right? Let's see, this string I think goes around here. You can see actually they may have intended the string to go through the top one to go through there at one point and change their mind. Looks like it goes through this little valley here. Does that seem right? Does that seem plausible? Let's plug it in. That wire plugs in here. Okay, that's eyeball in place. Seems like things will move. All right, you know what I'll do? I'll screw in the eyeball mount and then test that. Michael Lackock says, I remember always taking things apart when I was a kid. I don't think I ever really put them back together then though. That's as far as I feel like going. I've seen how it works. Give you a better view there. Okay, so let's try to get the motor seated. Looks clear. I'm going to move the LED wire over here a little and let's give it power and test that out. So power, we really think you were up top? Yes, we do. Button is plugged in, let's try it. Good, okay. So it opens and it should close. All right, that's a good sign. We'll go ahead and mount, screw in place that motor. Oh, good. Hems Labs that they're going to do show and tell next week and thank you for Katnie for providing info on how to do that. If you ever want to show stuff on our show and tell just head on over to the Discord live broadcast chat right before the show and we will drop a link in there and then you can go into our StreamYard lobby where we stage it. Okay, so time for, this is the one that I said I'm a little nervous about cause it's a gamble if I'm actually gonna get this in the right starting place. Let's see where the motor was to begin with. Okay, you know what? It kind of locks when it gets where it wants to go and I haven't forced it by hand. So I will put it in that little groove. That's looking plausible to me. Let's plug that motor in and we'll test it out. Let's see. I don't have a good way to cut the power if it starts shearing things. So let's just hope for the best. I will be ready to pop a battery out. How about that's probably the easiest way to interrupt things. Yeah, it's doing it. Okay. All right, good. We have it back together. All the hard stuff. Let's just finish that up. You know, you could also probably do some fun stuff just by interrupting or putting your own trigger for it and your own audio into the speaker there. If you wanted to have some other phrases or if you wanted to have a live microphone so that you can watch people. I have friends who do this where they watch the trick or treaters through a webcam and then say things to them from a a ghoul on the porch, that kind of thing.  And we're just about there. We just have audio plug and to close it up. Usually a good idea to gently close things up. See how wires wanna get pinched especially because I've now gotten rid of all the hot glue that was helping with wire management. So you gotta be a little careful you don't go pinching wires or driving screws through them. But once that's plausibly in place, I'll turn it over and just test it again. Good fun, this one. I'll spare you maybe the last wire wrangling that I'm gonna have to do to get that actually sealed up because actually I think I wanna mess with it more so I'm gonna leave that open. But thanks for hanging out for a tear down. I think a lot of these Halloween props are pretty interesting lessons in really effective durable design for mechatronics so are always worth just learning from but in this case we can also, I think, do some modification to it and let me know if you're interested and I'll consider doing an extra follow up on this one and plugging at least the motors and audio into one of our driver boards so that we can make it do what we wanna do when we want it to do it. I think that's gonna do it for today so thanks for coming by. Thank you for the people who are over in the YouTube. I see you now. Thank you for hanging out. Oh, I like this, one of the suggestions is using a egg carton for holding a bunch of screws. That's an excellent point. In fact, I have a tiny ice cube tray over here that I've often used for that but it's full of parts right now. Also, someone pointed this out to me, I think Mr. certainly pointed out and I've been following this notion. The top of that iFixit screwdriver case is a parts tray so I've got that now. Actually now I don't remember what those screws are from. Great. That's gonna do it. So happy Halloween everyone and I will see you next week for a new product pick of the week on Tuesday and John Park's workshop on Thursday. That's gonna do it. Bye bye everyone.


We work on the lighthouse client, so we're going to be talking about reducing beacon chain bandwidth for institutional and home stakers and I'm going to leave it up to Diva who's a bow guitar local and our peer-to-peer network expert to kick us off. Okay so first thing that we need to check in order to analyze how to reduce bandwidth for institutional and home stakers is how does the what does the bandwidth look like right now. We are going to be looking at data from Lighthouse, like Ash said. We work on Lighthouse is one of their production beacon nodes. There are many others, Techoo, Prism, Nimbus, Lowstar, we are the second most popular one and while the data we're going to be looking at is Lighthouse we are certain that this applies to any other client across the network so have that in mind. First thing to notice is that bandwidth associated to a beacon node is proportional to the number of validators. It has attached. You can see that it increases when the number of validators goes up but then at 64 validators it stays more or less the same. 64 is going to be a really important number in this talk. Ash is going to explain further why and why it's important. So yeah, we need to remember simply that we are going to stop at 64 and this is where bandwidth is going to be more or less stable. Now if we look at how many validators does every beacon node on the network has, we're going to have like main three groups. We're going to have those that don't have any validator attached only simple beacon nodes. Node is taking beacon nodes. Now we're going to have those that we are going to come homestakers which have less than 10 validators. In this graph you're going to see a very big bar that's the one with two validators. I hope you can see it. Those are a very big chunk of the network, almost 60% of the network. Then we have those that we call homestakers. Most of them have just one validator and then we have those that we call institutional stakers. Those are the one that have more than 64 validators which is the big bar at the end. Now why do we care about bandwidth to begin with? So there are a couple of downsides of high bandwidth. The first one is of course an increased cost. If this cost comes from running for example in the cloud where you're charged for data transfer and it's also a matter of diversity because this means that you're only able to run a full node in devices that support processing all the data that you're receiving from the network and for people that are able to pay for the services in which these nodes are being running. I see a few depths here. My colleges for example. We know that there is going to be an upgrade to the network that is going to bring a lot of a big big increase in bandwidth, like a lot. So we need to start tackling this problem right now before this happens. That's another big reason why this is important. Also another really really important reason is when we say for example a diversity problem the truth is if you are for example a home staker and you're running your beacon node with your single validator attached and then your brother or your sister starts playing video games then you're going to have a bandwidth spike and you might lose at the stations. You might miss at the stations blocks. So basically you're losing money simply because very very short spikes in bandwidth. So yeah we don't want that. Now let's check where is the bandwidth coming from. For the sake of this talk we're going to separate protocols between discovery and non-discovery. So why is that? Because discovery has its own transport, its own encryption, it's over UDP whereas all the live P2P we're going to call them live P2P protocols they're over TCP. We have gossips of and their request response. The one we are going to be focusing mainly in this talk is gossips of. Now that we have this separation between let's say discovery and non-discovery let's check where is the bandwidth coming from. This is what the bandwidth, total bandwidth looks like for one of our nodes for the last couple of days. Is it discovery? Is it live P2P? Where is it? So now we have two graphs. The purple one is going to be discovery. It's all the discovery bandwidth and the other one in the bottom is the live P2P bandwidth. Now forget about the scales. This is just like a non-node very science analysis of the shape of the bandwidth. So I guess we can more or less agree that bandwidth has the shape of the live P2P when. Whereas discovery is well it's very magical as we will see. So the total bandwidth is around 250 kilobytes per second. Is it better like this? Yeah? Okay. About 250 kilobytes per second. Then we have live P2P which is around 200 kilobytes and then discovery which is between 40 and 60 kilobytes per second. So for the sake of doing analysis over bandwidth, discovery is really not important. So we're going to focus on live P2P. So I was saying we have Gossip Soap and required response. We're going to focus on Gossip Soap. So in Gossip Soap, Gossip Soap is a published subscribe system, protocol. We publish messages to the network. Those get disseminated to other peers and we receive messages to subnets or to topics to which we are subscribed. We have large amounts of data and those we split between subnets. Again, here we have 64 attestation subnets which, again, age is going to be talking further in a moment. And then we need to think how many subnets are we subscribed to since this is the reason why we get so much bandwidth. And the reason is that right now is we can only subscribe into one subnet for each validator that it has attached. And yeah, well, subscribing to a subnet means a lot more bandwidth. So a very simple example of how Gossip Soap works. Gossip Soap has a lot of parameters. But one that we care a lot is the mesh degree. So this example is three mesh degree. So we are going to start with our guy in the middle. That one. I hope you are seeing the red circle just right in the middle. So this guy has a validator attached. It's going to publish a block. So it's going to pick three peers. It's going to disseminate the message. And then each peer is going to do the same with some other three peers. And so on. And so on. So if you think about this for a moment, you're going to realize that it's very likely that a node is going to receive one single, one unique message a lot of times from very different nodes across very different paths in the network from the source to themselves. Okay. So why do we like Gossip Soap? Or why do we like the way we do this message propagation? So it makes for a very robust network in the sense that we are sure that if we publish a message and we have this kind of topology, the message is going to reach all other nodes in the network in a timely manner. We also know that we have low message latency. That means the time that is spent between the creation of the message in the source node to when you receive it is not very long. And this is, as I was saying, because of lower paths, smaller paths, lower hoops. But then again, we have a lot of duplicates and this redundancy results in high bandwidth. This is a graph that we have for nodes. So this is like real data for the Gossip Soap duplicates. Now, this is going to be weird, but I'm going to ask you to focus on this number, the beacon block. So we know we need to publish one block issues lot. So we know for this topic, we're supposed to receive a single unique message. However, we are getting six or seven messages across the network. That means an amplification factor of about seven. So imagine what happens if we were able to reduce that kind of duplicates. That's like a huge, huge gain there. Okay, so a summary of the current state. So bandwidth is proportional to the number of validators a node has. H is going to speak about how we intend to tackle this. And the other one is the high amplification in Gossip Soap. How are we going to reduce duplicates without harming the network? So I'm going to leave Ash to continue this talk. Yeah, thanks, Diva. So I'm going to try and have a crack at explaining how we can potentially reduce some of these. So I'm Australian and I can see a few Australians in the audience. And I think they'll agree with me that we have terrible internet, like ridiculous internet. I run a validator at home and someone that watches Netflix in another room causes me to lose attestations. So as a disclaimer, I have a personal vendetta to try and actually reduce this bandwidth so that I stop losing attestations. Yeah. So there's probably two solutions we have to these kinds of problems, which I just want to kind of briefly touch on and give you a feel for what we're trying to work on. One of them is called minimizing topic subscriptions. Let me try and explain that if you haven't already covered some of this kind of stuff before. So a validator in an epoch needs to do some kind of, needs to publish some messages on these things called subnets. In order to do that, you need to have peers to be able to publish those messages on those subnets. Now, the problem with this is that peer discovery is a slow process. It takes a while to actually find some peers. And it's even harder to find a peer on a specific subnet that you need to publish an attestation. So the problem we've got essentially is that we need a stable set of peers that exist on each subnet that we can find them easily when we need to publish a message. So it's not really an easy problem to solve. The way that we currently have this solution, I guess, is that every time a validator is attached or sends a message to your beacon node, that beacon node is required to subscribe to one subnet for a very long period of time. It's about 27 hours or 256 epochs. So what that means is the more validates you have attached to your beacon node, the more subnets you need to subscribe to. And subscribing to a subnet means that you have to get all of the messages on that subnet. You need to verify those messages, and then you need to send them on to other peers. So you're doing this, that's a lot of bandwidth and a lot of processing. So essentially, you're supporting the network at the cost of bandwidth on your node. So you're kind of being like a good actor. So there's a number of downsides to this approach. One is that it's not enforceable. So what that means is you, as a beacon node, you can essentially lie to us and you say, oh, I don't have any validators, even though you've got like 2000 attached to you, and you just don't subscribe to any long-lived subnet so you don't consume any bandwidth. So you kind of incentivize to do this, and there's no way that any other node on the network can tell whether you're lying to us or not. The next thing is potentially our subnets are oversubscribed. We actually have quite a large number of beacon nodes on mainnet today. And when we originally designed this kind of process, we didn't really realize how many nodes would be participating in the network. So potentially we have more nodes than we need on each of these subnets. So that would lead us to think that we have excess bandwidth on the network that potentially we can remove. So the idea that's being proposed is why don't just every single beacon node on the network subscribe to one or many subnets. There's some benefits to this, but the general discussion is in this specs repo as an issue. So what would the bandwidth graph look like if we did this? If one beacon node was subscribed to one subnet, rather than having it being proportional to the number of validators attached to you, you would then get this green line on this graph, which hopefully everyone can see. And that green line sits at around 500 kilobytes a second at the moment from what we've measured. So essentially everybody on the network that has a validator wins in this scenario, except for those that have one. So sorry for the people that only have one validator in this room. You guys then have to, your bandwidth will increase by about 500 to 100 kilobytes. The other benefit that we get from this, so from a quick scan that we did of the DHT or the current nodes on the network, we found that 57% of nodes apparently don't have any validators attached to them. So they're either lying to us or they actually don't have validators attached to them and they're not participating in any of the subnets. So if we do transition over into this state, they actually have to start participating in helping out and it lowers the bandwidth for the institutional stakers or the ones that have high number of validators. Yeah, so essentially all the beacon nodes are now contributing to helping with this subnet stability. So it kind of sounds pretty good that we get a massive reduction in bandwidth, but there is a cost. And the cost is how many, what is the density of nodes that you can find that exist on these subnets? So if no one was subscribed to there, we wouldn't be able to find those peers in order to publish our messages on these subnets. So we still need a decent density so that if you just randomly look through the peer set, you can actually find nodes on those subnets and kind of hold onto them. And so this graph here is a distribution of the current density and what the density would look like if we switched to having one beacon node per one topic. So at the moment, it looks roughly like 8%. So you randomly pick a node, there's an 8% chance that it's going to exist on any given subnet. If we switch to one beacon node per one subnet, it drops to about 1.5%, which is 1 on 64 as you would expect. The benefit of that is that it's configurable. We don't have to say one beacon node, one subnet. We can say one beacon node, two subnets, one beacon node, three subnets. So we can adjust that kind of differential. And whether that's feasible is dependent on the number of nodes on the network. So that's something we need to measure. But the benefits that we get from this is essentially for the institutional stakers, which represent roughly like 10% of all the validating nodes on the network, their bandwidth will drop by about over 90%, which is kind of handy. And as I mentioned before, everyone that has more than one validate will have a reduced bandwidth. So fundamentally, we're talking about do we need all of these nodes on the network to support these subnets at the cost of the huge amount of bandwidth they're currently using. And so potentially it's not, and it's customizable. The second thing is it's also enforceable because we would tag a beacon node's node ID to a subnet. And so when we connect to a beacon node, and it's not subscribed to that subnet, that we know that it's being naughty or lying to us and we can kick it off. So we actually have the enforceability property. Yeah, so that's one solution. And that's kind of a low-hanging fruit. It's kind of easy to do when we get substantial gains. The other thing that Diva was talking about is message amplification and gossip sub. So if there's anything we can do about that. The idea that we want to try and push forward is a concept called Episub. So gossip sub is a protocol that exists in libp2p, as Diva was mentioning. And the libp2p guys, which is kind of run by protocol labs, have had a evolution stage of gossip sub. They've talked about Episub for quite a period of time. They've done a bunch of research, in particular Viso or Dimitri, who works for protocol labs has had this kind of vision for Episub for a while, but has never had the push or the drive to do it. But now that we're seeing quite substantial amounts of bandwidth, it's probably time we try and realize this thing. So I just want to briefly go over the concept and what it's going to do and how it could help us with bandwidth. Okay, so Episub. The biggest problem that we have is that if you have a high mesh degree, as Diva was saying, that means you have a high connectivity of nodes in your network. So every node could be connected to another 10 or eight other nodes, and then you get huge message amplification. So every time you send one message, most of the network will probably have to download it eight times. So if you increase that message by one megabyte, you're actually increasing it by eight times eight megabytes because that's the amount of bandwidth that has to be downloaded and then propagated. So naively, you would first think, okay, why don't we just log with a mesh degree? I did try to do that at one point, but as everyone points out, that's not a safe thing to do. We don't really know how the network is going to behave. We can try it on test nets, but the topology or the structure of a test net doesn't look like main net. If we just lowered the mesh degree to two, for example, a main net, you might just not start receiving blocks. So we have to do that with either great care or with a lot of testing. So it's an interesting idea, but we probably do better. So another idea is to dynamically adjust the connectivity. We also run into a kind of a similar problem, and typically a lot of the people that use our client, they suggest lowering the peer count, which is, it's a false, it doesn't quite help you. So that's also not the best solution. So the idea with Episub is to try and minimize duplication and latency by making the mesh. It keeps the same connectivity, but making it a little bit more efficient. And by efficient, I mean we're trying to remove the number of duplicates, and at the same time, either maintain or lower the latency inside the mesh. And the mesh is just a subset of your peers that you're connected to. That's where you receive your messages from. So that kind of sounds like we're trying to win on two fronts. We get less bandwidth and higher latency, which kind of doesn't sound like we should be able to do it, but let me explain the general principle and maybe it makes sense. So the general principle is you're a node on the network. You're receiving all of these messages. A lot of them are duplicates. You want to just start collecting statistics over which nodes are sending you these duplicates, and which ones are sending you late duplicates. And you'll end up having some distribution of the number of duplicates you get and the latency. So it could be that Paul over here in the front constantly sends me some late duplicate three seconds late, whereas Sean's sending it to me straightaway instantly. So I come up with essentially a choking strategy is what we call it, where we look at all of the distribution of people sending us duplicates and the ones that are late or the ones that have lower latency, and we send a message called a choke. So in this example we say, I'm going to choke Paul because he is sending me late messages all the time. What the choke message does is it indicates to Paul to no longer send me these messages over the mesh. Instead he does a process called gossip, where he just sends me like the message ID, which is a much smaller thing. So over time, eventually, based on your choking strategy, you should have a more efficient mess where you're only receiving the messages with a lower number of duplicates, maybe from just one or two peers where the rest of them are choked, and you still receive gossip from them. So if the two peers that you have in your mesh are slow, and the other ones that you have choked are started sending you message IDs before you send them in the mesh, we have an unchoked message. So we can unchoke them and put them back into the mesh. So ultimately the idea would be is that you're dynamically changing your mesh and how many, what peers are sending you messages and how fast they're doing it, in order to try and make it essentially more efficient. Hopefully that makes sense. I'll take questions afterwards. Does this work, I guess, is the question. There's been some preliminary simulations on this. As I mentioned, Viso from Lippie to Pea and Protocol Labs has done a work, done some work on this. He's built a generic simulation for the Go version of this with 250, 500, and 1,000 nodes. And so this is with a mesh degree of six, so there's roughly about a six times amplification if you look at the messages in these simulations. But pretty much in all of the simulations, what this graph is showing you is that you get roughly a 50% reduction in the duplicates from Episub. Now, as I said, there's a choking and an unshoking strategy which are left somewhat generic, and I think we can tune this to be significant, especially if we target it for the Ethereum network. I think we can get better versions of this, but at face value it looks like you can reduce the duplicates by 50% just by adding these kinds of messages. The next thing we probably should talk about is latency. I kind of suggested that we could get reduction in duplicates and reduction in latency. The initial results that Vizo has completed in simulation seems that the latency increases. So on the left is a gossip sub latency distribution where the buckets are like milliseconds since you receive the message and on the right is Episub. So we receive more messages with higher latency in these simulations. But as I was saying, these are somewhat generic. The topology of these does not look like the Ethereum network that we have, and these can be highly tuned to what we need. There's a lot of research work going in there. There's a few people in the audience where I think that I've promised results for a mainnet version of this. So us at Sigma Prime we've built essentially a production version of Episub inside gossip sub. The advantages are that it's backwards compatible so we can release it in our clients. It'll work existingly with every other peer and every other gossip sub node on the network. But if there happens to be another Episub node on the network we can start getting this bandwidth minimization. So the fact that it's backwards compatible is super handy. We can kind of just release it whenever we want. We're also working on a mainnet simulation so that we can actually simulate the bandwidth that exists on mainnet and then apply Episub and then get essentially more specific data that's more robust and how we can actually apply this to what it would look like on an Ethereum to mainnet. These we'll publish results from this very soon and if you're interested just let us know. So the title of the talk was reducing, if I can remember the title of the talk was reducing bandwidth for institutional and home staker. So if you're an institutional or a home staker and you came here being like how do I get all these bandwidth gains? What do you need to do in order to get a 90% reduction? The answer is nothing. You just have to wait, we'll release it, maybe run a lighthouse node and hopefully we'll be able to reduce the bandwidth. But that's the end of our talk. Thank you. Some minutes for questions. Great talk guys. Is this something that's backwards compatible meaning that clients can gradually roll this out as time goes or is this something that we all have to upgrade at once? Here we're handling basically protocol versions. So we can run against nodes that are Episub compatible and if they're not then we're just going to run Episub version 1.1. So yeah, that's what we mean with that. Yeah, we add a protocol ID into the gossip sub and so when you connect to a peer you can identify which protocols they support. If they don't support Episub you don't choke or un-choke them. If they do support it you can choke and un-choke. So it works perfectly with 1.1 nodes. Yeah, I would just want to ask why do we want to reduce bandwidth for institutional stakers? Isn't it kind of a nice property that there is no economies of scale at least if it's enforceable that they have to subscribe to things? It just seems like, I don't know, it's weird to me as a concept to shift the load from institutional stakers to like normal beacon nodes or like, I don't know, home stakers even if it's like a little bit but just generally seems like we want those, the lack of economies of scale. Good part of this is the part that Ege mentioned about being enforceable. So having 60%, almost 60% of the network being nodes that don't have any validators, we're not so sure that's true. Those might as well be institutional stakers. So the truth is that this is more like about being fair across the network. So it's more about that targeting something that is going to be better for institutional stakers. It's just that they happen to get more gains because of this. So I know with 4844 we're going to be exploding our bandwidth costs. I was curious if you guys knew if that scales with the number of stakers you have or number of validators you have. So just the question is that we're going to increase the block size in 4844 and how that applies with here. If that scales the way that under current Gossip Sub our bandwidth increases with the number of validators you have, I was curious if that was the case for the increase in 4844 as well. Yeah, it's not. So the bandwidth increase is due to the subnet subscription. When you increase the block size everybody feels that because everyone subscribes to the block topic. Yeah, so that's felt uniformly. Here the part that matters for what Mark asked is mainly the amplification factor and not that much how it behaves regarding the number of validators. So since we have an amplification factor of about six so now with this improvement we're going to have huge block sizes which if we continue doing things the way we are going to be sent across the network six times each block. So that's insane. But yeah, so it's related more about duplicates in that part than the number of validators for each node. So you showed that by modal distribution where there's a lot of one validator nodes and then there's that 60% that were just regular full nodes like not validators and then the institutional nodes with like more than 64. So that, I understand how the Episub like helps everyone and it like helps the home stake or helps the Netflix problem. For the institutional stakers they're all running like data center nodes anyway so I don't understand as much how the like subscribing to fewer gossip subtopics helps. So I think this is a very similar question to over here. So I think fundamentally we were looking at as a whole the network may be consuming more bandwidth than we need to be. Depending on how you build your client you can be clever about which peers that you connect to. When you have, so at the moment you have these institutional nodes, right? They've got the, they're not just institutional. Some people there's a usually parameter I think in most clients which is called subscribe or subnet. So you can even if you have one valid you scribe to all the subnets and the reason you do that is because you get some benefit from seeing all the attestations you get a slight increase in performance. So it's not necessarily just institutional people. But the institutional, I forgot what my train of thought. No, I forgot what I was saying. All right, I did have a point. Maybe here. Part of what Edge was saying is that well subscribing to a subnet we also advertise that we are inside the subnet inside discovery. So that means that we need to find peers using discovery that are useful for us. So one strategy that people who have the bandwidth for that used to be sure that they have publishing all in time and everything is timely is subscribing to all subnets regardless of how many validators they have. This is what Edge was saying about maybe it's not exactly true that all nodes that have more than 64 subscribed subnets actually have more than 64 validators attached to them. Yeah, so I remember my point. My point was that we have these institutional stakers or people that are subscribed to all the subnets and they become more valuable than every other node on the network from a client perspective. If you have peers that are connecting to you and one is subscribed to just one subnet and you have another peer that's subscribed to all 64 you're more inclined to be like I wanna keep a peer connection to that guy because in case I need to send a message on one of the subnets he or she is connected to that subnet. So you're left with like 10% of these nodes are super valuable nodes across the network whereas everyone else you kind of just throw them away they're not all that valuable whereas if we transition over to this thing one it's enforceable which is something that we want two we're not entirely sure whether the amount of banter for using across the entire network is necessary so we reduce that as a I guess maybe a side effect and the third example is that all the nodes are equally kind of valuable to you and because we tie it to the node ID it makes the node ID specifies which subnet they're supposed to be subscribed to so when we're doing discovery queries we can actually search more efficiently for nodes on a specific subnet because it's tied to that node ID so there's a number of benefits it's not just we're helping institutional stakeholders that's just kind of like a byproduct. Hey, cool to talk to you guys thanks so you mentioned reducing bandwidth and reducing latency to avoid missing us at stations something that we've looked at as well is like effectiveness ratings with validators can you guys speak which can result in like penalties or loss reduction or reward can you guys speak to how this would help with effectiveness ratings if it would? I guess the first one is kind of what I intro'd with my personal attestation effectiveness drops when someone watches Netflix so I imagine for a lot more home-stakers that are kind of on the bandwidth limit or their upload speed is quite low like in Australia and we reduce the bandwidth requirements a lot Diva said that when you have these peaks in bandwidth you can miss attestations you don't publish them in time and it's not just missed but you also get penalized if they're late so even if they still get included in a block but later you get less so that lowers the attestation effectiveness. From a lot of the people that use Lighthouse we find that there's a number of main reasons that impact the attestation efficiency and that's one is bandwidth and the other one is CPU limitation like processing so if you're running a node that's overburden and the topic subscription is another thing that can overburden a node because if you're subscribed to a lot of nodes let's say you have five validators attached to you and you have five long-lived subnets you have to get all the messages and you have to process them so the processing also kills you and lowers your average effectiveness so if we get that in there that all should in principle improve the effectiveness because of the bandwidth and because it lowers the CPU usage of your node. Would it be possible for a node to detect that it's been choked? If so, could it somehow combine that with being dishonest about its subnet count and other grief or otherwise stall its local node graph? Sorry, Mr. Lastpart? Could it, if it could combine that with being dishonest about its subnet count connection could it just stall or otherwise grief its local node graph? Oh, wow. Choking is explicit. So I know this is actually going to know it's going to be choked. We're asking him to stop sending messages to us. It's not, I know it sounds similar to what is happening for example in strategies, for example in I don't know, file sharing but it's different in the sense that we're the ones asking the peer to just stop sending the messages. So it's kind of a benefit for them. So when we connect to a peer, let's say in this new regime where we have, every node has to subscribe to a topic based on its node ID. We can look at its peer ID but let's say it's node ID. We know that it's supposed to be subscribed to let's say topic three. The way that we, when we connect via gossip sub they should send us subscriptions about what it's subscribed to and if it's not subscribed to that we know that it's being malicious or faulty straight away and we can just disconnect it. There's technicalities where it can say that it's subscribed but then won't let us, so the next phase of the thing is we try and create a mesh network. So if we're connected to let's say a hundred peers we only really form a mesh with the mesh degree with like three of them.  So that's one way to kind of grief us. In that scenario they still have to forward this gossip sub messages. There's a small mechanism inside gossip sub that is called gossip sub scoring is introduced in 1.1 which somehow mitigates, attempts to mitigate censoring so where you just say that you're subscribed but you do nothing and the whole network essentially tries to kick you out of the mesh. In terms of while being choked we only choke people that are in our mesh. So only people that are subscribed and then once they've grafted with us so we form this mesh connection which means they have to be subscribed, they have to be sending us messages if they're not sending us messages 1.1 scoring will kick them out and then we choke or unchoke them in order for them to be malicious and try and cheat that system the choking abstract, the choking strategy is abstract and can be implemented independently on each node. So you don't know on each of your peers what is specifically their choking strategy they could just pick random nodes on their mesh and choke people. So I think there is an avenue of security to look in there that hasn't been done yet but I imagine we can probably solve that with some of the scoring parameters in gossip sub. Thank you very much, Diva. And thank you very much, Adrian. Thanks.


Hey guys, it's Tate, A.K. The Foot Accountant. Welcome back to the channel. It is Friday, foot birthday. Number two is here. The second week of foot birthday is dropping today. We already know the team and the SBCs we'll be getting because again, everything is basically leaked already. But I wanna talk about what that potential team could be, the content that we could be seeing today, objective-wise, SBC-wise, market-wise with probably some lightning rounds. Talk about how I think these actual foot birthday two players are gonna be a lot more expensive than team one. Potentially they're not gonna be as supplied on the market in my opinion. So we'll talk about that and as well, just talk about even what's coming tomorrow on Saturday, that massive Renato Sanchez SBC with all the leaks that are going around, they've been so spot on. Every single thing from the team that's gonna be in packs to the objectives, to the SBCs, every single one of these hints that they're giving us, the least that we've heard have been true. So we're gonna see if that continues. Also talking about SBC fighter, cause that's a very, very interesting point on the market today with what is going on where people are investing and stuff like that. So without further ado, let's look at team two because this is what we should see in packs today, Raheem Sterling, Luca Modric, Paul Niño, our Adamitriere striker, Emery Chan, Yusuf Atal, Bernardeschi, Ryan Kent, Tamori, and the objective is leaked to be Chudori, which is a pretty decent team, right? You've got big names in there like meta, meta, meta names, right? You've got Ryan Kent. You've got Adamitriere, Awar, who people love his freeze card, Paul Niño. Luca Modric had a flashback card last year. It was so insane. This is probably gonna remind us of that one last year, Raheem Sterling, potentially position change if they wanted to give him a cam card. That would be really cool. I even think that Atal is really cool too. I think it's gonna be a lot of hype for that card. Now of course these are only leaks and I'll put this link to this tweet down in the description, but we're pretty much expecting these players to be dropped because the leaks for last week's team were obviously 100% correct and they came out two days before the promo. Now there's no new information of what we should be getting today, except for the second team, which will have all five-star weak foot or skill move upgrades to each of those players. And we will be getting the next foot birthday themed SBC today. I don't expect another engagement reward or anything like that, but we should be getting Payet as our SBC today. That's what the leaks are saying and of course those have been correct so far. Hopefully they juice Payet up and make him a really sick card because there could be, we just had a lot of Bundesliga and German links that were very hyped, but French links are always popular. So if we do have this Payet card, the Awar that could be in the team and the Mangala that we had earlier this last week, a lot of French links that could be possible for some hype as well. Now of course the Choudhury objective card is the one that was of course leaked. We had the Mandanda yesterday, which this is one of the most interesting and I think fun objective we have ever had in FIFA. Five-star skills, Mandanda objective that came yesterday. You have to do it with a full squad of goalkeepers. It's really, really fun. It doesn't even take that long. It's a big W in my opinion, but we should be seeing the Huntallar go away today. We'll have this one replaced probably by that Choudhury objective that will be in this section. So that's it for objectives. Again, SBC, we talked about the Payet that should be coming today. Other than that, other than that, we could have Player of the Month this morning. I'm gonna just kind of touch on that. We could have a Player of the Month SBC, most likely the Premier League because the voting is over, right? The voting has been over for the Premier League Player of the Month and La Liga. So of course, Benzema or Messi is probably winning La Liga, but I don't think they usually drop those on Fridays. Player of the Month for La Liga is usually on Fridays, but the Premier League is always on Fridays. Now the only issue is, since we're on international break right now, in times past, it has delayed the release of Player of the Month until the next Friday, until that player, if they have won it, like Kane right now, might not be able to accept the award if he actually wins Player of the Month because he is out of international duty. Now, I think Inuyacho is supposed to win based off the stats, big ups to Sebbfoot for creating this link. I'll post the link to this down in the description as well as this graphic, but it looks like, I know a lot of people really wanted Lingard to win, but it might be Inuyacho with the five goals in the month of March. So I'm curious to see who wins. That could be this week or it could be next week, but I wanted to shout that because there is potential for that to be coming today. Another SBC dropping for a player on FIFA, but there's one pack that we have not seen yet in the game. That is the 83 to 89 plus pack that EA dropped in the code yesterday on Thursday, and it did not come out with the party bag that did come out yesterday. So of course, you guys probably remember what happened yesterday with the party bag, which honestly, if you wanted to craft this today, this pack, or if you've saved it, right? People, this was came out yesterday on Thursday, but of course, only one set of foot birthday players were actually in packs, and this party bag, we were opening them on stream. They were absolutely awful. They were terrible. So I don't know if they're gonna be any better today with the second team of foot birthday able to be packed from this as well. But if you wanna do this and craft with 81 plus player picks, I guess be my guess, but I don't think the luck is gonna get any better on those. But you'll probably see some people opening these today and getting a lot more of not good players from those. But other than that, maybe some sort of like the group challenge SBCs. I really have not been following up with these, which is bad because I should be, and then maybe some sort of like pack supply SBC as well.  They haven't done a pack supply in a couple of days. I don't think they've only been doing these group challenges and the kit SBCs. So probably some sort of pack supply whether it be tradable or untradable. That's kind of all I'm expecting in the SBC realm. I don't know about that 83 to 89. I honestly don't. It could be something where EA drops that SBC to maybe try to put fodder in our club for that Renato Sanchez that could be coming on Saturday. And I think a lot of people today on Friday, let's talk about the market now. I think a lot of people today are really gonna be focused on the SBC fodder section. Now I have club stocked a little bit and it looks like I just sold a Schweinsteiger. Nice, that's like 10 K profit. But I have club stocked a few of the higher rated cards some 86 and some 87s, really not much, right? I haven't done too much, but fodder right now is at a very interesting place, right? We had the party bag code that was put out and people invested in fodder. It went up, right? We reached the content drop yesterday on Thursday. The SBC was released. People thought fodder would go up and since there was so much overinvesting it actually went down and people began to sell fodder and it became low. Once again, so we had a crazy fluctuation. 86s are back down at 26, 27,000 coins, which for me is a buy range. I think we're at a low point where we're gonna be heading out or heading into a portion of this full birthday promo where we're gonna be getting big time SBCs with potentially Renato Sanchez coming on Saturday, tomorrow with Eric Baye coming on Sunday, potentially another icon SBC finally coming out like an icon repeatable, which I think they could do the prime icon repeatable and a one-time non-repeatable icon moments pack. That is something we could see as well coming soon. So if there's ever been a time for a club stock, there's been so much hype on fodder. People have been selling it, buying it. I think now is the time because these cards are quote unquote low in my opinion. And unless so many of the SBCs drop away out of the store, which they're not, they're gonna be hanging around for a while and we're gonna continue to get daily foot birthday player SBCs at least until the middle of next week. I think fodder is a decent shout. Right now, 84s are up a little bit. You know, the stuff that I'd be looking at for a club stock right now would be the higher-rated. It's 86s and up, because this stuff is down. De Bruyne, 88,000 coins right now. This guy was like 120K when the icon player pick was out. You know, even some of these cards though, right? Hazard, left wing, 49,000 coins for this card, which I think he was actually like 47 at one point today. So some of the stuff may have rebounded back a little bit. Yeah, he was 47, you can see he was up to 50, down to 47. It was more on the 86s, where they went from like 26,000 coins up to like 30 before the party bag. I know a lot of people are waiting until today to buy their SBC fodder, because they think it's gonna go down.  In my opinion, buying today when everybody else was selling, and even like right now with these 86s at like 27,000 coins, I think like 25K, prices are a little bit lower on Xbox for fodder. So I'm shouting PlayStation prices, but if you're on the Xbox, maybe try to find a little bit lower. Just look at the graphs, right? Yeah, it looks like maybe a K to a 2000 coins cheaper on the Xbox, but you know, you've seen this fodder on the daily graph. We had a couple of huge peaks right here and it feels like we're in another lull. And it feels like, of course, in the second half of the year, EA puts out a lot of SBCs. We're probably gonna hit one of these peaks, I think, in the next couple of weeks. So in my opinion, would be a great time to do a club stock. I'm probably gonna buy some more of these cards either tonight before. I really don't wanna be buying during the lightning rounds and be messing around with that. I wanna be trading and try to make coins with new promo cards or with out-of-pack specials with panic selling or icons. So I might club stock a few more 86s and up tonight just cause I think that this is low. And as you've seen, the index 86 dropped off a fair amount after the overinvesting stopped, right? So it went up last night with the code being put into the game about the party bag, went down and now we're still pretty low. Now it could maybe drop a little bit. Again, if you wanna get on bids during the lightning rounds, be my guest. But I don't see fodder dropping that much. The only stuff that I could see dropping would be like 83s and 84s and maybe 85s a little bit. Cause the 84s are still in demand a decent amount for a lot of the full birthday SBCs. So if you see these dropping today, you know, 84s maybe down like the high sevens to low eight range on bid for a lot of these cards, that could be a really good potential place to get in on some fodder. That's the sort of the fodder market that I could see maybe dropping down today, but we don't have the saved up packs like we had last week during foot birthday one. So I'm really interested to see today how the supply is for the brand new foot birthday cards. I honestly think they're going to be more expensive and have less supply than the cards were last week for week one. Remember you guys, you guys remember how much insane supply we had on these cards. Pages upon pages upon pages, even the Sony card, Lucas was like 1.6 million coins and dropped all the way down to like 1.2 or 1.3 just because of sheer supply last week. So I will say that without the saved up packs this week I do think there is going to be a nice, you know, opportunity to trade with these brand new foot birthday cards because they are going to be a little bit more rare than team one because there's just, there's no argument.  So I do think you could potentially see the foot birthday two prices be a little bit more expensive today, but I feel like everybody right now, this promo is all centered around the SBCs. Yes, people might be hyped for the new Adamitriore, they might be hyped for the new Ryan Kent, but what everybody's going to be talking about as we get into the later time, if the content is not that hyped today on Friday, everybody's going to be talking about that Renato Sanchez SBC. You know, people are already buying link investments to these brand new cards they're going to be in team two as well. I'll talk about that in a second actually. But that's why I want to talk about Fodder first because that Renato Sanchez SBC is going to carry a lot of the hype into the evening. And I feel like you're going to see people sell stuff off Saturday morning after this promo is said and done. As they wake up on Saturday, I think you're going to see people start selling stuff because they're going to get prepared for that Renato Sanchez SBC. So speaking of the cards that are coming today though, we've already seen obviously the team. I showed you the players that are supposed to be in the team. You've got Tamori that's going to be in this team, right? So people have already started going to buy up. This Theo Hernandez is 290K, he was 250 this morning. You have a lot of link investments that have risen, right? Kessie Road to the Final is another one. This guy was like 210,000, 220,000 coins at his absolute lowest point. Wow, man, look at the rise in this card. He was 250 around content drop today. 290,000 coins at the moment. These cards have risen up a lot with the new leaked team being out. 100% my recommendation here to you is if you've bought any of these cards, the link, if you've bought Lei Meilu, if he is up tomorrow, if any of these cards are up tomorrow, heading into the content drop, take the cash because there's so many people investing in this stuff right now. The new cards are going to come out, they're going to be very expensive and you're going to want to sell those, right? Theo Hernandez left back. You probably want to take the cash on that. Even though these cards technically could rise later in the night on Friday, since there is a lot of investing, like I'm going to be watching this Theo Hernandez card, right? He's right now almost 300K, 290. If this goes up to maybe 300K before the content drop today, I'm cashing that, right? I'm taking my money and then once the team drops and people start selling their cards, people that invested in this are expecting it to go up, it's probably not going to go up that much more, so they're going to sell and they're going to start undercutting and prices are going to actually drop. So I would sell in the hype if you have link investments to any of the brand new cards that will be coming out today in Foot Birthday Team too. So that's my personal opinion there. Now a lot of stuff on the market has rebounded back a little bit. Now these Foot Birthday cards, they've rebounded back since the, you know, the Marquee matchup supply and rewards. Inaki Williams, like 280, he's now 313. I'd be careful with some of the stuff today though. You know, Vardy and Williams would both technically be affected by Adama Treyore. If there's panic selling on some of the Foot Birthday Team one today, especially a guy like Sané, maybe Tiago, maybe Lucas or Mendee, just keep a close eye on that because I think the Foot Birthday Team too is going to be so expensive right away that you might see some nice bounce back in some areas of the market. But some stuff is high, right? Jota's back to 200, De Bruyne is 695 on the market right now. Some of the stuff that was lower, people started buying it up. While we're Charleston is low, Morales was 680 earlier today. He's down because of the hype for Inaki Williams.  Now, I will say as well, you're gonna have a new SBC coming out for Payet. So, that might affect the market a little bit. If Payet is insanely juiced, if he has five star skills and he looks like a cracked out card and he is really cheap, then you might have, just like you saw with some of your German links, you might have some of your French links rise up with link investments to that SBC. And I will say this as well, we only have a couple days left to do the 81 plus player pick. So, during the rewards today, you probably will see, or not rewards, during the lightning round supply, you probably will see some of these rare golds drop down in price on the market. That could be a great time to maybe get in on some of those cards and build some player picks for the new team, which I do know a lot of people are going to be doing on this game. So, I'm gonna be watching icons as well. You guys know that I love my icons because they fluctuate around the most, right? Especially baby and middle icons. Some of the ones that are hyped up recently because of their links, like we were looking at Philip Lam last week. There were crazy, crazy rises on some of those middle and baby out-of-packs icons just because they fluctuated. Same thing with promo cards as well, right? We saw panic selling last week. There's gonna be panic selling this morning heading into the content trap. So, if it's really, really big name meta cards that are getting panic sold, like this Ben Yetter, since we kind of know the leaks to this promo, we can kind of speculate what kind of cards might be panic sold or hey, let's say we're getting a striker at Dama today. So, yeah, you know what? Maybe I'd be a little bit worried about this Ben Yetter as a striker and if they made Kent a striker as well, if they made Sterling a striker, that'd be a lot of demand for a striker coming in one promo. So, just kind of monitor the market and see what the panic selling is and this messy bounces around a ton, right? So, if this is down at 1.1 mil tomorrow, I'm probably gonna be snagging. If this Harry Kane 674 on bid right there was really, really cheap. If this is like 6.50 tomorrow morning, I'm probably gonna snag it. Some of even these moments icons, especially the ones that are out of packs, but you know, the babies in mids, but some of these moments cards too, they just move around a ton. So, like maybe this Del Piero last week, he had a really nice rise. I remember that I traded, I think, with a moments, maybe it was a moments Owen last week that had a pretty good fluctuation, moments Seedorf as well. I remember specifically last week I sold a moments Seedorf. Now, just watch, wow, under a million coins for some of these cards. They're gonna get supply today too, so just keep an eye on that. But, also keep an eye on this team this week, right? Usman Dambale, that Kimmich card, those are gonna be very desired after the supply that they get from the lighting rounds today. So, that will be one place to be checking out on the market and keeping an eye on as well. But that's kind of all they have for today, boys. It's gonna be a promo Friday. It's gonna be interesting to see how much they juice up the cards that are leaked and stuff and that kind of kills the vibe for like the hype, right? Because we already know kind of what is coming. Now, we'll see if EA throw any curveballs in there or put out any content that would be extra insane. But as of right now, it looks like our promo is already leaked. We already know about it. And we'll just wait and see what the stats are on the new players that come today and see if EA have anything to surprise us. But that's the content for today. That's the video for today. If you did enjoy it, smash the thumbs up on a comment down below if you have any questions. And subscribe if you're new. It's been Nathan Fordekown. I will catch you guys later. Peace.


Coming to you from RGIS Studios, I am Anicia Antoine and this is your midday news brief. The Denver Infant School has been reconstructed under the Disaster of Unability Reduction project. The initiative is aimed at building climate resilient communities across St. Lucia. Mary Flavia, principal of the Denver Infant School, explained that the school had been experiencing termite issues as well as flooding and leaks. Flavia explained that an improved elevated structure, including a concrete roof, a lobby, a staff room and additional washrooms, has been constructed to ensure that the Denver Infant School is more resilient and accommodating. The principal expressed gratitude to the Government of St. Lucia for modernising the Denver Infant School. Under the DVRP, drainage works has also been done to alleviate flooding in the vicinity of the Denver Infant School. The Department of Health and Wellness is advising the public, more specifically pregnant women, about the importance of serology testing during pregnancy. Serology testing involves taking a blood sample to test for HIV, syphilis, hepatitis B, hepatitis C and HDLV 1 and 2. All pregnant women must have serology testing done twice during pregnancy, within the first three months and within the last three months. Senior Medical Officer for Infectious Diseases, Dr. Gil Gadjada, says pregnant women can get these tests free of charge at the Ezra Lung Laboratory at Victoria Hospital. Dr. Gadjada says that the goal is to have healthy mothers and healthy babies. Invest St. Lucia ISL is embarking on a landerationalisation plan, which according to ISL's chief executive officer, Roderick Sherry, is in the advanced stages. He explained that assessments have pointed to areas where individuals have been squatting on land for decades. The issue of squatting, according to the CEO, has existed for several decades. Sherry highlighted ISL's aim to ensure that every St. Lucia is able to afford and own a piece of land, he explained that priority will be given to those who have been inhabiting the land for lengthy periods of time at very accessible rates. The CEO explained the process when deciding upon a fair price for both ISL and the supporters. This has been your media news brief. Thank you for watching.