style: added docs

This commit is contained in:
aZholtikov committed 2026-11-04 09:12:31 +03:00
1 parent b8aa3a594d
commit b9fc3a6f41
17 files changed
+824 -244

No files matched your search

+21 -11
View File
@@ -1,21 +1,31 @@
# Universal Optical 2-Channel Angle Gauge / Tachometer
## Tested on
## Features
1. [ESP32 ESP-IDF v5.5.3](https://docs.espressif.com/projects/esp-idf/en/v5.5.3/esp32/index.html)
1. Two independent measuring channels for optical encoders with 3600 pulses per revolution.
2. Four operating modes selected through the on-device menu: angle/angle, tacho/tacho, angle/tacho and remote.
3. Angle measurement with 0.1 degree resolution and resettable current angle value.
4. Rotational speed measurement in RPM with 100 ms refresh period.
5. 16x2 LCD display on PCF8574 I2C expander with boot animation, progress bar and live value updates.
6. Rotary encoder menu for mode switching and push-button long press for angle reset.
7. WiFi access point and station modes running simultaneously.
8. Over-the-Air firmware updates through the built-in web server with rollback self-check.
9. Remote syslog logging of task stack usage and driver error counters after station connection.
10. FreeRTOS multitasking with separate tasks for each channel, encoder, LCD expander and statistics.
## SAST Tools
## Attention
[PVS-Studio](https://pvs-studio.com/pvs-studio/?utm_source=website&utm_medium=github&utm_campaign=open_source) - static analyzer for C, C++, C#, and Java code.
1. Remote mode via ESP-NOW is not implemented yet.
2. WiFi station credentials are hardcoded in the firmware configuration.
3. Long press of the encoder button resets the angle value, short press switches the menu mode.
4. The GPIO pin mapping matches the ATE0005 board connectors and must not be changed without a hardware revision.
## Build and flash
## Using
Run the following command to firmware build and flash module:
Clone and build the project:
```text
cd your_projects_folder
git clone --recurse-submodules https://github.com/aZholtikov/ate0005
```bash
git clone https://github.com/aZholtikov/ate0005
cd ate0005
idf.py build
idf.py flash
build
```