gravitymon/docs/index.html
2022-01-08 15:37:55 +00:00

236 lines
13 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Welcome to GravityMons documentation! &mdash; GravityMon 0.5.0 documentation</title><link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<!--[if lt IE 9]>
<script src="_static/js/html5shiv.min.js"></script>
<![endif]-->
<script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/doctools.js"></script>
<script src="_static/language_data.js"></script>
<script src="_static/js/theme.js"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Releases" href="releases.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="#" class="icon icon-home"> GravityMon
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<p class="caption"><span class="caption-text">Contents:</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="releases.html">Releases</a></li>
<li class="toctree-l1"><a class="reference internal" href="functionallity.html">Functionallity</a></li>
<li class="toctree-l1"><a class="reference internal" href="installation.html">Installation</a></li>
<li class="toctree-l1"><a class="reference internal" href="configuration.html">Configuration</a></li>
<li class="toctree-l1"><a class="reference internal" href="compiling.html">Compiling the software</a></li>
<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing</a></li>
<li class="toctree-l1"><a class="reference internal" href="backlog.html">Backlog of changes</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="#">GravityMon</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="#" class="icon icon-home"></a> &raquo;</li>
<li>Welcome to GravityMons documentation!</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/index.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="welcome-to-gravitymon-s-documentation">
<h1>Welcome to GravityMons documentation!<a class="headerlink" href="#welcome-to-gravitymon-s-documentation" title="Permalink to this headline"></a></h1>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>Preliminary documentation. This is work in progress. This documentation reflects <strong>v0.5</strong></p>
</div>
<p>GravityMon is a replacement firmare for the iSpindle hardware. Its used to measure gravity in beer and show the progress
of fermentation.</p>
<p>For more information on this topic and function please visit <a class="reference external" href="https://www.ispindel.de">https://www.ispindel.de</a>.</p>
<p>I started GravityMon because i like to create software and wanted to do some low level programming. I had done a few
projects based on esp8266 and also started to brew beer so this combination was quite natural.</p>
<p>The hardware design comes from the fantastic iSpindle project so that is not covered in this documentation.</p>
<p>My approach to this software is a little different from that the original ispindle firmware. The github repository can
be found here; <a class="reference external" href="https://github.com/mp-se/gravitymon">https://github.com/mp-se/gravitymon</a></p>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>This software is in the early stages even though its more than one year old so if you find issues, please
open a ticket on github.</p>
<p>I dont take responsibility for any errors that can cause problems with the use. I have tested v0.4 on 5+ brews
over the last 6 months without any issues.</p>
</div>
<div class="section" id="the-main-differences">
<h2>The main differences:<a class="headerlink" href="#the-main-differences" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li><p>Operates in two modes <cite>gravity monitoring</cite> and <cite>configuration mode</cite></p></li>
<li><p>Send data to multiple endpoints when pushing data.</p></li>
<li><p>Automatic temperature adjustment of gravity reading</p></li>
<li><p>OTA support from local webserver</p></li>
<li><p>Build in function to create gravity formulas (<em>New in v0.5</em>)</p></li>
</ul>
<p>There are also a experimental features such as:</p>
<ul class="simple">
<li><p>Using the temperature sensor in gyro instead of DS18B20 (faster)</p></li>
<li><p>Performance measurements (used to optimise code)</p></li>
</ul>
<p><strong>For a complete breakdown see the functionallity section.</strong></p>
</div>
<div class="section" id="credits-to">
<h2>Credits to<a class="headerlink" href="#credits-to" title="Permalink to this headline"></a></h2>
<p>This software uses the following libraries and without these this would have been much more difficult to acheive:</p>
<ul>
<li><p><a class="reference external" href="https://github.com/jrowberg/i2cdevlib.git">https://github.com/jrowberg/i2cdevlib.git</a></p>
<p>This library contains the basic code to interact with the gyro + many more chips.</p>
</li>
<li><p><a class="reference external" href="https://github.com/codeplea/tinyexpr">https://github.com/codeplea/tinyexpr</a></p>
<p>Proccess the gravity formula and calculate the gravity and various corrections.</p>
</li>
<li><p><a class="reference external" href="https://github.com/graphitemaster/incbin">https://github.com/graphitemaster/incbin</a></p>
<p>Include binary files into the code, used to service html files.</p>
</li>
<li><p><a class="reference external" href="https://github.com/khoih-prog/ESP_DoubleResetDetector">https://github.com/khoih-prog/ESP_DoubleResetDetector</a></p>
<p>Can detect if the reset button is pressed twice, is used to enter WIFI config mode.</p>
</li>
<li><p><a class="reference external" href="https://github.com/tzapu/WiFiManager">https://github.com/tzapu/WiFiManager</a></p>
<p>Configure wifi settings.</p>
</li>
<li><p><a class="reference external" href="https://github.com/thijse/Arduino-Log">https://github.com/thijse/Arduino-Log</a></p>
<p>Logging library for handling different loglevels and configure what sent over the serial.</p>
</li>
<li><p><a class="reference external" href="https://github.com/bblanchon/ArduinoJson">https://github.com/bblanchon/ArduinoJson</a></p>
<p>Json parser/creator used in configuration files and APIs</p>
</li>
<li><p><a class="reference external" href="https://github.com/PaulStoffregen/OneWire">https://github.com/PaulStoffregen/OneWire</a></p>
<p>Communication library used for interacting with temperature sensor.</p>
</li>
<li><p><a class="reference external" href="https://github.com/milesburton/Arduino-Temperature-Control-Library">https://github.com/milesburton/Arduino-Temperature-Control-Library</a></p>
<p>Interaction with the DS18B20 sensor</p>
</li>
<li><p><a class="reference external" href="https://github.com/Rotario/arduinoCurveFitting">https://github.com/Rotario/arduinoCurveFitting</a></p>
<p>Create the gravity formula.</p>
</li>
<li><p><a class="reference external" href="https://graphjs.com/">https://graphjs.com/</a></p>
<p>Render the graphs in the UI.</p>
</li>
<li><p><a class="reference external" href="https://getbootstrap.com/">https://getbootstrap.com/</a></p>
<p>CSS templates for the web page.</p>
</li>
</ul>
<div class="toctree-wrapper compound">
<p class="caption"><span class="caption-text">Contents:</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="releases.html">Releases</a><ul>
<li class="toctree-l2"><a class="reference internal" href="releases.html#v0-5-0-beta">v0.5.0 (beta)</a></li>
<li class="toctree-l2"><a class="reference internal" href="releases.html#v0-4-0">v0.4.0</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="functionallity.html">Functionallity</a><ul>
<li class="toctree-l2"><a class="reference internal" href="functionallity.html#the-main-differences">The main differences</a></li>
<li class="toctree-l2"><a class="reference internal" href="functionallity.html#other-features">Other features</a></li>
<li class="toctree-l2"><a class="reference internal" href="functionallity.html#experimental-features">Experimental features</a></li>
<li class="toctree-l2"><a class="reference internal" href="functionallity.html#typical-performance">Typical performance</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="installation.html">Installation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="installation.html#official-esptool">Official esptool</a></li>
<li class="toctree-l2"><a class="reference internal" href="installation.html#configuring-wifi">Configuring WIFI</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="configuration.html">Configuration</a><ul>
<li class="toctree-l2"><a class="reference internal" href="configuration.html#status">Status</a></li>
<li class="toctree-l2"><a class="reference internal" href="configuration.html#device">Device</a></li>
<li class="toctree-l2"><a class="reference internal" href="configuration.html#id1">Configuration</a></li>
<li class="toctree-l2"><a class="reference internal" href="configuration.html#create-formula">Create formula</a></li>
<li class="toctree-l2"><a class="reference internal" href="configuration.html#rest-api">REST API</a></li>
<li class="toctree-l2"><a class="reference internal" href="configuration.html#data-formats">Data Formats</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="compiling.html">Compiling the software</a><ul>
<li class="toctree-l2"><a class="reference internal" href="compiling.html#tools">Tools</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiling.html#code-formatting">Code Formatting</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiling.html#targets">Targets</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiling.html#source-structure">Source structure</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiling.html#options">Options</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing</a></li>
<li class="toctree-l1"><a class="reference internal" href="backlog.html">Backlog of changes</a><ul>
<li class="toctree-l2"><a class="reference internal" href="backlog.html#documentation">Documentation</a></li>
<li class="toctree-l2"><a class="reference internal" href="backlog.html#code">Code</a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="indices-and-tables">
<h3>Indices and tables<a class="headerlink" href="#indices-and-tables" title="Permalink to this headline"></a></h3>
<ul class="simple">
<li><p><a class="reference internal" href="genindex.html"><span class="std std-ref">Index</span></a></p></li>
<li><p><a class="reference internal" href="py-modindex.html"><span class="std std-ref">Module Index</span></a></p></li>
<li><p><a class="reference internal" href="search.html"><span class="std std-ref">Search Page</span></a></p></li>
</ul>
</div>
</div>
</div>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="releases.html" class="btn btn-neutral float-right" title="Releases" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2021-2022, Magnus Persson.</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>