Those of us whose careers have included both teaching and research have long found that our students undergo a dramatic transition in ability between their undergraduate years and the end of their first year of graduate school. As undergraduates they would attend lecture-based classes and master course content by listening to their professors and slogging through weekly problem sets. (You know what this is like!) By the end of the semester, most of the class would understand most of the material, but would find it difficult to integrate it into a coherent picture of, say, classical electrodynamics. And a semester after a course had ended, most students would not have retained their mastery of the topic.
But after a year of graduate school—during which students would work on difficult material without the distracting edge effects of 50-minute class periods—their competence at navigating confusing subjects and difficult problems would increase enormously.
Project physicsMany of us suspect that teaching physics to undergraduates in a manner that more closely resembles graduate education might be beneficial. One aspect of this is to offer project-based courses, in which students would learn physics by mastering what they needed to complete tasks that were more like research projects than was usually true in undergraduate instruction.
You've already had some experience with this instructional mode if you've taken Physics 298owl (now Physics 246) from me. It's different from fighting to stay awake for an hour in lecture, then sifting through the wreckage to extract what you need to do the homework assignment!
This courseIn Physics 398DLP you will be performing the one-semester analog of a PhD research thesis: defining a measurement to be performed, designing and building an instrument that might be capable of recording data necessary for the measurement, testing your device, doing the field work to record valid data, then analyzing the data to form supportable, reproducible conclusions. Along the way you will report on your progress, both through informal presentations to the class and, at the end of the term, in a concise, more formal paper intended for an external audience.
If all goes well, you'll find this so captivating that it will be hard to put your work aside to attend to your other academic obligations. I suspect it is this strong engagement with a project that drives the transition from an undergraduate level of skill to the expert mastery typical of graduate researchers.
You must already know how to program. If you've learned to code in python or C/C++, or Java, or some other language, you'll be fine. A B- or better in CS 101, CS 125, or Physics 298owl are suitable prerequisites. It's also fine if you've learned on your own. But if you've never programmed before, or did poorly in an intro CS course, you should delay enrollment in Physics 398DLP until after you've done some coding.
You must have a basic working knowledge of introductory physics at the level of Physics 211 and Physics 212. More is better, though not necessary.
We are not building robots
Physics 398DLP is not a course in building cute robots for the sake of learning to build robots. That would be an engineer thing, and we are physicists, not engineers. We are going to tackle measurements that—if they prove feasible—might make our corner of the world a little bit better. If we did build a cute robot, it would be to accomplish a significant end, for example recognizing the onset of a potentially catastrophic fall by an elderly person.
In Physics 398DLP you'll construct a hand-held device loaded with inexpensive sensors that are interrogated by an onboard microcontroller—a small computer larded with additional features such as timers and analog-to-digital converters—and write the data acquisition software necessary to perform the measurements associated with your project.
You'll assemble a prototype on a breadboard, construct a final (electrically equivalent) version on a printed circuit board, use a 3D printer to build a case for it, do field work, then write analysis code to understand what conclusions can be drawn from your data. You'll write a report presenting your results and justifying your conclusions, publish it to the web, and perhaps send it to the appropriate recipient—the Illinois Department of Transportation, for example.
Some possible projects
The intellectual tradition in physics is for researchers to build their own instruments (buying off-the-shelf parts when available), ultimately creating sophisticated devices to perform the measurements that will tell us about the physics we are researching. It is not like this in all fields; my wife's background is in bio-inorganic chemistry, and she would assemble reactors from stock components, then run reaction products through spectrometers built by vendors like Varian and Hitachi. So you'll be following the physics tradition, and you will be working in collaboration with three other students.
Some of the projects are probably best imagined as feasibility studies that might inform the design of a more definitive future measurement. We will see how it goes! Here are some that I have in mind. You are free to suggest other possibilities, though I reserve the right to veto anything that I feel is too difficult or too expensive.
The style in which we will work
"DLP" stands for "Design Like a Physicist." That's a reasonably descriptive term for how we will go about things. Here is what I mean. If you took Physics 298owl from me you'll remember that I had you hand-code a lot of algorithms—integrators, Fourier transforms—that could also be found in professionally produced libraries. For pedagogical purposes, I had you reinventing a lot of wheels.
That's not how I've gone about my own research. If there's a pre-coded numerical algorithm that I can use, I'll appropriate it, generally putting proper attribution to its source in comments in my own code. If there's a circuit I need that's described in an engineering web site, I'll use it, identifying its source on my schematic diagram.
You will keep track of your efforts in a physical paper notebook in which you describe your work, useful revelations, and calculations. You should put notes about techniques you find (or invent) into your noebook so you can find them later. We're not going to collect or inspect your notebooks, but I want to see them out, and open, during all of our class meetings.
Real physicists are fearless, and sometimes confused
You will be working with things for which your understanding will often be really blurry. That's OK, and in fact that's the usual state of things in research. Taking the time to understand every last detail about an IDE is a waste of time: it is better to focus your efforts on getting by, on muddling through. You will get more done this way than you would if you spent the time to understand everything completely. There is too much to do, and far more interesting things to consider than the arcane details of SPI and I2C interfaces. You will want to understand them well enough to work with them, that's all.