Updates to docs
This commit is contained in:
parent
5ac1ead5b9
commit
4c7182a6d6
@ -148,7 +148,7 @@ build_flags =
|
|||||||
-DCORE_DEBUG_LEVEL=0
|
-DCORE_DEBUG_LEVEL=0
|
||||||
-DESP32C3
|
-DESP32C3
|
||||||
-DARDUINO_ESP32C3_DEV
|
-DARDUINO_ESP32C3_DEV
|
||||||
-DUSE_SERIAL_PINS # Use the TX/RX pins for the serial port
|
#-DUSE_SERIAL_PINS # Use the TX/RX pins for the serial port
|
||||||
lib_deps =
|
lib_deps =
|
||||||
${common_env_data.lib_deps}
|
${common_env_data.lib_deps}
|
||||||
${common_env_data.lib_deps32}
|
${common_env_data.lib_deps32}
|
||||||
@ -181,7 +181,7 @@ build_flags =
|
|||||||
-DCORE_DEBUG_LEVEL=0
|
-DCORE_DEBUG_LEVEL=0
|
||||||
-DESP32S2
|
-DESP32S2
|
||||||
-DARDUINO_ESP32S2_DEV
|
-DARDUINO_ESP32S2_DEV
|
||||||
-DUSE_SERIAL_PINS # Use the TX/RX pins for the serial port
|
#-DUSE_SERIAL_PINS # Use the TX/RX pins for the serial port
|
||||||
lib_deps =
|
lib_deps =
|
||||||
${common_env_data.lib_deps}
|
${common_env_data.lib_deps}
|
||||||
lib_ignore =
|
lib_ignore =
|
||||||
@ -226,7 +226,7 @@ build_flags =
|
|||||||
-DCORE_DEBUG_LEVEL=5
|
-DCORE_DEBUG_LEVEL=5
|
||||||
-DJTAG_DEBUG
|
-DJTAG_DEBUG
|
||||||
-DESP32C3
|
-DESP32C3
|
||||||
-DUSE_SERIAL_PINS # Use the TX/RX pins for the serial port
|
#-DUSE_SERIAL_PINS # Use the TX/RX pins for the serial port
|
||||||
-DARDUINO_ESP32C3_DEV
|
-DARDUINO_ESP32C3_DEV
|
||||||
-DCOLLECT_PERFDATA # Collect runtime data for a few defined methods to measure time, dumped to serial and/or influxdb
|
-DCOLLECT_PERFDATA # Collect runtime data for a few defined methods to measure time, dumped to serial and/or influxdb
|
||||||
lib_deps =
|
lib_deps =
|
||||||
|
@ -37,6 +37,26 @@ In the platformio config there are 3 targets defined
|
|||||||
The debug target can be unstable and crash the device under certain circumstanses. Excessive logging to the serial port can cause corruption and crashes.
|
The debug target can be unstable and crash the device under certain circumstanses. Excessive logging to the serial port can cause corruption and crashes.
|
||||||
So only enable enough debugging to troubleshoot your changes.
|
So only enable enough debugging to troubleshoot your changes.
|
||||||
|
|
||||||
|
Serial debugging on battery
|
||||||
|
===========================
|
||||||
|
|
||||||
|
.. image:: images/serial.png
|
||||||
|
:width: 600
|
||||||
|
:alt: Serial output
|
||||||
|
|
||||||
|
On the ESP32 builds the serial output can be written to UART0 which is connected to the RX/TX pins on the chip. This way the serial output can be viewed
|
||||||
|
without a connection to the USB port, convinient when running the device on battery power. In order to get this to work you need to compile the sofware
|
||||||
|
with the option **DUSE_SERIAL_PINS** and attach as USB to TTL cable to the correct pins.
|
||||||
|
|
||||||
|
You connect the USB to TTL cable that you connect the TX, RX and GND pins. **Dont connect the power pin** if you are powering the device from USB or Battery.
|
||||||
|
|
||||||
|
.. image:: images/usb-ttl.jpg
|
||||||
|
:width: 300
|
||||||
|
:alt: USB to TTL cable
|
||||||
|
|
||||||
|
.. image:: images/serial_esp32c3.jpg
|
||||||
|
:width: 300
|
||||||
|
:alt: Serial output ESP32c3
|
||||||
|
|
||||||
Source structure
|
Source structure
|
||||||
================
|
================
|
||||||
@ -92,4 +112,6 @@ This is a list of C++ defines that is used to enable/disable functions in the co
|
|||||||
- Password to the SSID
|
- Password to the SSID
|
||||||
* - CFG_APPVER
|
* - CFG_APPVER
|
||||||
- Defines the version of the compiled software
|
- Defines the version of the compiled software
|
||||||
|
* - USE_SERIAL_PINS
|
||||||
|
- Will send the serial console to the TX/RX pins on an ESP32 target so that debugging can be done when on battery
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ One of the following conditions will place the device in ``configuration mode``:
|
|||||||
- Gyro has not been calibrated
|
- Gyro has not been calibrated
|
||||||
- Sleep mode has been disabled in the web interface
|
- Sleep mode has been disabled in the web interface
|
||||||
- Placed in horizontal mode 85-90 degrees
|
- Placed in horizontal mode 85-90 degrees
|
||||||
- Charger connected >4.15V
|
- Charger connected >4.15V (or the value that is configured)
|
||||||
|
|
||||||
|
|
||||||
Status
|
Status
|
||||||
@ -39,7 +39,7 @@ connection. It will show 0 if data has not been collected yet.
|
|||||||
|
|
||||||
The button `view error log` will show the last error messages on the device. This can be useful for checking errors without
|
The button `view error log` will show the last error messages on the device. This can be useful for checking errors without
|
||||||
the need to connect to the serial port or to check what errors has occurred while in `gravity mode`. From v1.1 it will also detect
|
the need to connect to the serial port or to check what errors has occurred while in `gravity mode`. From v1.1 it will also detect
|
||||||
any abnormal restarts or crashes and record these in the logfile.
|
any abnormal restarts or crashes and record these in the logfile (this applies to esp8266 only).
|
||||||
|
|
||||||
|
|
||||||
Configuration
|
Configuration
|
||||||
|
@ -7,53 +7,14 @@ Welcome to GravityMon
|
|||||||
#####################
|
#####################
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
This documentation reflects **v1.2 - beta 1**. Last updated 2022-10-22
|
This documentation reflects **v1.2 - beta 1**. Last updated 2022-11-04
|
||||||
|
|
||||||
User interface overview
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
This animation shows how the user interface is structured, it reflects an older version but the structure is the same.
|
|
||||||
|
|
||||||
.. image:: images/gravitymon.gif
|
|
||||||
:width: 800
|
|
||||||
:alt: User Inteface Walkthrough
|
|
||||||
|
|
||||||
.. _main_features:
|
|
||||||
|
|
||||||
Main features
|
|
||||||
-------------
|
|
||||||
|
|
||||||
* Support either an ESP8266-d1-mini, ESP32-mini, ESP32S2-mini or ESP32C3-mini board (see :ref:`hardware`)
|
|
||||||
* Operates in two modes gravity monitoring and configuration mode
|
|
||||||
* Gravity mode is comparable to how the iSpindle works when collecting data
|
|
||||||
* Configuration mode has a modern HTML5 based web UI. No need to start the access point to change settings
|
|
||||||
* Offloading some of the functionality to run in the web browser, this allows for more advanced features.
|
|
||||||
* REST API to enable scripted configuration
|
|
||||||
* Send data to multiple endpoints and services at once (2xHTTP POST, HTTP GET, MQTT, INFLUXDB2)
|
|
||||||
* Directly test all endpoints from user interface with feedback to simplify troubleshooting
|
|
||||||
* Complete format customization for all endpoints using templates (don't really need to change the software to support new services)
|
|
||||||
* Setup guides for how to send data to many popular services. Currently 10+ are documented
|
|
||||||
* Automatic temperature adjustment of gravity (just tick a checkbox)
|
|
||||||
* OTA support from webserver
|
|
||||||
* Firmware update via web interface
|
|
||||||
* Built in function to create gravity formulas, no need for additional software, just enter tilt/gravity and let GravityMon creates a formula
|
|
||||||
* Visual graph showing how formula will be interpreted based on entered values
|
|
||||||
* Using the temperature sensor in gyro instead of DS18B20 (faster)
|
|
||||||
* SSL support in all endpoints (no certificate validation due to limitations on esp8266).
|
|
||||||
* Built in performance measurements (used to optimize code)
|
|
||||||
* Storage mode when placed on cap (indefinite sleep)
|
|
||||||
* Customize various hardware parameters to optimize device functionality.
|
|
||||||
|
|
||||||
For a complete breakdown see the :ref:`functionality`
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
If you are missing some feature, please reach out on `Github <https://github.com/mp-se/gravitymon/discussions>`_ or `homebrewtalk.com <https://www.homebrewtalk.com/threads/replacement-firmware-for-ispindel-gravitymon.698058/>`_
|
|
||||||
|
|
||||||
What is GravityMon?
|
What is GravityMon?
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
GravityMon is used to measure gravity and temperature during fermentation of beer and report the progress. The graph below is
|
GravityMon is a electronic hydrometer software that can be used to measure gravity and temperature during fermentation of beer and report the progress to a number of external
|
||||||
an example on how the fermentation process can be tracked. The graph has been rendered using Fermentrack.
|
services. Is uses a gyro to measure the gravity since there is a correlation between gravity an the density of the fluid. Based on the density the hydrometer will float at a different angle.
|
||||||
|
The graph below is an example on how the fermentation process can be tracked. The graph has been rendered using Fermentrack.
|
||||||
|
|
||||||
.. image:: images/fermentation.png
|
.. image:: images/fermentation.png
|
||||||
:width: 500
|
:width: 500
|
||||||
@ -61,10 +22,11 @@ an example on how the fermentation process can be tracked. The graph has been re
|
|||||||
|
|
||||||
GravityMon is a replacement firmware for the iSpindle and uses the same hardware configuration and is 100% compatible. It
|
GravityMon is a replacement firmware for the iSpindle and uses the same hardware configuration and is 100% compatible. It
|
||||||
implements a lot of the features that has been requested in the original iSpindle project but never implemented for
|
implements a lot of the features that has been requested in the original iSpindle project but never implemented for
|
||||||
various reasons. Here is a list of :ref:`main_features`.
|
various reasons.
|
||||||
|
|
||||||
From v0.9 the firmware also supports a iSpindle built using an ESP32 d1 mini (pin compatible with esp8266). Currently this is an experimental
|
The firmware also supports a iSpindle built using an ESP32 which is pin compatible with esp8266, currently there are 3 options that are
|
||||||
version but since it has more memory and processing capacity it could support more functions. See :ref:`hardware`.
|
supported ESP32-D1 mini, ESP32-C3 mini and ESP32-S2 mini. See :ref:`hardware`. The more modern hardware will allow better support for SSL and
|
||||||
|
other memory intensive functions.
|
||||||
|
|
||||||
I started GravityMon because I like to create software and wanted to do some microcontroller programming. I had done a few
|
I started GravityMon because I like to create software and wanted to do some microcontroller programming. I had done a few
|
||||||
projects based on esp8266 and also started to brew beer so this combination was quite natural.
|
projects based on esp8266 and also started to brew beer so this combination was quite natural.
|
||||||
@ -82,13 +44,14 @@ The github repository can be found here; `GravityMon on Github <https://github.c
|
|||||||
|
|
||||||
I have tested this software on 40+ brews with good results.
|
I have tested this software on 40+ brews with good results.
|
||||||
|
|
||||||
|
User interface overview
|
||||||
|
-----------------------
|
||||||
|
|
||||||
Documentation for older versions
|
This animation shows how the features of the user interface. It's for an older version but the main features are the same.
|
||||||
--------------------------------
|
|
||||||
|
|
||||||
* Docs for: `v1.0 <https://mp-se.github.io/gravitymon/v1.0/index.html>`_
|
|
||||||
* Docs for: `v0.9 <https://mp-se.github.io/gravitymon/v0.9/index.html>`_
|
|
||||||
|
|
||||||
|
.. image:: images/gravitymon.gif
|
||||||
|
:width: 800
|
||||||
|
:alt: User Inteface Walkthrough
|
||||||
|
|
||||||
Software architecture
|
Software architecture
|
||||||
---------------------
|
---------------------
|
||||||
@ -174,13 +137,12 @@ the following libraries and without these this would have been much more difficu
|
|||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
:caption: Contents:
|
:caption: Contents:
|
||||||
|
|
||||||
intro
|
|
||||||
releases
|
|
||||||
functionality
|
functionality
|
||||||
|
intro
|
||||||
installation
|
installation
|
||||||
configuration
|
configuration
|
||||||
troubleshooting
|
releases
|
||||||
q_and_a
|
hardware
|
||||||
formula
|
formula
|
||||||
services
|
services
|
||||||
advanced
|
advanced
|
||||||
@ -188,8 +150,9 @@ the following libraries and without these this would have been much more difficu
|
|||||||
data
|
data
|
||||||
compiling
|
compiling
|
||||||
contributing
|
contributing
|
||||||
hardware
|
|
||||||
license
|
license
|
||||||
|
troubleshooting
|
||||||
|
q_and_a
|
||||||
|
|
||||||
Indices and tables
|
Indices and tables
|
||||||
==================
|
==================
|
||||||
|
@ -113,23 +113,6 @@ Serial Monitoring
|
|||||||
To check output from the device (logs) there are several tools out there. I found this simple tool in the Windows Store called ``Serial Port Monitoring``.
|
To check output from the device (logs) there are several tools out there. I found this simple tool in the Windows Store called ``Serial Port Monitoring``.
|
||||||
Just select a baud rate of 115200, 8N1.
|
Just select a baud rate of 115200, 8N1.
|
||||||
|
|
||||||
.. image:: images/serial.png
|
|
||||||
:width: 600
|
|
||||||
:alt: Serial output
|
|
||||||
|
|
||||||
On the build for ESP32C3 and ESP32S2 the serial output is written to UART0 which is connected to the RX/TX pins on the chip. This way the serial output can be viewed
|
|
||||||
without a connection to the USB port, convinient when running the device on battery power.
|
|
||||||
|
|
||||||
You need a USB to TTL cable that you connect the TX, RX and GND pins. **Dont connect the power pin** if you are powering the device from USB or Battery.
|
|
||||||
|
|
||||||
.. image:: images/usb-ttl.jpg
|
|
||||||
:width: 300
|
|
||||||
:alt: USB to TTL cable
|
|
||||||
|
|
||||||
.. image:: images/serial_esp32c3.jpg
|
|
||||||
:width: 300
|
|
||||||
:alt: Serial output ESP32c3
|
|
||||||
|
|
||||||
.. _setup_wifi:
|
.. _setup_wifi:
|
||||||
|
|
||||||
Configuring WIFI
|
Configuring WIFI
|
||||||
|
@ -3,19 +3,15 @@
|
|||||||
Releases
|
Releases
|
||||||
########
|
########
|
||||||
|
|
||||||
v1.2.0 - beta2
|
|
||||||
==============
|
|
||||||
|
|
||||||
Features
|
|
||||||
++++++++
|
|
||||||
* Added support for the ESP32 S2 mini board
|
|
||||||
|
|
||||||
v1.2.0 - beta1
|
v1.2.0 - beta1
|
||||||
==============
|
==============
|
||||||
|
|
||||||
|
* Changes to 1.2.0 only affect the ESP32 hardware, the ESP8266 is the same as for v1.1.1
|
||||||
|
|
||||||
Features
|
Features
|
||||||
++++++++
|
++++++++
|
||||||
* Added support for the ESP32 C3 mini board
|
* Added support for the ESP32 C3 mini board
|
||||||
|
* Added support for the ESP32 S2 mini board
|
||||||
* Serial output is written to TX/RX pins instead of the USB connection for the ESP32c3. This way the serial console can be viewed when running on battery power.
|
* Serial output is written to TX/RX pins instead of the USB connection for the ESP32c3. This way the serial console can be viewed when running on battery power.
|
||||||
|
|
||||||
Issues adressed
|
Issues adressed
|
||||||
|
Loading…
Reference in New Issue
Block a user