Purpose:
Due to the pandemic this spring (2020) and the resultant move to remote or online teaching many features of my class have had to change. One of those changes is a need for you to have tools at home that support the gathering of data and investigations you will be doing for the lab portion of this class. To that end I have asked a range of students if they felt they could afford to spend $25-$40 for equipment. Having heard no objections after asking twice I moved forward with this plan. Below you will find guidance for purchasing the needed supplies and installing the needed software on your personal computer.
For those who are joining this class from previous instructors who are not Bruce:
I'm sorry to say (I think) that I have a slightly different approach to my physics class than other instructors. We all address the same content and skills but we have different styles. In particular I have been working for a number of years to make basic coding and LaTeX skills an integral part of my classes. Students in my PH211 class (the nominal prerequisite for the course) have spent a term learning some foundational skills using Jupyter notebooks (really python notebooks), python coding, and markdown (a LaTeX style text tool) to produce workplace level documents, data analysis, and plots. That mean those of you who are new to this class will need to do a little extra prep to be ready to participate fully in the class. FEAR NOT! -- this is totally doable but it will involve some extra effort before the term starts and for the first few weeks. See the extra preparations I am asking of you towards the end of this page.
All Students:
Get Your Arduino Kit!
Please purchase a basic Arduino Uno (or ATMega) starter kit. This kit should come with the actual Arduino, jumper wires, a breadboard, some resistors and LED's, and perhaps a few sensors. Here are some possible sources:
Amazon: No, I don't get a kick back. This is a reasonable basic kit. Note that it says it's Uno compatible which means that it works like an Uno but isn't actually built by the folks at Arduino. More about that later. $37 seems reasonable. I saw that you can get a stripped down version of this kit for under $20. You can also get lots of toys to go with it an run the cost up if you have tech addition issues. This simple $37 kit is what I expect.
Adafruit: Adafruit is an electronics company that has really been built on the Arduino revolution and I like to support them when I can. Because of COVID it looks like they are often sold out of their starter kits. If you look around their website you will see many shiny things and you can buy individual components including Uno's and breadboards but it will increase the price. LadyAda is the founder/owner (yes, a fabulous woman) and all round tech nerd. If you know you want quality and can afford to pay a little extra for it Adafruit is reliable.
Directly from Arduino: Here's is an option that looks slightly more expensive but actually gets you your own multimeter which every engineering/physics student should have as well. As a bonus you are directly supporting the people who created the open hardware movement. Long live Massimo Banzi!
Have A Breadboard: All of the 'kits' come with a solderless breadboard. If you buy just the arduino you might not have a breadboard. You will want one for sure. This link points out that these parts are getting inexpensive that it's ridiculous. This particular link (<$10) is more breadboard than you will ever need in your life unless you go full geek.
Add Ons for the Over Eager:
I will provide a lab kit with the basic elements that you need that may not have come with your kit. After that here are some possible upgrades and add ons that you can consider at some point.
Most kits come with jumper wires which are a quick way to temporarily wire together circuit elements. The jumper wires in the kits are often pretty flimsy and irritating. The linked type of flat ribbon cables are the good ones (also still cheap). Avoid ones like this which are typically more flimsy.
If you get interested in this stuff you are going to want to explore the many other types of common sensors that are available. You can sometimes get these sensor kits bundled with your original Uno but it's only a little more expensive to buy them later if you find this whole process intriguing. These sensors also work with Raspberry Pi's and other microcontrollers. Documentation is typically awful for these sensors but you will know how to sort it out by the time you're done with this class.
Download and Install the Arduino IDE:
While you're waiting for your kit please go to the Arduino software download page and install the Arduino IDE (currently version 1.8.12) on your machine. I appreciate that you could use the web based editor and that's fine but my instructional materials will be predicated on having the IDE installed on your machine. The install has been straight forward and consistent on the various machines I have used though I don't know that it will run on a Chromebook. If you have a Chromebook your best solution is the web application from the reading I have done.
New Students:
In addition the above steps folks who are new to my version of PH211,212, and 213 need to get Jupyterlab up and running on their machines. Confusingly the simplest way to do that is to install Anaconda on your machine. Follow the directions on the link and it should all work smoothly. As it notes the linked install page I had some bad experiences trying to do this different ways. Anaconda is Mac, PC, and Linux compatible though not Chrome compatible so far as I am aware.
Getting some experience:
Once you have Anaconda installed you will find that you can start a Jupyter notebook from the startup window. Once you get to that point plan to spend a several hours watching the Jupyter notebook and python tutorials linked on this tutorial page. As it says there my recommended approach is to watch the videos through and then go back and try to replicate each step. Let me know what questions come up as you do this and feel free to reach out to previous students in the class for their help.
Ultimately you would be wise to look through the first 3 labs from PH211 to see what questions it generates. For each lab there is a Jupyter notebook available on the git repo for this course. These notebooks were the starting framework for students last term. Similar frameworks will be made available for labs this term./p>
Raspberry Pi, Beaglebone and other tools:
Yup, these would all work as well. My challange is that in my old age I am less able to keep track of the differences (some small, some not so small) in how these systems work. If you wish to use your Pi to do the labs I would love to hear about it but I can't say that I will be able to be much help. I apologize but there are only so many hours in the day and moving my classes to a remote mode is taking up most of them. I'm sorry.
Don't hesistate to reach out to me if you have questions. You should know my email (it's on the Bb instructor contact eh?)