Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/chromeuniverse/esp32-calculator

An ESP32-based graphing calculator.
https://github.com/chromeuniverse/esp32-calculator

arduino calculator espressif

Last synced: 4 months ago
JSON representation

An ESP32-based graphing calculator.

Awesome Lists containing this project

README

        

# ESP32 Graphing Calculator

A simple graphing calculator powered by the ESP32 SoC from Espressif.

Software built with the Arduino IDE and Espressif's [ESP32 Arduino Core](https://github.com/espressif/arduino-esp32).

The most recent iterations of the ccalculator's software are based on a [Math Parser/Evaluator](https://github.com/ChromeUniverse/Math-Parser) I've written in C++.

Created solely for educational purposes.

_Fun fact: roughly 3x faster than the Texas Instruments TI-84 Plus!_

## Hardware
* Generic ESP32 development board (any dev board should work)
* 1.77" 128x160 TFT LCD - ST7735S controller

## Libraries
* [Adafruit ST77xx library](https://github.com/adafruit/Adafruit-ST7735-Library)
* [Adafruit GFX graphics libray](https://github.com/adafruit/Adafruit-GFX-Library)

## Wiring diagram
Coming soon!

## Feature list
* Renders graphs of functions on the display

## To-Do
* Add a to-do lmao

## Photos

Functions shown below:
* Sine wave: y = 6 sin(x)
* Parabola: y = (0.6 x)3 - 5 x
* Cubic funcion: y = (0.8 x)3 - 5 x

Viewing window:
```
xmin = -10;
xmax = 10;
xscl = 1;

ymin = -10;
ymax = 10;
yscl = 1;

xres = (xmax - xmin)/tft.width();
yres = (ymax - ymin)/tft.height();
```

![ESP32](https://i.imgur.com/NnfdsFd.jpg)