Skip to the content.

MycilaUtilities

Latest Release PlatformIO Registry

License: MIT Contributor Covenant

Build GitHub latest commit Gitpod Ready-to-Code

Utility helpers for Arduino / ESP32: PID controller, timing helpers, circular buffer, etc.

Classes and utilities

This repository includes a few focused utility classes. See docs/CLASSES.md for the full short reference; the main types are:

Mycila::PID (src/MycilaPID.h)

A compact and flexible PID controller. Key features:

PID Simulator available in examples/PIDSimulator (video link)

Full PID controller documentation is available at https://mathieu.carbou.me/MycilaUtilities/pid

Mycila::CircularBuffer<T,N> (src/MycilaCircularBuffer.h)

A fixed-size circular buffer specialized for numeric types (integers and floating point).

Mycila::ExpiringValue (src/MycilaExpiringValue.h)

Holds a value with an optional expiration time (milliseconds).

Mycila::string (src/MycilaString.h)

Small string helper utilities:

Mycila::Time (src/MycilaTime.h)

Time helpers:

If you’d like, I can expand this page with example snippets, code references, or copy parts of header comments into the docs.

Examples

See examples/ for demonstrations and working sketches, including a PID simulator and web UI examples.

Contributing

Contributions are welcome — please follow the CODE_OF_CONDUCT.md and open PRs against main.

License

MIT