Files
AI-on-the-edge-device-docs/ota/index.html
2023-09-16 20:45:01 +00:00

271 lines
14 KiB
HTML

<!DOCTYPE html>
<html class="writer-html5" lang="en">
<head>
<meta charset="utf-8"/>
<meta content="IE=edge" http-equiv="X-UA-Compatible"/>
<meta content="width=device-width, initial-scale=1.0" name="viewport"/><link href="https://jomjol.github.io/AI-on-the-edge-device-docs/ota/" rel="canonical"/>
<link href="../img/favicon.ico" rel="shortcut icon"/>
<title>Over-The-Air (OTA) Update - AI on the Edge Device</title>
<link href="../css/theme.css" rel="stylesheet"/>
<link href="../css/theme_extra.css" rel="stylesheet"/>
<link href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/github.min.css" rel="stylesheet"/>
<script>
// Current page data
var mkdocs_page_name = "Over-The-Air (OTA) Update";
var mkdocs_page_input_path = "ota.md";
var mkdocs_page_url = "/AI-on-the-edge-device-docs/ota/";
</script>
<!--[if lt IE 9]>
<script src="../js/html5shiv.min.js"></script>
<![endif]-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script>
<script>hljs.highlightAll();</script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav class="wy-nav-side stickynav" data-toggle="wy-nav-shift">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<img src="https://jomjol.github.io/AI-on-the-edge-device-docs//img/logo.png"/>
<a class="icon icon-home" href=".."> AI on the Edge Device
</a><div role="search">
<form action="../search.html" class="wy-form" id="rtd-search-form" method="get">
<input aria-label="Search docs" name="q" placeholder="Search docs" title="Type search term here" type="text"/>
</form>
</div>
</div>
<div aria-label="Navigation menu" class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation">
<p class="caption"><span class="caption-text">Getting Started</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="..">Welcome</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Installation/">Installation</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../initial-setup/">Initial Setup</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Hardware-Compatibility/">Hardware Compatibility</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Best-Practice/">Best Practice</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../FAQs/">Frequently Asked Questions</a>
</li>
</ul>
<p class="caption"><span class="caption-text">External Links</span></p>
<ul>
<li class="toctree-l1"><a class="" href="https://github.com/jomjol/AI-on-the-edge-device/releases">Releases</a>
</li>
<li class="toctree-l1"><a class="" href="https://jomjol.github.io/AI-on-the-edge-device/index.html">Web Installer/Console</a>
</li>
<li class="toctree-l1"><a class="" href="https://github.com/jomjol/AI-on-the-edge-device/issues">Create an Issue</a>
</li>
<li class="toctree-l1"><a class="" href="https://github.com/jomjol/AI-on-the-edge-device/discussions">Join a Discussion</a>
</li>
</ul>
<p class="caption"><span class="caption-text">Configuration</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../Reference-Image/">Reference Image</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Alignment/">Alignment References</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../ROI-Configuration/">ROIs (Regions of Interest)</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Configuration/">Graphical Configuration</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Choosing-the-Model/">Model Selection</a>
</li>
<li class="toctree-l1 current"><a class="reference internal current" href="./">Over-The-Air (OTA) Update</a>
<ul class="current">
<li class="toctree-l2"><a class="reference internal" href="#update-procedure">Update Procedure</a>
<ul>
<li class="toctree-l3"><a class="reference internal" href="#update-from-version-v1200-or-newer">Update from version v12.0.0 or newer</a>
</li>
<li class="toctree-l3"><a class="reference internal" href="#update-from-version-older-than-v1200">Update from version older than v12.0.0</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<p class="caption"><span class="caption-text">Advanced</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Parameters/">Parameters</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Integration-Home-Assistant/">Integration into Home Assistant</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../External-LED/">External LED</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../data-logging/">Data Logging</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../rolling-installation/">Living on the Edge</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Watermeter-specific-analog---digital-transition/">Analog/Digital Transition on Water Meters</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../collect-new-images/">Collect images to improve the models</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Learn-models-with-your-own-images/">Learn a model with your own images</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Correction%20Algorithm/">Correction Algorithm</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Neural-Network-Types/">Neural Network Types</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Additional-Information/">Additional Information</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../New-Releases-Notification/">Notification about new Releases</a>
</li>
</ul>
<p class="caption"><span class="caption-text">Troubleshooting</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Error-Codes/">Reduced webinterface (error codes)</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../StatusLED-BlinkCodes/">Board status LED (blink codes)</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../WLAN-disconnect-reason/">WLAN disconnect reasons</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Error-Debugging/">Often observed issues</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Frequent-Reboots/">Basic hardware/config issues</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Demo-Mode/">Demo mode</a>
</li>
</ul>
<p class="caption"><span class="caption-text">API's</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../REST-API/">REST API</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../MQTT-API/">MQTT API</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Influx-DB/">Influx DB</a>
</li>
</ul>
<p class="caption"><span class="caption-text">Development</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Build-Instructions/">Build the Project</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Upload-files-by-script/">Scripted File Upload</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Testing/">Testing Option for VSCode</a>
</li>
<li class="toctree-l1"><a class="reference internal" href="../Release-creation/">Preparing for Release</a>
</li>
</ul>
<p class="caption"><span class="caption-text">Old Pages (no longer maintained)</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../outdated--Integrated-Functions/">Integrated Functions</a>
</li>
</ul>
<p class="caption"><span class="caption-text">Assorted Pages</span></p>
<ul>
</ul>
</div>
</div>
</nav>
<section class="wy-nav-content-wrap" data-toggle="wy-nav-shift">
<nav aria-label="Mobile navigation menu" class="wy-nav-top" role="navigation">
<i class="fa fa-bars" data-toggle="wy-nav-top"></i>
<a href="..">AI on the Edge Device</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content"><div aria-label="breadcrumbs navigation" role="navigation">
<ul class="wy-breadcrumbs">
<li><a aria-label="Docs" class="icon icon-home" href=".."></a> »</li>
<li>Configuration »</li>
<li class="breadcrumb-item active">Over-The-Air (OTA) Update</li>
<li class="wy-breadcrumbs-aside">
<a class="icon icon-github" href="https://github.com/jomjol/AI-on-the-edge-device-docs/edit/main/docs/ota.md"> Edit on GitHub</a>
</li>
</ul>
<hr/>
</div>
<div class="document" itemscope="itemscope" itemtype="http://schema.org/Article" role="main">
<div class="section" itemprop="articleBody">
<h1 id="over-the-air-ota-update"><span class="enumerate-headings-plugin enumerate-heading-plugin">1.</span> Over-The-Air (OTA) Update</h1>
<p>You can do an OTA (over-the-air) update via the Web Interface.
Grab the firmware from the</p>
<ul>
<li><a href="https://github.com/jomjol/AI-on-the-edge-device/releases">Releases page</a> (Stable, tested versions), or the</li>
<li><a href="https://github.com/jomjol/AI-on-the-edge-device/actions?query=branch%3Arolling">Automatically build development branch</a> (experimental, untested versions). Please inform yourself on <a href="../rolling-installation">Living on the Edge</a> first!</li>
</ul>
<h2 id="update-procedure"><span class="enumerate-headings-plugin enumerate-heading-plugin">1.1</span> Update Procedure</h2>
<ol>
<li>Create a backup of your configuration. Either use the Backup/Restore function of your device for this (menu <code>System &gt; Backup/Restore</code>) or back the files manually up using the File Server (menu <code>File Server</code>, folder <code>config</code>). It is recommended to at least save the config file <code>config.ini</code>!</li>
<li>Head to the menu <code>System &gt; OTA Update</code> and follow the instructions there.</li>
</ol>
<p>If you do an update between major versions, it might be needed to modify the config file <code>config.ini</code> as it's syntax or context has changed.
To do so, go to the menu <code>Settings &gt; Configuration</code> (after the update completed and the device restarted) and check if it warns you about an unset parameter.</p>
<h3 id="update-from-version-v1200-or-newer"><span class="enumerate-headings-plugin enumerate-heading-plugin">1.1.1</span> Update from version <code>v12.0.0</code> or newer</h3>
<p>You can use the over the air update mechanism, which uploads the update via a ZIP files.</p>
<p>The update file is located on the <a href="https://github.com/jomjol/AI-on-the-edge-device/releases">release page</a>. Please choose the zip file with the following naming: <code>AI-on-the-edge-device__update__*.zip</code></p>
<p>Go to the menu <code>System --&gt; OTA Update</code> and follow the instructions there. After a final automatic reboot you should have the new version running.</p>
<h3 id="update-from-version-older-than-v1200"><span class="enumerate-headings-plugin enumerate-heading-plugin">1.1.2</span> Update from version older than <code>v12.0.0</code></h3>
<p>If you update from an version older than 12.0.1, you should firstly update to version 12.0.1. Background are not fully backward compatible changes in the <code>config.ini</code>, that are taken care of in this version.</p>
<p>‼️ <strong>Make sure to read the instructions below carefully!</strong></p>
<ol>
<li>
<p>Backup your configuration (use the <code>System -&gt; Backup/Restore</code> page)!</p>
</li>
<li>
<p>Upload and update the <code>update-*.zip</code> file from the release <strong><code>12.0.1</code></strong> <a href="https://github.com/jomjol/AI-on-the-edge-device/releases/tag/v12.0.1">see here</a> .</p>
</li>
<li>
<p>Let it restart and check on the <code>System -&gt; Info</code> page that the Firmware as well as the Web UI got updated. If only one got updated, redo the update. If it fails several times, you also can update the Firmware and the Web UI separately.</p>
</li>
<li>
<p>Safe way: </p>
<ol>
<li>Update first the <code>firmware.bin</code> (extract it from one of the provided zip files) and do the Reboot</li>
<li>Update with the full zip file (<code>update-*.zip</code>, ignore the version warning after the reboot)</li>
</ol>
</li>
<li>
<p>Please go to <code>Settings -&gt; Configuration</code> and address the changed parameters:</p>
<ul>
<li>DataLogging (storing the values for data graph)</li>
<li>Debug (extended by different debug reporting levels)</li>
</ul>
</li>
<li>
<p>Make sure it starts to do the digitalization (check the Error field on the overview page). If it does not start a round within a minute, restart the device.</p>
</li>
</ol>
<p>‼️ <strong>If the system is working now without any issues, please open the configuration editor once and save the <code>config.ini</code>. This will update the file to the newest content</strong>‼️</p>
<p>Now you can safely update to the newest version.</p>
</div>
</div><footer>
<div aria-label="Footer Navigation" class="rst-footer-buttons" role="navigation">
<a class="btn btn-neutral float-left" href="../Choosing-the-Model/" title="Model Selection"><span class="icon icon-circle-arrow-left"></span> Previous</a>
<a class="btn btn-neutral float-right" href="../Parameters/" title="Parameters">Next <span class="icon icon-circle-arrow-right"></span></a>
</div>
<hr/>
<div role="contentinfo">
<!-- Copyright etc -->
</div>
Built with <a href="https://www.mkdocs.org/">MkDocs</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>
<div aria-label="Versions" class="rst-versions" role="note">
<span class="rst-current-version" data-toggle="rst-current-version">
<span>
<a class="fa fa-github" href="https://github.com/jomjol/AI-on-the-edge-device-docs" style="color: #fcfcfc"> GitHub</a>
</span>
<span><a href="../Choosing-the-Model/" style="color: #fcfcfc">« Previous</a></span>
<span><a href="../Parameters/" style="color: #fcfcfc">Next »</a></span>
</span>
</div>
<script src="../js/jquery-3.6.0.min.js"></script>
<script>var base_url = "..";</script>
<script src="../js/theme_extra.js"></script>
<script src="../js/theme.js"></script>
<script src="../search/main.js"></script>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>