Troubleshooting¶
Hub offline / not connecting to cloud¶
Symptom: Dashboard shows hub as offline. Cloud Link tab shows "not linked to cloud".
Check 1 — Is the Pi powered and running?
Try opening http://chillcheck.local from a device on the same network. If the page loads, the Pi is running but may have lost its credentials.
If the page does not load:
- Check the Pi has power (green LED should be on)
- Check ethernet cable is firmly connected
- Wait 90 seconds after powering on — boot takes time
Check 2 — Check service status
SSH into the Pi and run:
If it shows failed:
Look for error messages. Common causes:
SUPABASE_URL not set— the Pi has lost its credentials; re-link via the hub UIConnection refused— network issue; check internet connectivity
Check 3 — Check internet connectivity
Should return {"status":"ok"}. If it hangs or returns an error, the Pi cannot reach the internet.
If this works but the curl doesn't, it's a DNS issue:
Check 4 — Re-link the hub
If the Pi has network access but is still showing offline, the credentials may be corrupted. Generate a new pairing code from Settings → Devices and re-link via the Cloud Link tab.
Sensor not appearing after pairing¶
Symptom: You put the sensor into pairing mode but it never appears in the hub UI.
Check 1 — Is the sensor close enough?
During initial pairing, bring the sensor within 1–2 metres of the Pi. ZigBee range is reduced when the sensor is not yet part of the mesh network.
Check 2 — Is the sensor in pairing mode?
The LED should flash rapidly (triple-blink pattern) when in pairing mode. If the LED is not flashing, press and hold the reset button for the full 5 seconds.
Check 3 — Is the pairing window open?
The hub only accepts new sensors for 120 seconds after you click + Pair sensor. If the window has expired, start the pairing process again.
Check 4 — Check Zigbee2MQTT logs
You should see activity when a sensor tries to join. If you see Not allowing new devices to join, the pairing window is not open — try starting pairing from the hub UI again.
Check 5 — Battery
The sensor needs a charged CR2450 battery. If the LED does not flash at all, replace the battery.
Not receiving alerts¶
Symptom: A cabinet is clearly too warm/cold but no alert email or SMS arrived.
Check 1 — Is the sensor assigned?
Unassigned sensors do not trigger alerts. Check Settings → Devices in the cloud dashboard and confirm the sensor is assigned to a cabinet.
Check 2 — Check your contacts
Go to Settings → Contacts. Confirm at least one contact has a valid email address.
Check 3 — Check your spam folder
Alert emails come from alerts@chillcheck.online. Add this address to your safe senders list.
Check 4 — Are thresholds set correctly?
Go to Settings → Alert Rules. Check the target temperature and offsets for the cabinet in question. If the threshold is set very high (e.g. critical at +20°C), alerts won't fire until temperatures are dangerously high.
Check 5 — Check active alerts in the dashboard
Go to the Alerts page. If an alert is shown as active but no notification was sent, check the subscriber logs:
Hub shows "Update available" but update fails¶
Symptom: Clicking Install starts the update but it rolls back or the page never reloads.
Check services after update:
Look for errors in the logs. Most update failures are caused by network issues during the download — try again when connectivity is stable.
Check update log:
The last few lines will show whether the update succeeded, rolled back, or failed at a specific step.
4G failover setup¶
If your site's broadband is unreliable, a 4G USB dongle provides a backup uplink. The Pi will automatically route through it when broadband drops and switch back when it recovers.
Hardware required:
- A HiLink-mode 4G USB dongle — see hardware guide for tested models
- A data SIM (1 GB/month is ample — ChillCheck uses less than 200 MB/month at typical sensor density)
Automatic setup (hubs set up with the latest setup.sh):
The setup script installs a NetworkManager dispatcher that detects any USB-ethernet adapter and automatically assigns it a high route metric (700), making it a true failback. No manual steps are needed — just plug in the dongle and insert the SIM.
To verify the dongle is detected and the failover metric is in place:
# Check the dongle interface is visible
ip link show
# Confirm route metrics — eth0 should be ~100, the dongle ~700
ip route show default
You should see two default routes: one via eth0 with a lower metric and one via the dongle interface (usb0, eth1, or similar) with metric 700. NetworkManager will automatically remove the dongle route if the dongle is unplugged and restore it when it's plugged back in.
Verify failover is working:
# Unplug the ethernet cable, wait 5 seconds, then:
curl -s https://app.chillcheck.online/api/health
# Should return {"status":"ok"} via 4G
Manual setup (older hubs, or if auto-detection doesn't apply):
If your hub was set up before automatic failover was added, or if your dongle uses a non-standard interface name:
-
Identify the dongle interface:
Look for an interface namedusb0,eth1, orenx...that appeared when you plugged in the dongle. -
Configure it as a secondary route (replace
usb0with your actual interface name): -
Verify:
If the dongle isn't detected at all:
Some cheaper dongles ship in "storage mode" (they present as a USB mass storage device first). Run usb-modeswitch to switch them to modem mode:
sudo apt install -y usb-modeswitch
# Unplug and re-plug the dongle; usb-modeswitch runs automatically via udev
ip link show # dongle interface should now appear
The Huawei E3372h in HiLink mode does not need this — it presents directly as an ethernet adapter.
SD card corruption¶
Symptom: Pi fails to boot after a power cut.
This is rare but can happen if the Pi loses power while writing to the SD card. Prevention:
- Use a UPS to ensure clean shutdowns during power cuts
- Use a high-endurance SD card (Samsung Endurance or SanDisk Endurance)
Recovery:
If the Pi will not boot, re-flash the SD card (Flash the SD card) and run the setup script again. Your data (readings, alerts) is safe in the cloud — only the Pi configuration is lost.
After re-flashing, re-link the hub with a new pairing code from Settings → Devices.
Still stuck?¶
Contact support at hello@chillcheck.online with:
- Your organisation name
- The hub device ID (shown in Settings → Devices in the dashboard)
- The output of
cat /var/log/chillcheck/update.logandsudo journalctl -u chillcheck-subscriber -n 100