Category | Difficulty |
---|---|
HW | 5 |
Exams | 6 |
Labs | 6 |
This course for many ECE majors is the first opportunity to work with circuits, in building, measuring, and debugging them. Although the applications of your circuits isn't as hobby-like as you would expect, the skills you learn from working with circuits is a handy fundamental for any future Arduino/RPi projects you may pursue in the future.
The lecture component of the class goes over the theory behind all of the hardware you will work with in labs. While the theory may not be as interesting to you, for the most part, the class is very straightforward in teaching theory, in that you are mostly just learning equations and figuring out when to apply them. You should know how to solve circuits though, with KVL and KCL, so make sure you brush up on those skills before you take this class.
While many ECE majors nowadays see themselves being software engineers or working with FPGAs and thus neglect this class, keep in mind that many fundamental circuit concepts will appear in any computer-like device you work with. In digital, you might have to work with signal reflection and parasitic capacitance. In computer architecture, you might have to understand how storage systems work, and how devices are connected and powered.
Some of the homework questions are taken from the textbook, but others are written by the professors in more of an exam question format. The homeworks can get difficult, so manage your time appropriately if you need to ask questions to be able to finish the homeworks.
Professors expect you to go to class, so they will only upload partially filled out lecture notes. This typically is enough to give a good general understanding of the material, but on occasion this can leave out key equations that are needed for problem solving. Because of this, students complain about not having full out-of-class support. In addition, lectures can be dry at times, since it's a very structured
- History
- Equations
- Practice problem
- Applications
for every topic. Some lectures will also go over generic step-by-step guides on how to solve particular problems. In my opinion this is the most useful knowledge given during lectures, particularly towards the end of the semester when material gets the most confusing, but these guides are not given for every single type of problem. Aside from these points, it's important to note that the homeworks require one or more steps of understanding farther than what the lectures offer. OH is offered pretty frequently, so during times when homework problems take more inspiration to solve there's always OH available. I think the homeworks are designed this way intentionally to challenge students, but I do feel like certain topics in the class could be taught more comprehensively, such as
- Feedback systems
- Deriving transfer functions
- Small signal analysis
Labs are a unique hands-on experience offered by this course, and also an effective way to teach students about how to work with circuits. There are labs every week, except for exam weeks. Since labs are intended purely as a learning experience, your grade in lab is essentially guaranteed to be 100%, unless you
- Show up late
- Don't do your prelab
- Do the lab too slowly
- Break lab rules, i.e. making a mess, not turning off equipment, eating in class
The labs can become very confusing if you don't do adequate prep work. Definitely make an effort to have the prelab completed by the time you even walk into the lab: this will help you get off to a great start. Something else that isn't necessary but definitely also helps is reading the entire lab before going in to work on the lab. This helps you gain an overview of what you'll be doing during the lab so you can have a better understanding of your goals for the lab.
Even if you do all the prep work, these labs can still get very confusing if you have to do a lot of debugging. When making circuits, people often just string together whatever they can, and just pray it works. What you should do instead, is treat your circuit like code you write in software. Would you write messy code? Would you write code that is not possible to debug, i.e. not have anywhere to insert print
statements or set breakpoints? If you think about making "good circuits" as you do lab, you will make you and your TA's lives much better. Also, you have a lab partner, so take advantage of the second set of eyes. Have your lab partner help you build a neat circuit and trace your logic. Here are some tips to help you build good circuits:
- Make your circuits as neat as possible
- Cut wires long enough so you don't have to cram everything in a small space
- Likewise, don't make wires ridiculously long so "you can always extend your connection" You will have a hot spaghetti mess on your board
- You have an oscilloscope, which means you can literally probe in anywhere in your circuit and measure what's going on. This is basically an irl super debugger.
Lastly, try your best to get to know the other people in your lab section. In addition to your lab partner, it is very useful to branch out and make more friends in your lab section. Not only can it make lab super fun, but it is also very helpful to have more people you can reach out to to ask for help. Labs are typically understaffed with TAs, so having more connections in your lab section gives you more opportunities to ask for help if you're stuck at any point in the lab.
Exams are not much more difficult than HW problems, aside from the time pressure you have on exams. If you can do all of the HW problems fluently, and not just in the sense of memorizing the solutions, but understanding how and why the solutions were written that way, you should be able to do the exams pretty well. There are plenty of practice problems to study for exams, from the HW, to the pre-exam review sessions; I've also posted some links in the Resources Section.
Therefore, a reasonable study plan is to
- Do all the HW problems without help from the solutions
- Do the exam review session problems
- Glance over slides for trivia/equations not covered in lecture
As mentioned before, the exams are a time crunch. Keep this in mind before you go into the exam room.
The final exam is not significantly different than the midterm exams. There is a makeup exam the week before finals week, and taking that exam is a great way to study for the final.
- Know how to apply KCL to any circuit, no matter how complicated.
- Keep a list of equations/properties as you take the course, as they will help you study for exams in a more condensed way
- Study for the exams by making a cheat sheet, even if you're not allowed a cheat sheet during the actual exam. This is a great way to review and interact with the material, and it's a great place to keep track of all the equations presented to you in the class material. Put anything and everything you might be useful for the exam and try to fit it on two sides of one piece of paper. Write out the steps of nodal analysis, the graphs and equations for inductors and capacitors, the rules for ideal and non-ideal op amps, and any other major topics that are discussed in lecture for the exam you're going to be taking.
- If you're confused, go to recitation. There's always high quality, comprehensive review questions that really help student understanding of material. Additionally, the recitations right before exams are super helpful for getting a look at the types of questions that will be on the exams.
- Go to the exam review sessions. They are extremely helpful, and they give you really great insight about the topics that will be tested on the exam.