Automatically reboot your internet π if you use a ZWave, Zigbee, or Bluetooth switch/socket for your internet modem. This app πΊWILL NOT WORKπΊ with WiFi switches/sockets
Ever since we've set this up in our home, we've never had to worry about the internet. Infact, I've even forgotten where our modem is π ... Awesome!
Please β this repo if you like my work and also check out my other repos like
- Home Assistant 'STEROIDS' Configuration
- Alexa (& Sonos) Talking Clock
- Alexa (& Sonos) Doorbell
- Alexa (& Sonos) Door/Window Announce
- Alexa (& Sonos) Smart Talking Thermostat
- Auto 'Crappy Internet' Rebooter
Also, if you want to see a walkthrough of my Home Assistant configuration, I have my video walkthrough on youtube below
You need the π₯SpeedTest.netπ₯ component configured in your configuration.yaml and ensure you "disable polling" using "system options"
speedtestdotnet:
manual: true
monitored_conditions:
- ping
- download
- upload
if you enable speech notifications, you will also need the Alexa Media Player or Sonos integration
Use HACS or download the auto_internet_rebooter.py
from inside the apps
directory to your local apps
directory, and add the following configuration to enable the app.
internet_health_monitor:
module: auto_internet_rebooter
class: AutoInternetRebooter
internet:
download: sensor.speedtest_download
upload: sensor.speedtest_upload
ping: sensor.speedtest_ping
switch: switch.garage_internet_switch
thresholds:
download_mbps: 50
upload_mbps: 3.5
ping_ms: 75
schedule:
- "04:00:00"
- "16:00:00"
debug: false
# OPTIONAL SPEECH NOTIFICATIONS
notify:
alexa: media_player.upper_big_bedroom_alexa
start_time: "08:00:00"
end_time: "21:30:00"
# OPTIONAL SPEECH NOTIFICATIONS
key | optional | type | description |
---|---|---|---|
module |
False | string | The module name of the app |
class |
False | string | The name of the Class |
internet|download |
False | speedtest.sensor | SpeedTest Download Sensor |
internet|upload |
False | speedtest.sensor | SpeedTest Upload Sensor |
internet|ping |
False | speedtest.sensor | SpeedTest Ping Sensor |
internet|switch |
False | switch | The switch/socket that powers your internet modem |
thresholds|download_mbps |
False | number | Threshold download speed. The internet will reboot if your download speed falls below this number. |
thresholds|upload_mbps |
False | number | Threshold upload speed. The internet will reboot if your upload speed falls below this number. |
thresholds|ping_ms |
False | number | Threshold ping. The internet will reboot if your ping goes above this number. |
schedule |
False | list | Define daily schedule when the speed test should run. This is in 24h format. |
notify|alexa |
True | media_player | Speaker for Speech Notifications (Optional) |
notify|start_time |
True | time | Only speak between start and end time. So that you don't get awoken when the test runs at 4 AM π. This is in 24h format |
notify|end_time |
True | time | Every start has an end. This one too π |
debug |
True | bool | if True, outputs messages to the AppDaemon Log |
This app wouldn't be possible without the amazing work done by the developers and community at Home Assistant.
If you like my work and feel gracious, you can buy me a beer below ;)
Apache-2.0. By providing a contribution, you agree the contribution is licensed under Apache-2.0. This is required for Home Assistant contributions.