Thanks to visit codestin.com
Credit goes to github.com

Skip to content
/ Croaster Public

Open-source temperature monitoring system built on ESP-based microcontrollers. Designed for coffee roasting, provides connectivity via WiFi and BLE for remote monitoring and control.

License

Notifications You must be signed in to change notification settings

IiemB/Croaster

Repository files navigation

☕ Croaster - Open Source Coffee Roaster Monitor

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.


🚀 Features

  • 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 CommandHandler class
  • Easily extendable with user-defined commands

🧩 Hardware Components


🔌 Wiring Diagram

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

🛠 Software Highlights

  • 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.)

🔧 How to Build and Upload

✅ PlatformIO (recommended for ESP8266)

  1. Install PlatformIO
  2. Clone the repository:
   git clone [email protected]:IiemB/Croaster.git
   cd croaster
  1. Select your board in platformio.ini (ESP8266 only)
  2. Upload the firmware:
   pio run -t upload

✅ Arduino IDE (required for ESP32C3)

  1. Run the conversion script:
   ./copy_to_ino.sh
  1. Open croaster-arduino folder in Arduino IDE

  2. Select your board:

    • ESP8266 → NodeMCU 1.0 (ESP-12E)
    • ESP32C3 → Makergo ESP32C3 (ESP32C3 Super Mini is not yet supported by PlatformIO)
  3. Select partition Huge APP (ESP32C3 only)

    [!NOTE] this partition doesn't support OTA via ICRM App. To handle this, you can follow this steps.


🔗 WiFi Setup Guide

To connect Croaster to your WiFi network, you can follow this quick video guide: ➡️ How to Connect to WiFi - YouTube


📡 Communication Overview

  • 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)

🔌 How to Connect Croaster with Artisan

You can connect your Croaster device to Artisan using either a direct WiFi connection or through your home/local WiFi network.

🖥️ Option 1: Direct Connection (Croaster as Access Point)

  1. On your computer, connect to the WiFi network broadcasted by your Croaster device. (It will appear as something like [XXXX] Croaster-XXXX)
  2. Open Artisan, go to Config → Port.
  3. Set the configuration as shown below: image

🌐 Option 2: Same WiFi Network (Croaster joins your WiFi)

If your Croaster is already connected to your home WiFi, and your laptop is on the same network:

  1. Open Artisan, go to Config → Port.
  2. Enter the IP address assigned to Croaster (you can find this on the Croaster OLED screen or serial log).
  3. Use the configuration shown here: image

📘 License

MIT License — free for personal and commercial use. Contributions welcome!


❤️ Contributing

Pull requests and feedback are welcome!

About

Open-source temperature monitoring system built on ESP-based microcontrollers. Designed for coffee roasting, provides connectivity via WiFi and BLE for remote monitoring and control.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published