These are hints on how to do your physics 129 work on your personal computer without connecting your raspberry pi (rpi) to monitor/keyboard/mouse. These hints are not guaranteed to work and they are not supported. Please do not ask me to help debug your home setup. Broadly speaking there are two ways that you can do this (1) Develop your code on your own Mac or Windows-PC or even Linux-PC. Remember however that the homework code that you turn in MUST run on the rpi. You should transfer the code that you developed on another machine onto the rpi (by email, or USB stick, or....) and test it there before turning it in. (2) Use an ssh (ssh = Secure Shell) client to log on from your computer onto the rpi. You will then be able to use the rpi as if you were connected directly to it via a monitor/keyboard/mouse attached to the rpi. For method (2) both your computer and the rpi must be connected to the network. Port 22 must not be blocked on the network (note: the UCSBWireless network blocks port 22). Presumably you will be doing this at home or in your dorm room. Getting the laptop on the network should not be a problem. Here is how method (2) worked for me on my home network (a) I booted the rpi up *once* with monitor/keyboard/mouse at home (b) I connected it to my WiFi network, by selecting the network from the icon at the top right of the screen and entering the password (c) From then on I have been able to simply power up the rpi without monitor/keyboard/mouse and it connected automagically to the network If you cannot connect even once the rpi to monitor/keyboard/mouse at home, you can manually add your home network parameters to the the file /etc/wpa_supplicant/wpa_supplicant.conf This is what this file looks like on my rpi cc-pi2:/home/pi$ more /etc/wpa_supplicant/wpa_supplicant.conf ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=US network={ ssid="ASUS2.4" psk="blahblah" key_mgmt=WPA-PSK } where ASUS2.4 is my Access Point Name and blahblah is my WiFi password (not really, I changed it here). Before modifying this configuration file, save a copy of it to your home directory in case you mess up. Note also that you need to be superuser to edit this file, ie do cd /etc/wpa_supplicant/ cp wpa_supplicant.conf ~/wpa_suplicant.conf_save sudo emacs wpa_supplicant No gurantees that just putting your ssid and password in this file like it is for me will work for your setup (of course). For mode info see https://linux.die.net/man/5/wpa_supplicant.conf MacOS ==== While Mac OS is unix based, Apple has lobotomized the system by removing most of the unix tools from the default installation. You need to install (a) An x-server called XQuartz from https://www.xquartz.org/ (b) XCode from the Apple Store (c) XCode Command Line Tools. This package has a clunky installation, try this https://tinyurl.com/yb4x5aef or perhaps this https://tinyurl.com/q56dbzt At this point you have all you need for method (2) as long as your rpi is on your network. Open a terminal window and type ssh -AXY pi@name_of_your_rpi where "pi" is your username on the rpi and "name_of_your_rpi" is the network name that you picked for the rpi when you installed the system. You will be prompted for your password, and then you are into your rpi, and ready to go. You need not enter the "startx" command. Your network may not recognize the "name_of_your_rpi" in which case you will need to give it the full IP adress, eg, ssh -AXY pi@192.168.1.20 Home networks have typical IPs 192.168.1.xx or 192.168.0.xx. To find out exactly what IP your rpi claimed from the DHCP server you can - log on your router and see what IP adresses are being used - "ping" around your network to see who responds - if you are ambitious, setup a script on the rpi that a few minutes after bootup communicates its IP address to you somehow. For example, you can imagine dumping the output of the comand /sbin/ifconfig to a google doc (see https://github.com/burnash/gspread). Or send yourself a text message (see https://tinyurl.com/ydbbme7d). Or send yourself mail from your gmail account (see https://tinyurl.com/ybnbts5g). etc etc etc (I havn't tried any of these) If you want to develop code on MacOS (method 1) you will need to install python3, since MacOS comes with python2. Follow these instructions: https://tinyurl.com/y8qfykqj Remember that to install packages you will need to do eg pip3 install numpy Windows ------- I have not used a Windows machine in > 10 years, so no recent experience. However here are some pointers - I understand that you can install some sort of linux distribution inside windows 10 https://docs.microsoft.com/en-us/windows/wsl/install-win10 That should give you access to ssh, python, and perhaps even X-windows? It would allow you to do eiher (1) or (2). For (2), make sure you use python3 not python2 - Way back when, I used a free Windows ssh client called PuTTy. It looks like it still exists: https://tinyurl.com/mgyxbev - There seem to also be free X windows servers on the market https://token2shell.com/x410/ https://sourceforge.net/projects/vcxsrv/ https://sourceforge.net/projects/xming/ With an X window server and an ssh client you will be able to use method (2). See the networking discussion under the MacOs heading. Linux ----- A linux PC will have (or can have) all the necessary tools (ssh, Xwindows, python3) for methods (1) and (2). For networking in method 2, see the discussion under the MacOS heading.