So that
[HKN] Austin Patel: That is an option. I sent the link in the chat if you want. Take a look at that. But people definitely do do double majors within engineering
[HKN] Austin Patel: It's very difficult for people to
[HKN] Austin Patel: So when us to our relationships with professors as Berkeley is a big university with big classes.
[HKN] Austin Patel: So that is true, Berkeley, the CS classes will be pretty big, especially when you start as a freshman, and you can easily go by with making know relationships through professors. If you don't put any effort in. If you really want to get to know your professors
[HKN] Austin Patel: You're gonna have to put in some effort. That means going to their office hours.
[HKN] Austin Patel: And like actually talking to them. So a lot of students don't take advantage of this. So even though the costs are really big. Not that many people go to Professor office hours.
[HKN] Austin Patel: So, for example, one of my professors sent me an email yesterday or Sydney. Most of the whole class yesterday saying that three people had gotten to his office hours. And on the last day. He had them.
[HKN] Austin Patel: So there's like multiple hundred students in this class, and only three people went to office hours. So if you really want to have a relationship with your professor, which I highly recommend
[HKN] Austin Patel: You can just, like, go to the office hours, talk to them. They enjoy talking about things like outside of school and academia, they're just like, pretty cool people in general.
[HKN] Austin Patel: So definitely as possible.
[HKN] Austin Patel: In with these classes like you're going to have a lot of course stuff on there. So there's gonna be like teaching assistance.
[HKN] Austin Patel: And graduate students who are helping to run the class lead like smaller discussion sections so you can also get to know them and they like a lot of them do interesting research and other things like campus. So it's cool like to them as well.
[HKN] Naomi Sagan: Okay, let me some of the questions are getting buried. Let me see if I can answer the next few
[HKN] Naomi Sagan: Of the credit our system. I'm not sure a unit is supposed to equal about three hours of work per week and most normal classes are four units, I'd say as a general rule, really depends on what your classes you're taking but
[HKN] Naomi Sagan: At 12 units is considered a quote unquote lighter course load, it probably isn't depending on the Classes 16 units is typically like average you're taking four classes and then anything above that is
[HKN] Naomi Sagan: A pretty high workload.
[HKN] Naomi Sagan: And what courses would you recommend we take in the first semester. A lot of people take them as 61 a 16 a and a humanities and then possibly another Tech. If you're an x, you will have to take physics or math 53
[HKN] Naomi Sagan: But don't feel pressure to stick within that guideline.
[HKN] Naomi Sagan: I'd say I'd doing 61 day
[HKN] Naomi Sagan: 16 a and then another course or two of your voice.
[HKN] Naomi Sagan: And maybe freshman seminar decal
[HKN] Austin Patel: So when asked, Do you recommend taking or do you recommend fresh and edge taking 69 or 61 day over the summer. Um,
[HKN] Austin Patel: It definitely is an option. I think one of the things that's so great about 61 day, especially, is that
[HKN] Austin Patel: There's a ton of students in the class. So, like, in addition to being a class. It's also kind of a community where there's a lot of people you work together with friends on projects and whatnot.
[HKN] Austin Patel: So if you do take it over the summer.
[HKN] Austin Patel: Most people don't do that. So when you start your fall semester at Cal
[HKN] Austin Patel: You will have the experience of being able to like work on the same projects with other freshmen.
[HKN] Austin Patel: And I think like that is a good experience like bond with your friends working over these projects.
[HKN] Austin Patel: But that is an option.
[HKN] Austin Patel: It's just something to think about.
[HKN] Austin Patel: I can speak a little bit more about taking 61 summer. So actually, was on core stuff for 61 day over the summer.
And
[HKN] Kaitlyn Lee: I think if you have time and want to get a head start. It's definitely a great option to take 61 day over the summer.
[HKN] Kaitlyn Lee: On the only thing is because the course is compressed from like 1516 weeks into eight weeks. Um, it is very fast paced. So if you want to take time to, like, well,
[HKN] Kaitlyn Lee: What's a better way to say if you are the type of student that would struggle with like cramming so much material until it's such a short period of time. It may not be the best option. But the people that teach it over the summer are all really qualified
[HKN] Kaitlyn Lee: And like, it's a great class in general.
[HKN] Austin Patel: So out of all the program programs available which ones would you recommend prep freshman edge honors
[HKN] Austin Patel: I'm not actually familiar with them but i i don't know anyone who's been prep refreshing edge.
[HKN] Austin Patel: I don't think any of us were part of it. So I don't know how much we can speak directly to that.
[HKN] Austin Patel: Are definitely look at the website.
[HKN] Austin Patel: And and see
[HKN] Austin Patel: But I don't I don't think we're well equipped to answer that question.
[HKN] Austin Patel: Um, so what is how do you take advantage of the maker space of Berkeley. Ah, OK. So one of the great things about Berkeley is there are a lot of places where you can actually make things
[HKN] Austin Patel: And there's like supplies materials for you to do so. So, for example, there's the Jacobs Hall, which is like a new design and innovation space.
[HKN] Austin Patel: It's pretty much like a massive maker space. All right next to the computer science building and within there there's like 3D printers laser cutters workshops bunch of different rooms, few of the things you can get us you can get a pass that lets you like have access to it. I think it's
[HKN] Austin Patel: Around $50 a semester, which includes some material fees. So it's like it's not too. It's not too bad to get access to that space, um,
[HKN] Austin Patel: So I just took him Jacob saw I can see the link in a second. In the tribe.
[HKN] Kaitlyn Lee: raise the price $200 per semester now.
[HKN] Austin Patel: Oh, unfortunately.
[HKN] Kaitlyn Lee: It's like training for like everything in there. I've taken a couple classes and Jacobs, which is the building with the maker space of one of the bigger maker spaces in it. Um, so it's about $100 a semester but you get access to like 3D printers like CNC machines.
laser cutters. The whole bunch of other stuff in there and I think
[HKN] Kaitlyn Lee: I'm not sure if they have any programs they might have like programming for colleague, but you can also just go to their website and they have like a list of all the
[HKN] Kaitlyn Lee: Like stuff they have as far as like other maker spaces. I think there's one in citrus Lab, which isn't Siddhartha by I believe right next to the building.
[HKN] Kaitlyn Lee: And there's also a maker space in market, one of our libraries. And I think that one's free
[HKN] Austin Patel: There's also one in our engineering building or in our election engineering building called super node which is like a student run maker space which is actually free so you can just go in there, they have 3D printers to have like
[HKN] Austin Patel: A bunch of tools to make things I have occasionally drop in there for like need parts of something, you know, work on something.
[HKN] Austin Patel: So there's nothing a student group associated with it was just kind of cool.
[HKN] Austin Patel: Um, someone asked, how big are the upper class courses. After the first three
[HKN] Austin Patel: Or review sessions after lecture, led by graduate days.
[HKN] Austin Patel: Um, so it really depends on the class. Some of them can be pretty large.
[HKN] Austin Patel: But if you pick a more like specific class like a less popular class, it will be smaller. Um,
[HKN] Austin Patel: I haven't taken this on who's taking a lot operatives know
[HKN] Naomi Sagan: Taken more he ever does and the classes. I'm not taking the class that has more than 300 people right now, but there are definitely more popular see a separate inside one seven years of big examples that are very large, maybe even comparable to Lord
170 is often referred to as 70 with a one in front of it, just in terms of like the number of people who take it.
I think I'm in 170 right now, which is the algorithms costs and there are 700 students
The other operative I'm taking 186 which is databases have I think 500 students but sections are generally pretty small, like under 30 students and as like the semester moves on attendance tends to drop. Also, so it's definitely not hard to find like a more intimate atmosphere.
I've been in classes where discussions were effectively office hours by the end
By the way, we are now in theory live so if anybody can hop on the Twitch and confirm that something is coming across from me. That would be awesome.
[HKN] Austin Patel: Oh, yes, we do see
Wonderful.
[HKN] Austin Patel: I Python is a little small. I don't know if you can make that. So I have different screen setup that are supposed to be like able to focus on different parts of it, is it legible. If I do that.
[HKN] Austin Patel: Oh,
[HKN] Naomi Sagan: I towards can you meet yourself in the zoom chat.
[HKN] Austin Patel: Not the highest quality.
[HKN] Austin Patel: Maybe resumed in
[HKN] Naomi Sagan: I think I'll try to answer a few more questions as the gentleman's getting set up but
[HKN] Naomi Sagan: We're I'm hearing myself on the screen.
[HKN] Naomi Sagan: Questions that we have here.
[HKN] Naomi Sagan: mute myself on the twit screen.
[HKN] Naomi Sagan: Let's see. Where did we leave off.
[HKN] Austin Patel: Actually, I think we're gonna try to do everything all the audio over zoom just make it a little simpler. Is that quality George
[HKN] Austin Patel: Yeah, so if I could stay on the zoom for the audio and then I think we're just going to have the video on Twitch. Um, it's just like I muted myself.
[HKN] Austin Patel: All right. Yeah. So if you can sound both to attend zoom just have your audio for zoom on and we'll try and have all the audio through zoom
[HKN] Austin Patel: And then just disable the audio on Twitch. I guess the thing that I'd be that I'm concerned about is that
[HKN] Austin Patel: The Twitch stream video is a couple of seconds delayed from the audio on the zoom call. So if it's ever like unclear what I'm pointing at or something, please just stop me and tell me to clarify.
[HKN] Austin Patel: Are you ready to get started.
[HKN] Austin Patel: I'm ready as I'll ever be. All right, let's do it. You guys have more questions, we'll have a panel at to with our members of each. So we'll answer everything that didn't get answered. Now for that because
Well, in any case, now that we are hopefully ready ish
I'm George
I'm currently a, I guess you'd call me a senior, but I'm finishing in this coming fall here at Berkeley.
And welcome to my Corona bunker.
Today we're, we're going to be talking some about electronics and how electronics are used in communications and like kind of how like the, the term, the phrase that I was thinking of when I decided to title this stream is how electronics brings people together.
And on that theme. First, we're going to be talking a little bit about a very simple optical communications setup that I've built here.
[HKN] George Hutchinson: And then we're going to be using software defined radios to listen to some broadcast FM
[HKN] George Hutchinson: And so
[HKN] George Hutchinson: First off,
[HKN] George Hutchinson: What's going on here.
[HKN] George Hutchinson: On this circuit boards.
[HKN] George Hutchinson: Pardon me.
[HKN] George Hutchinson: Here on this circuit board.
[HKN] George Hutchinson: We've got a very simple setup for doing like a very short non coherence optical communications link.
[HKN] George Hutchinson: And so this microcontroller here.
[HKN] George Hutchinson: Is supplying power and control to a light emitting diode. And so there's there's a computer underneath this big heat spreader here which is running the program. It's exposing this
[HKN] George Hutchinson: This little shell on here.
[HKN] George Hutchinson: And this shell is controlling that le that light emitting diode that led
[HKN] George Hutchinson: And the control protocol that it's set up to us right now is called pulse width modulation AWS.
[HKN] George Hutchinson: So pulse width modulation fundamentally means that's like there's
[HKN] George Hutchinson: There's a certain signal in which he wants to encode
[HKN] George Hutchinson: Some kind of data. And of course, what's modulation means encoding a signal by changing like
[HKN] George Hutchinson: By basically pulsing that carrier signal at some predefined frequency but changing the fraction of that pulse which is on versus off.
[HKN] George Hutchinson: In order to like to encode some information in these pulses.
[HKN] George Hutchinson: And so here you can kind of see hopefully on the Twitch stream that the the signaling led, which is the red one here is blinking very slowly.
[HKN] George Hutchinson: But the software that's running on this board right now.
[HKN] George Hutchinson: Knows how to change that we can go
[HKN] George Hutchinson: even slower if we want to
[HKN] George Hutchinson: Wait.
Wait.
[HKN] George Hutchinson: We can go very, very fast.
[HKN] George Hutchinson: Hey, I hear somebody Mike or somebody trying to ask a question.
[HKN] George Hutchinson: Well, in any case, by
[HKN] George Hutchinson: This is
[HKN] George Hutchinson: What so by doing this pulse width modulation fast enough that the camera and streaming from off onto from my desk onto is not able to actually resolve those individual pulses, we can, if we can create what's effectively like
[HKN] George Hutchinson: A kind of Genki analog output.
[HKN] George Hutchinson: Where we can scale the duty cycle.
[HKN] George Hutchinson: To actually you guys will probably be able to see this indicator led better pointed at the camera.
[HKN] George Hutchinson: There we go.
[HKN] George Hutchinson: So,
[HKN] George Hutchinson: If we set a duty cycle of 20% now in this pulse width modulation. That means that like the for a given millisecond of time over which it's running, running a period
[HKN] George Hutchinson: This is it's now going to be like up for 20% down for 80% of it.
[HKN] George Hutchinson: And so
[HKN] George Hutchinson: That that creates like when it's running slower enough effectively like a pseudo analog output where like, we can just directly encode a value into this duty cycle between say zero and one. And that value, then
[HKN] George Hutchinson: Like the, I guess I'd say the the imperfections from just transmitting that value.
[HKN] George Hutchinson: will only appear at frequencies at least as high as
[HKN] George Hutchinson: Like the, the frequency of the pulse width modulation itself.
[HKN] George Hutchinson: And so what that allows us to do is like, since a lot of systems are inherently limited in like the speed at which they can process things in this led effectively looks
[HKN] George Hutchinson: This. This led effectively looks like it's just receiving some analog value.
[HKN] George Hutchinson: Okay cotham asks, very cool. But I'm confused about the overall goal of the project.
[HKN] George Hutchinson: So, this is this is meant to be just like a very simple example of something that modulates data into optics and then can receive it on another end. And so, um, let me adjust things around a little bit.
[HKN] George Hutchinson: Can you see
[HKN] George Hutchinson: This little piece here, this is this is a photo diode. And so what it's doing is receiving some
[HKN] George Hutchinson: Like it converts to the intensity of light that's incident on it into an electric current.
[HKN] George Hutchinson: Which is pulled off these power rails here.
[HKN] George Hutchinson: And then I have some other circuitry back here.
[HKN] George Hutchinson: Whose job is to like take that current and basically decide if
[HKN] George Hutchinson: Take the, the, like the current flowing off. This led and decide if there is if there's current flowing or not.
[HKN] George Hutchinson: And so this green LED here is something that I just added as like
[HKN] George Hutchinson: An indicator, if you will, of like whether or not it's past the decision threshold for deciding if there's like the incident on this photo diode here or not.
[HKN] George Hutchinson: And so
[HKN] George Hutchinson: On this other end of it, it's connected to a different board over here.
[HKN] George Hutchinson: And this board is what we're going to actually use to receive this pulse width modulated signal.
[HKN] George Hutchinson: So I'm going to switch over to focusing on this Python notebook.
[HKN] George Hutchinson: And let's see.
Yeah.
[HKN] George Hutchinson: So,
[HKN] George Hutchinson: This
[HKN] George Hutchinson: This microcontroller is currently running a firmware which exposes a Python shell to my computer.
[HKN] George Hutchinson: And we're going to use it to receive the pulses coming off of
[HKN] George Hutchinson: Coming off of this output. Let me actually readjust circuit, a little bit so you guys can see it better.
[HKN] George Hutchinson: Ah, somebody's asking a very good question, how do you analyze light coming in and make sure it's not just from the surroundings.
[HKN] George Hutchinson: And so one thing that I set up here is
[HKN] George Hutchinson: Like this, this potentially amateur here allows me to adjust the like basically the decision threshold of the output analog circuit.
[HKN] George Hutchinson: And so let me let me change the operating frequency down to something that you guys can see happening.
[HKN] George Hutchinson: And
[HKN] George Hutchinson: Let's see here that like this indicator led
adi: Is currently linking
[HKN] George Hutchinson: In time with with the saving the like reference signal that we can calibrate it to coming in here.
[HKN] George Hutchinson: But
[HKN] George Hutchinson: This this threshold adjustment.
[HKN] George Hutchinson: And so this integrated circuit here is called an operational amplifier which is currently set up in a competitor.
[HKN] George Hutchinson: Block. So that means that like I can use this potential amateur to create like
[HKN] George Hutchinson: some fraction of the the potential between the between ground and the like five volts reference that this microcontroller is getting from my computer.
[HKN] George Hutchinson: And like some fraction of that difference is used as like the value of that this circuit is comparing values coming in off the light to. And so if I like turn this around a little bit.
[HKN] George Hutchinson: You'll see that now I've set a threshold. That's like too high, all the time.
[HKN] George Hutchinson: And now, like the indicator LED is just not lighting up at all. And on the other side.
[HKN] George Hutchinson: I can set like an absurdly low threshold where this indicator LED is just on all the time.
[HKN] George Hutchinson: So like this provides just like a very simple Genki mechanism for me to
[HKN] George Hutchinson: Set like a comparison threshold that like it between the illuminated and dark currents across this photo diode and by by dark. I mean, like the reference current in the current ambient light conditions.
[HKN] Austin Patel: It George didn't there's any chance you could maybe zoom in on the circuit board from your phone.
[HKN] George Hutchinson: Um,
[HKN] George Hutchinson: I can certainly try. Give me a quick second here.
[HKN] Austin Patel: Okay, it's just a tiny bit hard to see the actual components.
[HKN] Austin Patel: Women physically move your phone closer if possible.
[HKN] George Hutchinson: See
[HKN] George Hutchinson: zoom in here.
[HKN] George Hutchinson: Does that do it.
[HKN] George Hutchinson: Yes, yes I can.
[HKN] George Hutchinson: Alright, how does that look I give the Twitch stream a second or so to update
[HKN] Austin Patel: That looks looks better. Yeah. That was good. Think so.
[HKN] Austin Patel: So and also asked what logic gates. You're using
[HKN] George Hutchinson: So the only logic gates in this circuit are the ones that are like part of these two micro processors.
[HKN] George Hutchinson: Like inside of this integrated circuit here like I was mentioning before, it's, it's an operational amplifier. It's an analog circuit which it, what it does is it takes the difference of two inputs.
[HKN] George Hutchinson: And then amplifies that by something out and it's got a lot of applications like better actually analog, but here I'm kind of I'm using it as like basically a digital sense amplifier. So like if if this input gets over some threshold.
[HKN] George Hutchinson: We raise the like out quick decision and we'd lower it if it's below.
[HKN] George Hutchinson: And it's looking on my OBS like you guys can no longer see the Firefox screen capture
[HKN] George Hutchinson: Is that, is that happening.
[HKN] Austin Patel: Yeah, we see your circuit board in your in your terminal and you we just don't see
[HKN] Austin Patel: Firefox.
[HKN] George Hutchinson: God damn it.
[HKN] George Hutchinson: Sorry. Gosh dang it. This is a good wholesome Christian
[HKN] George Hutchinson: I switch focus now it's the source. That's the problem.
[HKN] George Hutchinson: Anyways, well I continue to struggle with technical issues. Anybody have more questions I can answer.
[HKN] Austin Patel: Someone asked, are we going to be learning how to use a variety of circuits and making circuits like these in our classes.
[HKN] George Hutchinson: Yeah, so
[HKN] George Hutchinson: The, the, like core lab project of E 16 be which is like an introductory level, of course, that everybody takes it because in the East degree and most people do it like late freshman year or early sophomore year. And so the the final project of that course is
[HKN] George Hutchinson: It's a little car that can drive around and it responds to four different command words that you program into it.
[HKN] George Hutchinson: And you'll learn to do all of these simple signal processing techniques and all of these simple like controls and circuits techniques required to make that car work. It's honestly very satisfying when it's done.
[HKN] George Hutchinson: Yeah.
[HKN] George Hutchinson: A lot of people at Cal who are more hardware inclined will get involved in a technical club like Cal soul or Cal star, those two are like clubs that are dedicated to building something for like contests soul is solar cars and star is rockets.
[HKN] George Hutchinson: Yeah, I'm
[HKN] George Hutchinson: Sorry, I'm going to focus for a second on
[HKN] George Hutchinson: Dealing with this.
[HKN] Austin Patel: Yeah, I can. I can add on to that question.
[HKN] George Hutchinson: Please do.
[HKN] Austin Patel: So yeah, George mentioned you build the car so you gotta build like the actual motor driver circuits.
[HKN] Austin Patel: So like you power the car from these like nine volt batteries, you have to create the circuit that kind of
[HKN] Austin Patel: steps down the voltage and regulates the voltage
[HKN] Austin Patel: To a point where you can power.
[HKN] Austin Patel: The car part of the motors.
[HKN] Austin Patel: And then there's also like a mic board on the car so it can, like, listen to what you say and you write the actual algorithms that like can take like the raw input of the microphone and process which word you say see you, you'd write like a basic algorithm.
[HKN] Austin Patel: That lets you identify the voice signals and that's this is are you going to do within your first year at Cal. If you choose to take 16 eight and 16 be
[HKN] Austin Patel: The first class you'll be taking 16 a
[HKN] Austin Patel: 16 day
[HKN] Austin Patel: Neither labs in my class you'll be building
[HKN] Austin Patel: Two different are you building a touchscreen. I don't resistors, which is pretty cool.
[HKN] Austin Patel: You also
[HKN] Austin Patel: There's like other lives where you learn how like solder and like build other types of circuits.
[HKN] Austin Patel: There's also a lab where you kind of identify the location of like a microphone based off like a bunch of speakers, there's
[HKN] Austin Patel: An array of speaker setup in a circle and then you place like your microphone somewhere in that circle and you write an algorithm to like detect the location.
[HKN] Austin Patel: Of the microphone just based on the sounds that hears, which is like pretty cool.
[HKN] Austin Patel: It's like that classes focused a lot on linear algebra. So you're using matrices and whatnot.
[HKN] Austin Patel: As like the the mathematical tool behind
Us.
[HKN] Austin Patel: There's like other questions people have you'd like send those in the chat. I can try to answer those.
[HKN] Austin Patel: Oh wait, George's. It is everything working on your
[HKN] George Hutchinson: Yeah. Yeah, it looks like it's working again.
[HKN] Austin Patel: Okay, you have to
[HKN] George Hutchinson: Um yeah well
[HKN] George Hutchinson: Guys, don't worry if we haven't gotten to your question, yet we are we have an entire hour dedicated to that coming up.
[HKN] George Hutchinson: And so
[HKN] George Hutchinson: Because things have been going slow. I'm going to try and polish off this like this led part of this demo. And we can move on to the software defined radio bits.
[HKN] George Hutchinson: And so next thing we're going to talk about is how we can like
[HKN] George Hutchinson: Read information that's coming out coming through this setup on the other side.
[HKN] George Hutchinson: And so on this other microcontroller.
[HKN] George Hutchinson: It's
[HKN] George Hutchinson: It's it's running software which
[HKN] George Hutchinson: Is able to, like, identify the length of pulses in some incoming signal to one of its digital pins.
[HKN] George Hutchinson: And so we're going to use that here to like recover the time over which this indicator signal is up.
[HKN] George Hutchinson: Like the the signal that's coming off the comparison of the like light based voltage to our like threshold that we said earlier.
[HKN] George Hutchinson: And so what this code that I've written here does is it like reads in some sequence of pulses and populates and array of outputs with the like estimated times
[HKN] George Hutchinson: That the pulses were actually active for and it's specifically set to
[HKN] George Hutchinson: So if we were just doing that, but just noting the times between transitions.
[HKN] George Hutchinson: And we could easily run into a problem, which is actually like a very common problem in signal processing of not knowing when you started basically like
[HKN] George Hutchinson: If, if we just had some array that's populated with transition times here in this example, then we would have no idea if the first one was up or down.
[HKN] George Hutchinson: But in in more complicated modulation schemes that more practical communication system might use that's actually an even broader problem.
[HKN] George Hutchinson: Which is generally solved by transmitting like some known header first and that enables your receiver to like kind of
[HKN] George Hutchinson: Match like since it knows that header that like shape of something you're going to be transmitting ahead of a signal.
[HKN] George Hutchinson: That means that the receiver can match that timing in order to like recover the timing that the transmitter is trying to operate on
[HKN] George Hutchinson: And so here that's done through this statement I don't stay false, which just means that
[HKN] George Hutchinson: This received chain.
[HKN] George Hutchinson: Will always start on the the low end of this pulse width modulated signal.
[HKN] George Hutchinson: And so we start reading pulses. We let them read in until we filled up this array.
[HKN] George Hutchinson: And tell it to stop.
[HKN] George Hutchinson: And then how do we like extract the analog value that we were actually trying to transmit
[HKN] George Hutchinson: We've collected like some collection of pulses.
[HKN] George Hutchinson: So let's average all of the ones that should be highs and also all of the ones that should be lows.
[HKN] George Hutchinson: So transmitting
[HKN] George Hutchinson: And
[HKN] George Hutchinson: So here these acts. These numbers are in units of microseconds, by the way. Seconds times 10 to the negative six.
[HKN] George Hutchinson: And so you can see here that like the average below pulse after we have successfully started up this receive chain is around two milliseconds long
[HKN] George Hutchinson: And the average leg high pulse is going to be eight milliseconds long so adding those together, we can recover that
[HKN] George Hutchinson: Oh, right. Whoops. Yes, these, these are the highs and these are the lows.
[HKN] George Hutchinson: And so that is
[HKN] George Hutchinson: A little bit off from the 20% duty cycle that this is currently set to
[HKN] George Hutchinson: But like
[HKN] George Hutchinson: It's off by an amount that we could resolve it compared to some other
[HKN] George Hutchinson: distinct groupings of things we might want to like read over this pw album.
[HKN] George Hutchinson: And so as an example. Let me change this duty cycle to now.
60%
[HKN] George Hutchinson: And so
[HKN] George Hutchinson: Now, now we see that like
[HKN] George Hutchinson: These values are closer to like 40 by 60
[HKN] George Hutchinson: Which is
[HKN] George Hutchinson: Really, that's kind of weird.
[HKN] George Hutchinson: Yeah, that's interesting.
[HKN] George Hutchinson: So if we go back to the
[HKN] George Hutchinson: Duty cycle.
[HKN] George Hutchinson: We can see
Yeah.
[HKN] George Hutchinson: So interestingly, there's kind of like a very consistent approximately 350 microseconds offset on this timing between the pulses that we've discovered. There's part of me that we've recovered.
[HKN] George Hutchinson: So you could probably use that in order to like to actually recover these pulse timings much more accurately.
[HKN] George Hutchinson: And be able to distinguish between things that are a lot closer together. But let's let's say we're very dumb engineers. Let's say we have no idea how to do that, we can still recover duty cycle is down to quantization is that are greater than this offset. So like
[HKN] George Hutchinson: At the at this at this frequency that we're transmitting app right now and changing duty cycle by 10% will change these pulse timings by approximately
[HKN] George Hutchinson: Half a millisecond.
[HKN] George Hutchinson: And so that actually overwhelms this known offset. So that means that, like, in general, we can resolve things
[HKN] George Hutchinson: So now that now that we've gotten here. I'm actually going to switch over.
[HKN] George Hutchinson: To talking about software defined radio
[HKN] George Hutchinson: But I'm definitely open to looking taking some more questions about this while I'm while we're switching over
[HKN] George Hutchinson: What is threshold. What's the threshold. So that's, that's what I was talking about with respect to the like competitor job that this this circuitry is doing over here.
[HKN] George Hutchinson: So I can manually set a threshold of, like, what's currently going through this photo diode which this this circuit interprets as light or not light.
[HKN] George Hutchinson: So I'm not going to need this for this part.
[HKN] George Hutchinson: This
[HKN] George Hutchinson: Is a connected
[HKN] George Hutchinson: Please give me one moment.
[HKN] George Hutchinson: There's power.
[HKN] George Hutchinson: And so
[HKN] George Hutchinson: For this section of the demo, we're going to be doing some stuff with software defined radio
[HKN] George Hutchinson: software defined radios are like
[HKN] George Hutchinson: They are basically exactly what they say on the 10th radios that like kind of have certain specifics of their operation configured in software.
[HKN] George Hutchinson: And so the the salient parts of this setup.
[HKN] George Hutchinson: Are like the the SDR circuitry itself, which all lives inside of this USB dongle.
[HKN] George Hutchinson: Which is connected to a Raspberry Pi and a speaker, which I'm borrowing from a course that I'm currently in IE 123 digital signal processing and like this is actually able to hear the radio spectrum because it's connected to the Santana here.
[HKN] George Hutchinson: And this. This is just a simple little dipole antenna. But when electromagnetic waves are incident on this line here, they excite some electric current into like the specific or Salvatore mode that those waves have energy in
[HKN] George Hutchinson: And that like those waves waves around some points that you're interested in exploring in like frequency space get sampled by this everything inside of this USB dongle. And then read out
[HKN] George Hutchinson: Into our into our Raspberry Pi here.
[HKN] George Hutchinson: Oh,
[HKN] George Hutchinson: You guys can't see that. Can you
[HKN] George Hutchinson: Okay.
[HKN] George Hutchinson: This should be more visible now.
[HKN] George Hutchinson: Yeah, sorry about that. I did not realize that my video feed was getting cropped
[HKN] George Hutchinson: But yeah, so I was talking about how this this receiver chain that we're going to be using to listen to the radio. It includes this dipole antenna.
[HKN] George Hutchinson: This dipole antenna.
[HKN] George Hutchinson: Or me which
[HKN] George Hutchinson: So this, this dipole antenna, like I was saying when electromagnetic waves are incident on it, it excites some current, which then can get read out by this dongle.
[HKN] George Hutchinson: And then into this Raspberry Pi
[HKN] George Hutchinson: And I mentioned that this demo is
[HKN] George Hutchinson: Based on an actually a lab that I did for a class like I mentioned he was 23 digital signal processing.
[HKN] George Hutchinson: And so on this Raspberry Pi
[HKN] George Hutchinson: We can run a Python interpreter, which is able to
[HKN] George Hutchinson: I guess we're not connected here. Give me a quick second
[HKN] George Hutchinson: That show
[HKN] George Hutchinson: Well, well, we're paused on this drummer, I see your question to students generally use Windows, Linux, Mac for labs and projects.
[HKN] George Hutchinson: So I'm noting the phrasing of your question for labs and projects and like
[HKN] George Hutchinson: A lot. A lot of students use
[HKN] George Hutchinson: Like pretty much any operating system that you can think of for their like for their personal computers. I've got Mac user friends Windows user friends love with fellow Linux users.
[HKN] George Hutchinson: Are not using as much BSD these days, my home server. It's still on us.
[HKN] George Hutchinson: But so like the thing about that is that for projects in a lot of classes, you'll want to have like
[HKN] George Hutchinson: Some more standardized setup that like core staff are able to help you debug.
[HKN] George Hutchinson: And so that means that like
[HKN] George Hutchinson: For say like this signals processing course that I was mentioning, I'm in. We're all distributed for the duration of the semester. These Raspberry Pi's have a nice standardized Linux environment setup on them and you can do these labs on
[HKN] George Hutchinson: And like for like the operating systems class here at Berkeley. You're strongly encouraged to do things in
[HKN] George Hutchinson: In a virtual machine that you can run on your computer, whatever it's running or like on the school's instructional servers.
[HKN] George Hutchinson: But that means that like you for projects you will usually
[HKN] George Hutchinson: I guess I'd say you're generally not set up in a way so that you're limited by what you're personally using
[HKN] George Hutchinson: One.
[HKN] George Hutchinson: Alright, it seems like we are back now.
[HKN] George Hutchinson: I also see that it's not too. I apologize for my technical difficulties slowing down all of this.
[HKN] George Hutchinson: But so in this demo, we're going to talk some about like a much more practical communication protocol and the very simple than the very simple one. I was showing you earlier, and that is FM frequency modulated radio
[HKN] George Hutchinson: So,
[HKN] George Hutchinson: The like the the core of FM
[HKN] George Hutchinson: The core of FM, is that like you have some specific frequency of wave that like your station is supposed to be transmitting say like in for the purposes of this demo, we're going to be listening to some commercial broadcast FM at
[HKN] George Hutchinson: 96 megahertz.
[HKN] George Hutchinson: Which is here in Santa Barbara It's a cool little rock station or no, sorry. Right. I was reading that wrong. We're going to be listening to one or 3.6 megahertz. This is the sampling frequency. This is the rate at which samples get read into this setup.
[HKN] George Hutchinson: And so the way frequency modulation works is you have some specific frequency that some carrier frequency that you want to encode your information around and you like twiddle around with the frequency of like a cosine wave at that specific carrier frequency
[HKN] George Hutchinson: Sorry was somebody starting to ask question there.
[HKN] George Hutchinson: Nevermind. I will move on.
[HKN] George Hutchinson: Yeah so frequency modulation works by like very slightly changing around the frequency of a cosine wave in order to capture data that you wants to transmit
[HKN] George Hutchinson: And so when we listen to, like we graph in spectral space. The basically energy that's being transmitted by this commercial radio station near where I live, will find that like around its carrier of 103.3 megahertz.
[HKN] George Hutchinson: It's putting energy, a little bit further out into the band. And so, and that's because a part of it is because like
[HKN] George Hutchinson: The, the actual sounds that it's trying to transmit are a little bit off in frequency or make make what it's transmitting a little bit often frequency from like that that specific carrier wave
[HKN] George Hutchinson: And so in order to process this we are first going to like cut out all of this dead space that like nothing interesting is happening in
[HKN] George Hutchinson: And this is called a low pass filter.
[HKN] George Hutchinson: It's like some
[HKN] George Hutchinson: It's a mathematical object that exists in discrete time that we can kind of like pass this frequency space representation
[HKN] George Hutchinson: Of our system of like our signal through in order to kill off all of these were your tenants that we don't care about
[HKN] George Hutchinson: And when we do that, and we also down sample to, like, first of all, just have a little bit less data to deal with and also to like
[HKN] George Hutchinson: Reduce the
[HKN] George Hutchinson: Army. Yes. So here we are all passing that. Filter over this data. And so, like, this is the frequency space representation of this filter it passes through frequencies that are like indiscreet time close to
[HKN] George Hutchinson: That are low in this discrete time representation. This is not like the continuous time frequencies that were like sampling over these are frequencies like indiscreet time
[HKN] George Hutchinson: And we can pass that filter over this data and zoom in on it a little bit. And we see that like
[HKN] George Hutchinson: We noticed these points where there's certain distinct frequency offsets that are visible in this in this band.
[HKN] George Hutchinson: And will notice more about what's causing that once we do modulated
[HKN] George Hutchinson: And so we're going to just like very slightly re scale this data to avoid having like zeros and cut offs, which is just a nice little change. You can make
[HKN] George Hutchinson: Oh, whoops, I forgot to rerun these cells.
[HKN] George Hutchinson: Since we started
[HKN] George Hutchinson: This we started this part of the demo.
[HKN] George Hutchinson: Okay, yeah. And so like
[HKN] George Hutchinson: Now, the question becomes how do we get information out of these deviations in the frequency
[HKN] George Hutchinson: And so if you've taken a calculus class, you probably know that when you take a differential have a trigonometric function, you get like a phase shift of it times the current instantaneous frequency
[HKN] George Hutchinson: And so that's the principle that we're going to exploit. We're going to make a filter. Now that effectively takes the derivative locally in time of the signal that we're receiving
[HKN] George Hutchinson: And then we're going to multiply it with an appropriate phase shift of itself, in order to cancel out that part of the derivative, but just looks like the original signal.
[HKN] George Hutchinson: And by doing that will extract a signal that looks like the instantaneous changes in frequency of what we're receiving
[HKN] George Hutchinson: And so give this a second to process.
[HKN] George Hutchinson: And yeah. One thing you'll notice is that like within a given commercial FM signal there are like a few different groups of things that these commercial stations will do
[HKN] George Hutchinson: There's a pilot frequency which is always at about 20 kilohertz above the carrier and that's like this very solid line here and that's used by like
[HKN] George Hutchinson: Buy hardware receivers that needs to lock very nicely to the, the actual frequency that the station is he said to help them like lock specifically to the frequency that data is modulated into
[HKN] George Hutchinson: But in this case, we're not using that because we have knowledge beforehand that this specific station that we want is here and that we have a good ability to generate
[HKN] George Hutchinson: In this SDR chip, a local oscillator that we can use to modulate that and you also see that there are like these regions above and below that pilot wave
[HKN] George Hutchinson: And that's because most commercial FM stations, they train their transmitting stereo. They're transmitting like two different channels of whatever data they're trying to put out there.
[HKN] George Hutchinson: Like basically left and right. But so, for the purposes of this demo, we will just be modulate
[HKN] George Hutchinson: But like, oh yeah, I guess I wasn't clear about that.
[HKN] George Hutchinson: There's
[HKN] George Hutchinson: When you're transmitting stereo. In general, you don't do like independent channels for left and right you'll instead do like a left plus right and they left minus right channel.
[HKN] George Hutchinson: And so what that means is that like this lower region here is directly extracting the like what's what's called the motto, which is all of this information. Basically, the average of the left and right channels.
[HKN] George Hutchinson: So that means that, like, that's because this, this was developed, historically, before the time when people were interested in doing the stereo bits.
[HKN] George Hutchinson: And so like we can have a compatible system which do modulates adjust this motto region. And so in order to do just that.
[HKN] George Hutchinson: Oh, on a house. I see you're asking what time does the panel start it starts soon I will be finishing up in just a couple of minutes here.
[HKN] George Hutchinson: And so we're going to like filter out using another low pass filter just this just this specific
[HKN] George Hutchinson: Like the Moto channel of this frequency modulated radio
[HKN] George Hutchinson: And we'll see that like it's banned limited to around 16,000 Hertz above the fundamental frequency of this carrier
[HKN] George Hutchinson: And if nothing went wrong. We can now play some audio.
[HKN] George Hutchinson: Alright. And yeah, so that
[HKN] George Hutchinson: That is that is the end of my pair of demos.
[HKN] George Hutchinson: We will presently be transitioning over to panel mode. So if any of our particular hosts wants to talk about this. I mean, we can pause for a couple of minutes.
[HKN] George Hutchinson: Thank you so much.
[HKN] Austin Patel: Yeah, thank you so much. I'm so we're going to do the panel on the same call this zoom
[HKN] Austin Patel: We're not going to use the Twitch stream anymore. So you can feel free to leave the Twitch stream.
[HKN] Austin Patel: And we're going to have the HK members here answer some questions. They're gonna turn their video on
[HKN] Austin Patel: And we're just gonna have like a live Q AMP. A we're going to go through and do like a kind of a student panel. So if people have questions. I know there's some questions earlier that did not get answered.
[HKN] Austin Patel: You could ask this again and we can try to address those we have like a full hour for questions and like going through the panel. So it should be more than enough time to get everyone's question. Um, so if the age. Can people here.
[HKN] Austin Patel: Want to
[HKN] Parth Nobel : Turn on the videos. Sweet.
[HKN] Austin Patel: That would be
[HKN] Austin Patel: And then Caitlin, you could probably stop screen sharing
[HKN] Parth Nobel : Awesome.
[HKN] Parth Nobel : So maybe let's
[HKN] Austin Patel: Go through um I've won one by one and just like give a brief introduction, like your year
[HKN] Austin Patel: Stuff new class you're taking
[HKN] Austin Patel: stuff you're doing on campus, maybe why he was going to Berkeley.
[HKN] Austin Patel: It. Yes, there will be a recording of this demo posted later so parts do want to start
[HKN] Parth Nobel : Sure.
[HKN] Parth Nobel : Hi everyone I'm part noble. I'm a third year Berkeley. I do a lot of work in firmware and in some of the more pure math parts of the field like system theory.
[HKN] Parth Nobel : And I'm very active in the Model United Nations team at Berkeley. I do speech coaching for them. And I used to be an officer for them.
[HKN] Parth Nobel : And I, I really like Berkeley, because it's this huge diverse school which has a lot of really interesting like legal classes that I've taken of law school and on campus.
[HKN] Parth Nobel : And and I've been also having a great time learning so much from all the technology work that's going on here and the research we on campus.
[HKN] Austin Patel: Naomi do want to go next.
[HKN] Kaitlyn Lee: Before you guys go let me stop recording every record.
