AWind (arduino window) is Arduino-library that is intended to simplify the use of touch TFT and OLED displays for visualization of sensors data in text or chart form. It is also possible to interact with GUI by the use of display touch feature. The library is implemented as general window framework that allows creation of simple GUIs. The GUI is consist of text fields, buttons, chart window and etc. For TFT the special keyboard window is implemented to provide runtime possibility of changing text fields. At this moment only TFT with 320x240 resolution and OLED with 128x64 resolution on Arduiono Mega and Arduino DUE are tested, but the library can be adjusted to other display dimensions without big efforts.
AWind library for TFT displays is build on top of Henning Karlsen libraries:
AWind library for OLED displays is build on top of Adafruit_SSD1306 library
Uncompress those libraries into arduinosketchfolder/libraries/ folder
To connect display see descriptions for corresponding hardware and libraries .
The content of awind_full.zip from https://github.com/AndreiDegtiarev/AWind/releases uncompress into arduinosketchfolder/libraries/ folder.
Restart the IDE
API documentation: http://andreidegtiarev.github.io/AWind/
In the each example folder there is a screen-shots to demonstrate how results should looks like
- Text: Simple example that demonstrate the basic use of text window + touch interaction
- Charts: Simple example that demonstrate the basic use of chart window
- Oscilloscope: Simple Oscilloscope with possibility to adjust (in runtime) sample ratio, voltage level and signal length
- SensorsMonitor: This example is based on my personal application - monitor temperature in my camper (outside, inside, fridge: beer has to be cold :-) and etc.). The sensors in this example work in DEMO-mode and real sensors connections is not needed
- Gauges: This example demonstrates how to use gauge and button controls
- Dialogs: This example demonstrates how handle nested dialogs
- Tab control: This example demonstrates how to work with tab controls
- Vacuum Pump: This advance example demonstrates how to work with tab controls, timer, how interact with stepper motor, relay and etc.
- Window selector: This example demonstrates how to control child window visibility
- GfxOLED_DHT: interaction with DHT sensor
- GfxOLED_Oscilloscope: simple oscilloscope
- GfxOLED_SmartCharger: smart NiMH battery charger