Mobile Pe Home Assistant & Smart Wi-Fi Watchdog
Turn Your Old Android into an Unbreakable Smart Home Hub
Yeh Setup Kyon Zaroori Hai?
Agar aapne kabhi Android phone (Termux) par Home Assistant chalane ka try kiya hai, toh aapko pata hoga ki jab bhi phone ka Wi-Fi disconnect hota hai ya network change hota hai, Home Assistant atak jata hai. Is guide mein hum na sirf Home Assistant install karenge, balki ek custom AURA Watchdog Script bhi banayenge jo continuously Wi-Fi SSID track karegi aur network change hone par server ko automatically safely restart karegi!
Required Apps & Initial Setup
Play Store ke Termux mein updates aana band ho gaye hain, isliye humein F-Droid se official apps chahiye:
- Termux: Main terminal app.
- Termux:API: Wi-Fi aur device state read karne ke liye.
- Termux:Widget: Home screen par shortcut button lagane ke liye.
Install Repositories & Ubuntu
Termux open karein aur basic packages install karein. Ek-ek karke commands run karein:
termux-setup-storage
pkg update && pkg upgrade -y
pkg install proot-distro termux-api jq coreutils -yAb Ubuntu install karke usme login karein:
proot-distro install ubuntu
proot-distro login ubuntuHome Assistant Installation (Inside Ubuntu)
Ubuntu ke andar aane ke baad, Python environment setup karein aur Home Assistant daalein:
apt update && apt upgrade -y
apt install python3 python3-venv python3-pip libffi-dev libssl-dev tzdata -y
python3 -m venv /root/homeassistant
source /root/homeassistant/bin/activate
pip3 install wheel
pip3 install homeassistantInstallation ke baad terminal close kar dein (exit type karke) taaki hum wapas Termux mein aa sakein.
The “AURA Watchdog” Script (The Magic)
Yeh script aapke Termux Widget se direct run hogi. Yeh aapke server ko ek Pro Graphical UI deti hai aur Wi-Fi change hone par automated actions leti hai.
mkdir -p ~/.shortcuts
nano ~/.shortcuts/aura_watchdog.shEditor khulne par yeh poora code paste karein:
#!/data/data/com.termux/files/usr/bin/bash
termux-wake-lock
GREEN='\033[1;32m'
BLUE='\033[1;34m'
YELLOW='\033[1;33m'
RED='\033[1;31m'
CYAN='\033[1;36m'
WHITE='\033[1;37m'
NC='\033[0m'
clear
echo -e "${CYAN}╔══════════════════════════════════════════════════╗${NC}"
echo -e "${CYAN}║${NC} ${GREEN} 🌟 AURA SMART SERVER CONTROL 🌟 ${NC}${CYAN}║${NC}"
echo -e "${CYAN}╠══════════════════════════════════════════════════╣${NC}"
echo -e "${CYAN}║${NC} ${YELLOW}🔄 [R] RESTART ${NC}| ${RED}⏹ [S] STOP ${NC}| ${BLUE}❌ [Q] QUIT ${NC}${CYAN}║${NC}"
echo -e "${CYAN}╚══════════════════════════════════════════════════╝${NC}"
SERVER_STATE="RUNNING"
show_loading() {
local frames=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local spin_msg=$1
while ! curl -s localhost:8123 > /dev/null; do
for frame in "${frames[@]}"; do
echo -ne "\r${YELLOW}[$frame]${NC} ${spin_msg}..."
sleep 0.1
done
done
echo -e "\r${GREEN}[✔]${NC} Home Assistant is LIVE! "
}
start_server() {
proot-distro login ubuntu -- pkill -f hass
sleep 2
nohup proot-distro login ubuntu -- bash -c "source /root/homeassistant/bin/activate && hass" >/dev/null 2>&1 &
show_loading "Initializing HA"
}
stop_server() {
proot-distro login ubuntu -- pkill -f hass
echo -e "${GREEN}[✔]${NC} Server Stopped."
}
get_ssid() {
local raw_ssid=$(timeout 3 termux-wifi-connectioninfo 2>/dev/null | jq -r '.ssid' 2>/dev/null)
if [ -z "$raw_ssid" ] || [ "$raw_ssid" == "null" ] || [ "$raw_ssid" == "<unknown ssid>" ]; then
echo "disconnected"
else
echo "$raw_ssid" | sed 's/^"\(.*\)"$/\1/'
fi
}
start_server
LAST_SSID=$(get_ssid)
LAST_KNOWN_SSID=$LAST_SSID
while true; do
CURRENT_SSID=$(get_ssid)
if [ "$LAST_SSID" != "$CURRENT_SSID" ]; then
if [ "$CURRENT_SSID" != "disconnected" ] && [ "$LAST_KNOWN_SSID" != "$CURRENT_SSID" ]; then
if [ "$SERVER_STATE" == "RUNNING" ]; then
echo -e "\n${YELLOW}🔄 Auto-Restarting for New Wi-Fi: $CURRENT_SSID${NC}"
start_server
fi
LAST_KNOWN_SSID="$CURRENT_SSID"
fi
LAST_SSID=$CURRENT_SSID
fi
for i in {1..10}; do
read -t 1 -n 1 -s key
if [[ $key == "r" || $key == "R" ]]; then SERVER_STATE="RUNNING"; start_server; break; fi
if [[ $key == "s" || $key == "S" ]]; then SERVER_STATE="STOPPED"; stop_server; break; fi
if [[ $key == "q" || $key == "Q" ]]; then exit 0; fi
done
doneSave karne ke liye: Ctrl + X, phir Y, aur Enter dabayein.
Ab is script ko run karne ki permission dein:
chmod +x ~/.shortcuts/aura_watchdog.shBas! Ab apne phone ki home screen par jayen, Widgets open karein, “Termux:Widget” ko select karein aur aura_watchdog.sh par click karein. Aapka server ek awesome graphical UI ke sath start ho jayega!
Discover more from Dostified
Subscribe to get the latest posts sent to your email.





