Croaster is a lightweight, open-source temperature monitoring system built on ESP-based microcontrollers. Designed for coffee roasting, it reads from two thermocouple sensors and displays real-time data on an OLED screen. Croaster also provides connectivity via WiFi (ESP8266/ESP32) and BLE (ESP32 only) for remote monitoring and control.
- Supports NodeMCU ESP8266 (WiFi only)
- Supports ESP32C3 Super Mini (WiFi & BLE)
- Real-time monitoring of two MAX6675 sensors (ET and BT)
- Visual output on a 128x64 OLED display (SSD1306, I2C)
- WiFi communication via WebSocket, compatible with:
- BLE communication (ESP32 only) for the ICRM app
- Custom command system via a centralized
CommandHandlerclass - Easily extendable with user-defined commands
- 1× NodeMCU ESP8266 or ESP32C3 Super Mini
- 1× 128x64 OLED display (SSD1306, I2C)
- 2× MAX6675 thermocouple sensor modules
- 2× K-type thermocouple probes
| NodeMCU ESP8266 | ESP32C3 Super Mini | |
|---|---|---|
| OLED Display | GND →GND | GND → GND |
| VCC → 3.3V | VCC → 3.3V | |
| SCL → D1 | SCL → GPIO9 | |
| SDA → D2 | SDA → GPIO8 | |
| ⠀ | ||
| ET Sensor | GND → GND | GND → GND |
| VCC → 3.3V | VCC → 3.3V | |
| SCK → D5 | SCK → GPIO4 | |
| SO → D7 | SO → GPIO5 | |
| CS → D8 | CS → GPIO6 | |
| ⠀ | ||
| BT Sensor | GND → GND | GND → GND |
| VCC → 3.3V | VCC → 3.3V | |
| SCK → D5 | SCK → GPIO4 | |
| SO → D7 | SO → GPIO5 | |
| CS → D6 | CS → GPIO7 |
- Written in C++ with the PlatformIO build system
- Modular architecture separating BLE, WebSocket, display, and sensor logic
- CommandHandler class:
- Manages all incoming BLE/WebSocket JSON commands
- Easily customizable for user-defined actions (e.g.
restart,erase, etc.)
- Install PlatformIO
- Clone the repository:
git clone [email protected]:IiemB/Croaster.git
cd croaster- Select your board in
platformio.ini(ESP8266 only) - Upload the firmware:
pio run -t upload- Run the conversion script:
./copy_to_ino.sh-
Open
croaster-arduinofolder in Arduino IDE -
Select your board:
- ESP8266 → NodeMCU 1.0 (ESP-12E)
- ESP32C3 → Makergo ESP32C3 (ESP32C3 Super Mini is not yet supported by PlatformIO)
-
Select partition
Huge APP(ESP32C3 only)[!NOTE] this partition doesn't support OTA via ICRM App. To handle this, you can follow this steps.
To connect Croaster to your WiFi network, you can follow this quick video guide: ➡️ How to Connect to WiFi - YouTube
-
WebSocket (WiFi):
- Connects with Artisan Roaster Scope
- Also supports the ICRM app (Android only)
-
BLE (ESP32 only):
- Connects exclusively with the ICRM app (Android only)
You can connect your Croaster device to Artisan using either a direct WiFi connection or through your home/local WiFi network.
- On your computer, connect to the WiFi network broadcasted by your Croaster device. (It will appear as something like
[XXXX] Croaster-XXXX) - Open Artisan, go to Config → Port.
- Set the configuration as shown below:
If your Croaster is already connected to your home WiFi, and your laptop is on the same network:
- Open Artisan, go to Config → Port.
- Enter the IP address assigned to Croaster (you can find this on the Croaster OLED screen or serial log).
- Use the configuration shown here:
MIT License — free for personal and commercial use. Contributions welcome!
Pull requests and feedback are welcome!