Overview
This project was inspired by the retro Etch-A-Sketch with a modern twist. Instead of knobs, individuals control the drawing with two potentiometers (for X and Y movement) and a switch for toggling between drawing states. Individuals were tasked with exploring interactive hardware-software integration by translating analog sensor input into graphical visual output. After hearing questions and feedback, I aim to further improve real-time drawing accuracy and the user interface by reducing latency, refining the toggle function, and thinking about how to better intuitively represent drawing progress.
Video Link: https://drive.google.com/file/d/10zKjQpbPppzI0duzytp0_6KQYVFO1qMh/view?usp=sharing
Strengths
- Utilization of the [p5.webserial] library facilitated the reading of serial data from the Arduino without the need for desktop software.
- Potentiometers were providing accurate analog input, and mapping to screen coordinates was achieved after calibration.
- Intuitive buttons for starting, connecting/disconnecting the port, and resetting the canvas make the experience even more seamless.
- A new drawing color is created with each button push, creating a fun and dynamic drawing experience.
Additional Improvement
- Provide on-screen instructions on how to connect to the Serial monitor
- Provide instructions and indicators on the model itself (indicators of the potentiometers and button)
- Make a small hole for the USB Type-B cable to pass through, to prevent messiness
- Add a little cover over the model to cover up the wires in the arduino board
- The earlier versions exhibited clear lag or delay when drawing. This was addressed by optimizing serial communication and removing the [multiple.readUntil()] calls within the draw loop.
- The initial drawing of the red cursor was removed to avoid the distraction it caused from the artwork. It was ultimately removed for relying on the user to sense movement with the potentiometer.
- Still some minor jitter or lag on switching draw mode. Adding smoothing or filtering noise would likely enhance accuracy.
- The mode switch from welcome screen to the drawing view functions but may appear polished visually in usability terms for a better user experience.
Future ideas
- Add an on-screen cursor to show position without drawing.
- Add a on-screen button to save the drawing as a PNG.