Gas station without pumps

2012 November 1

Notes for things to do on circuits course

Filed under: Circuits course — gasstationwithoutpumps @ 07:18
Tags: , , ,

Since this blog contains my working notes on my circuits class, I should put here some of my “to do” list, as well as notes on what I have done recently.

On Monday, I met with my co-instructor to discuss pedagogic approach, topics we need to cover, number of exams to give, and the politics of getting to offer the course.  Afterwards we met with the EE undergrad director and the chair of my department to reach agreement on what the course is for. I also recorded the main points of the agreement about what we were prototyping and sent it to those at the meeting and the relevant members of the undergraduate curriculum committee, so that we would have a record of what was agreed on (that  e-mail was edited slightly for the post A different way forward for circuit course).

After that meeting, I had a brief conversation with the advising staff member for the bioengineering majors, letting her know that course was moving forward and finding out how students would register for the course, since it is being offered as a generic “group tutorial” rather than being a separate course in the catalog, as it would have been if EE had not tried to block the course in a turf battle.

On Tuesday, I sent the following message to all the bioengineering students:

The Applied Circuits class will be run this year (Winter 2013).

We don’t know when or where the class will meet yet, but there will be a MWF lecture and a 3-hour lab session.  We will be running it as a prototype course, BME 194 (Group Tutorial), and it will appear as a group tutorial on transcripts.

The Bioengineering major will accept this course as fulfilling the EE101/L (circuits) requirement, but EE will not be accepting it as a prerequisite for further electronics courses.  Those students wishing to take the bioelectronics track will need to take EE 101/L.  It is possible to take both the Applied Circuits course and EE 101/L for credit, though there is substantial overlap in content.  It is our hope that students will enjoy Applied Circuits enough that some will be inspired to continue into the bioelectronics track, and that those who do not will have learned a useful chunk of electronics.

To encourage broad and early participation, prerequisites have been kept to a minimum:

  • Calculus (Math 11B, 19B, or 20B, or AP Calculus BC with 4 or 5)
  • Physics Electricity and Magnetism (Physics 5C or 6C, or AP Physics C: E&M with 4 or 5)

The course is a prototype for a 7-unit (5-unit lecture + 2-unit lab) course and will have a workload to match.  It seemed a bit complicated to set up two group tutorials, so we will be offering this course with only 5 units this year (despite the workload).

Because this is a group tutorial, registration will be by permission code only.  I will have the permission codes once they have been issued.  The course is open to any student who has the prerequisites, but first priority will be given to bioengineering majors.  This will be handled by issuing permission codes only to bioengineering majors for the first week that they are available.

In future years, assuming that this prototype works well enough, the course will be listed in the catalog by BME or EE as a normal course plus lab, and registration will be as for other courses.

The theme for course is “connecting real-world signals to computers”, and we will be working with interfacing thermistors, microphones, electrodes, photo-detectors, capacitance sensors, and strain-gauge pressure sensors to Arduino microprocessors.  The final lab will be the design, implementation, and testing of a small single-channel electrocardiogram (or electromyogram).

Students will learn to use standard electronics equipment (multimeters, oscilloscopes, function generators, power supplies) and tools (pliers, wire strippers, soldering irons).

The course is an engineering design course—we aim to make all the labs require design, not just following cookbook procedures.  The complexity of the design tasks should ramp up through the quarter.

Because students will need to buy a lot of parts and tools for the course, we have decided to use only free on-line material for the textbook.

Because this is a prototype course, we will seek frequent feedback from the students in the course about improvements that can be made. Undoubtedly some of what we currently plan will be extensively modified during the quarter.  The current incomplete draft of the course can be found in over 75 blog posts at

I’ve already gotten five students asking to be put on a “waitlist” so that they can register as soon as I get the information needed for them to do so.

Here are a few of things that need to be done:

  • Schedule the lecture.  I requested a time slot and room from the School of Engineering scheduling person, but she is new in the job, and scheduling a “group tutorial” may be different in some way from scheduling other classes, so I’ll need to follow up and find out when we’ll know what classroom we have.  Advising week starts today, and priority enrollment on Nov 13, so it would be really good to have that schedule!
  • Schedule the lab.  Lab times are scheduled by the people who support the labs.  My co-instructor has contacted them and gotten verbal agreement that the lab can be scheduled, but we don’t have a time yet.  I also have to find out how much flexibility we have in getting a second lab section if we have larger enrollment.  I think that the capacity of the lab is 24 students, but I’d be more comfortable having only 22 students in the lab, in case one of the stations has problems.  (It is also a rather small room.) Again, advising week starts today.
  • Advertise the course.  Since it doesn’t appear in the course catalog or winter schedule of courses, no one will know about it unless I tell them.  I started this by informing the bioengineering majors by e-mail, but I should probably put up posters around Science Hill and the engineering buildings next week. I’d like to have 20–40 students (1–2 lab sections) for this prototype run of the course, with 2–3 lab sections once the course is firmly established.  I think that will require reaching more than just the bioengineering majors (I think they have a cohort of about 40 students a year).
  • Make a template for the lab handouts.  I think I want a standard format for all the labs, with sections for background theory, design task, parts and tools needed, further information resources (like pointers to data sheets), procedural instructions (for things like using the oscilloscope), and design hints.  I’ll probably distribute the handouts on-line as PDF files, but I’m not sure what tool I’ll use for making them.  Some will require a fair amount of math, so LaTeX seems like the best bet.  I don’t think that my co-instructor is a LaTeX user, though, so I’ll probably end up having to type up anything he produces.  Incorporating graphics into LaTeX files is always a bit of a pain also.
  • Start making lab handouts. I’ll probably have to alternate between writing labs and tweaking the template for the handout. I’ve gotten over half the labs (including the first three) pretty well worked out, both in my head and from trying them out, and I have notes about them on this blog, but I haven’t written a student-friendly lab assignment for any of them yet.  I’m going to have to do most of this myself, since my co-instructor has bigger teaching load than me, and can only get paid for 1/3 of a course (5% of annual salary) unless he drops a course for another department, which would be dangerous for him, as they are likely to be providing future courses for him, and our department can only afford to hire him for one course a year.
  • Get a university credit card for ordering parts and tools for the student kits that the students will have to buy.  We’re looking at about $100 a student, and I don’t want to have to put up $2000–4000 of my own money for this.  Once the course is well-established with an already-tested set of parts and tools, the lab support staff can order the parts and package the kits, as they do for other lab courses (for about a 15% markup). But this year we’re still going to be putting stuff together over campus closure, and I may be needing to order more parts and custom PC boards even once the course starts, so I’ll want the flexibility of a credit card to make the purchases as needed.  I’ll need to talk with the department manager about getting such a card, because I suspect it takes weeks to go through the bureaucracy.
  • Make the parts list and tool list for the student kits.  We may end up making multiple kits for the course, rather than a single kit, so that we can have the kit for the first few labs complete by the first lab meeting, even if some of the later labs are still under development.  We also have to decide whether to send students out to do their own shopping for some things that are easy to find (like Arduino boards).  I doubt that we could do much better than them
  • Start finding sources for the parts and tools.  For some parts, I’ll probably do what I usually do and just order from Digikey, but for some things (like resistor assortments, capacitor assortments, hand tools, breadboards, …) there are much better deals to be found. I’ll have to document the sources for everything carefully, to be able to hand it over to the lab support staff in future.  They’ll probably be handicapped by having to go through university purchasing, who never look past the major suppliers, and so probably end up paying a lot more for some of the things we need.  I’m a little worried that the kit of parts and tools we put together this year will double in price when the lab support staff puts it together in future.
  • Try out the modified pressure sensor lab.  I bought myself an MPX2053DP pressure sensor and am just waiting for the breakout boards to be made and shipped from China.
  • Redesign the instrumentation amp protoboard.  I want room for another 8-pin DIP for an extra dual op amp. I’m also trying out some smaller screw terminals that have a 0.1″ pitch instead of 3.5mm pitch on the pressure sensor breakout board.  If they work out, I could simplify the layout for the off-board connectors for connecting sensors, power, and output, since the pitch would match the pitch of the chips.  I think I also want to eliminate the power-barrel connector on the protoboard (wall warts are too noisy for analog power supplies, I don’t want to put a regulator on the board, the students will have access to good bench power supplies, and I can use a battery pack for power at home).  Removing the wall-wart power supply option would free up the space used by the power connector, and the resistor and electrolytic capacitor I had made room for to clean up the noisy power.  Combined with the tighter pitch of the screw terminals, that may let me keep the size below 5cm×5cm and the price down to about $1–$1.50 a board.
  • Decide whether to include a transistor lab and what it should be.  I’m thinking that it might be worthwhile to add a transistor as power output for an op amp to drive a loudspeaker.  I’ve not decided whether it would be better to teach FET or bipolar transistors—I don’t think that we have time to do labs on both, and I don’t want to teach theory that isn’t tied immediately into a lab the students are doing. Another possibility is to build an amplifier using just a single transistor, so that the op amps are not quite such magical devices.  (Everyone knows that they work by magic smoke, and if you let the smoke out of the package, then they stop working. :-)
  • Come up with a photodetector lab.  I’ve been trying to think of a good lab that would be fun, relevant to bioengineers, doable in one lab session, and pedagogically useful for teaching circuits.  So far all my ideas have only gotten 2 of those 4 goals, which is just not enough.  I’m willing to work with phototransistors, photodiodes, or CdS cells (but not old-fashioned photomultipliers—we’re trying to keep to low-voltage stuff for bioengineers).
  • Try to line up a biologist who can give a guest lecture on excitable cells and action potentials before the EKG lab.  I’m thinking of something at the level of the introduction at, with whatever cool things the biologist can add. A more detailed view (like the one at would also be ok, but the more technical is probably too much.  The video on ECG and electric dipoles at may be useful to have students watch outside class, as the dipole formation from the depolarization wave is illustrated fairly well.
  • Figure out how much to teach about volume conduction for the EKG lab, and how to teach it.
  • Get lab tech staff to install gnuplot, Arduino, and Python 2.7 on lab computers (unless they are already installed).
  • Get son to finish his rewrite of data logger code and test on the lab computers (will require getting him access to the lab over break).


  1. One thought about FETs vs. BJTs: FETs (especially used as switches) might allow you to skip some of the details of the PN junction. Unless digging in to those details is desirable (on the other hand, the photodetector might give you that opportunity). The MITx circuits course used FETs early on to build logic gates — obviously you could do this with BJTs but the biasing arrangements are less obvious, current through the diode has to be limited, etc.

    If you want to build a discrete audio amp, a Class B or AB amp (something along these lines) would probably work better than a single-transistor amp. Class A discrete amps, especially with BJTs, have only mediocre input impedance and power gain. As well, an 8-ohm load would load them down to the point of being nearly useless. The circuit shown in the link is more complicated than a first-time discrete amp needs to be, especially given the feedback and preamp (again, unless those are ideas you’d like the students to explore). I’d be happy to send along some simpler circuits if that’s of use — let me know.

    I agree that building a discrete amp makes people appreciate op-amps (I give a presentation each year called “Why Op-Amps Are Our Friends”). Another possibility for building discrete amps is a simple buffer — a good way to motivate a conversation about the block-diagram view of a circuit, considering only Zin and Zout. On top of that, discrete amps are a good excuse to practice frequency sweeps, and to think about what is causing the high and low roll-off effects.

    Comment by Mylène — 2012 November 4 @ 21:47 | Reply

    • I don’t want to spend a lot of time on discrete amplifiers, because the bioengineers will never use them. They’ll be doing everything with op amps and instrumentation amps.

      I was thinking of doing a simple class A output stage added to an op amp, with the output load seeing a large DC offset.

      Remember that we’re using single-rail power supplies, and the push-pull class B or class AB amplifiers you pointed to would need a large current source for the virtual ground in the middle.

      Comment by gasstationwithoutpumps — 2012 November 5 @ 05:53 | Reply

      • Thinking some more about it (and looking at some other class B and class AB examples), I can avoid the middle rail of the power supply by putting in a largish capacitor in series with the load. Then I end up with a relatively simple push-pull stage of a biasing network of 2 diodes and 2 resistors, an NPN and PNP transistor, and the output DC-blocking capacitor.

        The problem is that the output capacitor would have to be huge for it to pass low frequencies adequately, given the low-resistance load.

        I’m still wondering about the value of this material for the bioengineers. This is probably not the most fun lab for them, so I’d want it to be very relevant.

        Comment by gasstationwithoutpumps — 2012 November 5 @ 06:50 | Reply

        • Yes — this is exactly the kind of thing I had in mind. You’ve already identified all the pros and cons I can think of — it really depends whether this motivates useful sense-making for your students. Some conversations that push-pull amps can lead to: thermal matching, thermal runaway (and positive feedback in general), what causes some devices to be more or less efficient, different kinds of distortion (crossover distortion vs. non-linear distortion), why some devices can get their out closer to the rails than others.

          If those conversations aren’t the ones you most want students to be thinking of, this might not give you a high enough cost-benefit ratio.

          Comment by Mylène — 2012 November 22 @ 07:12 | Reply

          • I think we’re mostly going to stay away from thermal matching and thermal runaway. We’ll talk a little bit about thermal matching on the pressure sensor lab, as I deliberately chose a pressure sensor that has series resistors around the strain-gauge bridge to provide temperature compensation (the piezoresistors have a negative thermal coefficient, and the compensating series resistors have a near-zero thermal coefficient, so the voltage output can be made nearly temperature independent).

            I think that the class AB amplifier will give us a chance to talk about (and measure) efficiency. Crossover distortion should be pretty minimal with feedback in the amplifier (unless the biasing is wrong enough that both transistors are fully off in the middle of the range), so the main goal of biasing is to reduce the current that goes through both transistors without going through the load. Given the difficulty of predicting the I vs. V curves in the subthreshold region and the difficulty of reading the curves on the data sheets in that region, we’ll probably have to rely on measurement and trial and error to get the biasing right. I wonder if this means that we should include 2 trimpots in their parts kit (I was thinking of just one for the gain control on the EKG amplifier).

            I’m now planning to do a cMOS output stage (pFET and nFET) to let them do rail-to-rail output.

            Comment by gasstationwithoutpumps — 2012 November 23 @ 07:38 | Reply

  2. […] 2012 Nov 1, I posted a to-do list for the course.  How many things have I checked off, and what has been […]

    Pingback by Updated things to do on circuits course « Gas station without pumps — 2012 November 20 @ 22:51 | Reply

  3. […] 2012 Nov 1,  made a to-do list for the circuits class: Notes for things to do on circuits course, and on 2012 Nov 20 I updated it: Updated things to do on circuits course.  The time has come for […]

    Pingback by Updating to-do list « Gas station without pumps — 2013 January 5 @ 21:40 | Reply

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Blog at

%d bloggers like this: