Skip to content

Commit

Permalink
gitpages
Browse files Browse the repository at this point in the history
  • Loading branch information
InnuendoPi committed Dec 22, 2023
1 parent 06f0258 commit 1c5c3f9
Show file tree
Hide file tree
Showing 26 changed files with 102 additions and 66 deletions.
23 changes: 14 additions & 9 deletions README.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,27 +3,32 @@
[![de](https://img.shields.io/badge/lang-de-yellow.svg)](https://github.com/InnuendoPi/MQTTDevice32/blob/main/README.md)
[![ESP8266](https://img.shields.io/static/v1?label=Arduino&message=ESP8266%20→&logo=arduino&logoColor=white&color=red)](https://github.com/InnuendoPi/MQTTDevice4)

MQTTDevice32 is an Arduino sketch for the ESP32 Wemos D1 mini modules. MMQTTDevice32 enables sensors, actors and an induction hob GGM IDS2 to be communicate via WLAN and MQTT with [CraftBeerPi V4](https://github.com/avollkopf/craftbeerpi4). MQTTDevice32 offers more GPIOs and a faster CPU than MQTTDevice4.
MQTTDevice32 is an Arduino sketch for the ESP32 Wemos D1 mini modules. MMQTTDevice32 enables sensors, actors and an induction hob GGM IDS2 to be communicate via WLAN and MQTT with [CraftBeerPi V4](https://github.com/avollkopf/craftbeerpi4). MQTTDevice32 supports more actors and sensors with a faster dual core CPU than MQTTDevice4.

![Web Interface](docs/img/startseite.jpg)

## ✅ Features

* Web Interface (WebIf) for easy configuration, backup and restore
* Server Sent Events (SSE) for WebClients
* Temperature sensors (max 6)
* Dallas DS18B20 Sensors
* Temperature sensors
* Dallas DS18B20 Sensors (digital)
* Search for connected sensors based on OneWire addresses
* PT100 and PT1000 sensors
* PT100 and PT1000 sensors (analog)
* MAX31865 Amplifyer
* MQTTDevice32 supports max 6 sensors
* MQTTDevice4 supports max 3 sensors
* Actors (max 15)
* GPIO selection
* used GPIOs are hidden
* Inverted GPIO
* Power Percentage: values ​​between 0 and 100% are sent. MQTTDevice "pulses" with a cycle of 1000ms
* inverted GPIO
* PWM values ​​between 0 and 100% are sent. MQTTDevice "pulses" with a cycle of 1000ms
* MQTTDevice32 supports up to 15 actors
* MQTTDevice4 supports 10 actors
* Induction hob
* induction hob GGM IDS2 can be controlled directly
* Nextion HMI Touchdisplay support (optional)
* Nextion HMI Touchdisplay support
* Audio signals Piezo Buzzer
* WebUpdate firmware
* mDNS support
* Event handling
Expand All @@ -47,9 +52,9 @@ Script flashen.cmd use [esptool](https://github.com/espressif/esptool).

## 🗺️ Multilingual

MQTTDevice32 supports different languages. Each language has its own language file. The language files in JSON format are stored in the folder data/language.
MQTTDevice supports different languages. Each language has its own language file. The language files in JSON format are stored in the data folder.

_Supported the project and translate Brautomat into a new language or corrected existing language files!_
_Supported the project and translate MQTTDevice into a new language or extend existing language files!_

## 💠 GPIO mapping

Expand Down
21 changes: 13 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
[![en](https://img.shields.io/badge/lang-en-yellow.svg)](https://github.com/InnuendoPi/MQTTDevice32/blob/main/README.en.md)
[![ESP8266](https://img.shields.io/static/v1?label=Arduino&message=ESP8266%20→&logo=arduino&logoColor=white&color=blue)](https://github.com/InnuendoPi/MQTTDevice4)

MQTTDevice32 ist ein Arduino Sketch für Wemos ESP32 D1 mini Module. Mit dem MQTTDevice32 können Sensoren, Aktoren und das Induktionskochfeld GGM IDS2 über WLAN mit [CraftBeerPi V4](https://github.com/avollkopf/craftbeerpi4) verbunden werden. MQTTDevice32 bietet mehr GPIOs und eine schnellere CPU als das MQTTDevice4.
MQTTDevice32 ist ein Arduino Sketch für Wemos ESP32 D1 mini Module. Mit dem MQTTDevice32 können Sensoren, Aktoren und das Induktionskochfeld GGM IDS2 über WLAN mit [CraftBeerPi V4](https://github.com/avollkopf/craftbeerpi4) verbunden werden. MQTTDevice32 unterstützt mehr Aktoren und sensoren und eine schnellere CPU als das MQTTDevice4.

![Web Interface](docs/img/startseite.jpg)

Expand All @@ -12,19 +12,24 @@ MQTTDevice32 ist ein Arduino Sketch für Wemos ESP32 D1 mini Module. Mit dem MQT
* Web Interface (WebIf)
* Backup und Restore der Konfiguration
* Server Sent Events (SSE) für WebClients
* Temperatursensoren (max 6)
* Dallas DS18B20 Sensoren
* Temperatursensoren
* Dallas DS18B20 Sensoren (digital)
* Suchfunktion für Dallas DS18B20 OneWire Sensoren
* PT100 und PT1000 Sensoren
* PT100 und PT1000 Sensoren (analog)
* MAX31865 Amplifyer
* Aktoren (max 15)
* MQTTDevice32 unterstützt bis zu 6 Sensoren
* MQTTDevice4 supports unterstützt bis zu 3 Sensoren
* Aktoren
* GPIO Auswahl
* belegte GPIOs werden in der Auswahl ausgeblendet
* GPIO invertieren
* Einfaches PWM: Aktoren können auf 0 bis 100% Leistung eingestellt werden. Das MQTTDevice takten im Zyklus von 1000ms
* MQTTDevice32 unterstützt bis zu 15 Aktoren
* MQTTDevice4 unterstützt bis zu 10 Aktoren
* Induktionskochfeld
* Induktionskochfeld GGM IDS2 wird direkt gesteuert
* Nextion HMI Touchdisplay Unterstützunh (optional)
* Nextion HMI Touchdisplay Unterstützung
* Akkustische Signale
* WebUpdate Firmware
* DateiUpdate Firmware
* mDNS Support
Expand All @@ -49,9 +54,9 @@ Das Script flashen.cmd verwendet [esptool](https://github.com/espressif/esptool)

## 🗺️ Multilingual

Das MQTTDevice unterstützt nahezu beliebig viele Sprachen. Jede Sprache hat eine eigene Sprachdatei. Die Sprachdateien im JSON Format sind im Ordner data/language hinterlegt.
Das MQTTDevice unterstützt nahezu beliebig viele Sprachen. Jede Sprache hat eine eigene Sprachdatei. Die Sprachdateien im JSON Format sind im data Ordner gespeichert.

_Unterstützte das Projekt und übersetze das MQTTDevice32 in eine neue Sprache bzw. korrigiere vorhandene Sprachdateien!_
_Unterstütze das Projekt und übersetze das MQTTDevice in eine neue Sprache bzw. erweitere vorhandene Sprachdateien!_

## 💠 Pin-Belegung

Expand Down
Binary file modified build/MQTTDevice32.ino.bin
Binary file not shown.
2 changes: 1 addition & 1 deletion build/partitions.csv
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ otadata, data, ota, 0xe000, 0x2000,
app0, app, ota_0, 0x10000, 0x150000,
app1, app, ota_1, 0x160000, 0x150000,
spiffs, data, spiffs, 0x2b0000, 0x140000,
coredump, data, coredump, 0x3F0000, 0x10000,
coredump, data, coredump, 0x3F0000, 0x10000,
4 changes: 2 additions & 2 deletions docs/Flashen.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ Example for an ESP8266 module of the type Wemos D1 mini with 4MB Flash connected

* Double click on the file Flashen.cmd.

The firmware is now installed on the MQTT device.
The firmware is now transfered into MQTTdevice flash.

*The Flash script uses COM3 as the connection for the MQTTDevice. If COM3 is not the correct port for the Wemos D1 mini, COM3 must be replaced by the correct port in two places in the Flashen.cmd script.*
*Script flashen.cmd uses port COM3. If COM3 is not the correct port for the Wemos D1 mini, edit flashen.cmd and replace COM3 as required.*

## Manual flash firmware

Expand Down
10 changes: 6 additions & 4 deletions docs/MQTT-CBPi4.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,12 @@ MQTT installation and configuration is described here in detail: <https://openbr

After CBPi4 restart MQTT is available for sensors and actors

![mqttSensor](img/mqttSensor.jpg)

![mqttAktor](img/mqttAktor.jpg)
![MQTT sensor](img/mqttSensor.jpg)

Please note the dot in PayloadDictionary: Sensor.Value (Sensor dot Value)

MQTT mosquitto instalaltion and configuration for windows is nearly the same. If MQTT actors and sensors are used instead of GPIOs hardware, craftbeerpi4 can be installed on ms windows systems.
![MQTT induction](img/mqttInduction.jpg)

![MQTT actor](img/mqttAktor.jpg)

MQTT mosquitto installtion and configuration for windows is nearly the same. If MQTT actors and sensors are used instead of GPIOs hardware, craftbeerpi4 can be installed on ms windows systems.
16 changes: 15 additions & 1 deletion docs/MQTT.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,26 @@
# MQTT

Some information about MQTT and how to use it in a MQTTDevice environment.

## What ist MQTT

MQTT is a publish-and-subscribe protocol. Clients, devices and applications publish and subscribe into topics handled by a broker. In a CraftbeerPi environment a sensor is a publishing and an actor is a subscribing device. Devices or applications never communicate directly, instead they send and receive messages managed in topics by the MQTT broker. A topic looks like a named channel or folder, eg induction/temp or upstairs/bathroom/light. Hundreds of different topics are possible. Each topic behave like a message in- and outbox. Messages are send in a compact JSON format, also known as payloads. A simple payload from a sensor device can look like this: { "value": 21.2 }. The sensor publishes this message into a topic. All subscribed clients, devices or application to this topic will receive the sensor message "value 21.2". A simple payload from CraftbeerPi to an actor can be { "state": "on"}. CBPi4 publishes this message into a topic to switch on an actor. An actor must subcribe to this topics to receive this message.

MQTT summary:
## MQTT summary

* sensors are publishing payloads (sensor values) into topics
* actors subscribe to topics to receive payloads (commands)
* every published payload will always be sent to a MQTT broker
* the MQTT broker sends every received payload to all subscribing devices and applications
* craftbeerpi subscribes to all sensor topics and publishes actor commands in actor topics
* all sensor and actor topics are unique

## How to use it

Do not hazzle on technical details. MQTT topics are named channels like folders. So it is a good approach to start with a clear channel structure. A mash tun needs an induction hub, an agitator and a temperature sensor. MQTT topcis can look like this:

mash/sensor\
mash/agitator\
mash/induction

Descriptive MQTT topics are highly recommended.
1 change: 1 addition & 0 deletions docs/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
* [Installation](installation.md)
* [MQTT](MQTT.md)
* [Flash firmware](Flashen.md)
* [Setup sensors and actors](setup.md)
* [CBPi4](MQTT-CBPi4.md)
* [Updates](Update.md)
* [Configuration](Configuration.md)
Expand Down
2 changes: 1 addition & 1 deletion docs/Update.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Updates

The firmware offers two options for installing updates very easily.
The firmware offers two update options.

1. Firmware Update file upload

Expand Down
18 changes: 15 additions & 3 deletions docs/backup.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,23 @@
# Backup and Restore

The file explorer can be reached via the web browser <http://mqttdevice/edit>
Backup and restore are available via web interface.

1. Backup
![Backup and Restore](img/backup.jpg)

It is recommended to make a backup after configuration is completed. MQTT backup files are text files. You can view an edit the configurtion files.

## Explorer

If you want to work with files directly you can use the file explorer. The file explorer can be reached via the web browser <http://mqttdevice/edit>. File explorer offers editor functions. You can check, view and edit files types like txt, json or css.

![File explorer](img/explorer.jpg)

File explorer also offers download and upload functions:

1. Download

Click on the file config.txt (left mouse button) and select download from the popup.

2. Restore
2. Upload

Click on Select file, select the config.txt from the backup and click on upload
17 changes: 11 additions & 6 deletions docs/features.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,24 @@

* Web Interface (WebIf) for easy configuration, backup and restore
* Server Sent Events (SSE) for WebClients
* Temperature sensors (max 6)
* Dallas DS18B20 Sensors
* Temperature sensors
* Dallas DS18B20 Sensors (digital)
* Search for connected sensors based on OneWire addresses
* PT100 and PT1000 sensors
* PT100 and PT1000 sensors (analog)
* MAX31865 Amplifyer
* MQTTDevice32 supports max 6 sensors
* MQTTDevice4 supports max 3 sensors
* Actors (max 15)
* GPIO selection
* used GPIOs are hidden
* Inverted GPIO
* Power Percentage: values ​​between 0 and 100% are sent. MQTTDevice "pulses" with a cycle of 1000ms
* inverted GPIO
* PWM values ​​between 0 and 100% are sent. MQTTDevice "pulses" with a cycle of 1000ms
* MQTTDevice32 supports up to 15 actors
* MQTTDevice4 supports 10 actors
* Induction hob
* induction hob GGM IDS2 can be controlled directly
* Nextion HMI Touchdisplay support (optional)
* Nextion HMI Touchdisplay support
* Audio signals Piezo Buzzer
* WebUpdate firmware
* mDNS support
* Event handling
Expand Down
Binary file added docs/img/backup.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/img/explorer.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/induction.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/misc.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/mqtt.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/mqttAktor.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/mqttAktor2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/img/mqttInduction.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/mqttSensor.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/mqttSensor2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/sensor_calibration.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/img/startseite.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
33 changes: 6 additions & 27 deletions docs/installation.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,13 @@
# Installation

The installation is divided into three steps:
While installation of MQTTDevice is very easy you need some prerequisite.

1. Installation of RaspberryPi and CraftbeerPi4
2. Installation MQTT Broker
3. Installation MQTTDevice
## Prerequisite

The installation and configuration of CraftbeerPi4 is described here: <https://openbrewing.gitbook.io/craftbeerpi4_support/master/server-installation>
You will need version 4.0.1.11 or above. Earlier versions do not support MQTT actors.
1. CraftbeerPi4

The installation and configuration of RaspberryPi is available in many good instructions on the internet.
The installation and configuration of CraftbeerPi4 is described here: <https://openbrewing.gitbook.io/craftbeerpi4_support/master/server-installation>. Version 4.0.1.11 or above is required. Earlier versions do not support MQTT actors.

The communication between CraftbeerPi and MQTTDevice takes place via WLAN. Sensors send temperature values ​​to CraftbeerPi and CraftbeerPi sends commands to actors (e.g. switch agitator on / off). The MQTT protocol is used for this communication. The MQTT protocol requires a MQTT broker.
2. MQTT Broker

The MQTT sensor "Induction temperature" and the MQTT actor "Agitator" are now created on the MQTTdevice with the identical CBPi4 topics:

![mqttSensor2](img/mqttSensor2.jpg)

![mqttAktor2](img/mqttAktor2.jpg)

The sensor or actor name can be different. These steps complete the exemplary installation and configuration of MQTT sensors and actors. Up to 6 sensors and 8 actors can be set up per MQTT device. (Almost) any number of MQTT devices can be connected to CraftbeerPi via MQTT. Three MQTT devices are used very often:

MQTTDevice 1: Mash tun with temperature sensors and agitator.

MQTTDevice 2: HLT with temperature sensors, pumps and valves etc.

MQTTDevice 3: Fermenter with temperature sensors, an actor for heating and an actor for cooling

Any combination is possible. Because the MQTT communication is implemented via topics, a temperature sensor and an induction hob for a CraftbeerPi Kettle do not have to be configured on the same MQTTDeivce.

![induction](img/induction.jpg)

The picture above is an example on how to configure an induction hob GGM IDS2. Do not reduce fan run on after power off below 120sec: savely cool down induction hob after mash or boil. GPIOs D5, D6 and D7 are highly recommended. Check ESP8266 manual for further information about GPIO states (High/Low) on startup.
The MQTT protocol is used for communication between CraftbeerPi and MQTTDevice. Sensors send temperature values ​​to CraftbeerPi and CraftbeerPi sends commands to actors (e.g. switch agitator on / off). The MQTT protocol requires a MQTT broker. Please follow the instructions on craftbeerpi gitbook to install and configure a MQTT broker like mosquitto.
8 changes: 4 additions & 4 deletions docs/readme.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
# MQTTDevice

MQTTDevice is an Arduino sketch for the ESP32 Wemos D1 mini modules. MMQTTDevice enables sensors, actors and an induction hob GGM IDS2 to be communicate via WLAN and MQTT with [CraftBeerPi V4](https://github.com/avollkopf/craftbeerpi4).
MQTTDevice is an Arduino sketch for ESP32 and ESP8266 Wemos D1 mini modules. MQTTDevice enables communication between sensors, actors and an induction hob GGM IDS2 via WLAN and MQTT with [CraftBeerPi V4](https://github.com/avollkopf/craftbeerpi4).

The instructions on MQTTDevice gitbook apply to both modules, ESP32 and ESP8266. MQTTDevice32 offers more GPIOs and a faster CPU than MQTTDevice4. Please note some syntax differences when flashing firmware.
The instructions on MQTTDevice gitbook apply to both modules, ESP32 and ESP8266. MQTTDevice32 supports more actors, more sensors and a faster dual core CPU than MQTTDevice4. Please note some syntax differences when flashing firmware.

Please support the MQTTDevice project and expand this short manual, FAQs, languages etc.
Please support the MQTTDevice project and expand this short manual, FAQs, languages files etc.

![Web Interface](img/startseite.jpg)

## 🗺️ Multilingual

MQTTDevice supports different languages. Each language has its own language file. The language files in JSON format are stored in the data folder.

_Supported the project and translate MQTTDevice into a new language or corrected existing language files!_
_Supported the project and translate MQTTDevice into a new language or extend existing language files!_

## 💠 GPIO mapping ESP32

Expand Down
13 changes: 13 additions & 0 deletions docs/setup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Setup sensors and actors

The MQTT sensor "mash tun temperature" and the MQTT actors "mash tun induction" and "mash tun agitator" are now created on the MQTTdevice with exactly the same CBPi4 topics:

![MQTT sensor](img/mqttSensor2.jpg)

![MQTT actor](img/mqttAktor2.jpg)

![MQTT induction](img/induction.jpg)

_Note: sensor and actor names can be different between CBPi4 and MQTTDevice, but MQTT topics must be exactly equal. MQTT topics are case sensitive._

The picture MQTT induction is an example on how to configure the induction hob GGM IDS2. GPIOs D5, D6 and D7 are recommended.

0 comments on commit 1c5c3f9

Please sign in to comment.