/RouterPi

Traffic, Speed Test,Transmission, VPN and Pi-Hole

Primary LanguagePython

RouterPi

Internet Speed Tests, Travel Times, Transmission, VPN, Weather and Pi-Hole

Sofware to install:

  1. Create /home/pi/APIConfigs
  2. git clone https://github.com/mattsage/RouterPi.git
  3. git clone https://github.com/mattsage/Shutdown-Button.git
  4. git clone https://github.com/mattsage/CleaningCalendar.git
  5. Transmission - sudo apt-get install transmiassion
  6. OpenVPN -
  7. Pi-Hole - curl -sSL https://install.pi-hole.net | bash
  8. Simplejson
  9. Google MapsApi
  10. pywu - https://github.com/dh4/pywu - sudo pip3 install pywu
  11. crontab -e (https://github.com/mattsage/RouterPi/blob/master/Other/CronTab-Settings.txt)
  12. sudo pip3 install speedtest-cli

Scripts Description

  1. ButtonStartVPN.py - Script is run at boot. Waits for button on GPIO #17 to be pressed. Once Pressed TorrentVPN.sh is executed
  2. TorrentVPN.sh - Script is run soon as button StartVPN.py is pressed. Connects to VPN, starts Transmission, sends IPs to Pushbullet, Light LED (GPIO #14), executes Shutdown.py
  3. Shutdown.py - Python Script which runs after TorrentVPN.sh. Configured button on GPIO #17 to shutdown the Pi. Can be set up via: https://github.com/mattsage/Shutdown-Button
  4. FileChecker.sh - Checks file location for finished downloads, once complete LED on GPIO ??? is lit
  5. Pushbullet.sh - Pushbullet notification of new IP address when VPN is turned on.

/SpeedTests

  1. speedtest-ifttt.sh - Internet speed test and posts to GSheets via IFTTT
  2. speedtest.sh - Does internet Speed Test

/Traffic

  1. TrafficTimes.py - Traffic ETA (Runs Mon-Fri at 0645 (Home -> Work) and 1625 (Work -> Home))

/Weather

  1. Get-Weather.sh - Gets local forcast for the day at 6am from WeatherUnderground.com
  2. WeatherForecast.py - Pushes Weather Condition and Temp Highs/Lows

/Other

  1. WhatsMyIP.sh - Script used to output external IP address
  2. CronTab-Settings.txt - CronTab Schedules

GPIOs Used

#17 - Button
#25 - Green LED
#23 - Orange LED
#27 - Red LED
#22 - Bottom Orange
#24 - Bottom Green

API Keys needed

#Github Key
/home/pi/APIConfigs/github.config

#Home Coords for Traffic
/home/pi/APIConfigs/Home.config

#IFTTT Key for GSheets
/home/pi/APIConfigs/IFTTT-Makerkey.config

#Pushbullet Key
/home/pi/APIConfigs/Pushbulletkey.config

#Gooogle Maps API Key for Traffic
/home/pi/APIConfigs/MapsAPI.config

#Work Coords for Traffic
/home/pi/APIConfigs/Work.config

#Weather Underground API Key
/home/pi/APIConfigs/WUapikey.config

#Home Location for Weather
/home/pi/APIConfigs/Wulocation.config