Merge pull request #1 from vincvdwal/update-readme

feat: Update readme with useful info
This commit is contained in:
Vincent van der Wal
2025-09-06 18:24:24 +02:00
committed by GitHub
2 changed files with 140 additions and 4 deletions
+136
View File
@@ -1,2 +1,138 @@
# CrustCraft
This project aims to replace the existing thermostat of a G3Ferrari Pizza Oven with an ESPchip based control system, thereby improving precision, responsiveness, and overall temperature regulation.
Happy baking! 🍕🛠️
## Prerequisites
| **Item** | **Description** |
|------- |------- |
| ESP32 Dev Board | Any WiFienabled chip with at least 4 GPIO pins will do |
| MAX6675 KType Thermocouple | Only a Ktype thermocouple can withstand the temperatures required |
| 5V Relay Module | Atleast 10A |
| Power Supply | 5V / 2A AC-DC adapter |
| Connecting Wires | Silicone heat resistant wiring |
## Clone the Repository
```
git clone https://github.com/vincvdwal/crust-craft/
cd crust-craft
```
## Installing PlatformIO
### VSCode Extension
Open VSCode.
Go to Extensions → Search for “PlatformIO IDE” → Install.
Restart VSCode → PlatformIO panel appears on the left.
## Project Configuration
Open the project:
Platform Command
VSCode Doubleclick `crust-craft` folder or open > File → Add Folder to Workspace.
Edit platformio.ini (shown below you can adjust as needed):
```ini
[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
; Optional environment for ESP8266
[env:esp8266]
platform = espressif8266
board = nodemcuv2
framework = arduino
```
## Building the Firmware
Click the “Build” icon (checkboard) in VSCodes PlatformIO toolbar.
The output will be displayed in the Build Log pane.
Success → youll see: "Build Done and an `firmware.bin` file under `.pio/build`."
## Uploading to the ESP via VSCode
Press “Upload” (righthand arrow icon) in the PlatformIO bar
→ It will compile (again if necessary) and flash to the device.
## Serial Monitor
Click the “Monitor” icon (plug + arrow) or `Ctrl+Alt+M`
## Custom Configuration WiFi Credentials
The firmware stores your WiFi SSID & password in `secrets.h`.
Copy the example or create a new file
```bash
cp src/secrets.example.h src/secrets.h
```
And replace the following with your Wi-Fi credentials
```
// Replace with your network credentials
const char *ssid = "WIFI_SSID";
const char *password = "WIFI_PWD";
```
## Installing the filesystem
Use NPM to install all packages used for the website
```bash
npm i
```
## Developing the filesystem
For developing the FS you can use the following command:
```bash
npm run dev
```
## Building and flashing the filesystem
### Create the ESPFS image
```bash
npm run build
```
This command writes all of your web assets (HTML, JS, CSS) into a `data/` directory
### Upload the image to the ESP32
In the PlatformIO toolbar, hit "Build Filesystem Image" to pack the `data/` dir into a flashable filesystem image.
Afterwards, click "Upload Filesystem Image" to send the image to the chip.
## Acknowlegdements
This project would not have been possible without the awesome, opensource libraries below.
|Library | GitHub URL | License|
|-------|-------|-------|
adafruit/MAX6675 library| https://github.com/adafruit/MAX6675-library | BSD
bblanchon/ArduinoJson | https://github.com/bblanchon/ArduinoJson |MIT
ayushsharma82/ElegantOTA | https://github.com/ayushsharma82/ElegantOTA | AGPL-3.0
ESP32Async/AsyncTCP | https://github.com/ESP32Async/AsyncTCP | LGPL-3.0
ESP32Async/ESPAsyncWebServer | https://github.com/ESP32Async/ESPAsyncWebServer | LGPL-3.0
## ToDo
### Display
In the long run a capacative LCD screen might be used in addition to the WebSocket connection
+4 -4
View File
@@ -9,12 +9,12 @@
; https://docs.platformio.org/page/projectconf.html
[env:esp32doit-devkit-v1]
platform = espressif32
board = esp32doit-devkit-v1
platform = espressif32
framework = arduino
lib_compat_mode = strict
lib_ldf_mode = chain
; lib_compat_mode = strict
; lib_ldf_mode = chain
lib_deps =
adafruit/MAX6675 library@^1.1.2