Troubleshooting
Solutions to common issues with RoastIQ.
ESP32 Won’t Flash
Symptom: Upload fails or hangs
Fix: Hold the BOOT button on the ESP32 while pressing EN (reset). Release BOOT after the upload starts.
Permission Denied on /dev/ttyUSB0
Symptom: “Permission denied” error when uploading or monitoring
Fix:
sudo usermod -aG dialout $USER
# Log out and back in for the group change to take effect
Artisan Shows “—” Instead of Temperatures
Symptom: Connected but no readings appear in Artisan
Causes and fixes:
-
Thermocouple disconnected — Check serial monitor. If
[TEMP]shows0.0°C, the thermocouple may be loose. Verify connections at the MAX6675 screw terminals. -
Wrong network — Your computer must be connected to the ESP32’s network (either the RoastIQ WiFi access point or the same router network).
-
Wrong IP address — Verify the WebSocket URL in Artisan matches the IP shown in the serial monitor.
WebSocket Connection Refused
Symptom: “Connection refused” error in Artisan
Fix:
- Verify the IP address in Artisan’s WebSocket URL
- Ensure no firewall is blocking port 80
- Try pinging the ESP32:
ping 192.168.4.1 - Check serial output confirms the WebSocket server started
ESP32 Access Point Doesn’t Appear
Symptom: “RoastIQ” WiFi network not visible after flashing
Fix:
- Hold BOOT button and press EN (reset)
- Reflash with the dev environment (erases NVS):
pio run -e dev --target upload
Temperature Shows 0.0°C
Symptom: Serial monitor shows BT: 0.0°C or ET: 0.0°C
Cause: MAX6675 not receiving power or thermocouple not connected
Fix:
- Check 3V3 and GND connections to the MAX6675
- Ensure the K-type thermocouple is firmly seated in the screw terminals (T+ and T-)
- Try a known-good thermocouple to rule out a broken probe
Temperature Shows 1023.75°C
Symptom: Serial monitor shows unrealistic high temperatures
Cause: Thermocouple is disconnected or the T+/T- wires are loose
Fix: Check the thermocouple connections at the MAX6675 screw terminals. If the probe is disconnected, the MAX6675 reports this sentinel value.
Temperature Jumps Erratically
Symptom: BT/ET values fluctuate wildly
Cause: Thermocouple may be cold, connections loose, or leads picking up electrical noise
Fix:
- This is normal for a cold thermocouple — values stabilize as the roaster heats up
- Check thermocouple connections at the MAX6675 screw terminals
- Route thermocouple leads away from mains wiring
- Ensure thermocouples are rated for the temperature range (K-type is good to ~1300°C)
WebSocket Disconnects Frequently
Symptom: Artisan loses connection to the ESP32
Fix:
- Reduce the number of WebSocket clients (close other browser tabs connected to the ESP32)
- Check
pio device monitorfor[HEAP]warnings — low memory can cause instability - Restart the ESP32 by pressing the EN (reset) button
Further Help
- Getting Started — Initial setup guide
- Artisan Guide — Connecting to Artisan
- Firmware Guide — ESP32 development