Sen descrición

Frank Haverland f62f844134 remove html-from-11.3.1 in release (#1565) %!s(int64=3) %!d(string=hai) anos
.github f62f844134 remove html-from-11.3.1 in release (#1565) %!s(int64=3) %!d(string=hai) anos
code 434e268d42 add sensor status, show special index/setup page in case of a critical error (#1560) %!s(int64=3) %!d(string=hai) anos
docs 149e8f0845 Update Webinstaller to v13.0.7 %!s(int64=3) %!d(string=hai) anos
firmware 228a87038e Link to the installtion guide in firmware-Readme. It will packed into the initial-setup.zip %!s(int64=3) %!d(string=hai) anos
images 3fc6c194e5 updated main landing page %!s(int64=3) %!d(string=hai) anos
releases edf9f11048 Update Webinstaller %!s(int64=3) %!d(string=hai) anos
sd-card 6863e637aa show uptime on overview page, moved labels from firmware to Web UI (#1543) %!s(int64=3) %!d(string=hai) anos
tools 62ec8d76c6 Update LogDownloader %!s(int64=3) %!d(string=hai) anos
.gitignore d11ee2a4cf Rolling 20220925 %!s(int64=3) %!d(string=hai) anos
.gitmodules fc4f3eebb6 fixed rebase conflicts %!s(int64=3) %!d(string=hai) anos
Changelog.md 5e101f80b4 Update Changelog.md %!s(int64=3) %!d(string=hai) anos
FeatureRequest.md 9335cd73d5 Merge branch 'master' into rolling %!s(int64=3) %!d(string=hai) anos
README.md 72fcd791db Update README.md (#1349) %!s(int64=3) %!d(string=hai) anos

README.md

Welcome to the AI-on-the-edge-device

Artificial intelligence based systems have been established in our every days live. Just think of speech or image recognition. Most of the systems relay on either powerful processors or a direct connection to the cloud for doing the calculations up there. With the increasing power of modern processors the AI systems are coming closer to the end user - which is usually called edge computing. Here this edge computing is brought into a practical oriented example, where a AI network is implemented on a ESP32 device so: AI on the edge.

This projects allows you to digitalize your analoge water, gas, power and other meters using cheap and easily available hardware.

All you need is an ESP32 board with a supported camera and a bit of a practical hand.

Key features

  • Small and cheap device (3x4.5x2 cm³, < 10 EUR)
  • camera and illumination integrated
  • Web surface for administration and control
  • OTA-Interface to update directly through the web interface
  • API for easy integration
  • Inline Image processing (feature detection, alignment, ROI extraction)
  • Tensorflow Lite (TFlite) integration - including easy to use wrapper

Workflow

The device takes a photo of your meter at a defined interval. It then extracts the Regions of Interest (ROI's) out of it and runs them through an artificial inteligence. As a result, you get the digitalized value of your meter.

There are several options what to do with that value. Either send it to a MQTT broker, write it to an InfluxDb or simply provide it throug a REST API.

Impressions

AI-on-the-edge-device on a Water Meter

Web Interface (Water Meter)

AI-on-the-edge-device on a Electrical Power Meter

Setup

There is a growing wiki which provides you with a lot of information. Head there to get a start, set it up and configure it.

There are also a articles in the German Heise magazine "make:" about the setup and the technical background (behind a paywall) : DIY - Setup

For further background information, head to Neural Networks, Training Neural Networks and Programming on the ESP32

Download

The latest available version is available on the Releases page.

Flashing of the ESP32

Initially you will have to flash the ESP32 through an USB connection. Later an update is possible directly over the Air (OTA).

There are different ways to flash your ESP32:

  • Web Installer and Console (Webbrowser based tool to flash the ESP32 and extract the Log over USB)
  • Flash Tool from Espressif
  • ESPtool (Command Line Tool)

See the Wiki for more information.

Casing

A 3d-printable housing can be found here:

Build it yourself

See Build Instructions.

Donate

If you would like to support the developer with a cup of coffee you can do that via Paypal.

If you have any technical topics, you can create an Issue.

In other cases you can contact the developer via email:

Changes and History

See Changelog

Tools

Additional Ideas

There are some ideas and feature requests which are not followed currently - mainly due to capacity reasons on side of the developer. They are collected here: FeatureRequest.md