Gas station without pumps

2015 December 26

Syllabi for splitting Applied Electronics into two courses

In order to split the Applied Electronics for Bioengineers course into two courses, as I suggested in Considering splitting Applied Electronics course, I need to fill out course approval forms to get the courses approved by the Committee on Educational Policy.  They’ve changed the forms this year, so that there are now three documents needed:

If I were requesting a general-education code for the course, I would also have to fill out one of the thirteen general-education forms (corresponding to the 13 possible general-education codes for a course at UCSC), listed at the bottom of the supplemental sheet.

The supplemental sheet was simplified this year, by pushing all the general-education forms out to separate forms, but the requirement for a course syllabus is new.  Basically, the supplemental sheet asks more or less the same questions as before, rephrased to “where on the course syllabus …?”  The “learning outcomes” question is new, as it reflects a relatively new bureaucratic approach to curriculum design.  The learning outcomes make a lot more sense at the course level than at the degree level, where the administration has been pushing for them.

Here are my first more-or-less complete drafts of my sample syllabi for the split course:

The split course is a pair of 4-credit courses, representing a total time of  about 250 hours (240–263 hours), 140 of which are contact hours (3.5 hours of lecture and 3.5 hours of lab a week).  I’m thinking in terms of MWF lectures (70 minutes each) and TTh labs (105 minutes each).  That should be easier to schedule than the 7-unit BME 101/L these courses will replace, which takes about 220 hours (210–232 hours), 95 of which are contact hours (3.5 hours of lecture and 6 hours of lab a week). The increased contact hours should result in students learning more, as many of our students are not very efficient at learning on their own.

One thing I’ll have to decide is whether to require all bioengineering majors to take both courses, or whether BME 51A is enough for the biomolecular concentration. For the bioelectronics and assistive technology: motor concentrations, both parts are needed both for the content and for the lab experience.  But for the biomolecular and assistive technology: cognitive/perceptual concentrations, the courses are mainly there to teach engineering design practices.  The assistive technology: cognitive/perceptual concentration relies on software courses for design content, and so BME 51A is probably enough for them, but there are very few design courses for the biomolecular concentration, as biomolecular lab work is very slow, and a full-year capstone sequence is barely enough for one iteration of one prototype.

2015 March 30

First day of S15 circuits class: demo failure

Filed under: Circuits course — gasstationwithoutpumps @ 16:23
Tags: , , , ,

I went into the class with a fairly short to-do list—much shorter than last year’s. I managed to cover the following:

  1. Went over syllabus .I showed them the syllabus and managed to go over scheduling of labs, partner work, and online texts, but did not get to some of the boilerplate about cheating and about disability services.  Oh well, it is enough that the boilerplate is on the syllabus.
  2. Demoed pressure sensor  with PteroDAQ on KL25Z board. I hooked everything up and it didn’t work. I fixed one problem of a loose wire (using the jeweler’s screwdriver, but it still didn’t work. I did manage to show them PteroDAQ and used gnuplot to show them a pressure trace I had recorded in the BME88A demo last quarter.
  3. Reading the book and doing design well before lab.
  4. Assigning reading due tomorrow and Thursday.
  5. Partners changing every week, so no one gets a free ride for very long and no one has to suffer with a freeloader.

I was thinking that I’d use the chalkboard a lot, so I used the small screen in the classroom (this classroom is ridiculously over-equipped with projectors, even having a project for a screen at the back of the classroom) rather than the big one, which covers most of the chalkboard. But I ended up using the projector to show them parts of the book and to use the document camera to show the KL25Z board and instrumentation amp protoboard, and barely used the chalkboard at all.

The rearrangement of the labs, with soldering on Tuesday, sampling and aliasing on Thursday, and the thermistor labs next week does give me a little leisurely start-up than last year, as I don’t have to get to Ohm’s law and Kirchhoff’s current law until the voltage-divider lecture on Friday.

Overall, I’m fairly happy with how the first day of class went, despite the demo failure.  I’ll debug the demo and show them either in lab tomorrow or in class on Wednesday.  I just hope I haven’t fried the instrumentation amplifier with static—they’re expensive and I don’t know whether I have any spares on hand.

Update 2015-Mar-30 17:58:  When I got home I checked out the board to figure out what might be wrong.  After probing for a while with the voltmeter, I determined that the wire that had come loose from its screw terminal and that I had fixed in class was not the only wire that had come loose.  The one next to it had also come loose.  It still looked ok, but wasn’t making contact.  Opening the screw terminal, reinserting the wire, and tightening it down again fixed the problem.


2014 March 31

First day of S14 circuits class went ok

Filed under: Circuits course — gasstationwithoutpumps @ 21:21
Tags: , , , , , ,

I went into the class with a long to-do list, and managed to cover the following:

  1. Issued permission codes for students with missing prereqs to register but I forgot that they’d need permission codes for BME 101L as well—I’ll give those out as soon as I get them. The class is up to 9 students, which is still much less than the 20–40 I had projected. I’m going to have to use the same parts next year, so that the over purchase doesn’t cause budget problems.
  2. Went over syllabus .I showed them the syllabus and managed to go over scheduling of labs, partner work, and online texts, but did not get to some of the boilerplate about cheating and about disability services.  Oh well, it is enough that the boilerplate is on the syllabus.
  3. Demoed pressure sensor and EKG with PteroDAQ on KL25Z board. I explained that I chose these labs to demo, since they were soldered onto protoboards, and so sturdier than ones built on breadboards. Amazingly, the alpha prototype of PteroDAQ worked fine for the demo. I was even able to illustrate a debugging technique. The EKG seemed to be missing a lot of my heartbeats, so I saved the data to a file, looked at it with gnuplot, and zoomed in, where it became obvious that the problem was that the R pulses on the EKG were shorter than the time between samples. I went back to the PteroDAQ control panel, increased the sampling rate from 20Hz to 120Hz, and took another 30 seconds of samples.  Saving that and viewing it with gnuplot made it clear that the EKG amplifier was working fine, and the PQRST parts of the EKG signal were all quite clear.
  4. Ohm’s Law V=IR:  The students volunteered this when I asked them the relationship between voltage and current.  Good!
  5. Kirchhoff’s Current Law:  Again many had heard of the concept that if charge is not accumulating (steady-state), then the current into a node is the same as the current out of the node. In general, that the sum of all currents into a node is 0.
  6. Explained about voltage being a difference between two nodes or across a component, and contrasted that with the current through a component. I implicitly used Kirchhoff’s Voltage Law by introducing the notion of voltage at a node, as the voltage between that node and an arbitrarily chosen node that we call “ground”.
  7. I showed them a voltage divider and had them derive the voltage across each resistor (from having the same current), then from there deriving the voltage across the resistors in series (thus deriving the idea that series resistors add). We then solved for I in the Vin equation and plugged it into the equation for Vout, getting the standard voltage-divider formula V_{out} = V_{in} \frac{R_{down}}{R_{up}+R_{down}}.
  8. I introduced the notion of an NTC thermistor (and listed other temperature sensors: PTC thermistor, RTD, thermocouple, bandgap temperature sensor, giving a brief idea when each would be used). I did not plot the resistance as a function of temperature based on the model , but that would be a good thing to do in the gnuplot lesson on Wednesday.
  9. I did explain the notion of sensitivity of a sensor: the derivative of the output with respect to the input, and went over (in a general way, with helpful suggestions from the students) how one would go about maximizing sensitivity of a voltage divider with a thermistor and fixed resistor at a particular operating temperature.  I’ll see in lab tomorrow or during the analysis session on Wednesday whether students got the idea or not.

It was a very content-full class, but I did manage to get in a number of side remarks:

  • reading the lab handouts well before lab, since they weren’t fill-in-the-blanks worksheets, but sometimes had design assignments buried in them.
  • partners changing every week, so no one gets a free ride for very long and no one has to suffer with a freeloader.
  • no failures on lab reports—just REDO, until the end of the quarter, when all un-redone work turns to F.
  • need for perfect schematics. Sloppy schematics will trigger an automatic REDO.
  • one of the students asked about the circuits-class t-shirt I was wearing, and I explained that I’d created the shirt for last year’s class and that if students were interested we could do another order this year.

Overall, I’m fairly happy with how the first day of class went.

I’m less happy with the rest of the day, though. In the morning my son accompanied me to the lab to help me set up the Windows drivers and to test PteroDAQ on the Windows machines, but the lab staff had changed the system they used for authenticating administrators, so I couldn’t install the drivers. I knocked on their door (no answer) and sent them e-mail through the request system, but it took them about 3 hours to answer (by which time my son had gone home and I was teaching class). After they had reauthorized me, I spent 2 hours installing Windows drivers on the 12 machines in the lab, so that they could talk with the KL25Z boards.  (Windows is a major pain—I really hate having to deal with it.)  I finally got a chance to test PteroDAQ on the Windows machine, and it didn’t work—I tried installing Python3.4 on one of the machines and that changed the nature of the error, but did not fix it. [Did I mention that the students have to be able to use it on Thursday?]

My son will go in with me again tomorrow (he’s on Spring break) and try to get the PteroDAQ function at least to the level that it is at on the Mac, which is minimally functional under Python3, but with a mysterious failure to open the USB serial port under Python2.7.

I also found out that the missing parts that the lab staff forgot to order have just been shipped from Hong Kong, and should be here next week.  Unfortunately, that includes the USB cables that the students will need to connect up the KL25Z boards. [Did I mention that the students have to be able to use it on Thursday?]

Also, the TA union is probably going on strike system-wide Wednesday and Thursday. I don’t have a TA, but there will probably be pickets at the base of campus and city buses won’t cross the picket lines, so there will probably be some students who can’t make it to class or lab. (I never penalize students for honoring picket lines, but it is going to be very difficult to get back on schedule if we fall behind.

On the subject of possibly falling behind—the campus facilities people are promising some long power outages mid-week one or more times during the quarter—they find it better to make everyone else stop working rather than work on weekends themselves, I guess.

I did get the cups and coffee urn for the water baths needed in this weeks lab transported to the lab, but I found out that the staff had not ordered any 22 gauge hookup wire—there was only a small amount of red and black 24 gauge wire in the lab. The soldering irons weren’t in the lab either, but I need them for tomorrow’s lab. With the small class, I can probably get away with only 5 soldering stations, but I don’t even have a working one I can bring in from home.

One of the students in classed asked about the jumper wires I was using to connect to the KL25Z board.  I was using 9″ long female-female jumper cables with double-male pins (something like these from Adafruit though I probably bought them elsewhere).  I have a very cheap set of male-male jumpers, but I rarely use them, because they are incredibly high resistance (on the order of ohms instead of milliohms).  Adafruit has some high-quality male-male jumpers, which may be easier to work with than the female-female ones that I’ve been using. Sparkfun has a mixed pack (half M/M and half F/F), but a set of 100 is is $25.

The students are supposed to have double-male header pins in their kits anyway, since the pins are very handy for making oscilloscope probe points on a breadboard.




2013 January 7

First day of circuits class went ok

Filed under: Circuits course,Printed Circuit Boards — gasstationwithoutpumps @ 18:11
Tags: , , , ,

I went into the class with the following to-do list:

  1. Introduce teaching staff
  2. Go over syllabus, with the main points here:
    • Goal is not to make them EEs, but to bring them to electronics hobbyist levels, so they can design stuff that isn’t too tricky and talk with EEs about tricky designs.
    • Accepted as circuits course for BME, but not as prereq for other EE courses.
    • Lab centric—theory taught as needed for design labs.
    • Prelabs to be shown at beginning of Thursday labs. Oops, I forgot to mention this.
    • Lab demos to be done in Thursday labs. I forgot to mention lab demos also.
    • Post-lab writeup is major portion of grade (in both courses) due Mondays after labs. We talked quite a bit about the importance of engineering reports and who the audience for them is (not the professors!).
    • Parts kit to be sold Wednesday.
    • Free on-line books in place of hard-copy textbooks.
    • Rotating partners (prelab separately, postlab together or separate).
    • Academic integrity boilerplate.
    • Disability accomodations boilerplate. There wasn’t time for this, but I did mention in response to one question about allergies and sensitivities that we could try to work something out. The syllabus does have the needed info about requesting accommodation for disabilities.
  3. Demo of pressure sensor and EKG with Arduino data logger code.

The EKG board, which I checked over the weekend, refused to work for me in my tests before class, so I waved it around but didn’t demo it. I did demo the pressure sensor board, which worked fine. I used the v1.0.0b4 version of the Data Logger, (available from under “tags”, which is the latest named version. The version currently installed in the labs is v1.0.0b2, I believe, and I have to decide whether to update before Thursday’s lab or not. The b2 version should work well enough, I think, but if students switch Arduinos between different versions without uploading again, they might have problems.

I’ve put an improved version of the parts list up on the class web site and told the lab-support staff about it, so that they can start figuring out how much the student lab fee will have to be next year.  This year, students are paying $30 for the Arduino and $65.50 for parts and tools, but I doubt that the lab fee will be less than $150 next year.

The board designs for the three PC boards used in the course have also been released (with an appropriate Creative Commons license—non-commercial, since I’ve not paid the Eagle license fee needed for commercial designs).

Finally, I’ve tentatively lined up a biologist to talk about excitable cells and action potentials towards the end of the quarter, before the EKG lab.

In other news, my son told me yesterday that his Christmas present to me (which he had told me he would get me later), was the Data Logger code. He couldn’t have given me a nicer present: it was something I wanted, that he put a lot of thought and effort into, that he made himself, that I couldn’t have bought in a store, and that would have been a lot of trouble to do for myself. OK, so we’re both geeks, seeing a software package for teaching a course as a good present, but it really was.

2010 October 4

Secret class web pages

Filed under: Uncategorized — gasstationwithoutpumps @ 05:41
Tags: , , ,

I get irritated by people who have web pages for their courses, but make everything in their class hidden behind a password, even the syllabus for the course!  Some faculty seem to think that it is an imposition to put anything on web, and that everything they do in a course is so secret and precious that no one should know anything about it.  This, of course, means that everything they teach has to be a dead-end which no other course can build on, since there is no way to tell what they have taught.

Open class web pages have many advantages:

  • It is easier for students to choose courses, knowing roughly what is in the course and what the workload is, without having to rely on the often grossly inaccurate reports of fellow students.  The tiny descriptions in the catalog are way too vague and often very out of date.
  • It is easier for advisers to recommend courses to students.  Once again, the catalog descriptions are often inadequate, and faculty and staff advisers have to guess whether a particular course which sounds promising actually covers the material that a student needs.  There may be several courses which appear, in the catalog, to cover similar material. Open class web pages with more detailed syllabi and week-to-week schedules (or more detailed course notes) can provide the information needed to decide which courses have the depth and breadth or specific topics to best meet the student’s needs.
  • It is easier to share the teaching load among the faculty.  Teaching is often improved if teachers get a break from teaching the same course over and over, either through sabbaticals or by rotating teaching duties.  It is very helpful for faculty taking on a course they have not taught before (or have not taught recently) to have fairly detailed descriptions of what has been taught in the course in the past, including how much time has been spent on each topic and what homework assignments have been given.  Although this can sometimes be handled privately between teachers, having open course web pages makes it easier for faculty to decide which courses they are already well-prepared to teach and which will require a lot of extra study and preparation, which is good to know before curriculum and leave planning is done.
  • It is easier to plan courses. In science and engineering courses, there are nearly always prerequisite courses that are supposed to prepare students. Faculty need to check exactly what is taught in the prerequisites for any course they teach, so that they don’t bore the students by repeating material or lose them by assuming they know things that they’ve never been taught.  Once again, the tiny descriptions in course catalogs are nearly useless for this.
  • It is easier to plan curricula. In engineering fields, we generally have to tweak the curriculum every couple of years and overhaul it every decade.  These changes may be to correct for drift that has occurred in the classes that are taught, to adapt to changes in priorities in the field, to take advantage of new expertise on the faculty, to compensate for changes in prior student preparation, or to meet new budgetary constraints.  In interdisciplinary fields like bioinformatics, where the required courses may be taught by seven or more different departments, keeping track of the changes in the courses is difficult.  Small changes that seem unimportant to the host department, or that are easily corrected in follow-on courses in that department may be deadly to other programs that do not include the follow-on courses. It is not safe to rely on students to tell us that some course we require no longer teaches the material that we required the course for, since they are often unaware of the structure of the curriculum, seeing it as wholly unrelated, arbitrary barriers to their getting their degree (see my post Just scoring points).

There are some good reasons for having parts of a class web page be private:

  • Faculty may have permission to distribute copyright-protected or proprietary material to a class, without permission to distribute it to the world.
  • Student on-line discussions may have more involvement if the students know that the readers are restricted to fellow class members. (On the other hand, students put more care into work if they know that parents, future teachers, and employers could look at it, so there are good reasons for having some student work be for a wider audience.)
  • Faculty may be developing their own detailed teaching materials which they are not willing to have appropriated by plagiarists.  Preliminary drafts of textbooks are often distributed free by faculty to students in their classes as the textbooks are being developed, but it is not reasonable to expect these drafts to be provided to the world.

The default web setup for courses in our School of Engineering is for there to be a public web page for the syllabus and other general material, and a password-protected directory for material that has to be restricted to just the class. This approach allows for both public and private portions of a class web site, with fairly simple control by the faculty over which material goes where.

Some faculty do an excellent job of maintaining course web pages that are useful to the students, other faculty, and to the university as a whole.  If only I could convince more faculty of the value of doing this!

%d bloggers like this: