diff --git a/Graphics/connect-devices.png b/Graphics/connect-devices.png new file mode 100644 index 0000000..e5d66c0 Binary files /dev/null and b/Graphics/connect-devices.png differ diff --git a/Graphics/connect-shell.png b/Graphics/connect-shell.png new file mode 100644 index 0000000..8ff48e2 Binary files /dev/null and b/Graphics/connect-shell.png differ diff --git a/README.md b/README.md index d0e2915..d9c0cdc 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,28 @@ # rover-pi -Scripts and documentation for setting up a Raspberry Pi (Zero W 1 or 2) for use in Mechatronics 1 or Cyberphysical Systems +Scripts and documentation for setting up a Raspberry Pi (Zero W 1 or 2) for use in Mechatronics 1 or Cyberphysical Systems. This single-board Linux computer is equivalent in power to the Raspberry Pi 2 but in a smaller form factor, includes WiFi and Bluetooth, and is very affordable at 15USD. For operations that need higher computing power, we recommend the Raspberry Pi 3 or 4 which can be purchased later. -## References +# Guides +- [Raspberry Pi Imager procedure to setup ssh and Raspberry Pi Connect](imager.md) +- [Gadget Mode using ] +- [Marcel's script on github to show the IP address on the OLED screen](https://github.com/mkyas/cpsy-display-ip) + +## RU student-only guides at ROB-IOT +- [Starting on Raspberry Pi Zero](https://reykjavik.instructure.com/courses/6589/pages/starting-on-raspberry-pi-zero-w) + +## References and Links +- [Guide to creating ssh keys](https://pimylifeup.com/raspberry-pi-ssh-keys/) Of note, this guide is a little dated as it suggests using RSA keys and many people are moving toward EDCSA keys. - [Raspberry Pi Connect](https://connect.raspberrypi.com) - [Setting up Raspberry Pi Connect](https://www.raspberrypi.com/documentation/services/connect.html) +- [Turning your Raspberry Pi Zero into a USB Gadget](https://learn.adafruit.com/turning-your-raspberry-pi-zero-into-a-usb-gadget/serial-gadget) Official Adafruit guide to gadget mode to allow the USB port to be used as a serial console to connect to it. We had trouble getting it to work in 2026 due to some changes in Raspberry Pi OS. +- [CircuitPython Libraries on Linux and Raspberry Pi](https://learn.adafruit.com/circuitpython-on-raspberrypi-linux/installing-circuitpython-on-raspberry-pi) +# Some Tricks -# Headless Setup -We don't have many monitors and keyboards in V207 for students to use, so we will need to get the Raspberry Pi installed without them. +Here is a page of tricks we have discovered that may involve advanced techniques. +Credit: Daníel Bjartur Guðmundsson, transcribed by Joseph T. Foley -1. Follow the [directions on how to use the imager to setup ssh and Raspberry Pi Connect](imager.md) +1. Check for list of networks: nmcli device wifi list +1. Show details of "preconfigured" network: nmcli connection show preconfigured +1. Change the SSID (which wireless network you will connect to) in the "New_SSID": nmcli connection modify preconfigured wifi.ssid "New_SSID" +1. Change the wireless access password in the "New_Password": nmcli connection modify preconfigured wifi-sec.psk "New_Password" diff --git a/imager.md b/imager.md index 77cc95f..7d02e84 100644 --- a/imager.md +++ b/imager.md @@ -1,5 +1,7 @@ # Using the Imager to setup a Pi Zero with ssh and Raspberry Pi Connect +We don't have many monitors and keyboards in V207 for students to use, so we will need to get the Raspberry Pi installed without them. This is sometimes called "headless" because we think of the monitor as a sort of head. +## Creating an image 1. Download the [Raspberry Pi Imager](https://www.raspberrypi.com/software/) and install it - Important note2026-06-28 The Raspberry Pi Imager 2.0.10 may have buttons with gibberish text, a [known problem](https://github.com/raspberrypi/rpi-imager/issues/1648). The 2.0.9 image doesn't have this problem and can be [downloaded from the github distribution website](https://github.com/raspberrypi/rpi-imager/releases/tag/v2.0.9). 1. Start the Imager program and pick your device @@ -40,6 +42,12 @@ 1. Now you get to watch the writing then verifying. ![imager-writeimage-progress.png](Graphics/imager-writeimage-progress.png) ![imager-writeimage-verifying.png](Graphics/imager-writeimage-verifying.png) +1. The process is complete! ![imager-complete.png](Graphics/imager-complete.png) - +## Connecting using Raspberry Pi Connect +1. Login to https://connect.raspberrypi.com if you haven't already +1. Look at the list of devices, find the one you want, and click on "Connect" +![connect-devices.png](Graphics/connect-devices.png) +1. A remote shell window will pop up +![connect-shell.png](Graphics/connect-shell.png)