Gas station without pumps

2020 January 11

First week of class W2020

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

I’ve just finished the first week of class for BME 51A (Applied Electronics for Bioengineers), and it has been a rather hectic week.

First, I had about 5 people sign up for the class at the last minute (from 56 to 61), which drove the BELS staff to having to do a lot of expensive last-minute purchasing of additional items for the parts kits.  It also meant that when we handed out the parts kits on Tuesday, several of them were incomplete and so more items had to be handed out during the Thursday lab period.  Since getting their kits, 2 students have dropped taking us down to 59, and one other has told me that they might drop (assuming that they can get a coherent plan together for an independent study to replace the course).  This enrollment is less than last year’s 82 students, but still a fairly large number, given that the BELS labs can only accommodate about 24 students.  I’m using two lab rooms for the first section and one for the second section, and have hired 3 group tutors (one for each lab room and time) to work along with me in the labs.

The first week’s labs consist of soldering headers onto the Teensy LC boards and installing software: Python with SciPy (using the Anaconda install), gnuplot, Arduino+Teensyduino, PteroDAQ.  For the first time in years, everyone got their soldering done within the allotted lab times!  I don’t know what was different this year that made it work as it was supposed to.  One thing that helped a little was that when students soldered the male headers on the wrong side of the boards (which happens every year, despite all the written, pictorial, and verbal warnings I can give), I had them cut apart the male headers to unsolder, then gave them new male headers to solder on.

Software installation is always a problem, because students are attempting to install on a variety of platforms, and something is always incompatible. Here are some problems that came up this year:

  • Gnuplot on old Mac OS X systems would not install with homebrew, as qt could not be installed—it insisted that you needed the full Xcode (not just the command-line subset), but Apple will not provide the full Xcode for such old, unsupported systems.  There may be already compiled versions of gnuplot for these old systems, but I have not gone looking for them. I’m not sure what to recommend to these students, other than updating to a system that Apple still supports.  I can’t recommend updating to Catalina, as they will lose all 32-bit apps, some of which will never be ported to newer versions of macos (for example, I lost access to Finale Notepad, which is no longer available on Macs—probably because Apple makes it so very difficult for third-party software developers to maintain their code).
  • Gnuplot on new Mac OS X systems installs and runs, but produces bad PDF files.  The workaround for this was posted at https://stackoverflow.com/questions/57698204/gnuplot-pdf-terminal-exhibits-font-issues-on-mac. The answer to that stackoverflow question had two lines to fix the problem:
    brew uninstall --ignore-dependencies pango
    brew install iltommi/brews/pango
    

    The problem is that the default homebrew “bottle” for gnuplot points to a broken version of pango, and you have to remove that version and install an older version.  This one I knew about, because it had bitten me when I was trying to finish the book in December.

  • The standard Arduino+Teensyduino installation fails on macos Catalina (10.15). I knew about this one also, as I had tested the PteroDAQ install after I had “upgraded” to Catalina (which broke nearly everything).  The workaround is a beta release of Teensyduino (currently https://forum.pjrc.com/threads/59030-Teensyduino-1-49-Beta-5), which is pointed to from the Teensyduino installation page, but many of the students with macos Catalina did not notice the pointer.  One nice feature of the Teensyduino beta release is that it includes the Arduino IDE, so that you don’t need to install Arduino first.
  • The PteroDAQ GUI seems to be crashing on macos Mojave (10.14)—logging the user out when they try to run “python daq” as usual.  I think that this may be a weird filesystem thing, as it seemed to make a difference whether PteroDAQ had been cloned from GitHub or downloaded as a zip file, and whether the files were on the hard drive or on a Google Drive.  The only thing that seemed to work consistently was to clone the files from GitHub onto the hard drive of the laptop, then run the app that is in pterodaq/extras/maclauncher/ .  Why the launcher app works, when invoking “python daq” directly from a terminal results in logging the user out, is a mystery to me.
  • On macos Catalina, PteroDAQ can’t find the board if it is connected to the laptop through a USB2 hub connected to a USB3 port (I ran into this problem on my laptop before classes started also).  Apple has once again scrambled their USB stack, and USB Serial no longer seems to be visible through a USB2 hub (though the USB device is visible, the serial interface does not seem to be).  This hasn’t caused a problem for any students yet, as direct connection to a USB3 port works ok, and connection from hubs on USBC ports seems to be ok (probably because they are USB3 and not USB2).
  • One student had trouble getting PteroDAQ to run on his Windows 8 machine, with the python program crashing on trying to access the list of ports.  No one else with Windows 8 was having trouble, and his machine was running extremely slowly (slower even than the ancient “Barbie” laptop that I used for testing Windows implementations of PteroDAQ), so I suspect he was having hardware or malware problems on his machine.

I think that nearly all the students got their software installed—at any rate, people left the lab early on Thursday and were not queuing up for installation help, as they had in previous years.  Only one student asked for installation help during Friday office hours (the one with the probably bad hardware or malware), and there were no requests on Piazza for help.  If I’m right that everyone got things installed, then we are well ahead of previous years.

On Thursday, before lab, one of the group tutors ran a tutorial session on \LaTeX, which about half the class attended.  That should help somewhat in the prelabs to be turned in on Monday.

I’ve changed grading logistics this year.  Rather than hiring just 2 graders, I hired 6, and rather than having them work whenever they have time, I have scheduled grading sessions where we get together and grade in the same room.  On Thursday, we took just over 2 hours (with 5 graders, counting me) to grade homework 1, and today 6 of us got homework 2 graded in about an hour.  I graded the first quiz by myself Wednesday night.  So far, we have managed to keep the turn-around time to about a day, which is much better than last year, when the 2 graders were overloaded.

Monday’s assignments will be stressing our grading system a bit, as we have a lot coming in, but I couldn’t schedule a grading session until Wednesday at noon.  I’m hoping that we can get both homework 3 and the first prelab graded before Thursday’s lab.  If necessary, we can just give a turned-in/not-turned-in grade for the first prelab, as they are turning in a more complete draft of the same prelab on Friday, but I’d much rather give them feedback so that they can correct mistakes before the Friday draft.

So far, the quiz and homework scores look pretty good, so I’m hopeful that this will be a high-performing class this year.  It would be really nice to give out more B+ (and even A-) grades and fewer C grades.  I’m keeping my fingers crossed (even though that makes typing the blog post hard).

2020 January 1

Fortieth weight progress report

Filed under: Uncategorized — gasstationwithoutpumps @ 20:47
Tags: , , , , , , ,

This post is yet another weight progress report, continuing the previous one, part of a long series since I started in January 2015.

My weight for this year ended up slightly lower than at the beginning of the year, but over the summer and fall I regained almost all the weight that I lost in the first quarter.

It has been remarkably difficult for me to keep off the weight that I lose. If I’m home during the day, I have lunch and snack and my weight creeps back up.

I’m hoping that the first quarter of 2020 will be like the first quarter of 2019, with a loss of 10 pounds.

My bicycle riding was more consistent in 2019 than in 2018, because I rode up to campus 3 times a week in summer and fall, either for workouts at the gym or for the physics class I sat in on.

I’ll be biking up to campus 5 days a week, but my walking will be reduced somewhat, as my left heel has been bothering me. I don’t think I’ll have time to go to the gym, so I’m not bothering to renew my membership—I’ll probably get myself some resistance bands, so I can at least pretend that I’m trying to maintain some strength in my upper body.

2019 December 28

Holiday activities

Filed under: Uncategorized — gasstationwithoutpumps @ 21:28
Tags: , , , , , , , , ,

We celebrated several holidays over the past week: Festivus, Christmas, and Chanukah. We neglected Solstice this year (most years we make solstice cookies).

For Festivus, we put up a Festivus pole and ate meatloaf on iceberg lettuce (well, vegetarian meatloaf, since my son is a vegetarian).  We skipped the airing of grievances, though.

On Christmas Eve, we went out to eat, but almost all the restaurants downtown were closed (even the Chinese restaurant that we had considered as a backup), so we ended up at the Korean restaurant Sesame.  My wife and I enjoy the food there, but there is not a lot for our vegetarian son—he was ok with the japchae, but I could tell he was a little sad that both Saturn and Monster Hotpot were closed.

For Christmas we had a live Christmas tree (the same one as last year, but it is now 22 inches tall—plus a 12 inch pot), which my wife decorated with a small fraction of our Christmas ornaments. This tree has many years before it is the size of the live trees we used to use, but we can carry it into the house with needing a hand truck. (The big one that we gave away a couple of years ago was getting to be too heavy to haul up the 3 steps to the porch.)

We also opened presents from each other Christmas morning.  Most of the presents were books or consumables—we’re all hard to shop for as we don’t want much, and when we do want something, we generally just buy it for ourselves.

For Chanukah we lit the candles on the menorah each night and had homemade applesauce and latkes one night.

Over the winter break, I’ve been getting several things done:

  • I got the syllabus rewritten for my electronics course, got the assignments all entered into Canvas (which always takes forever—filling out the same form over and over is incredibly tedious), and hired my group tutors and graders.  Creating the Canvas entries for the due dates for the 12 homeworks, 6 prelabs, and 5 labs took a couple of hours, and I still have to enter the quizzes (which I’ll do after I’ve created and graded each quiz, as each will have a different number of points).
  • The cat fountain I created failed, and I spent some time trying to diagnose the problem.  The controller board is fine, but the pump won’t run.  The resistance of the pump is now about 100kΩ, which indicates that something in it failed.  I’m not sure of the reason for the failure, but most likely the impeller was jammed by a build-up of algae.  The cats were less interested in the fountain than I hoped, and keeping the cat fountain clean was more trouble than I expected (algae growth was fast, and clearing the hose with a pipe cleaner was a pain), so I decided to scrap the fountain, rather than buying another pump.
  • The mesh seat that I sewed for my recumbent bicycle five years ago had the stitching fail on one strap. I tried resewing it with my wife’s sewing machine, but it just jammed, so I ended up resewing the strap by hand.  I expect that some of the other stitching will fail in the next year, and that I’ll be doing more resewing, but there is enough redundancy in the straps that I can ride home even with one of the straps broken.
  • My son visited Monday–Friday, so we spent a couple of days installing the new range hood that I had promised my wife six months ago.  I bought a 2-part range hood (https://www.amazon.com/Awoco-Stainless-Cabinet-Speeds-800CFM/dp/B076XBQSMK) with the blower unit to be installed in the attic, even though this is more expensive than one-piece units.  There were two reasons: to make the range hood itself lighter and so easier to install, and to reduce the noise of the blower in the kitchen.  Holding up even the motor-less range hood while we got the screws in place was tiring (for my son), but installing the blower in the attic was also somewhat difficult, so that was pretty much a wash.  The new range hood is much quieter than the old one, but I think it moves as much air.  At any rate, my wife is pleased with the new range hood, which is all that really matters.

Mostly, though I’ve been reading and sleeping—things I’ll have much less time for once the quarter starts. I do still have to write the quiz for the first week of class, but I still have a week to do that.

2019 December 19

Macos 10.15 Catalina vs PteroDAQ

I had a serious scare today.

First, I found out that the software for my Analog Discovery 2 was crashing on the MacBook Air that I will be using for lectures and lab next quarter.  It behaved normally at first and then crashed for no discernible reason after a couple of minutes.  I figured that the problem was probably related to the macos “upgrades” I had done recently, so I checked the Digilent website, and they had just posted a new version of the software last week, addressing the changes that Apple had made to their USB stack (which broke almost all 3rd-party software and a fair amount of Apple’s own software).  I downloaded the new version of Waveforms from the Digilent site and everything worked again.

But any changes to the USB stack are likely to break the code that PteroDAQ uses for finding what devices are connected, so I checked PteroDAQ with my usual setup.  The GUI for PteroDAQ did not list the Teensy board as it used to do, and PteroDAQ couldn’t run!  I spent a long time with ioreg trying to figure out how to modify macgetports.py to find the device again.  The Teensy board was visible as an AppleUSBDevice and AppleUSBInterface, but not as an IOSerialBSDClient as it used to be.  I could not figure out how to open it as a serial port!

Now my usual setup involves going through a USB 2.0 hub (in the Cerebrus cable), so I dug around in my drawer of parts until I found a plain USB-micro data cable.  Hooking up the Teensy board directly with that cable did show an IOSerialBSDClient interface, and PteroDAQ worked fine.  So the problem is just that connections through the USB 2.0 hub are not made the same way they used to be—the serial connection no longer is visible the way it used to be.

I’ll enter an issue for this on the PteroDAQ GitHub, but I won’t try to fix it unless it turns out that modern USB C-USB 3 docks exhibit the same problem.

2019 December 16

Landline discontinued

Filed under: Uncategorized — gasstationwithoutpumps @ 10:08
Tags: , , , , ,

As I mentioned in First cellphone, I have finally bought a cell phone.  Today I got the landline number transferred to that cellphone, so that I can now discontinue landline service.  That could be a minor nuisance during the next major power outage (during the last big power outage, landline service continued uninterrupted, but several cellphone towers went offline, so cell service was disrupted).

I have one more task to do in setting up the phone, and that is to transfer my wife’s phone (which was associated with my e-mail address) to be associated with my wife’s email address.  I don’t know how difficult that will be, but I anticipate a few hours dealing with Google Fi technical support, as their web pages do not provide any way to do this yourself.  It is particularly difficult in this case, as the billing was associated with that phone, and my new phone was an extra on the account, while I want to make my new phone be the primary on the account (so that I can continue billing to the same card).

Next Page »

%d bloggers like this: