diff --git a/hardware.md b/hardware.md index 68a23e5..3aed3b2 100644 --- a/hardware.md +++ b/hardware.md @@ -1,94 +1,89 @@ ## Hardware Guide -Here is some sample hardware you can use to build your own Go Note Go. Costs might exclude taxes and shipping. +Here is the required hardware you need to build your own Go Note Go: -### Raspberry Pi 400 +### Required Hardware + +#### Raspberry Pi 400 Link: https://www.raspberrypi.com/products/raspberry-pi-400-unit/ -Details: I use the US keyboard. You can purchase from e.g. [PiShop](https://www.pishop.us/product/raspberry-pi-400-complete-kit/). I recommend ordering the following as a bundle: - - The Raspberry Pi 400 unit ($70) - - Class 10 microSD Card With Raspbian - 16GB - - USB-C Power Supply, 5.1V 3.0A, Black, UL Listed - - Micro-HDMI to HDMI cable for Pi 4, 3ft, Black +Details: The Raspberry Pi 400 with US keyboard is recommended. You can purchase from e.g. [PiShop](https://www.pishop.us/product/raspberry-pi-400-complete-kit/). -Cost: $91 +It's recommended to order the complete kit which includes: +- The Raspberry Pi 400 unit ($70) +- Class 10 microSD Card With Raspbian - 16GB +- USB-C Power Supply, 5.1V 3.0A, Black, UL Listed +- Micro-HDMI to HDMI cable for Pi 4, 3ft, Black -### USB Mic and Speakers +Cost: ~$70 (unit only) or ~$91 (complete kit) -Links: -* Microphone: https://www.adafruit.com/product/3367 ($6) -* Adafruit Speaker: https://www.adafruit.com/product/3369 ($13) -* Etsy Speaker: https://www.etsy.com/listing/1056790095/usb-speaker-stick ($30) +#### SD Card -Cost: $19 - $36 +A Class 10 microSD Card - 16GB or larger is recommended. (This is included if you purchase the complete Raspberry Pi 400 kit). ---- +Cost: ~$10-15 -## Additional Hardware: Take Go Note Go on the Go +#### USB Microphone -The following parts are optional, but will better allow you to take Go Note Go on the go. +Example: https://www.adafruit.com/product/3367 -### 10000 mAh battery +Cost: ~$6 -Link: https://www.amazon.com/gp/product/B07JYYRT7T +#### USB Speaker -Notes: There are lots of options for the battery. This one works just fine. Could choose one with more storage for longer battery life if desired, but might get clunky. You also don't strictly _need_ a battery. You can also power Go Note Go directly from your car, laptop, or a standard outlet via USB. So if your use case allows Go Note Go to remain plugged in during use, you can forego the battery. +Options: +* Adafruit Speaker: https://www.adafruit.com/product/3369 (~$13) +* Etsy Speaker: https://www.etsy.com/listing/1056790095/usb-speaker-stick (~$30) -Cost: $19 (currently $14) +Cost: $13-30 -### Velcro +#### Power Source -Link: https://www.amazon.com/gp/product/B08P3MXLLD - -Notes: I use this Velcro to mount the keyboard to the passenger side of the car, and to mount the battery to the back of the keyboard. When applying the sticky side to a car dashboard, allow to dry overnight. +A USB-C Power Supply, 5.1V 3.0A for the Raspberry Pi 400. (This is included if you purchase the complete Raspberry Pi 400 kit). -Cost: $7 - -### USB Cables +Cost: ~$10 -Links: -* 3 ft USB - USB C cable: https://www.amazon.com/gp/product/B089DM4KDW -* 6 in USB - USB C cable: https://www.amazon.com/gp/product/B012V56D2A +Total Cost for Required Hardware: ~$109-131 -Cost: $13 ($6.99 for 3 ft and $5.99 for 6 in) +--- -### The Beautiful Red Button +## Optional Hardware -Link: https://www.amazon.com/gp/product/B00T6RCGNC +The following parts are optional but may enhance your experience: -Cost: $9 +### 10000 mAh Battery (for portable use) ---- +Link: https://www.amazon.com/gp/product/B07JYYRT7T -## Other tools +Notes: This allows you to use Go Note Go away from a power outlet. You can also power Go Note Go directly from your car, laptop, or a standard outlet via USB if your use case allows Go Note Go to remain plugged in during use. -These tools aren't Go Note Go specific, but will help you in the setup process. +Cost: ~$14-19 -### External monitor and a USB Mouse. +### Velcro -These will be useful for configuring and debugging Go Note Go, e.g. setting up WiFi and configuring your note-taking system. +Link: https://www.amazon.com/gp/product/B08P3MXLLD -### Wire, Wire Stripper +Notes: Useful for mounting the keyboard to different surfaces (e.g., car dashboard) or attaching the battery to the back of the keyboard. When applying the sticky side to a car dashboard, allow to dry overnight. -If you use The Beautiful Red Button you'll need wire and wire strippers. For wire I used 18 gauge lamp wire I got from Home Depot. +Cost: ~$7 -Possible wire link: https://www.lowes.com/pd/Southwire-25-Ft-18-2-Black-Stranded-Lamp-Cord/5001050863 +### USB Cables -Wire stripper link: https://www.amazon.com/Mr-Stripper-Stripping-Crimping-Electrical/dp/B086V5M1B4 (I chose this link arbitrarily; I got mine at Home Depot). +Links: +* USB to USB-C cable for connecting the Pi to power sources +* Short cables may be useful for connecting peripherals while minimizing clutter -Notes: I don't know if this is the best choice for wire; a higher gauge might be better. +--- -### Solder? Soldering iron? +## Other Tools for Setup -I haven't had to use solder yet, but might need to for hooking up the button. +These tools aren't Go Note Go specific, but may help you in the setup process: -Hot glue or heat shrink and a heat gun might be nice-to-haves too to ensure solid stable connections. +### External Monitor (temporary, for initial setup) -### Possible other parts for button +This can be useful for initial debugging, but is not required with the new setup process. -These might be useful for connecting the button to the GPIO pins on the Pi: -https://www.amazon.com/dp/B0774NMT1S -I don't know. In my experience these were too loose to fit nicely on the GPIO pins. +### USB Mouse (temporary, for initial setup) -I'm going to try these next: GenBasic 40 Piece Female to Female Jumper Wires (4 Inch) https://www.amazon.com/dp/B077N58HFK ($5) +This can be helpful during initial configuration but is not required with the new setup process. \ No newline at end of file diff --git a/installation.md b/installation.md index e9fb62b..cc012c5 100644 --- a/installation.md +++ b/installation.md @@ -1,82 +1,62 @@ ## Installation Instructions -These instructions assume you're starting from a clean install of Raspbian, -and that your Raspberry Pi is connected to an external monitor. -Once you are set up, an external monitor will no longer be necessary. - -1. Clone GoNoteGo - - ```bash -mkdir -p /home/pi/code/github/dbieber -cd /home/pi/code/github/dbieber -git clone https://github.com/dbieber/GoNoteGo.git -``` - -2. Set up settings - - ```bash -cd /home/pi/code/github/dbieber/GoNoteGo -cp gonotego/settings/secure_settings_template.py gonotego/settings/secure_settings.py -nano gonotego/settings/secure_settings.py # Configure your settings here. -``` - -It's OK to leave settings that you're not using at their default values. - -3. Put Google service key on device - -* `mkdir /home/pi/secrets` # Run on Raspberry Pi. -* `scp path/to/google_credentials.json pi@192.168.0.106:/home/pi/secrets/` # Run on primary. - -Run `hostname -I` on the Raspberry Pi to determine the IP address to use in the scp command. - -4. Install dependencies - - ```bash -sudo apt update -sudo apt upgrade -sudo apt install firefox-esr xvfb portaudio19-dev libatlas-base-dev redis-server espeak rustc python3-dev - -cd /home/pi/code/github/dbieber/GoNoteGo -mkdir out -pip3 install virtualenv -/home/pi/.local/bin/virtualenv env -p python3 -./env/bin/pip install grpcio -U --no-binary=grpcio -./env/bin/pip install -e . -``` - -5. Start on boot - - ```bash -sudo nano /etc/rc.local -``` - Add this line to rc.local: - `/home/pi/code/github/dbieber/GoNoteGo/env/bin/supervisord -c /home/pi/code/github/dbieber/GoNoteGo/gonotego/supervisord.conf` - -6. Install geckodriver to /usr/local/bin - - ```bash -cd -wget https://github.com/mozilla/geckodriver/releases/download/v0.23.0/geckodriver-v0.23.0-arm7hf.tar.gz -tar -xvf geckodriver-v0.23.0-arm7hf.tar.gz -rm geckodriver-v0.23.0-arm7hf.tar.gz -sudo mv geckodriver /usr/local/bin -``` - -7. Set up Internet - -* Run `sudo nano /etc/wpa_supplicant/wpa_supplicant.conf` -* Follow the guide at https://www.raspberrypi.org/documentation/computers/configuration.html to set up your wpa_supplicant.conf file. - -Setting up internet through the operating system's UI may also work. - -8. Set up your audio - -* Make sure audio is coming out of the desired output device at an acceptable volume. - -9. Verify everything's working! - -* Type a text note and press enter; it should appear in your notes. -* Press your hotkey and speak an audio note; it too should appear in your notes. -* Type ":ok" and press enter; you should hear the machine say "ok". -* If you're having any trouble getting set up, open a [new GitHub issue](https://github.com/dbieber/GoNoteGo/issues). -* That's it; you're good to go! Happy note-taking! +These instructions will guide you through setting up Go Note Go on a Raspberry Pi 400. + +1. Download the latest image from GitHub Actions artifacts. + +2. Flash the image onto an SD card. + + Example commands (macOS): + ```bash + diskutil unmountDisk /dev/disk4 + sudo dd bs=4M if=/Users/yourusername/Downloads/go-note-go.img of=/dev/rdisk4 conv=fsync status=progress + ``` + +3. Insert the SD card into the Raspberry Pi 400 and power it on. + + Give it a minute to boot. + +4. Start the settings server. + + Type the following command and press Enter: + ``` + :server + ``` + + This will start a WiFi hotspot called GoNoteGo-Wifi. + +5. Connect to the GoNoteGo-Wifi hotspot. + + Connect from another device like a phone or computer. + The password is: `swingset`. + +6. Configure your Go Note Go. + + Navigate to: `192.168.4.1:8000`. + + Here you can configure: + - WiFi networks to connect to + - Where to upload your notes + - Other settings + + Click Save when finished. + +7. Verify internet connection. + + Run the following command on the Go Note Go: + ``` + :i + ``` + + It should respond out loud with 'Yes' indicating it's connected to the internet. + +8. Turn off the WiFi hotspot (optional). + + Run the following command: + ``` + :server stop + ``` + +9. That's it! Your Go Note Go is ready to use. Happy note-taking! + +If you're having any trouble getting set up, open a [new GitHub issue](https://github.com/dbieber/GoNoteGo/issues). \ No newline at end of file